:root{--night:#050406;--ink:#f5f3f1;--muted:#ebe6e4a3;--signal:#ff4a38;--signal-ink:#1c0502;--glass-fill:linear-gradient(180deg, #ffffff21, #ffffff0a 55%, #ffffff12);--glass-tint:#100f136b;--glass-blur:blur(22px) saturate(1.7) brightness(1.04);--glass-shadow:0 10px 30px #00000061, 0 1px 3px #0000004d, inset 0 1px 1px #ffffff57, inset 0 -1px 1px #ffffff1a;--rim:linear-gradient(135deg, #ffffffa8, #ffffff1f 30%, #fff0 55%, #ffffff1a 80%, #ffffff61);--well:#ffffff14;--spring:cubic-bezier(.34, 1.56, .64, 1);--display:"Black Han Sans", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--body:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html,body{overscroll-behavior:none;height:100%}body{background:var(--night);color:var(--ink);font-family:var(--body);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;margin:0;position:fixed;inset:0;overflow:hidden}canvas{touch-action:none;outline:none;display:block;position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible{outline:2px solid var(--signal);outline-offset:3px}svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.glass{background:var(--glass-fill), var(--glass-tint);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:0;position:fixed}.glass:before{content:"";border-radius:inherit;background:var(--rim);pointer-events:none;-webkit-mask-composite:xor;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.press{transition:transform .45s var(--spring), filter .3s}.press:active{filter:brightness(1.25);transform:scale(1.07)}.hud{z-index:5;top:calc(var(--safe-top) + 10px);left:max(12px, var(--safe-left));right:max(12px, var(--safe-right));pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:fixed}.hud>*{pointer-events:auto}.plate,.board{background:linear-gradient(#2b2a2f,#1b1a1e);border:0;border-radius:12px;height:48px;box-shadow:inset 0 1px #fff3,inset 0 -1px #00000080,0 6px 14px #00000073}.plate{color:#e7e3df;align-items:center;gap:8px;padding:0 12px 0 14px;display:flex}.wordmark{font-family:var(--display);letter-spacing:.08em;font-size:15px}.opens{width:12px;height:12px;color:var(--muted)}.board{background:linear-gradient(#17161a,#0b0a0d);align-content:center;justify-items:end;gap:1px;padding:6px 12px;display:grid}#clock{letter-spacing:.1em;color:#ff5a44;text-shadow:0 0 8px #ff4a388c;font:600 14px/1.1 ui-monospace,SF Mono,Menlo,monospace}.board-now{color:var(--muted);font-size:11px}.board-now b{color:var(--ink)}.dock{--glass-tint:#0a090e1f;--glass-fill:linear-gradient(180deg, #ffffff0d, #ffffff03);--glass-blur:blur(6px) saturate(1.15);--glass-shadow:0 3px 12px #00000024, inset 0 1px 0 #ffffff2e;left:50%;bottom:calc(var(--safe-bottom) + 8px);z-index:5;border-radius:999px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;width:min(248px,100% - 32px);padding:4px;display:grid;transform:translate(-50%)}.dock button{text-shadow:0 1px 4px #000;background:0 0;border:0;border-radius:999px;justify-items:center;gap:2px;min-width:0;min-height:40px;padding:6px 2px 5px;display:grid}.dock button svg{width:19px;height:19px}.dock button span{white-space:nowrap;font-size:10px;font-weight:600}.dock button[aria-pressed=true]{color:var(--signal);background:color-mix(in srgb, var(--signal) 18%, transparent);box-shadow:inset 0 1px 1px #fff3, inset 0 0 0 1px color-mix(in srgb, var(--signal) 30%, transparent)}.touch .desk-only{display:none}.stick{z-index:4;left:calc(max(16px, var(--safe-left)) + 74px);bottom:calc(var(--safe-bottom) + 58px);pointer-events:none;opacity:.7;background:radial-gradient(circle,#ffffff12,#ffffff05 70%);border:1.5px solid #ffffff42;border-radius:50%;width:96px;height:96px;margin:-48px 0 0 -48px;position:fixed;transform:translateY(48px)}.stick.active{opacity:1;border-color:#ffffff6b;bottom:auto;transform:none}.stick-knob{background:#fff3;border-radius:50%;width:42px;height:42px;margin:-21px 0 0 -21px;position:absolute;top:50%;left:50%;box-shadow:inset 0 1px 1px #fff6,0 2px 8px #00000059}.jump-pad{z-index:5;right:calc(max(16px, var(--safe-right)) + 12px);bottom:calc(var(--safe-bottom) + 14px);touch-action:none;background:#ffffff17;border:1.5px solid #ffffff4d;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;display:grid;position:fixed;box-shadow:inset 0 1px 1px #ffffff4d}.jump-pad svg{width:22px;height:22px}.jump-pad.held{background:#ff4a3859;border-color:#ff7864b3;transform:scale(.95)}#jumpBtn,#jumpPad,#jumpBtn *,#jumpPad *{touch-action:none}#jumpBtn:active{transform:none}.fullscreen-help{color:var(--ink);margin:0;font-size:13px;line-height:1.6}@media (prefers-reduced-transparency:reduce){.dock{--glass-tint:#17151b;--glass-blur:none}}#hint{z-index:4;left:50%;bottom:calc(var(--safe-bottom) + 84px);white-space:nowrap;color:#ebe6e4c7;text-shadow:0 1px 8px #000000e6;pointer-events:none;margin:0;font-size:12.5px;position:fixed;transform:translate(-50%)}#toast{z-index:6;left:50%;top:calc(var(--safe-top) + 12px);text-align:center;word-break:keep-all;border-radius:18px;width:max-content;max-width:min(420px,100% - 300px);padding:10px 16px;font-size:13px;line-height:1.4;transform:translate(-50%)}#fade{z-index:7;opacity:0;pointer-events:none;background:#000;transition:opacity .5s ease-in-out;position:fixed;inset:0}#fade.on{opacity:1}.sheet{--glass-tint:#0e0d11a8;--glass-blur:blur(26px) saturate(1.2);z-index:7;left:50%;top:calc(var(--safe-top) + 62px);width:min(340px,100% - 24px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 74px);border-radius:28px;gap:10px;padding:18px;display:grid;overflow-y:auto;transform:translate(-50%)}.sheet h2{margin:0;font-size:16px;font-weight:650}.row{background:var(--well);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:8px 8px 8px 14px;font-size:14px;display:flex}.btn{border:0;border-radius:999px;min-height:44px;font-size:14px;font-weight:600}.btn.quiet{background:var(--well)}.btn.leave{color:#ff9a8a;background:0 0}#opForm{gap:10px;display:grid}#opForm[hidden]{display:none}#opInput{min-width:0;color:var(--ink);font:inherit;text-align:right;background:0 0;border:0;flex:1}.switch{appearance:none;background:#ffffff29;border-radius:999px;flex:none;width:44px;height:26px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:2px;left:2px}.switch:checked{background:var(--signal)}.switch:checked:after{transform:translate(18px)}.overlay{z-index:8;padding:calc(var(--safe-top) + 10px) max(16px, var(--safe-right)) calc(var(--safe-bottom) + 12px) max(16px, var(--safe-left));justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#intro{background:linear-gradient(#03020400 38%,#030204b8)}.card{border-radius:20px;gap:10px;width:min(380px,100%);max-height:100%;padding:22px;display:grid;position:relative;overflow-y:auto}.card h1{font-family:var(--display);letter-spacing:.16em;margin:0;font-size:28px;font-weight:400;line-height:1}.card h1 em{color:inherit;font-style:normal}.lede{margin:0;font-size:15px;font-weight:600}.lang-switch{background:var(--well);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.lang-switch button{color:var(--muted);font:inherit;background:0 0;border:0;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600}.lang-switch button[aria-pressed=true]{color:var(--ink);background:#ffffff29}.card .lang-switch{justify-self:end}.desc,.fine{color:var(--muted);word-break:keep-all;text-wrap:pretty;margin:0}.desc{font-size:14px;line-height:1.6}.fine{font-size:12px}.enter{letter-spacing:.05em;background:var(--signal);color:var(--signal-ink);box-shadow:inset 0 1px 1px #ffffff59, 0 4px 14px color-mix(in srgb, var(--signal) 22%, transparent);border:0;border-radius:12px;padding:12px;font-family:inherit;font-size:15px;font-weight:650}#rotate{z-index:9;background:#030204c7}.rotate-note{border-radius:28px;justify-items:center;gap:10px;padding:22px 26px;font-size:15px;font-weight:600;display:grid;position:relative}.rotate-note p{margin:0}.rotate-note svg{width:40px;height:40px}#stats{z-index:6;top:calc(var(--safe-top) + 60px);right:max(12px, var(--safe-right));color:var(--muted);font:10px ui-monospace,monospace;position:fixed}#error{z-index:10;border:1px solid var(--signal);background:#1c1416;border-radius:20px;padding:24px;line-height:1.6;position:fixed;top:40%;left:10%;right:10%}@media (height<=480px){.card{border-radius:30px;gap:8px;width:min(460px,100%);padding:18px 22px}.card h1{font-size:36px}.lede{font-size:15px}.desc{font-size:13px;line-height:1.45}.enter{padding:11px;font-size:18px}}@media (prefers-reduced-motion:reduce){.press,.press:active{transition:none;transform:none}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass{background:#141216eb}}.plate{max-width:calc(100% - 112px)}.plate .wordmark,.plate .opens{flex-shrink:0}.nickname-display{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:10ch;color:var(--ink);font-size:12px;overflow:hidden}.nickname-form{gap:8px;margin:0 0 8px;display:grid}.nickname-form label{font-size:14px;font-weight:600}.nickname-edit{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.nickname-edit .btn{padding-inline:18px}#nicknameInput{background:var(--well);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;-webkit-user-select:text;user-select:text;border:0;border-radius:12px;padding:10px 12px;font-size:16px}#nicknameInput[aria-invalid=true]{outline:2px solid var(--signal)}.nickname-status{color:var(--ink);margin:0;font-size:13px;line-height:1.5}.nickname-status:empty{display:none}
