:root{--bg:#fbf8f6;--surface:#fff;--surface-alt:#f4ede9;--text:#2d2326;--muted:#7b6d70;--border:#e8dfdb;--primary:#7a5c61;--primary-strong:#5f4449;--accent:#b07d86;--success:#2f7a4f;--danger:#b3403a;--radius:14px;--shadow:0 1px 2px #2d23260d, 0 6px 20px #2d23260f;--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Playfair Display", Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55}img{max-width:100%;display:block}a{color:var(--primary);text-decoration:none}h1,h2,h3,.h2,.h3,.h4{font-family:var(--font-display);margin:0 0 .5em;font-weight:600;line-height:1.2}h1{font-size:clamp(2rem,4vw,2.75rem)}h2,.h2{font-size:clamp(1.5rem,3vw,2rem)}h3,.h3{font-size:1.25rem}.h4{font-size:1.05rem;font-family:var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}p{margin:0 0 1em}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 16px}.page{padding-top:40px;padding-bottom:64px}.narrow{max-width:480px}.narrow-lg{max-width:760px}.center{text-align:center}.muted{color:var(--muted)}.small{font-size:.875rem}.nowrap{white-space:nowrap}.lead{font-size:1.15rem}.error{color:var(--danger);margin:0;font-size:.9rem}.success{color:var(--success);margin:0;font-size:.9rem}.btn{border:1px solid var(--primary);background:var(--primary);color:#fff;font:500 .95rem var(--font);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:11px 20px;text-decoration:none;transition:background .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--primary-strong)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{color:var(--primary);background:0 0}.btn-ghost:hover{background:var(--surface-alt)}.btn-sm{padding:7px 14px;font-size:.85rem}.btn-lg{padding:14px 28px;font-size:1.05rem}.btn-block{width:100%}.link{color:var(--primary);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.link:hover{text-decoration:underline}.link.danger{color:var(--danger)}.topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);z-index:10;background:#fbf8f6eb;position:sticky;top:0}.topbar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:64px;display:flex}.brand{font-family:var(--font-display);color:var(--text);font-size:1.5rem;font-weight:600}.brand-rings{color:var(--accent)}.topnav{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.topnav a:not(.btn){color:var(--text);font-size:.95rem}.topnav a.active:not(.btn){color:var(--primary);font-weight:600}.footer{border-top:1px solid var(--border);margin-top:40px;padding:40px 0}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:24px;display:flex}.footer-links{flex-direction:column;gap:6px;display:flex}.hero{background:radial-gradient(circle at 20% 20%, #f3e3e2 0, transparent 50%), radial-gradient(circle at 80% 60%, #e9e1f0 0, transparent 45%), var(--bg);text-align:center;padding:88px 0 72px}.hero-inner{max-width:780px}.hero h1{font-size:clamp(2.3rem,6vw,3.6rem)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:.8rem;font-weight:600}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.section{padding:64px 16px}.section-alt{background:var(--surface-alt)}.section-title{text-align:center;margin-bottom:36px}.feature-icon{font-size:1.8rem}.split{grid-template-columns:1fr 1fr;align-items:center;gap:40px;display:grid}.checks{margin:0 0 24px;padding:0;list-style:none}.checks li{margin-bottom:10px;padding-left:28px;position:relative}.checks li:before{content:"✓";color:var(--success);font-weight:700;position:absolute;left:0}.mock-gift{text-align:center;justify-self:center;max-width:320px}.mock-gift-img{background:var(--surface-alt);border-radius:10px;margin-bottom:16px;padding:30px;font-size:4rem}.price{color:var(--primary);margin:.25em 0;font-size:1.25rem;font-weight:600}.cta{text-align:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:inherit;padding:24px}.grid{gap:20px;display:grid}.grid-3{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.badge,.tag{background:var(--surface-alt);color:var(--primary);border-radius:999px;margin:0 6px 8px 0;padding:2px 10px;font-size:.75rem;font-weight:500;display:inline-block}.tags{flex-wrap:wrap;display:flex}.empty{border:1px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--muted);background:var(--surface);padding:36px}.filters{flex-wrap:wrap;gap:12px;margin:24px 0;display:flex}.filters>*{flex:220px}.vendor-img,.post-card img{aspect-ratio:16/9;object-fit:cover;border-radius:10px;width:100%;margin-bottom:12px}.vendor-links{gap:14px;display:flex}.post-card:hover{border-color:var(--accent)}.post-cover{border-radius:var(--radius);margin:20px 0}.prose{font-size:1.08rem}.events{margin-bottom:28px}.events ul{margin:0;padding-left:20px}.form{flex-direction:column;gap:16px;display:flex}fieldset.card{margin:0}legend{font-family:var(--font-display);padding:0 6px;font-size:1.2rem;font-weight:600}fieldset.card>*+*{margin-top:14px}.field{flex-direction:column;flex:200px;gap:6px;display:flex}.field.compact{flex:0 0 120px}.label{color:var(--muted);font-size:.85rem;font-weight:500}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#fff;border-radius:10px;padding:10px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--primary)}.row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.row>input{flex:180px}.check{cursor:pointer;align-items:center;gap:8px;display:flex}.prefix-input{border:1px solid var(--border);background:#fff;border-radius:10px;align-items:center;display:flex;overflow:hidden}.prefix-input span{color:var(--muted);white-space:nowrap;padding:0 4px 0 12px;font-size:.9rem}.prefix-input input{border:0;padding-left:2px}.auth-switch{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:16px;display:flex}.upload{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.upload-preview{object-fit:cover;border-radius:8px;width:96px;height:64px}.tip-row{grid-template-columns:repeat(4,1fr) auto;align-items:center;gap:8px;display:grid}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dashboard{grid-template-columns:230px 1fr;gap:32px;padding-top:32px;padding-bottom:64px;display:grid}.sidebar{flex-direction:column;align-self:start;gap:12px;display:flex;position:sticky;top:88px}.sidebar-couple{font-family:var(--font-display);margin:0;font-size:1.2rem}.sidebar nav{flex-direction:column;gap:2px;display:flex}.sidebar nav a{color:var(--text);border-radius:10px;padding:9px 12px}.sidebar nav a:hover{background:var(--surface-alt)}.sidebar nav a.active{background:var(--primary);color:#fff}.sidebar .link{text-align:left}.dashboard-content{flex-direction:column;gap:20px;min-width:0;display:flex}.dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.stat{flex-direction:column;gap:4px;padding:18px;display:flex}.stat-value{font-size:1.6rem;font-weight:600;font-family:var(--font-display)}.stat.highlight{background:var(--primary);color:#fff;border-color:var(--primary)}.publish{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.publish p{word-break:break-all;margin:4px 0 0}.steps{margin:0;padding-left:20px;line-height:2}.inline-form .row{align-items:center}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.93rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:12px 14px}.table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:500}.table tr:last-child td{border-bottom:0}.table .tag{margin:0 0 0 6px}select.status{width:auto;padding:5px 8px;font-size:.85rem}.status-confirmed,.status-paid{color:var(--success)}.status-declined,.status-rejected{color:var(--danger)}.catalog{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;max-height:360px;display:grid;overflow-y:auto}.catalog-item{border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.gift-card img,.gift-placeholder{aspect-ratio:4/3;object-fit:cover;border-radius:10px;width:100%;margin-bottom:12px}.gift-placeholder{background:var(--surface-alt);place-items:center;font-size:3rem;display:grid}.gift-card.inactive{opacity:.55}.messages{flex-direction:column;gap:12px;display:flex}.message footer{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.message.pending{border-left:4px solid var(--accent)}.segmented{border:1px solid var(--border);border-radius:999px;display:inline-flex;overflow:hidden}.segmented button{cursor:pointer;font:inherit;background:#fff;border:0;padding:8px 16px}.segmented button.active{background:var(--primary);color:#fff}.progress{background:var(--surface-alt);border-radius:999px;height:8px;overflow:hidden}.progress span{background:var(--success);height:100%;transition:width .3s;display:block}.checklist{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.checklist li:last-child{border-bottom:0}.checklist li.done label{color:var(--muted);text-decoration:line-through}.checklist-group h2{margin-bottom:8px}.theme-picker{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.theme-swatch{cursor:pointer;background:var(--w-bg);color:var(--w-text);border:2px solid #0000;border-radius:12px;flex-direction:column;justify-content:flex-end;gap:4px;min-height:110px;padding:20px;display:flex}.theme-swatch strong{font-family:var(--w-display);color:var(--w-accent);font-size:1.2rem}.theme-swatch small{opacity:.8}.theme-swatch.selected{border-color:var(--primary);box-shadow:0 0 0 3px #7a5c6133}.theme-swatch-names{font-family:var(--w-script);color:var(--w-text);font-size:1.8rem}.stationery-card{background:var(--w-bg);color:var(--w-text);text-align:center;aspect-ratio:4/5;border:1px solid var(--w-line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;justify-content:center;gap:8px;padding:56px 32px;display:flex;position:relative}.stationery-card:before{content:"";border:1px solid var(--w-line);pointer-events:none;border-radius:10px;position:absolute;inset:14px}.stationery-kicker{font-family:var(--w-display);text-transform:uppercase;letter-spacing:.2em;color:var(--w-accent);font-size:.85rem}.stationery-names{font-family:var(--w-script);color:var(--w-text);font-size:clamp(2.2rem,5vw,3.2rem);font-weight:400}.stationery-names span{color:var(--w-accent)}.stationery-date{font-family:var(--w-display);font-size:1.3rem}.stationery-url{opacity:.7;margin-top:16px;font-size:.8rem}@media print{body *{visibility:hidden}#stationery,#stationery *{visibility:visible}#stationery{box-shadow:none;position:fixed;inset:0}}@media (width<=860px){.dashboard{grid-template-columns:1fr}.sidebar{position:static}.sidebar nav{flex-direction:row;overflow-x:auto}.sidebar nav a{white-space:nowrap}.split{grid-template-columns:1fr}.tip-row{border-bottom:1px solid var(--border);grid-template-columns:1fr;padding-bottom:12px}}.event-card{flex-direction:column;gap:4px;display:flex}.event-card:hover,.type-option:hover{border-color:var(--accent)}.event-emoji{font-size:2rem}.type-option{cursor:pointer;font:inherit;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;display:flex}.module-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.module-toggle{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;display:flex}.module-toggle.on{border-color:var(--primary);background:var(--surface-alt)}.participant-hero h1{font-size:clamp(2rem,6vw,3rem)}.info{background:var(--surface-alt);box-shadow:none}.plain-list{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.plain-list li{align-items:center;gap:10px;display:flex}.table-wrap.flat{border:0;margin-top:12px}.poll-bar{grid-template-columns:minmax(120px,1fr) 3fr auto;align-items:center;gap:12px;margin-top:8px;display:grid}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.photo{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin:0;overflow:hidden}.photo img{aspect-ratio:1;object-fit:cover;width:100%}.photo figcaption{flex-wrap:wrap;justify-content:space-between;gap:6px;padding:8px 10px;display:flex}.photo.pending{outline:3px dashed var(--accent)}.reminder-toggle{border-bottom:1px solid var(--border);align-items:flex-start;padding:10px 0}.reminder-toggle:last-child{border-bottom:0}.payout-options{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.payout-options .module-toggle{align-items:flex-start}.code-input{letter-spacing:.15em;font-family:monospace;font-size:1.1rem}.scanner{background:#000;border-radius:12px;width:100%;max-width:420px}.scanner.hidden{display:none}.checkin-found{border-color:var(--primary)}.plans{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:12px;display:grid}.plan{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.plan.current{border-color:var(--primary);background:var(--surface-alt)}.plan ul{margin:4px 0 8px;padding-left:18px;font-size:.9rem}.dashboard-content .page{padding:0}.stack{flex-direction:column;gap:20px;display:flex}.type-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:24px;display:flex}.mock-name{margin:0;font-family:Great Vibes,cursive;font-size:2.6rem;font-weight:400}.form>.field,fieldset.card>.field{flex:none}.form>.btn,.form>button.btn{align-self:flex-start}.form>.btn-block{align-self:stretch}.row>select{flex:180px;width:auto;min-width:0}.event-card{padding:0;position:relative}.event-card-link{color:inherit;flex-direction:column;gap:4px;height:100%;padding:24px;display:flex}.event-card-actions{z-index:1;gap:4px;display:flex;position:absolute;top:10px;right:10px}.icon-btn{width:30px;height:30px;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;display:inline-grid}.icon-btn:hover,.icon-btn:focus-visible{background:var(--surface-alt);border-color:var(--border);color:var(--text)}.icon-btn.danger:hover,.icon-btn.danger:focus-visible{color:var(--danger);background:#fdf1f0;border-color:#f0d0cd}.btn-danger{background:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:#962f2a}.modal-backdrop{z-index:50;background:#1e141873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{width:100%;max-width:520px;max-height:calc(100vh - 32px);overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.modal-header h2{margin:0}.copy-options{border:0;flex-direction:column;gap:6px;margin:0;padding:0;display:flex}.modal .form>p{margin:0}.copy-options legend{font-family:var(--font);margin-bottom:4px;padding:0;font-size:.85rem;font-weight:500}.title-row{align-items:center;gap:6px;display:flex}.title-row h1{margin:0}.title-edit{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.title-edit input{font-size:1.2rem;font-family:var(--font-display);flex:280px}.title-edit .error{flex-basis:100%}.icon-btn.locked{opacity:.4;cursor:not-allowed}.icon-btn.locked:hover{color:var(--muted);background:0 0;border-color:#0000}p.error{margin:8px 0}.quota-summary{background:var(--surface-alt);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 14px;display:flex}.quota-summary .quota-value{font-size:1.3rem;font-family:var(--font-display);color:var(--primary)}.quota-summary>.small{flex-basis:100%}.quota-summary.invalid .quota-value{color:var(--danger)}.row.top{align-items:flex-start}.field.compact-lg{flex:0 320px}.inline-number{text-align:center;width:64px;padding:5px 8px}.fee-badge s{opacity:.7}.fee-promo{color:var(--success);font-weight:600}.payout-status{box-shadow:none;flex-direction:column;gap:4px;display:flex}.payout-status p{margin:0}.payout-status.ok{background:#f1f9f4;border-color:#cfe6d7}.payout-status.warn{background:#fff8e6;border-color:#f3dfa6}.split-mode{align-self:flex-start}.theme-serenity{--w-bg:#f3f6fa;--w-surface:#fff;--w-text:#2c3e50;--w-muted:#6b7c8f;--w-accent:#7c9cbf;--w-line:#d5e0ec;--w-display:"Cormorant Garamond", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-grace{--w-bg:#fbf3f1;--w-surface:#fff;--w-text:#4a3036;--w-muted:#8f7076;--w-accent:#c98a93;--w-line:#efd9d8;--w-display:"Cormorant Garamond", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-black-tie{--w-bg:#111;--w-surface:#1c1c1c;--w-text:#f4efe6;--w-muted:#b3aa9a;--w-accent:#c9a959;--w-line:#3a3528;--w-display:"Playfair Display", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#111}.theme-garden{--w-bg:#f2f5ee;--w-surface:#fff;--w-text:#2f3d2c;--w-muted:#6f7f69;--w-accent:#6b8f5e;--w-line:#d6e0cf;--w-display:"Cormorant Garamond", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-boho{--w-bg:#f8efe6;--w-surface:#fffaf5;--w-text:#4b3326;--w-muted:#8d6f5d;--w-accent:#c0704d;--w-line:#ead7c5;--w-display:"Playfair Display", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-classic{--w-bg:#fbf9f4;--w-surface:#fff;--w-text:#333;--w-muted:#7a7568;--w-accent:#a68a5b;--w-line:#e7e0cf;--w-display:"Playfair Display", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-festa{--w-bg:#fff7ec;--w-surface:#fff;--w-text:#3b2a4a;--w-muted:#7d6a8c;--w-accent:#e0578c;--w-line:#f3dcc4;--w-display:"Playfair Display", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-natal{--w-bg:#fbf6ef;--w-surface:#fff;--w-text:#2e3b2c;--w-muted:#6e7a66;--w-accent:#b3272d;--w-line:#e6dccb;--w-display:"Playfair Display", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.theme-infantil{--w-bg:#f4f8fd;--w-surface:#fff;--w-text:#34495e;--w-muted:#7f8fa6;--w-accent:#f2a65a;--w-line:#dde8f3;--w-display:"Cormorant Garamond", serif;--w-script:"Great Vibes", cursive;--w-btn-text:#fff}.wedding{background:var(--w-bg);min-height:100vh;color:var(--w-text);font-family:var(--font)}.wedding h1,.wedding h2,.wedding h3{font-family:var(--w-display);color:var(--w-text)}.wedding a{color:var(--w-accent)}.wedding-loading{color:#c98a93;place-items:center;min-height:100vh;font-size:2rem;display:grid}.preview-banner{color:#6b5200;text-align:center;background:#fff3cd;padding:8px 16px;font-size:.9rem}.wedding-nav{font-family:var(--w-display);letter-spacing:.04em;flex-wrap:wrap;justify-content:center;gap:24px;padding:16px;font-size:1.05rem;display:flex}.wedding-nav a{color:var(--w-text)}.wedding-hero{isolation:isolate;text-align:center;place-items:center;min-height:72vh;padding:64px 16px;display:grid;position:relative;overflow:hidden}.wedding-hero:not(.has-cover){background:var(--w-bg);border-top:1px solid var(--w-line);border-bottom:1px solid var(--w-line)}.wedding-hero.has-cover{background:#111;align-items:end;padding-bottom:48px}.wedding-hero.has-cover .wedding-hero-inner *{color:#fff;text-shadow:0 2px 12px #00000073}.hero-bg{z-index:-3;background:var(--cover) center / cover no-repeat;position:absolute;inset:0}.hero-photo{display:none}.hero-shade{z-index:-1;background:linear-gradient(#0000 35%,#000000b3 100%);position:absolute;inset:0}@media (width>=768px){.hero-bg{filter:blur(32px)brightness(.55)saturate(1.1);transform:scale(1.15)}.hero-photo{z-index:-2;object-fit:contain;width:auto;max-width:100%;height:100%;display:block;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 60px #00000073}.hero-shade{background:linear-gradient(#0000 40%,#000000bf 100%)}}.wedding-kicker{font-family:var(--w-display);text-transform:uppercase;letter-spacing:.25em;color:var(--w-accent)}.wedding-names{margin:.1em 0;font-size:clamp(3rem,10vw,6rem);font-weight:400;font-family:var(--w-script)!important}.wedding-names span{color:var(--w-accent)}.wedding-date{font-family:var(--w-display);margin:0;font-size:1.5rem}.wedding-countdown{color:var(--w-muted);margin-top:8px}.wedding-section{border-bottom:1px solid var(--w-line);max-width:960px;margin:0 auto;padding:64px 16px}.wedding-section>h2{text-align:center;margin-bottom:24px;font-size:clamp(1.8rem,4vw,2.5rem)}.wedding-text{text-align:center;max-width:680px;margin:0 auto;font-size:1.08rem}.wedding-muted{color:var(--w-muted)}.wedding-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.wedding-card{background:var(--w-surface);border:1px solid var(--w-line);border-radius:14px;padding:24px}.wedding-card h3{font-size:1.4rem}.wedding-dress{font-family:var(--w-display);color:var(--w-accent);margin:0 0 8px;font-size:1.6rem}.wedding-buttons{flex-wrap:wrap;gap:10px;display:flex}.wedding-map{border:0;border-radius:14px;width:100%;height:320px;margin-top:20px}.wbtn{border:1px solid var(--w-accent);color:var(--w-accent);font:500 .95rem var(--font);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:10px 20px;display:inline-flex}.wbtn.solid{background:var(--w-accent);color:var(--w-btn-text)!important}.wbtn:disabled,.wbtn.disabled{opacity:.55;cursor:default}.wedding-form{flex-direction:column;gap:12px;max-width:520px;margin:0 auto;display:flex}.wedding-form input,.wedding-form textarea,.checkout textarea{background:var(--w-surface);color:var(--w-text);border-color:var(--w-line)}.wedding-radio{flex-direction:column;gap:6px;display:flex}.wedding-radio label,.wedding-inline{align-items:center;gap:8px;display:flex}.wedding-inline input{width:90px}.wedding-gifts{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;display:grid}.wedding-gift{background:var(--w-surface);border:1px solid var(--w-line);text-align:center;border-radius:14px;flex-direction:column;gap:6px;padding:16px;display:flex}.wedding-gift img,.wedding .gift-placeholder{aspect-ratio:4/3;object-fit:cover;border-radius:10px;width:100%}.wedding .gift-placeholder{background:var(--w-bg);place-items:center;font-size:3rem;display:grid}.wedding-gift h3{margin:6px 0 0;font-size:1.2rem}.wedding-gift .wedding-muted{margin:0;font-size:.9rem}.wedding-gift .wbtn{margin-top:auto}.wedding-price{color:var(--w-accent);margin:0;font-size:1.2rem;font-weight:600}.wedding-messages{columns:2 280px;column-gap:16px;margin-top:32px}.wedding-message{break-inside:avoid;background:var(--w-surface);border:1px solid var(--w-line);border-radius:14px;margin:0 0 16px;padding:18px 20px}.wedding-message p{font-family:var(--w-display);margin-bottom:8px;font-size:1.15rem}.wedding-message cite{color:var(--w-muted);font-size:.9rem;font-style:normal}.wedding-footer{text-align:center;padding:40px 16px}.wedding-footer p{font-family:var(--w-script);margin:0 0 8px;font-size:2.2rem}.checkout{justify-content:center;padding:32px 16px;display:flex}.checkout-box{flex-direction:column;gap:24px;width:100%;max-width:560px;display:flex}.checkout-gift{align-items:center;gap:20px;display:flex}.checkout-gift img,.checkout-gift .gift-placeholder{flex-shrink:0;width:140px}.checkout-gift h1{margin-bottom:4px;font-size:1.8rem}.pix{flex-direction:column;align-items:center;gap:12px;display:flex}.pix-qr{background:#fff;border-radius:10px;width:220px;height:220px;padding:8px}.pix textarea{font-family:monospace;font-size:.8rem}.wedding .photo{background:var(--w-surface);border-color:var(--w-line)}.ss-reveal{flex-direction:column;justify-content:center;gap:4px;display:flex}.ss-name{font-family:var(--w-script);color:var(--w-accent);margin:0;font-size:clamp(2.4rem,8vw,3.6rem);line-height:1.1}.wishlist{margin:0 0 12px;padding-left:18px}.wishlist li{margin-bottom:6px}.ss-chat{flex-direction:column;gap:8px;max-height:280px;margin-bottom:12px;display:flex;overflow-y:auto}.ss-msg{background:var(--w-bg);border-radius:12px;flex-direction:column;max-width:85%;margin:0;padding:8px 12px;display:flex}.ss-msg.out{background:var(--w-line);align-self:flex-end}.poll-option{border:1px solid var(--w-line);cursor:pointer;border-radius:10px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex;position:relative;overflow:hidden}.poll-option>*{z-index:1;position:relative}.poll-option .poll-count{margin-left:auto;font-weight:600}.poll-option .poll-fill{background:var(--w-line);opacity:.6;z-index:0;position:absolute;inset:0 auto 0 0}.wedding select{border:1px solid var(--w-line);background:var(--w-surface);width:100%;color:var(--w-text);font:inherit;border-radius:10px;padding:10px 12px}.fund-bar{background:var(--w-line);border-radius:999px;height:8px;overflow:hidden}.fund-bar span{background:var(--w-accent);height:100%;display:block}.qr{background:#fff;border-radius:12px;margin:0 auto;padding:8px}.ticket-code{letter-spacing:.2em;margin:8px 0 0;font-family:monospace;font-size:1.4rem}.quota-label{color:var(--w-muted);font-size:.8rem;font-weight:500}.wedding-gift .fund-bar{margin-top:4px}.quota-picker{border:1px solid var(--w-line);background:var(--w-surface);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.quota-stepper{align-items:center;gap:6px;display:flex}.quota-stepper .wbtn{width:38px;height:38px;padding:0;font-size:1.2rem}.quota-stepper input{text-align:center;background:var(--w-surface);width:64px;color:var(--w-text);border-color:var(--w-line)}.quota-total{color:var(--w-accent);font-size:1.1rem}.test-mode-note{color:#6b5200;background:#fff3cd;border-radius:10px;margin:4px 0 0;padding:10px 12px;font-size:.85rem}.pay-methods{grid-template-columns:1fr 1fr;gap:8px;display:grid}.pay-method{border:1px solid var(--w-line);background:var(--w-surface);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.pay-method.on{border-color:var(--w-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--w-accent) 25%, transparent)}.pay-method span{flex-direction:column;gap:2px;display:flex}.pay-method small{color:var(--w-muted);font-size:.8rem}@media (width<=420px){.pay-methods{grid-template-columns:1fr}}.section-highlight{animation:2.4s ease-out section-flash}@keyframes section-flash{0%,30%{background:color-mix(in srgb, var(--w-accent) 12%, transparent)}to{background:0 0}}.go-gifts{border-top:1px solid var(--w-line);margin-top:14px;padding-top:14px}.center-buttons{justify-content:center}.rsvp-done .wbtn{margin-top:4px}.spots{text-align:center;margin:-8px 0 18px}.spots strong,.spots.full{color:var(--w-accent)}
