:root{--bg: #fffaf7;--surface: #fff;--surface-2: #fbeeea;--text: #221a16;--muted: #7a6c64;--line: #efe0d8;--accent: #D52017;--accent-ink: #fff;--accent-soft: rgba(213, 32, 23, .08);--danger: #b91c1c;--focus: #1d4ed8;--r-md: 10px;--r-lg: 18px;--header-h: 56px;--max-w: 560px;--fs-xs: 12px;--fs-sm: 13.5px;--fs-body: 15px;--fs-h2: 18px;--fs-h1: 26px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #18120f;--surface: #221a16;--surface-2: #2b211c;--text: #f6ece6;--muted: #ad9d93;--line: #392c25;--accent: #F2493D;--accent-ink: #1a0f08;--accent-soft: rgba(242, 73, 61, .16);--danger: #f87171;--focus: #60a5fa;color-scheme:dark}}:root[data-theme=dark]{--bg: #18120f;--surface: #221a16;--surface-2: #2b211c;--text: #f6ece6;--muted: #ad9d93;--line: #392c25;--accent: #F2493D;--accent-ink: #1a0f08;--accent-soft: rgba(242, 73, 61, .16);--danger: #f87171;--focus: #60a5fa;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:var(--fs-body)/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0 0 .4em;line-height:1.25}h1{font-size:var(--fs-h1);font-weight:800}h2{font-size:var(--fs-h2);font-weight:700}p{margin:0 0 .75em}a{color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:var(--fs-sm)}.error{color:var(--danger);font-size:var(--fs-sm);margin-top:4px}.shell{min-height:100%;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:10px;min-height:var(--header-h);padding:0 16px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:17px;text-decoration:none;color:var(--text)}.brand img{width:26px;height:26px;border-radius:7px}.topbar nav{display:flex;gap:4px;margin-left:auto}.topbar button.navlink{background:none;border:0;padding:8px 10px;border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--muted);cursor:pointer}.topbar button.navlink.active{color:var(--accent);font-weight:700}main.page{flex:1;width:100%;max-width:var(--max-w);margin:0 auto;padding:20px 16px 48px}.wide main.page,main.page.wide{max-width:760px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;margin-bottom:14px}.field{margin-bottom:16px}.field label{display:block;font-size:var(--fs-sm);font-weight:600;margin-bottom:6px}.field .hint{font-size:var(--fs-xs);color:var(--muted);margin-top:4px}input[type=text],input[type=date],input[type=password],input[type=number],select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--text);font:inherit}textarea{resize:vertical;min-height:70px}input:focus,select:focus,textarea:focus{border-color:var(--accent)}button.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:999px;padding:13px 22px;font:inherit;font-weight:700;cursor:pointer;width:100%}button.primary:disabled{opacity:.5;cursor:default}button.secondary{background:none;border:1px solid var(--line);color:var(--text);border-radius:999px;padding:11px 20px;font:inherit;font-weight:600;cursor:pointer}button.link{background:none;border:0;color:var(--accent);font:inherit;cursor:pointer;padding:0}.row{display:flex;gap:10px}.row>*{flex:1}.choice-grid{display:flex;flex-wrap:wrap;gap:8px}.choice{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:10px 16px;font:inherit;font-size:var(--fs-sm);cursor:pointer;text-align:left}.choice.selected{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.progress-track{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin-bottom:20px}.progress-fill{height:100%;background:var(--accent);transition:width .2s ease}.hero{text-align:center;padding:36px 0 28px}.hero h1{font-size:30px}.hero .tagline{font-size:17px;color:var(--muted);max-width:440px;margin:0 auto 24px}.feature-grid{display:grid;grid-template-columns:1fr;gap:12px;margin:24px 0}@media (min-width: 480px){.feature-grid{grid-template-columns:1fr 1fr}}.feature{background:var(--surface-2);border-radius:var(--r-lg);padding:16px}.feature .icon{font-size:22px}.deck-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;margin-bottom:16px}.deck-card .avatar{width:52px;height:52px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px}.deck-card .compat{font-weight:800;color:var(--accent)}.deck-actions{display:flex;gap:10px;margin-top:14px}.deck-actions button{flex:1}.empty-state{text-align:center;padding:40px 16px;color:var(--muted)}.match-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer;background:none;border-left:none;border-right:none;border-top:none;width:100%;text-align:left;font:inherit;color:inherit}.match-row .avatar{width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800}.chat-shell{display:flex;flex-direction:column;height:calc(100vh - var(--header-h) - 40px)}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:10px 0}.bubble{max-width:78%;padding:10px 14px;border-radius:16px;font-size:var(--fs-body)}.bubble.mine{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px}.bubble.theirs{align-self:flex-start;background:var(--surface-2);border-bottom-left-radius:4px}.bubble .time{display:block;font-size:10px;opacity:.7;margin-top:3px}.chat-input{display:flex;gap:8px;padding:10px 0;border-top:1px solid var(--line)}.chat-input input{flex:1}.icon-btn{background:var(--surface-2);border:0;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:17px}.conversion-card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;margin:12px 0;position:relative}.conversion-card .close{position:absolute;top:10px;right:10px;background:none;border:0;cursor:pointer;color:var(--muted);font-size:16px}.conversion-card h3{font-size:var(--fs-body)}.conversion-card button.primary{width:auto;margin-top:10px;padding:9px 16px}.recovery-code{font:700 20px/1.4 ui-monospace,monospace;letter-spacing:1px;background:var(--surface-2);border-radius:var(--r-md);padding:14px;text-align:center;margin:12px 0}@media (max-width: 720px){.topbar nav button.navlink span.label{display:none}}.turnstile{margin:12px 0;min-height:65px}.seg{display:flex;gap:4px;background:var(--surface-2);border-radius:999px;padding:4px;margin:6px 0 16px}.seg button{flex:1;border:0;background:none;border-radius:999px;padding:8px 10px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0000000f}.rules{list-style:none;padding:0;margin:6px 0 0;font-size:var(--fs-xs);color:var(--muted)}.rules li.ok{color:#15803d}.home{--serif: Georgia, "Times New Roman", serif}.home h1,.home h2,.home-final h2{font-family:var(--serif);font-weight:700;letter-spacing:-.01em}.home-hero{text-align:center;padding:36px 0 20px}.home-hero .kicker{display:inline-block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:5px 12px;border-radius:999px;margin:0 0 16px}.home-hero h1{font-size:clamp(32px,8vw,46px);line-height:1.1;margin-bottom:14px}.home-hero .lead{font-size:17px;color:var(--muted);max-width:520px;margin:0 auto 22px}.hero-ctas{display:flex;flex-direction:column;gap:10px;max-width:320px;margin:0 auto}.hero-ctas button{width:100%}.assure{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;font-size:var(--fs-sm);color:var(--muted)}.assure li:before{content:"✓ ";color:#15803d;font-weight:700}.community{margin-top:14px;font-size:var(--fs-sm);color:var(--muted)}.community strong{color:var(--text)}.sample{display:flex;justify-content:center;margin:10px 0 8px}.sample-card{position:relative;width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:0 10px 30px #3c140a0f}.sample-tag{position:absolute;top:-10px;right:14px;font-size:11px;font-weight:700;background:var(--text);color:var(--bg);padding:3px 9px;border-radius:999px}.sample-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.sample-head .avatar,.deck-card .avatar{width:48px;height:48px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;flex-shrink:0}.sample-score{margin-left:auto;text-align:right;font-family:var(--serif);font-weight:700;font-size:26px;color:var(--accent);line-height:1}.sample-score span{display:block;font-family:system-ui,sans-serif;font-size:11px;font-weight:600;color:var(--muted)}.bar-row{display:grid;grid-template-columns:minmax(88px,128px) 1fr 38px;align-items:center;gap:10px;font-size:var(--fs-sm);margin:6px 0}.bar{height:6px;background:var(--surface-2);border-radius:999px;overflow:hidden}.bar>div{height:100%;background:var(--accent);border-radius:999px}.sample-why{margin:12px 0 0;font-size:var(--fs-sm);background:var(--surface-2);border-radius:var(--r-md);padding:10px 12px}.home-section{margin:40px 0 0}.home-section h2{font-size:24px;text-align:center;margin-bottom:18px}.steps{list-style:none;padding:0;margin:0;display:grid;gap:14px}.steps li{display:flex;gap:14px;align-items:flex-start}.step-n{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-weight:800}.steps h3,.why h3{font-size:16px;margin-bottom:2px}.steps p,.why p{margin:0}.why-grid{display:grid;grid-template-columns:1fr;gap:12px}.why{background:var(--surface-2);border-radius:var(--r-lg);padding:16px 18px}.app-band{margin:40px 0 0;display:flex;flex-direction:column;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;background:var(--surface)}.app-band h3{font-size:16px;margin-bottom:2px}.app-band p{margin:0}.play-badge{display:inline-flex;align-items:center;gap:10px;background:var(--text);color:var(--bg);border-radius:12px;padding:8px 14px 8px 12px;text-decoration:none;flex-shrink:0}.play-badge svg{width:20px;height:20px;fill:currentColor}.play-badge span{display:flex;flex-direction:column;font-weight:700;font-size:15px;line-height:1.1}.play-badge small{font-size:10px;font-weight:500;opacity:.85}.faq details{border-bottom:1px solid var(--line);padding:12px 2px}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary:after{content:"+";color:var(--accent);font-weight:700}.faq details[open] summary:after{content:"–"}.faq summary::-webkit-details-marker{display:none}.faq p{margin:8px 0 0}.home-final{text-align:center;margin:44px 0 0;padding:28px 18px;background:var(--accent-soft);border-radius:var(--r-lg)}.home-final h2{font-size:24px;margin-bottom:14px}.home-final button{max-width:320px}.home-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:28px 0 8px;font-size:var(--fs-xs)}.home-foot a{color:var(--muted);text-decoration:none}.home-foot a:hover{text-decoration:underline}@media (min-width: 720px){.hero-ctas{flex-direction:row;max-width:420px}.why-grid{grid-template-columns:repeat(3,1fr)}.app-band{flex-direction:row;align-items:center;justify-content:space-between}}@media (prefers-reduced-motion: reduce){.progress-fill{transition:none}}.nudge{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--r-lg);padding:14px 16px;margin:0 0 14px}.nudge.subtle{border-left-color:var(--line);background:var(--surface-2);padding:10px 14px}.nudge-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.nudge p{margin:8px 0 10px}.small-btn{padding:8px 16px;font-size:var(--fs-sm)}.toast{background:var(--accent-soft)}.deck-head{display:flex;gap:12px;align-items:center}.deck-who{min-width:0}.deck-who h3{margin:0;font-size:18px}.deck-who p{margin:2px 0 0}.verified{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;border-radius:50%;background:#1d4ed8;color:#fff;font-size:11px;vertical-align:middle}.deck-score{margin-left:auto;text-align:right;font-family:Georgia,serif;font-weight:700;font-size:26px;color:var(--accent);line-height:1}.deck-score span{display:block;font-family:system-ui,sans-serif;font-size:11px;font-weight:600;color:var(--muted)}.confidence{margin:8px 0 0}.deck-bars{margin-top:12px}.deck-why,.deck-interests{margin-top:14px}.deck-card h4{font-size:var(--fs-sm);margin:0 0 6px}.deck-why ul{margin:0;padding-left:18px;font-size:var(--fs-sm)}.deck-bio{margin:14px 0 0;padding:10px 14px;background:var(--surface-2);border-radius:var(--r-md);font-style:italic}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:var(--fs-xs);padding:4px 10px;border-radius:999px;border:1px solid var(--line)}.chip.shared{background:var(--accent-soft);border-color:transparent;color:var(--accent);font-weight:700}.chip.tag{background:var(--surface-2);border-color:transparent}.chips.tags{margin-top:12px}.deck-details{display:grid;grid-template-columns:1fr;gap:6px;margin:14px 0 0;font-size:var(--fs-sm)}.deck-details div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--line);padding-bottom:4px}.deck-details dt{color:var(--muted)}.deck-details dd{margin:0;text-align:right}.deck-card{margin-bottom:16px}.form-h{font-size:var(--fs-h2);margin:22px 0 12px;padding-top:14px;border-top:1px solid var(--line)}.opt{font-weight:400;color:var(--muted);font-size:var(--fs-xs)}.hint.ok{color:#15803d}textarea{width:100%;box-sizing:border-box;font:inherit;padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--text);resize:vertical}.compat-c{color:hsl(var(--compat-h, 0) 85% 38%)!important}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .compat-c{color:hsl(var(--compat-h, 0) 70% 62%)!important}}:root[data-theme=dark] .compat-c{color:hsl(var(--compat-h, 0) 70% 62%)!important}.compat-bar{background:hsl(var(--compat-h, 0) 80% 47%)!important}.chips.about{margin-top:12px}.chip.info{background:var(--surface-2);border-color:transparent;font-size:var(--fs-sm)}.chip.info b{font-weight:600;color:var(--muted)}.nudge.warn{border-left-color:#b45309}.combo{position:relative;display:flex}.combo input{flex:1;padding-right:40px}.combo-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:none;color:var(--muted);font-size:16px;cursor:pointer;border-radius:8px}.city-picker{position:relative}.combo-list{position:absolute;z-index:5;left:0;right:0;margin:4px 0 0;padding:4px;list-style:none;max-height:260px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 10px 24px #0000001f}.combo-list li{padding:9px 12px;border-radius:8px;cursor:pointer}.combo-list li.active{background:var(--surface-2)}.combo-list li.selected{font-weight:700;color:var(--accent)}.combo-list li.combo-empty{cursor:default;color:var(--muted)}.setting{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line)}.setting:first-of-type{border-top:0}.setting p{margin:4px 0 0}.setting>button{flex-shrink:0;width:auto}.switch{position:relative;width:48px;height:28px;border-radius:999px;border:0;background:var(--line);cursor:pointer;flex-shrink:0;transition:background .15s}.switch span{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:left .15s}.switch.on{background:#15803d}.switch.on span{left:23px}.switch:disabled{opacity:.5;cursor:default}.danger-btn{color:var(--danger);border-color:var(--danger)}.danger-fill{background:var(--danger)!important}.delete-box{background:var(--surface-2);border-radius:var(--r-md);padding:12px;margin-top:4px}.delete-box label{display:block;font-size:var(--fs-sm);margin-bottom:6px}@media (prefers-reduced-motion: reduce){.switch,.switch span{transition:none}}.mobile-member{display:flex;gap:8px;align-items:center;margin-top:14px;padding:9px 12px;border-radius:var(--r-md);background:var(--surface-2);color:var(--text);text-decoration:none;font-size:var(--fs-sm)}.mobile-member u{color:var(--accent);text-decoration:none;font-weight:700}.mobile-member:hover u{text-decoration:underline}.quota{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:10px 14px;margin:0 0 14px}.quota.out{border-color:#b45309}.quota-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.quota-label{font-weight:700;font-size:var(--fs-sm)}.quota-dots{display:inline-flex;gap:5px;align-items:center}.quota-dots i{width:10px;height:10px;border-radius:50%;background:var(--line);font-style:normal}.quota-dots i.on{background:var(--accent)}.quota-dots i.star{width:auto;height:auto;background:none;color:var(--line);font-size:15px;line-height:1}.quota-dots i.star.on{color:#d97706}.quota-text{margin-left:auto;font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums}.quota-text b{color:var(--text)}.quota-hint{margin:6px 0 0;font-size:var(--fs-xs);color:var(--muted)}.super-btn{flex:1;font:inherit;font-weight:700;border-radius:999px;padding:10px 14px;cursor:pointer;border:1.5px solid #d97706;background:transparent;color:#b45309}.super-btn:hover:not(:disabled){background:#d9770614}.deck-actions button:disabled{opacity:.45;cursor:not-allowed}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .super-btn{color:#fbbf24;border-color:#fbbf24}}:root[data-theme=dark] .super-btn{color:#fbbf24;border-color:#fbbf24}@media (max-width: 420px){.deck-actions{flex-wrap:wrap}.deck-actions .primary{flex-basis:100%;order:-1}}.seg-tabs{display:flex;gap:4px;background:var(--surface-2);border-radius:999px;padding:4px;margin:0 0 8px}.seg-tabs button{flex:1;border:0;background:none;font:inherit;font-weight:600;color:var(--muted);padding:8px 10px;border-radius:999px;cursor:pointer;display:inline-flex;gap:6px;align-items:center;justify-content:center}.seg-tabs button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #00000014}.seg-tabs .count{background:var(--accent);color:#fff;border-radius:999px;font-size:11px;padding:0 7px;line-height:18px}.seg-tabs .count.muted-count{background:var(--line);color:var(--text)}.request-row{cursor:default;gap:8px}.request-row.is-super{background:linear-gradient(90deg,rgba(217,119,6,.08),transparent 60%)}.request-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0;background:none;border:0;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.request-main strong{margin-right:6px}.request-actions{display:flex;gap:6px;flex-shrink:0}.request-actions .small-btn{padding:6px 12px}.super-tag{font-size:11px;font-weight:700;color:#b45309;background:#d977061f;border-radius:999px;padding:1px 8px;margin-right:4px}.new-tag{font-size:11px;font-weight:700;color:#fff;background:var(--accent);border-radius:999px;padding:1px 8px}.super-note{font-weight:700;color:#b45309}.request-open{margin-top:6px}.navlink{position:relative}.nav-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:800;line-height:16px;text-align:center}@media (max-width: 480px){.request-row{flex-wrap:wrap}.request-actions{width:100%;justify-content:flex-end}}.bubble.media{padding:8px 10px}.voice{display:flex;align-items:center;gap:8px;width:min(250px,62vw)}.voice-play{width:34px;height:34px;border-radius:50%;border:0;cursor:pointer;font-size:13px;background:#ffffff40;color:inherit;flex-shrink:0}.bubble.theirs .voice-play{background:var(--accent);color:#fff}.voice-wave{display:flex;align-items:center;gap:1px;height:28px;flex:1;min-width:0;overflow:hidden}.voice-wave i{flex:1 1 0;min-width:1px;max-width:3px;border-radius:2px;background:currentColor;opacity:.35}.voice-wave i.done{opacity:1}.voice-time,.voice-played{font-size:11px;opacity:.85;font-variant-numeric:tabular-nums}.photo-thumb{display:block;border:0;padding:0;background:none;cursor:zoom-in;border-radius:12px;overflow:hidden}.photo-thumb img{display:block;width:min(220px,58vw);aspect-ratio:4 / 5;object-fit:cover;background:#0000001a}.photo-tile{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:#00000014;font-weight:600;text-align:left}.photo-tile.action{border:0;cursor:pointer;font:inherit;font-weight:600;color:inherit}.photo-tile .small{font-weight:400;opacity:.8}.media-tag{display:inline-block;margin-top:4px;font-size:11px;font-weight:600;opacity:.9}.muted-inline{opacity:.7}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;gap:12px}.lightbox img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain;border-radius:8px;user-select:none;-webkit-user-select:none}.lightbox-bar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:center;color:#fff}.lightbox-bar .link{color:#fff}.lightbox-bar .link.danger{color:#fca5a5}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#00000073;display:flex;align-items:flex-end;justify-content:center}.sheet-card{background:var(--surface);width:100%;max-width:520px;border-radius:18px 18px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));max-height:92vh;overflow-y:auto}@media (min-width: 640px){.sheet{align-items:center}.sheet-card{border-radius:18px}}.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.source-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}.source-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);font:inherit;font-size:28px;color:inherit;cursor:pointer}.source-btn span{font-size:var(--fs-body);font-weight:700}.source-btn small{font-size:11px;color:var(--muted)}.photo-preview{display:block;width:100%;max-height:50vh;object-fit:contain;border-radius:12px;background:#000}.camera video{width:100%;max-height:60vh;border-radius:12px;background:#000;display:block}.camera video.mirror{transform:scaleX(-1)}.row-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.chat-input.recording{align-items:center}.rec-dot{width:12px;height:12px;border-radius:50%;background:#dc2626;transition:transform .1s;flex-shrink:0}.rec-time{flex:1;font-variant-numeric:tabular-nums;font-weight:600}.icon-btn.send{background:var(--accent);color:#fff}.icon-btn:disabled{opacity:.5}.chat-notice{font-size:var(--fs-sm);background:var(--surface-2);border-radius:10px;padding:8px 12px;margin-top:6px}.gift-card{display:flex;flex-direction:column;align-items:center;gap:4px;width:200px;padding:10px;border-radius:16px;background:var(--surface);color:var(--text);border:1px solid var(--line);text-align:center}.gift-card.gold{border:2px solid #e2b04a}.gift-card .small{font-size:var(--fs-xs);color:var(--muted)}.gift-card em{font-size:var(--fs-sm)}.gift-emoji{font-size:56px;line-height:1}
