/* SayYes Design Freeze — 2026-09-17 */
.share-screen{max-width:620px}.share-screen h1{margin-bottom:12px}.share-question{margin-top:0}.share-tone-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0 14px}.share-tone{border:1px solid var(--line);background:#fff;color:var(--cherry);border-radius:14px;padding:13px 8px;font:inherit;font-size:13px;font-weight:850;cursor:pointer}.share-tone.selected{background:var(--pink2);border-color:#d89aae;box-shadow:0 0 0 2px rgba(193,106,132,.08)}.share-preview{min-height:94px;display:flex;align-items:center;background:#fff8fa;border:1px solid #ecdde2;border-radius:20px;padding:20px;font-size:17px;line-height:1.5;color:#4b2634;margin-bottom:18px}.share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.only-link{display:block;margin:12px auto 0;color:#8a6070}.serious-screen{animation:seriousIn .28s ease both}@keyframes seriousIn{from{opacity:0;transform:translateY(8px) scale(.992)}to{opacity:1;transform:none}}.joke-screen.leaving{opacity:.92;transition:opacity .15s ease}
.ticket-screen{max-width:620px;background:transparent;border:0;box-shadow:none;padding:8px}.ticket{background:linear-gradient(155deg,#fffefc 0%,#fff8f8 58%,#f5dde4 100%);border:1px solid #dfbdc7;border-radius:30px;padding:34px 32px 30px;box-shadow:0 26px 70px rgba(85,25,45,.16);position:relative;overflow:hidden;min-height:420px}.ticket:before,.ticket:after{content:'';position:absolute;top:68%;width:28px;height:28px;border-radius:50%;background:var(--milk);border:1px solid #dfbdc7;z-index:2}.ticket:before{left:-15px}.ticket:after{right:-15px}.ticket-kicker{margin:0 0 18px;font-size:13px;font-weight:950;letter-spacing:.16em;color:#7a1f3a}.ticket-names{font-size:clamp(30px,8vw,48px);font-weight:900;letter-spacing:-.055em;color:var(--burgundy);margin:0 0 34px;line-height:1.03}.ticket-names span{color:#c75b78;font-weight:700}.ticket-date{font-size:clamp(28px,7vw,40px);font-weight:950;letter-spacing:-.035em;color:var(--burgundy);line-height:1.05}.ticket-time{font-size:clamp(34px,10vw,56px);font-weight:950;letter-spacing:-.05em;color:#a1264a;margin:2px 0 24px}.ticket-activity{display:inline-flex;align-items:center;min-height:46px;border-radius:999px;background:#fff;border:1px solid #ead4da;padding:11px 16px;font-size:16px;font-weight:900;letter-spacing:.04em;color:#5a1d31}.ticket-perf{border-top:2px dashed rgba(126,50,73,.18);margin:34px -32px 20px}.ticket-footer{font-size:11px;letter-spacing:.14em;color:#866270;font-weight:850}.ticket-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 0}.viral{text-align:center;padding:44px 10px 0}.viral p{margin:0 0 8px;color:#856775;font-size:15px}.viral strong{display:block;color:var(--burgundy);font-size:22px;line-height:1.25;margin-bottom:18px}.viral .btn{max-width:340px;margin:auto}
@media(max-width:760px){.share-tone-row{grid-template-columns:1fr}.share-actions{grid-template-columns:1fr}.ticket{padding:30px 24px 26px;min-height:390px}.ticket-perf{margin-left:-24px;margin-right:-24px}.ticket-actions{grid-template-columns:1fr}.viral{padding-top:38px}.ticket-date{font-size:30px}.ticket-time{font-size:48px}}

/* Presentation polish — keeps frozen copy and flow intact. */
.screen-card{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,250,251,.92));border-color:rgba(126,68,86,.16);box-shadow:0 18px 48px rgba(85,25,45,.12),0 2px 10px rgba(85,25,45,.05)}
.progress span{height:5px;background:#eee2e6}.progress .on{background:linear-gradient(90deg,#8d203f,#c7476b)}
.btn,.choice.big,.activity,.vibe,.share-tone{min-height:48px;-webkit-user-select:none;user-select:none}
.btn,.choice.big,.activity,.vibe,.share-tone,.icon-close{transition:transform .16s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}
.primary{background:linear-gradient(180deg,#711b33 0%,#581225 100%);box-shadow:0 12px 28px rgba(91,19,42,.2),inset 0 1px 0 rgba(255,255,255,.12)}
.secondary{box-shadow:0 5px 16px rgba(85,25,45,.05)}
.btn:focus-visible,.choice.big:focus-visible,.activity:focus-visible,.vibe:focus-visible,.share-tone:focus-visible,.icon-close:focus-visible,.text-link:focus-visible{outline:3px solid rgba(183,44,81,.24);outline-offset:3px}
.field input,.field textarea{min-height:50px;scroll-margin-top:96px;scroll-margin-bottom:160px;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.field input:focus,.field textarea:focus{background:#fff;box-shadow:0 0 0 4px rgba(193,106,132,.11),0 8px 22px rgba(85,25,45,.05)}
.choice.big,.activity,.vibe,.share-tone{box-shadow:0 4px 14px rgba(85,25,45,.04)}
.invite-preview{border-color:rgba(126,68,86,.15);box-shadow:0 18px 42px rgba(85,25,45,.1)}
.share-preview{position:relative;background:linear-gradient(145deg,#fff 0%,#fff6f8 100%);border-color:#ead6dc;box-shadow:0 10px 28px rgba(85,25,45,.07)}
.share-preview:before{content:'“';align-self:flex-start;margin:-8px 9px 0 -2px;color:#c65a79;font:900 34px/1 Georgia,serif;opacity:.7}
.success-mark{box-shadow:0 10px 24px rgba(140,36,66,.12)}
.ticket{background:linear-gradient(150deg,#fffefc 0%,#fff8f9 48%,#f6dfe6 100%);border-color:#dfbdc7;box-shadow:0 30px 80px rgba(85,25,45,.17),inset 0 1px 0 rgba(255,255,255,.9)}
.ticket-kicker{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.68);border:1px solid rgba(125,45,70,.1)}
.ticket-date,.ticket-time{text-wrap:balance}.ticket-activity{box-shadow:0 8px 20px rgba(85,25,45,.07)}
.ticket-actions .btn{min-height:52px}.viral{border-top:1px solid rgba(128,70,87,.08);margin-top:26px}
#toast{box-shadow:0 14px 36px rgba(53,19,31,.24)}
#app{scroll-padding-bottom:calc(160px + env(safe-area-inset-bottom))}
@media(hover:hover) and (pointer:fine){.primary:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(91,19,42,.24),inset 0 1px 0 rgba(255,255,255,.14)}.secondary:hover,.choice.big:hover,.activity:hover,.vibe:hover,.share-tone:hover{transform:translateY(-1px);box-shadow:0 9px 24px rgba(85,25,45,.08)}}
@media(pointer:coarse){.btn,.choice.big,.activity,.vibe,.share-tone,.text-link,.icon-close{min-height:48px}.btn:active,.choice.big:active,.activity:active,.vibe:active,.share-tone:active{transform:scale(.985)}}
@media(max-width:760px){.screen-card{margin-top:max(8px,2vh);padding:28px 21px;border-radius:28px}.share-screen{padding-bottom:24px}.share-preview{font-size:16px;padding:18px}.ticket-screen{padding:4px}.ticket{border-radius:28px;padding:28px 23px 24px}.ticket-actions{gap:9px}.viral{padding-top:32px}.only-link{min-height:48px;display:flex;align-items:center;justify-content:center}.field input,.field textarea{scroll-margin-top:72px;scroll-margin-bottom:180px}}
@media(max-width:390px){.screen-card{padding-left:18px;padding-right:18px}.ticket{padding-left:20px;padding-right:20px}.ticket-perf{margin-left:-20px;margin-right:-20px}.share-preview{padding:16px}}
@media(prefers-reduced-motion:reduce){.serious-screen{animation:none}.btn,.choice.big,.activity,.vibe,.share-tone,.icon-close,.field input,.field textarea{transition:none!important}}

/* Keep private-copy recovery and compact mobile controls usable without a redesign. */
.brand.brand-lockup{min-height:44px}
.contact-row a[href^="tel:"],.group-result-row a[href^="tel:"]{display:inline-flex;align-items:center;min-height:44px;padding-block:10px}
.screen-card>.icon-close~.eyebrow,.screen-card>.icon-close~.group-context{margin-inline:48px;overflow-wrap:anywhere;min-height:28px}
.manual-copy{position:fixed;inset:0;height:fit-content;width:calc(100% - 32px);max-width:560px;max-height:calc(100dvh - 32px);margin:auto;overflow:auto;color:var(--ink)}
.manual-copy::backdrop{background:rgba(53,19,31,.35)}
.manual-copy h2{margin:0;color:var(--burgundy);font-size:26px}
.manual-copy>p{font-size:16px}
.manual-copy textarea{user-select:text;-webkit-user-select:text;resize:vertical}
