.shell{max-width:var(--maxw);padding:16px 20px calc(48px + env(safe-area-inset-bottom));margin:0 auto}.screen{animation:.35s both fade-up}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.stack{flex-direction:column;gap:18px;display:flex}.header{background:var(--card);border-radius:var(--radius-pill);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;padding:12px 14px 12px 20px;display:flex}.header-brand{font-family:var(--display);color:var(--ink);letter-spacing:-.01em;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:20px;font-weight:800;display:flex}.header-brand svg{flex:none}.back-btn{background:var(--card);border:2px solid var(--line);width:44px;height:44px;color:var(--ink);border-radius:50%;flex:none;place-items:center;transition:transform .12s;display:grid}.back-btn:active{transform:scale(.94)}.page-head{align-items:center;gap:14px;margin-bottom:26px;display:flex}.page-head h1{font-size:27px}.btn{border-radius:var(--radius-sm);width:100%;font-family:var(--display);letter-spacing:.01em;border:0;justify-content:center;align-items:center;gap:10px;padding:17px 24px;font-size:18px;font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex}.btn-primary{background:var(--coral);color:#fff;box-shadow:0 5px 0 var(--coral-deep)}.btn-primary:active:not(:disabled){box-shadow:0 1px 0 var(--coral-deep);transform:translateY(4px)}.btn-secondary{background:var(--card);color:var(--ink);border:2px solid var(--line);box-shadow:0 5px 0 var(--line-soft)}.btn-secondary:active:not(:disabled){box-shadow:0 1px 0 var(--line-soft);transform:translateY(4px)}.btn-sun{background:var(--sun);color:var(--ink);box-shadow:0 4px 0 var(--sun-deep);border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;width:auto;padding:11px 22px;font-size:15px}.btn-sun:active:not(:disabled){box-shadow:0 1px 0 var(--sun-deep);transform:translateY(3px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{box-shadow:none;color:var(--ink-soft);font-family:var(--sans);background:0 0;border:0;width:auto;padding:10px;font-size:15px;font-weight:700;text-decoration:underline}.hero{text-align:center}.hero-art{width:100%;max-width:330px;margin:8px auto 30px;display:block}.hero-brand h1{margin-bottom:20px;font-size:clamp(38px,11vw,52px)}.hero-brand h1 .accent{color:var(--coral);display:block}.hero-sub{color:var(--ink-soft);max-width:40ch;margin:0 auto 32px;font-size:17px;line-height:1.6}.hero-actions{flex-direction:column;gap:16px;display:flex}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:20px}.event-card{align-items:flex-start;gap:18px;margin-bottom:32px;display:flex}.date-chip{background:var(--sun-soft);text-align:center;border-radius:20px;flex:none;place-content:center;width:76px;height:76px;line-height:1.1;display:grid}.date-chip .m{letter-spacing:.09em;color:var(--ink-soft);font-size:12px;font-weight:700}.date-chip .d{font-family:var(--display);color:var(--ink);font-size:30px;font-weight:800}.event-card h2{margin-bottom:4px;font-size:21px}.event-card .meta{color:var(--ink-soft);font-size:15px}.event-strip{text-align:left;align-items:center;gap:16px;margin-bottom:26px;display:flex}.event-strip .date-chip{border-radius:17px;width:64px;height:64px}.event-strip .date-chip .d{font-size:26px}.event-strip-text{min-width:0}.event-strip-text .when{font-family:var(--display);color:var(--ink);font-size:19px;font-weight:800;line-height:1.15}.event-strip-text .where{color:var(--ink);margin-top:3px;font-size:15px;font-weight:700}.event-strip-text .city{color:var(--ink-soft);font-size:14px}.note{background:var(--coral-soft);border-radius:var(--radius-sm);color:var(--ink-soft);align-items:flex-start;gap:12px;padding:16px 18px;font-size:14.5px;font-style:italic;line-height:1.5;display:flex}.note svg{color:var(--coral);flex:none;margin-top:2px}.section-title{text-align:center;margin-bottom:6px}.section-title h2{margin-bottom:6px;font-size:28px}.section-title p{color:var(--ink-soft);font-size:16px}.intro{color:var(--ink-soft);margin-bottom:28px;font-size:16px;line-height:1.6}.field{margin-bottom:20px;display:block}.field-label{color:var(--ink);margin-bottom:8px;font-size:15px;font-weight:700;display:block}.field-label .optional{color:var(--ink-faint);font-weight:400}.field-input,.field-textarea,.field-select{background:var(--card);border:2px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--ink);padding:16px 18px;font-size:16.5px;transition:border-color .15s,box-shadow .15s}.field-input::placeholder,.field-textarea::placeholder{color:var(--ink-faint)}.field-input:focus,.field-textarea:focus,.field-select:focus{border-color:var(--coral);box-shadow:0 0 0 4px var(--coral-soft);outline:none}.field-textarea{resize:vertical;min-height:118px;font-family:inherit}.field-error{color:var(--coral);margin-top:7px;font-size:14px;font-weight:700;display:block}.field-input[aria-invalid=true],.field-textarea[aria-invalid=true]{border-color:var(--coral)}.divider{background:var(--line);border:0;height:1px;margin:30px 0 26px}.group-title{font-family:var(--display);color:var(--coral);margin-bottom:18px;font-size:23px;font-weight:800}.file-drop{border:2px dashed var(--line);border-radius:var(--radius-sm);background:var(--card);cursor:pointer;align-items:center;gap:14px;padding:20px 18px;transition:border-color .15s,background .15s;display:flex}.file-drop:hover{border-color:var(--coral);background:#fffaf8}.file-drop input{display:none}.file-drop .file-icon{background:var(--sun-soft);width:44px;height:44px;color:var(--ink);border-radius:12px;flex:none;place-items:center;display:grid}.file-drop .file-text{min-width:0;font-size:15px;line-height:1.4}.file-drop .file-text strong{color:var(--ink);display:block}.file-drop .file-text span{color:var(--ink-faint);overflow-wrap:anywhere;font-size:13.5px}.stepper{align-items:center;gap:16px;display:flex}.stepper button{border:2px solid var(--line);background:var(--card);width:52px;height:52px;font-family:var(--display);color:var(--ink);border-radius:14px;flex:none;place-items:center;font-size:24px;font-weight:800;transition:transform .1s;display:grid}.stepper button:active:not(:disabled){transform:scale(.93)}.stepper button:disabled{opacity:.4;cursor:not-allowed}.stepper .count{font-family:var(--display);text-align:center;min-width:34px;font-size:26px;font-weight:800}.confirm{text-align:center;padding-top:12px}.confirm-badge{background:var(--mint);width:92px;height:92px;color:var(--mint-ink);border-radius:50%;place-items:center;margin:0 auto 24px;animation:.42s cubic-bezier(.34,1.56,.64,1) both pop;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.confirm h1{margin-bottom:12px;font-size:32px}.confirm p{color:var(--ink-soft);margin-bottom:8px;font-size:16.5px;line-height:1.6}.pill{border-radius:var(--radius-pill);letter-spacing:.06em;text-transform:uppercase;padding:7px 15px;font-size:12.5px;font-weight:700;display:inline-block}.pill-mint{background:var(--mint);color:var(--mint-ink)}.pill-sun{background:var(--sun-soft);color:#7a5c00}.spots-left{text-align:center;color:var(--ink-soft);margin-top:-6px;margin-bottom:22px;font-size:14.5px}.spots-left strong{color:var(--coral)}.stat-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:24px;display:grid}.stat{background:var(--card);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);padding:18px}.stat .n{font-family:var(--display);color:var(--ink);font-size:38px;font-weight:800;line-height:1}.stat .l{color:var(--ink-soft);margin-top:6px;font-size:13px;font-weight:600}.stat.hero-stat .n{color:var(--coral);font-size:48px}.stat.hero-stat{grid-column:1/-1}.table{border-collapse:collapse;background:var(--card);border-radius:var(--radius-sm);width:100%;box-shadow:var(--shadow-card);font-size:14.5px;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--line-soft);padding:12px 14px}.table th{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background:#fffaf7;font-size:12px}.table tr:last-child td{border-bottom:0}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.banner{background:var(--sun-soft);border-radius:var(--radius-sm);color:#7a5c00;margin-bottom:20px;padding:14px 16px;font-size:14px;line-height:1.5}.disclosure{text-align:center;color:var(--ink-faint);max-width:38ch;margin:16px auto 0;font-size:13.5px;line-height:1.5}.error-text{color:var(--coral);text-align:center;margin-top:14px;font-size:15px;font-weight:700}.center{text-align:center}.muted{color:var(--ink-soft);font-size:15px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.checklist{text-align:left;margin-bottom:26px}.checklist h3{font-family:var(--display);color:var(--ink);margin:0 0 14px;font-size:17px}.checklist ul{gap:10px;margin:0 0 14px;padding:0;list-style:none;display:grid}.checklist li{color:var(--ink);align-items:center;gap:10px;font-size:15px;line-height:1.4;display:flex}.checklist .tick{background:var(--mint);width:22px;height:22px;color:var(--mint-ink);border-radius:50%;flex:none;place-items:center;display:grid}.checklist .muted{border-top:1px solid var(--line-soft);margin:0;padding-top:12px;font-size:14px}.banner strong{margin-bottom:2px;font-size:15px;display:block}.confirm-box{background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;color:var(--ink);grid-template-columns:auto 1fr;align-items:start;gap:12px;margin-bottom:12px;padding:16px 18px;font-size:15px;line-height:1.45;transition:border-color .15s,background .15s;display:grid}.confirm-box:has(input:checked){border-color:var(--coral);background:var(--coral-soft)}.confirm-box.has-error{border-color:var(--coral)}.confirm-box input{width:22px;height:22px;accent-color:var(--coral);cursor:pointer;flex:none;margin:0}.confirm-box .field-error{grid-column:2;margin-top:6px}.brand-panel{display:none}.brand-mark{cursor:pointer;font-family:var(--display);color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:22px;font-weight:800;display:inline-flex}@media (width>=1000px){.layout{align-items:stretch;min-height:100vh;display:flex}.brand-panel{border-right:1.5px solid var(--line);flex-direction:column;justify-content:center;gap:44px;width:46%;max-width:640px;height:100vh;padding:56px clamp(40px,4.5vw,84px);display:flex;position:sticky;top:0;overflow:hidden}.brand-panel .hero-brand{text-align:left}.brand-panel .hero-art{max-width:300px;margin:0 0 34px}.brand-panel h1{margin-bottom:22px;font-size:clamp(44px,4.2vw,62px);line-height:1.08}.brand-panel .hero-sub{max-width:44ch;margin:0;font-size:18px}.content-panel{background:var(--card);flex:1;display:flex}.content-panel .shell{width:100%;max-width:500px;margin:auto;padding:56px 40px}.content-panel .card{border:1.5px solid var(--line-soft)}.content-panel .header,.content-panel .hero-brand{display:none}.content-panel .hero{text-align:left}.content-panel .hero .event-strip{margin-top:0}}@media (width>=1500px){.content-panel .shell{margin:auto auto auto clamp(60px,8vw,160px)}}.guest-box{margin-top:4px;margin-bottom:22px}.confirm-box.guest-box.is-on{border-color:var(--sun-deep);background:var(--sun-soft)}.guest-box input{accent-color:var(--sun-deep)}.confirm-hint{color:var(--ink-soft);margin-top:5px;font-size:13.5px;line-height:1.45;display:block}.lock-card{text-align:left;margin-bottom:30px}.lock-card .field-input{width:100%}.table .row-muted td{opacity:.55}.cell-sub{color:var(--ink-soft);max-width:34ch;margin-top:3px;font-size:13px;line-height:1.4;display:block}.flag{border-radius:var(--radius-pill);background:var(--coral-soft);color:var(--coral-deep);text-transform:uppercase;letter-spacing:.03em;margin-top:4px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}@media (width>=1000px){.content-panel .shell.admin-wide{max-width:860px}}.mine{text-align:left;margin-bottom:26px}.mine h3{font-family:var(--display);color:var(--ink);margin:0 0 14px;font-size:17px}.mine ul{gap:10px;margin:0 0 14px;padding:0;list-style:none;display:grid}.mine li{border:1.5px solid var(--line);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.mine li.is-editing{border-color:var(--sun-deep);background:var(--sun-soft)}.mine-who{flex-direction:column;gap:2px;min-width:0;display:flex}.mine-who strong{color:var(--ink);font-size:15px}.mine-meta{color:var(--ink-soft);font-size:13px}.mine .muted{border-top:1px solid var(--line-soft);margin:0;padding-top:12px;font-size:14px}.btn-inline{font-family:var(--display);color:var(--coral);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;flex:none;padding:4px 2px;font-size:14px;text-decoration:underline}.btn-inline:disabled{color:var(--ink-faint);cursor:default;text-decoration:none}.editing-bar{border:1.5px solid var(--sun-deep);border-radius:var(--radius-sm);background:var(--sun-soft);color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;padding:12px 16px;font-size:14px;display:flex}.deck-hint{margin:-12px 0 0;font-size:13px}.deck-or{color:var(--ink-faint);font-family:var(--display);align-items:center;gap:12px;margin:18px 0;font-size:14px;display:flex}.deck-or:before,.deck-or:after{content:"";background:var(--line-soft);flex:1;height:1px}.share-prompt{border-top:1px solid var(--line-soft);margin-top:26px;padding-top:22px}.share-prompt p{font-family:var(--display);color:var(--ink);margin:0 0 12px;font-size:16px}.stepper-cap{color:var(--ink-faint)}.banner.seats-left{background:var(--coral-soft);color:var(--coral-deep)}.preview-page{flex:1;width:100%;min-width:0}.preview-bar{z-index:20;background:var(--ink);color:#fff;padding:12px 20px 14px;position:sticky;top:0}.preview-bar-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;max-width:720px;margin:0 auto 10px;display:flex}.preview-bar-row strong{font-family:var(--display);font-size:15px}.preview-bar .btn-inline{color:var(--sun)}.preview-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;max-width:720px;margin:0 auto;display:flex;overflow-x:auto}.preview-tabs::-webkit-scrollbar{display:none}.preview-tab{border-radius:var(--radius-pill);color:#ffffffd1;font-family:var(--sans);cursor:pointer;background:0 0;border:1.5px solid #ffffff47;flex:none;padding:6px 14px;font-size:13px;font-weight:700}.preview-tab:hover{color:#fff;border-color:#ffffff8c}.preview-tab.is-on{background:var(--sun);border-color:var(--sun);color:var(--ink)}.preview-note{color:#ffffffb8;max-width:720px;margin:10px auto 0;font-size:13px;line-height:1.5}:root{--cream:#fcefe7;--cream-deep:#f9e3d7;--card:#fff;--coral:#f94e63;--coral-deep:#d4374b;--coral-soft:#ffe4e8;--sun:#fbd34d;--sun-deep:#e0b431;--sun-soft:#fdf3d3;--mint:#dcfce7;--mint-ink:#166534;--ink:#2b1a2e;--ink-soft:#7d6a73;--ink-faint:#a99aa1;--line:#f3d7cb;--line-soft:#f8e7de;--radius:22px;--radius-sm:16px;--radius-pill:999px;--shadow-card:0 1px 2px #783c280a, 0 14px 32px -16px #783c2838;--shadow-lift:0 2px 6px #783c2814, 0 22px 48px -20px #783c284d;--display:"Baloo 2", "Trebuchet MS", system-ui, sans-serif;--sans:"Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--maxw:560px}*{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55;overflow-x:hidden}#root{min-height:100dvh}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;margin:0;font-weight:800;line-height:1.08}p{margin:0}button,input,textarea,select{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer}a{color:var(--coral);font-weight:700;text-decoration:none}a:hover{text-decoration:underline}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}
