:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0b;--bg-elev:#121214c7;--fg:#ecece9;--fg-dim:#ecece994;--fg-faint:#ecece94d;--line:#ecece924;--line-strong:#ecece952;--globe:#d8d8d6;--land:#e3e3df;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fs-xs:11px;--fs-sm:12.5px;--fs-md:14px;--fs-lg:17px;--tracking:.14em;--radius:999px;--radius-card:7px;--space-1:6px;--space-2:10px;--space-3:16px;--space-4:24px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--ease:cubic-bezier(.22, .61, .36, 1);--dur:.32s;--dur-slow:.7s;--preview-w:116px;--shadow:0 10px 30px #0000008c}@media (min-width:720px){:root{--preview-w:168px;--fs-xs:11.5px;--fs-sm:13px;--fs-md:14.5px}}@media (prefers-reduced-motion:reduce){:root{--dur:0s;--dur-slow:0s}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{background:var(--bg);-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:var(--fs-md);overscroll-behavior:none;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;line-height:1.4;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:focus-visible,a:focus-visible{outline:1px solid var(--fg);outline-offset:3px}.stage{background:var(--bg);position:fixed;inset:0}.stage canvas{touch-action:none;display:block}.stage--entering{animation:stage-in 1.4s var(--ease) both}@keyframes stage-in{0%{opacity:0}to{opacity:1}}.hud{pointer-events:none;z-index:10;padding:calc(var(--safe-top) + var(--space-3)) calc(var(--safe-right) + var(--space-3)) calc(var(--safe-bottom) + var(--space-3)) calc(var(--safe-left) + var(--space-3));gap:var(--space-2);grid-template-rows:auto 1fr auto;grid-template-columns:1fr auto 1fr;display:grid;position:fixed;inset:0}.hud>*{pointer-events:auto}.pill{border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);padding:7px 12px;display:inline-block}.wordmark{font-size:var(--fs-xs);letter-spacing:var(--tracking);text-transform:uppercase;color:var(--fg-dim);-webkit-user-select:none;user-select:none;white-space:nowrap;grid-area:1/1;place-self:start}.wordmark strong{color:var(--fg);font-weight:500}.hint{font-size:var(--fs-xs);letter-spacing:.06em;color:var(--fg-dim);text-align:right;grid-area:1/3;place-self:start end;max-width:34vw}.toggle{border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);grid-area:1/2;place-self:start center;padding:3px;display:inline-flex}.toggle__opt{border-radius:var(--radius);font-size:var(--fs-xs);letter-spacing:var(--tracking);text-transform:uppercase;color:var(--fg-dim);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);padding:7px 16px}.toggle__opt[aria-checked=true]{color:var(--bg);background:var(--fg)}.dock{grid-area:3/1/auto/-1;grid-template-columns:1fr auto 1fr;align-items:end;display:grid}.btn{border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--line-strong);color:var(--fg);font-size:var(--fs-sm);letter-spacing:.08em;-webkit-backdrop-filter:blur(14px);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease), opacity var(--dur) var(--ease);align-items:center;gap:8px;padding:12px 20px;display:inline-flex}.btn:hover{border-color:var(--fg)}.btn:active{transform:scale(.97)}.btn--capture{grid-column:2;justify-self:center}.btn--capture:before{content:"";background:#e2552f;border-radius:50%;width:8px;height:8px;box-shadow:0 0 10px #e2552f99}.btn--ghost{border-color:var(--line);color:var(--fg-dim);font-size:var(--fs-xs);letter-spacing:var(--tracking);text-transform:uppercase;grid-column:3;justify-self:end}.btn--ghost:hover{color:var(--fg);border-color:var(--line-strong)}.status{font-size:var(--fs-xs);color:var(--fg-dim);letter-spacing:.06em;white-space:nowrap;grid-column:1;place-self:end start}.btn--ghost,.btn--capture{white-space:nowrap}@media (max-width:719px){.hint,.status{display:none}.dock{grid-template-columns:1fr auto}.btn--capture{grid-column:1}.btn--ghost{letter-spacing:.1em;grid-column:2;padding:12px 8px}}.preview{width:var(--preview-w);aspect-ratio:16/9;transform:translate(-50%, -50%) scale(var(--pscale,1));border-radius:var(--radius-card);box-shadow:var(--shadow);cursor:pointer;pointer-events:auto;opacity:0;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease), border-color var(--dur) var(--ease);will-change:transform, opacity;background:#111;border:1px solid #ffffff47;position:relative;overflow:hidden}.preview--visible{opacity:1}.preview img,.preview video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.preview video{opacity:0;transition:opacity var(--dur-slow) var(--ease)}.preview--focus{transform:translate(-50%, -50%) scale(calc(var(--pscale,1) * 1.12));z-index:2;border-color:#ffffffd9}.preview--focus video.is-playing{opacity:1}.preview__dot{border-radius:50%;width:7px;height:7px;position:absolute;bottom:7px;left:7px;box-shadow:0 0 0 1px #00000059}.preview__tag{letter-spacing:.12em;text-transform:uppercase;color:#ffffffd9;text-shadow:0 1px 2px #0009;font-size:9px;position:absolute;bottom:5px;right:7px}.player{z-index:50;animation:fade-in var(--dur) var(--ease) both;background:#000;place-items:center;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.player video{object-fit:contain;background:#000;width:100%;height:100%;max-height:100dvh}.player__close{top:calc(var(--safe-top) + var(--space-2));right:calc(var(--safe-right) + var(--space-2));width:44px;height:44px;color:var(--fg);background:#00000073;border-radius:50%;place-items:center;font-size:20px;line-height:1;display:grid;position:absolute}.player__tap{color:var(--fg);font-size:var(--fs-sm);letter-spacing:var(--tracking);text-transform:uppercase;background:#00000059;place-items:center;display:grid;position:absolute;inset:0}.player__tap span{border:1px solid var(--fg);border-radius:50%;place-items:center;width:72px;height:72px;font-size:24px;display:grid}.player__meta{left:calc(var(--safe-left) + var(--space-3));right:calc(var(--safe-right) + 72px);bottom:calc(var(--safe-bottom) + var(--space-4));pointer-events:none;gap:4px;display:grid;position:absolute}.player__caption{font-size:var(--fs-lg);text-shadow:0 1px 3px #000c;line-height:1.3}.player__age{font-size:var(--fs-xs);letter-spacing:var(--tracking);text-transform:uppercase;color:var(--fg-dim)}.player__progress{background:#ffffff26;height:2px;position:absolute;bottom:0;left:0;right:0}.player__progress i{background:var(--fg);transform-origin:0;height:100%;transform:scaleX(var(--p,0));display:block}.sheet-backdrop{z-index:40;animation:fade-in var(--dur) var(--ease) both;background:#00000073;position:fixed;inset:0}.sheet{z-index:41;width:min(100%,520px);padding:var(--space-4) var(--space-4) calc(var(--safe-bottom) + var(--space-4));border:1px solid var(--line);animation:sheet-in var(--dur) var(--ease) both;background:#141416;border-bottom:0;border-radius:18px 18px 0 0;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@keyframes sheet-in{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}.sheet h2{margin:0 0 var(--space-2);font-size:var(--fs-lg);font-weight:500}.sheet p{margin:0 0 var(--space-3);color:var(--fg-dim)}.sheet .rules{margin:0 0 var(--space-4);color:var(--fg-dim);font-size:var(--fs-sm);gap:6px;padding:0;list-style:none;display:grid}.sheet .rules li:before{content:"— ";color:var(--fg-faint)}.fallback{padding:calc(var(--safe-top) + 72px) var(--space-3) calc(var(--safe-bottom) + 96px);position:fixed;inset:0;overflow:auto}.fallback p{color:var(--fg-dim);max-width:48ch;margin:0 auto var(--space-4);text-align:center}.fallback__grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));max-width:1100px;margin:0 auto;display:grid}.fallback__grid .preview{opacity:1;width:auto;position:static;transform:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
