:root{--bg:#020605;--text:#fff;--muted:#fff9;--faint:#fff6;--ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Roboto", system-ui, sans-serif;--rounded:ui-rounded, "SF Pro Rounded", "Nunito", var(--ui);--safe-top:max(env(safe-area-inset-top), 16px);--safe-bottom:max(env(safe-area-inset-bottom), 16px)}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--bg);height:100%;color:var(--text);font:17px/1.35 var(--ui);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}#stage{touch-action:none;width:100vw;height:100dvh;display:block;position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}a{font:inherit;cursor:pointer}:focus-visible{outline-offset:3px;outline:2px solid #fffc}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.primary{background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-width:200px;min-height:52px;padding:14px 32px;font-weight:600;text-decoration:none;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s;display:inline-flex;box-shadow:0 6px 24px #0006;color:var(--bg)!important}.primary:active{transform:scale(.96)}.primary:disabled{cursor:default}.secondary{color:var(--muted);padding:10px 16px;font-size:15px;font-weight:500;text-decoration:none}.glass{-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);color:#ffffffd9;background:#ffffff1a}.round{border-radius:50%;place-items:center;width:40px;height:40px;transition:transform .2s;display:grid}.round:active{transform:scale(.92)}.fine{color:var(--faint);text-align:center;margin:0;font-size:13px}#gate{padding:0 24px calc(var(--safe-bottom) + 24px);text-align:center;flex-direction:column;align-items:center;gap:20px;transition:opacity .3s,transform .3s;display:flex;position:fixed;bottom:0;left:0;right:0}#gate.gone{opacity:0;pointer-events:none;transform:translateY(12px)}#gate .copy{flex-direction:column;align-items:center;gap:10px;max-width:340px;display:flex}#gate h1{font:800 26px/1.15 var(--rounded);letter-spacing:-.2px;text-wrap:balance;margin:0}#message{color:#ffffffb8;text-wrap:pretty;overflow-wrap:anywhere;max-height:6.8em;margin:0;overflow:hidden}#message:empty{display:none}#open,#gateLink{margin-top:8px}#odds{margin-top:-14px;padding:6px 16px}#open .ring{display:none;transform:rotate(-90deg)}#open .ring circle{fill:none;stroke-width:2.5px;stroke:#02020626}#open .ring .arc{stroke:var(--bg);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p,0) * 100);transition:stroke-dashoffset .2s linear}#open.busy .ring{display:block}body.entering #gate{animation:.6s cubic-bezier(.22,1,.36,1) 50ms both rise}@keyframes rise{0%{opacity:0;transform:translateY(16px)}}#status{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;animation:.5s cubic-bezier(.22,1,.36,1) both rise;display:flex;position:fixed;inset:0}#status h1{max-width:320px;font:800 24px/1.2 var(--rounded);text-wrap:balance;margin:0}#status .primary{margin-top:14px}#status p{max-width:320px;color:var(--muted);text-wrap:pretty;margin:0}#status p:empty{display:none}#hud{pointer-events:none;position:fixed;inset:0}#hud>button,#hud #actions{pointer-events:auto}#close,#sound,#menu{top:var(--safe-top);position:absolute}#close{left:16px}#sound,#menu{right:16px}#sound[aria-pressed=true] .mute,#sound[aria-pressed=false] .wave{display:none}#dots{top:calc(var(--safe-top) + 20px);align-items:center;gap:8px;display:flex;position:absolute;left:50%;transform:translate(-50%,-50%)}#dots span{background:#ffffff38;border-radius:50%;width:6px;height:6px;transition:width .35s cubic-bezier(.34,1.3,.64,1),height .35s cubic-bezier(.34,1.3,.64,1),background .35s}#dots span.done{background:#ffffffb3}#dots span.current{background:#fff;width:8px;height:8px}#hint{left:0;right:0;bottom:calc(var(--safe-bottom) + 24px);text-align:center;color:var(--muted);text-shadow:0 0 8px #0009;opacity:0;margin:0;font-weight:600;position:absolute}#summaryTitle{left:24px;right:24px;top:calc(var(--safe-top) + 56px);text-align:center;opacity:0;position:absolute}#summaryTitle h2{font:700 28px/1.15 var(--ui);text-wrap:balance;margin:0 0 4px}#summaryTitle p{color:var(--muted);margin:0}#actions{left:0;right:0;bottom:calc(var(--safe-bottom) + 16px);opacity:0;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute}#keep.done{box-shadow:none;background:#ffffff24;color:#fff!important}#keep.done:before{content:"";background:currentColor;width:16px;height:16px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3L13 4.5' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3L13 4.5' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat}#keptHint,#updateHint{max-width:300px}#badges span{color:var(--bg);font:700 11px/1.2 var(--rounded);letter-spacing:.3px;opacity:0;background:#fff;border-radius:999px;padding:3px 8px;position:absolute;top:0;left:0;box-shadow:0 2px 8px #00000073}#sheet{padding:16px 12px var(--safe-bottom);background:#00000073;justify-content:center;align-items:flex-end;animation:.2s both fade;display:flex;position:fixed;inset:0}#sheet .panel{flex-direction:column;gap:8px;width:100%;max-width:420px;animation:.3s cubic-bezier(.22,1,.36,1) both up;display:flex}#sheetTitle:has(+.rows){background:#20202afa}#sheetTitle{color:var(--muted);text-align:center;background:#282834eb;border-radius:14px 14px 0 0;margin:0;padding:14px 16px 6px;font-size:13px}#sheetTitle:empty{display:none}#sheetItems{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#282834eb;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}#sheetTitle:not(:empty)+#sheetItems{border-radius:0 0 14px 14px;margin-top:-8px}.item{text-align:center;color:#fff;width:100%;min-height:54px;padding:14px 16px;font-size:17px;border-top:1px solid #ffffff14!important}.item:first-child{border-top:0!important}.item.danger{color:#ff6b6b}.item.cancel{background:#282834f5;border-radius:14px;font-weight:600}#sheetItems.rows{-webkit-user-select:text;user-select:text;background:#20202afa;max-height:min(62dvh,560px);padding:6px 0;overflow-y:auto}.odds{grid-template-columns:10px 1fr auto;align-items:center;gap:12px;padding:9px 18px;font-size:15px;display:grid}.odds i{border-radius:50%;width:10px;height:10px}.odds span:last-child{color:var(--muted);font-variant-numeric:tabular-nums}#sheetItems.rows .fine{text-align:left;padding:10px 18px 8px}@keyframes fade{0%{opacity:0}}@keyframes up{0%{opacity:0;transform:translateY(40px)}}#toast{left:50%;top:calc(var(--safe-top) + 4px);text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;pointer-events:none;background:#282834eb;border-radius:999px;max-width:calc(100% - 120px);margin:0;padding:10px 16px;font-size:15px;transition:opacity .25s,transform .25s;position:fixed;transform:translate(-50%,-12px)}#toast.show{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:before{transition-duration:.01ms!important;animation-duration:.01ms!important}}
