:root,[data-theme=cathedral-roses]{--bg-primary: #090608;--bg-secondary: #120c10;--bg-card: #181016;--bg-input: #0e090d;--bg-accent-subtle: #26121b;--text-primary: #f5eee6;--text-secondary: #cbb8be;--text-muted: #8f7980;--accent-primary: #8f1128;--accent-primary-hover: #b01632;--accent-secondary: #d4a853;--accent-light: rgba(212, 168, 83, .2);--border-color: #36202a;--border-gold: rgba(212, 168, 83, .48);--shadow-soft: 0 18px 46px -8px rgba(0, 0, 0, .85);--shadow-elevated: 0 26px 65px -10px rgba(0, 0, 0, .95), 0 0 34px rgba(143, 17, 40, .32)}[data-theme=gothic-noir]{--bg-primary: #060608;--bg-secondary: #0d0e12;--bg-card: #13151b;--bg-input: #0a0b0e;--bg-accent-subtle: #1e1620;--text-primary: #f2f4f8;--text-secondary: #b4bac6;--text-muted: #79808f;--accent-primary: #6e1223;--accent-primary-hover: #8c172d;--accent-secondary: #c8d0de;--accent-light: rgba(200, 208, 222, .18);--border-color: #262934;--border-gold: rgba(200, 208, 222, .42);--shadow-soft: 0 18px 46px -8px rgba(0, 0, 0, .9);--shadow-elevated: 0 26px 65px -10px rgba(0, 0, 0, .98), 0 0 32px rgba(200, 208, 222, .14)}[data-theme=vampiric-velvet]{--bg-primary: #0e0507;--bg-secondary: #18090d;--bg-card: #210c12;--bg-input: #120609;--bg-accent-subtle: #33101a;--text-primary: #f9efe8;--text-secondary: #d8b9be;--text-muted: #9e787f;--accent-primary: #a8132b;--accent-primary-hover: #c91835;--accent-secondary: #e2a84b;--accent-light: rgba(226, 168, 75, .22);--border-color: #451823;--border-gold: rgba(226, 168, 75, .5);--shadow-soft: 0 18px 46px -8px rgba(0, 0, 0, .88);--shadow-elevated: 0 26px 65px -10px rgba(0, 0, 0, .95), 0 0 36px rgba(168, 19, 43, .36)}[data-theme=witching-autumn]{--bg-primary: #070b09;--bg-secondary: #0f1713;--bg-card: #141f1a;--bg-input: #0a100d;--bg-accent-subtle: #1f2b22;--text-primary: #f2ede2;--text-secondary: #bcc4bc;--text-muted: #7f8c81;--accent-primary: #8f301c;--accent-primary-hover: #ad3b23;--accent-secondary: #cf9c46;--accent-light: rgba(207, 156, 70, .2);--border-color: #26382e;--border-gold: rgba(207, 156, 70, .45);--shadow-soft: 0 18px 46px -8px rgba(0, 0, 0, .86);--shadow-elevated: 0 26px 65px -10px rgba(0, 0, 0, .95), 0 0 30px rgba(143, 48, 28, .28)}[data-theme=mourning-lace]{--bg-primary: #0b090d;--bg-secondary: #141018;--bg-card: #1c1622;--bg-input: #100c14;--bg-accent-subtle: #2a1f32;--text-primary: #f4eef6;--text-secondary: #c9bccf;--text-muted: #8e7e96;--accent-primary: #823152;--accent-primary-hover: #9c3b63;--accent-secondary: #d4b2c4;--accent-light: rgba(212, 178, 196, .2);--border-color: #362940;--border-gold: rgba(212, 178, 196, .45);--shadow-soft: 0 18px 46px -8px rgba(0, 0, 0, .86);--shadow-elevated: 0 26px 65px -10px rgba(0, 0, 0, .95), 0 0 32px rgba(130, 49, 82, .3)}[data-theme=fall-goth]{--bg-primary: #090608;--bg-secondary: #120c10;--bg-card: #181016;--bg-input: #0e090d;--bg-accent-subtle: #26121b;--text-primary: #f5eee6;--text-secondary: #cbb8be;--text-muted: #8f7980;--accent-primary: #8f1128;--accent-primary-hover: #b01632;--accent-secondary: #d4a853;--accent-light: rgba(212, 168, 83, .2);--border-color: #36202a;--border-gold: rgba(212, 168, 83, .48);--shadow-soft: 0 18px 46px -8px rgba(0, 0, 0, .85);--shadow-elevated: 0 26px 65px -10px rgba(0, 0, 0, .95), 0 0 34px rgba(143, 17, 40, .32)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-primary);background-image:radial-gradient(circle at 12% 8%,rgba(143,17,40,.16),transparent 42%),radial-gradient(circle at 88% 15%,rgba(212,168,83,.08),transparent 42%),radial-gradient(circle at 50% 90%,rgba(143,17,40,.12),transparent 50%);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,.serif-font{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;line-height:1.16}.goth-display{font-family:Cinzel,Cormorant Garamond,Georgia,serif;letter-spacing:.06em}button,input,select,textarea{font-family:inherit}.goth-divider{display:flex;align-items:center;justify-content:center;gap:.95rem;margin:1rem auto;color:var(--accent-secondary);font-size:.95rem;letter-spacing:.28em;opacity:.92}.goth-divider:before,.goth-divider:after{content:"";height:1px;width:90px;background:linear-gradient(90deg,transparent,var(--accent-secondary),transparent)}.top-utility-bar{background:#040305;border-bottom:1px solid var(--border-gold);color:var(--text-primary);padding:.62rem 1.5rem;display:flex;justify-content:space-between;align-items:center;font-size:.82rem;letter-spacing:.05em}.top-utility-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.top-utility-actions{display:flex;align-items:center;gap:.75rem}.cms-launch-btn{display:inline-flex;align-items:center;gap:.45rem;background:linear-gradient(135deg,var(--accent-primary),#420713);color:#f5eee6;border:1px solid var(--border-gold);padding:.45rem 1.1rem;border-radius:999px;font-size:.8rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.cms-launch-btn:hover{transform:translateY(-1px);box-shadow:0 0 18px #d4a85366}.wedding-hero{position:relative;padding:3.6rem 1.5rem 6rem;text-align:center;background-size:cover;background-position:center;color:#f5eee6;overflow:hidden;border-bottom:1px solid var(--border-gold)}.wedding-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,#12090e7a,#050306eb),linear-gradient(180deg,#060407a6,#090608fa);z-index:1}.hero-gothic-arch-frame{position:relative;z-index:2;max-width:920px;margin:0 auto;padding:2.5rem 2rem 2rem;border:1px solid var(--border-gold);border-radius:260px 260px 20px 20px;background:radial-gradient(circle at 50% 0%,#8f11282e,#09060894 75%);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:inset 0 0 40px #000000bf,0 16px 50px #000000bf}.hero-eyebrow{display:inline-block;font-family:Cinzel,serif;text-transform:uppercase;letter-spacing:.25em;font-size:.75rem;font-weight:600;color:var(--accent-secondary);padding:.4rem 1.2rem;border:1px solid var(--border-gold);border-radius:999px;margin-bottom:1rem;background:#090608c7}.hero-couple-names{font-family:Cinzel,Cormorant Garamond,Georgia,serif;font-size:clamp(2.4rem,5.6vw,4.3rem);font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;color:#faf4ec;text-shadow:0 6px 30px rgba(0,0,0,.9),0 0 26px rgba(143,17,40,.55)}.hero-tagline{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:clamp(1.18rem,2.3vw,1.48rem);color:#e0cfd4;max-width:660px;margin:0 auto 1.45rem;font-weight:400}.hero-meta-pills{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.85rem}.hero-pill{display:inline-flex;align-items:center;gap:.5rem;background:#0e090dd9;border:1px solid var(--border-gold);color:#f5eee6;padding:.48rem 1.15rem;border-radius:999px;font-size:.86rem;font-weight:500}.big-tabs-shell{max-width:1220px;margin:-3.75rem auto 2.75rem;padding:0 1.25rem;position:relative;z-index:10}.big-tabs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}.big-tab-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;text-align:left;padding:1.65rem 1.4rem 1.45rem;min-height:152px;border-radius:42px 42px 16px 16px;background:linear-gradient(180deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border:1.5px solid var(--border-color);box-shadow:var(--shadow-soft),inset 0 1px 0 var(--border-gold);cursor:pointer;transition:all .24s cubic-bezier(.16,1,.3,1);color:var(--text-primary);overflow:hidden}.big-tab-card:hover{transform:translateY(-5px);border-color:var(--accent-secondary);box-shadow:var(--shadow-elevated)}.big-tab-card.active{background:linear-gradient(160deg,var(--accent-primary) 0%,#2d0610 100%);color:#faf4ec;border-color:var(--accent-secondary);box-shadow:var(--shadow-elevated);transform:translateY(-6px)}.big-tab-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.9rem}.big-tab-icon-wrap{width:46px;height:46px;border-radius:22px 22px 10px 10px;display:flex;align-items:center;justify-content:center;background:var(--bg-accent-subtle);color:var(--accent-secondary);border:1px solid var(--border-gold);transition:all .2s ease}.big-tab-card.active .big-tab-icon-wrap{background:#0906088c;color:var(--accent-secondary);border-color:var(--accent-secondary)}.big-tab-step{font-family:Cinzel,serif;font-size:.71rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-secondary);padding:.24rem .65rem;border-radius:999px;background:#0906088c;border:1px solid var(--border-gold)}.big-tab-title{font-family:Cinzel,Cormorant Garamond,Georgia,serif;font-size:1.55rem;font-weight:700;line-height:1.15;margin-bottom:.3rem}.big-tab-subtitle{font-size:.83rem;color:var(--text-secondary);line-height:1.35}.big-tab-card.active .big-tab-subtitle{color:#faf4ece0}.big-tab-active-bar{position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--accent-secondary),transparent);opacity:0;transition:opacity .2s ease}.big-tab-card.active .big-tab-active-bar{opacity:1}.page-stage{max-width:1180px;margin:0 auto 4.5rem;padding:0 1.25rem;animation:fadeSlideUp .32s ease-out}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header-box{text-align:center;max-width:760px;margin:0 auto 2.75rem}.section-kicker{display:inline-block;font-family:Cinzel,serif;text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:700;color:var(--accent-secondary);margin-bottom:.5rem}.section-title{font-family:Cinzel,Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,3.8vw,2.95rem);color:var(--text-primary);margin-bottom:.65rem}.section-subtitle{font-size:1.05rem;color:var(--text-secondary)}.surface-card{background:linear-gradient(180deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border:1px solid var(--border-color);box-shadow:var(--shadow-soft),inset 0 1px 0 var(--border-gold);border-radius:22px;padding:2rem;position:relative}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.75rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.couple-card{display:flex;flex-direction:column;overflow:hidden;border-radius:220px 220px 20px 20px;background:linear-gradient(180deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border:1.5px solid var(--border-gold);box-shadow:var(--shadow-elevated)}.couple-card-img-wrap{padding:1.25rem 1.25rem 0;position:relative}.portrait-viewport{width:100%;overflow:hidden;position:relative;border:2px solid var(--border-gold);background:#050305;box-shadow:inset 0 0 28px #000c}.couple-card-body{padding:1.65rem 1.75rem 1.85rem}.role-badge{display:inline-block;font-family:Cinzel,serif;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-secondary);background:var(--bg-accent-subtle);border:1px solid var(--border-gold);padding:.28rem .8rem;border-radius:999px;margin-bottom:.65rem}.timeline-list{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0}.timeline-item{display:grid;grid-template-columns:260px 1fr;gap:1.75rem;background:linear-gradient(180deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border:1px solid var(--border-gold);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-soft)}.timeline-img-wrap{width:100%;height:100%;min-height:220px;overflow:hidden;position:relative}.timeline-content{padding:1.65rem 1.75rem 1.65rem 0;display:flex;flex-direction:column;justify-content:center}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,var(--accent-primary),#420713);color:#faf4ec;border:1px solid var(--border-gold);padding:.8rem 1.45rem;border-radius:12px;font-weight:600;font-size:.94rem;cursor:pointer;transition:all .18s ease;text-decoration:none}.btn-primary:hover{background:linear-gradient(135deg,var(--accent-primary-hover),#5e0b1c);transform:translateY(-1px);box-shadow:0 8px 24px #8f112880}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:.75rem 1.3rem;border-radius:12px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .18s ease;text-decoration:none}.btn-secondary:hover{border-color:var(--accent-secondary);background:var(--bg-accent-subtle)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:#b91c1c38;color:#fca5a5;border:1px solid rgba(248,113,113,.38);padding:.55rem .95rem;border-radius:10px;font-weight:600;font-size:.84rem;cursor:pointer}.btn-danger:hover{background:#b91c1c61}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.form-label{font-size:.78rem;font-weight:600;color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.08em}.form-input,.form-select,.form-textarea{width:100%;padding:.72rem .92rem;border:1.5px solid var(--border-color);border-radius:11px;background:var(--bg-input);color:var(--text-primary);font-size:.94rem;transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent-secondary);box-shadow:0 0 0 3px var(--accent-light)}.qr-lookup-banner{background:linear-gradient(135deg,#1b0910,#3d0c19 55%,#12070c);border:1px solid var(--border-gold);color:#f5eee6;border-radius:24px;padding:2.25rem;box-shadow:var(--shadow-elevated)}.rsvp-member-row{background:var(--bg-secondary);border:1.5px solid var(--border-color);border-radius:16px;padding:1.35rem;margin-bottom:1rem}.attendance-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.attendance-btn{padding:.8rem 1rem;border-radius:12px;border:1.5px solid var(--border-color);background:var(--bg-input);color:var(--text-secondary);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .16s ease}.attendance-btn.yes.selected{background:#10b98129;border-color:#34d399;color:#a7f3d0}.attendance-btn.no.selected{background:#dc26262e;border-color:#f87171;color:#fecaca}.cms-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#040205db;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:1000;display:flex;justify-content:center;align-items:stretch;padding:.65rem}.cms-scroll-body{padding:1.75rem 2rem;overflow-y:auto;flex:1}.qr-print-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.25rem}.qr-stationery-card{background:var(--bg-card);border:1.5px solid var(--border-gold);border-radius:110px 110px 18px 18px;padding:1.85rem 1.5rem 1.5rem;text-align:center;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;align-items:center}@media(max-width:980px){.big-tabs-grid{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3,.grid-4,.timeline-item{grid-template-columns:1fr}.timeline-content{padding:1.35rem}}@media(max-width:560px){.big-tabs-grid,.attendance-toggle-group{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.printable-qr-area,.printable-qr-area *{visibility:visible}.printable-qr-area{position:absolute;left:0;top:0;width:100%}.qr-stationery-card{background:#fff!important;color:#111!important;border:2px solid #222222!important}.no-print{display:none!important}}
