:root{--bk-num:"Besley", var(--font);--bk-key:#1d2c3a;--bk-key-edge:#0a1118;--bk-well:#0e1820;--bk-pick:var(--ink);--bk-pick-ink:var(--bg);--bk-sky-a:#0c1722;--bk-sky-b:#16283a;--bk-star:#cfe0ee;--bk-stone-a:#3b5166;--bk-stone-b:#2b3d4f;--bk-stone-c:#1f2e3c;--bk-room-a:#1c2c3b;--bk-room-b:#14212d;--bk-floor:#2a3d4f;--bk-glow:#ffd58a;--bk-glow-o:.16;--bk-wood:#8a6544;--bk-wood-b:#5f4530;--bk-brass:#d9b25c;--bk-brass-b:#9a7830;--bk-steel:#9fb2c3;--bk-steel-b:#5f7589;--bk-glass:#25435f;--bk-screen:#0d1a26;--bk-paper:#e9eef2;--bk-suit:#4d6f96;--bk-vest:#8d3a48;--bk-guest-1:#c9b594;--bk-guest-2:#9fb4c6;--bk-guest-3:#b79cc4;--bk-skin:#e7c3a1;--bk-street:#101a23;--bk-shadow:#0006}:root[data-theme=light]{--bk-key:#fff;--bk-key-edge:#aebccb;--bk-well:#dde5ec;--bk-sky-a:#cfe3f3;--bk-sky-b:#eef5fa;--bk-star:transparent;--bk-stone-a:#f6f8fa;--bk-stone-b:#dbe3ea;--bk-stone-c:#b9c6d2;--bk-room-a:#f1f5f8;--bk-room-b:#dfe7ee;--bk-floor:#c2ceda;--bk-glow:#ffe9b8;--bk-glow-o:.35;--bk-wood:#b98b60;--bk-wood-b:#8b6541;--bk-brass:#c59a35;--bk-brass-b:#8f6d1c;--bk-steel:#8499ac;--bk-steel-b:#5c7286;--bk-glass:#a8cdea;--bk-screen:#2b3f52;--bk-paper:#fff;--bk-suit:#3f6189;--bk-vest:#8d3a48;--bk-guest-1:#b99c6e;--bk-guest-2:#7f98ad;--bk-guest-3:#a283b3;--bk-skin:#e2b892;--bk-street:#aab8c5;--bk-shadow:#14283c38}.bk-num{font-family:var(--bk-num);font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.01em}.bk-go,.bk-h,.bk-num{font-weight:700}.bk-h{font-size:var(--fs-1);margin:0}.bk-h,.bk-key{color:var(--ink)}.bk-key{border:1px solid var(--line);border-radius:var(--r-2);background:var(--bk-key);min-height:44px;box-shadow:0 3px 0 var(--bk-key-edge);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),border-color var(--t-fast);position:relative}.bk-key:hover:not(:disabled){border-color:var(--edge)}.bk-key:active:not(:disabled){box-shadow:0 1px 0 var(--bk-key-edge);transform:translateY(2px)}.bk-key:disabled{opacity:1;cursor:default}.bk-key[aria-checked=true],.bk-key[aria-pressed=true]{border-color:var(--bk-pick);box-shadow:0 3px 0 var(--bk-key-edge),0 0 0 1px var(--bk-pick) inset}.bk-go{min-height:52px;padding:0 var(--s-5);border-radius:var(--r-2);background:var(--brand);box-shadow:0 4px 0 color-mix(in srgb,var(--brand) 55%,#000),0 10px 24px var(--brand-glow);color:var(--brand-ink);font-size:var(--fs-2);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),filter var(--t-fast);border:0}.bk-go:hover:not(:disabled){filter:brightness(1.12)}.bk-go:active:not(:disabled){box-shadow:0 1px 0 color-mix(in srgb,var(--brand) 55%,#000);transform:translateY(3px)}.bk-go:disabled{opacity:.5;box-shadow:0 4px 0 color-mix(in srgb,var(--brand) 55%,#000)}.bk-btn{min-height:44px;padding:0 var(--s-3);border:1px solid var(--line);border-radius:var(--r-2);background:var(--bk-key);color:var(--ink);font-size:var(--fs-1);font-weight:600}.bk-btn:hover:not(:disabled){border-color:var(--edge)}.bk-letter{border-radius:var(--r-1);background:var(--bk-well);border:1px solid var(--line);width:30px;height:30px;font-family:var(--bk-num);font-weight:800;font-size:var(--fs-2);flex:none;place-items:center;display:grid}[aria-checked=true]>.bk-letter{background:var(--bk-pick);border-color:var(--bk-pick);color:var(--bk-pick-ink)}@media (prefers-reduced-motion:reduce){.bk-go,.bk-key{transition:none}}:root{--hue-p1:#f08a4b;--hue-p2:#b58cf0;--hue-p3:#e86fa7;--hue-p4:#2cc3c8;--hue-p5:#d4c26a;--hue-p6:#8fd16a;--hue-p7:#7d8cff;--gold:#e0b84f;--silver:#b7c3cf;--bronze:#c98d5b;--sc-sky-a:#101a23;--sc-sky-b:#0b1218;--sc-side-a:#3a5368;--sc-side-b:#2a3d4e;--sc-top-a:#22323f;--sc-top-b:#18242e;--sc-grid:#1b2a37;--sc-glass:#14202a;--sc-void:#0a1016;--sc-rim:#3d566b;--sc-mid:#2c4152;--sc-off:#52708a;--sc-gear:#7d97ad;--sc-metal:#9fb0bf;--sc-shadow:#00000073;--sc-wall-a:#142130;--sc-wall-b:#101a24;--sc-rib:#192837;--sc-truss:#2a3e50;--sc-win-a:#0a1626;--sc-win-b:#1f3a57;--sc-floor-a:#111c26;--sc-floor-b:#0b131a;--sc-seam:#1a2937;--sc-paint:#d4a62c;--sc-cone:.2;--sc-robot:#d9a33a;--sc-hat:#eef2f5}:root,:root[data-theme=light]{--sc-kraft:#c9a36a;--sc-kraft-edge:#8a6a3a;--sc-coverall:#2d4b6b}:root[data-theme=light]{--hue-p1:#cf5f14;--hue-p2:#8350cc;--hue-p3:#cc3a7e;--hue-p4:#0b8a90;--hue-p5:#947a0a;--hue-p6:#3f8f1c;--hue-p7:#4558d9;--gold:#9a7410;--silver:#66788a;--bronze:#a1612f;--sc-sky-a:#f4f7fa;--sc-sky-b:#e0e7ee;--sc-side-a:#c6d3de;--sc-side-b:#aebfce;--sc-top-a:#e6edf3;--sc-top-b:#cfdae4;--sc-grid:#d3dde6;--sc-glass:#34495b;--sc-void:#2b3b49;--sc-rim:#6f879b;--sc-mid:#8ea3b5;--sc-off:#8296a8;--sc-gear:#5e788d;--sc-metal:#566b7e;--sc-shadow:#14283c47;--sc-wall-a:#d3dce5;--sc-wall-b:#c3ceda;--sc-rib:#c9d3dd;--sc-truss:#9aabbb;--sc-win-a:#8fbfe6;--sc-win-b:#e2f0fa;--sc-floor-a:#dce3ea;--sc-floor-b:#cbd5de;--sc-seam:#c0ccd7;--sc-paint:#c4931a;--sc-cone:.07;--sc-robot:#d29a2c;--sc-hat:#fff}:root{--bg:#0b1218;--floor:#111c25;--surface:#16222dd1;--surface-solid:#16222d;--line:#27394a;--raised:#1b2a37;--edge:#3a5368;--track:#263949;--scene-bg:#0e1821;--scrim:#05090d99;--scroll:#5a7790;--scroll-hover:#7891a6;--ink-rgb:232 238 243;--bg-rgb:11 18 24;--ink:#e8eef3;--muted:#9fb0bf;--faint:#5d7183;--halo:#000;--ok:#3ecf8e;--ok-soft:#3ecf8e24;--ok-glow:#3ecf8e80;--warn:#f2c14e;--warn-soft:#f2c14e24;--warn-glow:#f2c14e80;--bad:#ff6b5e;--bad-soft:#ff6b5e24;--bad-glow:#ff6b5e8c;--info:#5aa9ff;--info-soft:#5aa9ff24;--info-glow:#5aa9ff80;--brand:#71101e;--brand-ink:#fff;--brand-glow:#71101e52;--on-state:#06121c;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--r-1:6px;--r-2:10px;--r-3:16px;--shadow-1:0 2px 8px #00000059;--shadow-2:0 12px 32px #00000080;--hover-fx:brightness(1.15);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font:"Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans", "Apple SD Gothic Neo", "Microsoft YaHei", "Yu Gothic", "Malgun Gothic", sans-serif;--font-display:var(--font);--fs-0:calc(clamp(.72rem, .7rem + .1vw, .78rem));--fs-1:calc(clamp(.82rem, .8rem + .15vw, .9rem));--fs-2:calc(clamp(.95rem, .9rem + .2vw, 1.05rem));--fs-3:calc(clamp(1.2rem, 1.1rem + .5vw, 1.5rem));--fs-4:calc(clamp(1.6rem, 1.3rem + 1.4vw, 2.4rem));--t-fast:.15s;--t-base:.3s;--t-slow:.6s;--ease:cubic-bezier(.2, .7, .2, 1);--z-floor:0;--z-scene:1;--z-anchor:2;--z-hud:3;--z-hand:4;--z-modal:5;--z-toast:6;--topbar-h:56px;--side-w:clamp(320px, 27vw / var(--zoom,1), 460px)}:root[data-theme=light]{--bg:#e3e9ef;--floor:#edf1f5;--surface:#ffffffe0;--surface-solid:#fff;--line:#c3cfda;--raised:#e9eef3;--edge:#9db0c0;--track:#d0dae3;--scene-bg:#eaeff4;--scrim:#0f1c2761;--scroll:#6b7f92;--scroll-hover:#4a5c6d;--ink-rgb:15 28 39;--bg-rgb:227 233 239;--ink:#0f1c27;--muted:#4a5c6d;--faint:#5c6e7f;--halo:#fff;--ok:#0c7a52;--ok-soft:#0c7a521f;--ok-glow:#0c7a5247;--warn:#92590a;--warn-soft:#b0700024;--warn-glow:#b070004d;--bad:#c0281c;--bad-soft:#c0281c1c;--bad-glow:#c0281c47;--info:#1a62c2;--info-soft:#1a62c21c;--info-glow:#1a62c247;--brand-glow:#71101e1a;--on-state:#fff;--shadow-1:0 1px 3px #10203024, 0 1px 2px #10203014;--shadow-2:0 14px 34px #10203033, 0 2px 6px #1020301a;--hover-fx:brightness(.96);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:after,:before{box-sizing:border-box}#app,body,html{height:100%}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}@media print{html{zoom:1!important;--zoom:1!important}}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--fs-1);-webkit-font-smoothing:antialiased;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);margin:0;line-height:1.45;overflow:hidden}body.scroll{overflow:auto}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit;cursor:pointer;min-height:36px}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:2px solid var(--info);outline-offset:2px}.num{font-variant-numeric:tabular-nums}.btn{border-radius:var(--r-2);padding:var(--s-3) var(--s-5);background:var(--surface-solid);border:0;border:1px solid var(--line);font-weight:600}.btn--primary{background:var(--brand);color:var(--brand-ink);border-color:#0000}.btn:hover:not(:disabled){filter:var(--hover-fx)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}*{scrollbar-gutter:auto}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:rgb(var(--ink-rgb)/.05);border-radius:999px}::-webkit-scrollbar-thumb{background:var(--scroll);background-clip:padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-hover);border-width:2px}::-webkit-scrollbar-thumb:active{background-color:var(--info);border-width:2px}::-webkit-scrollbar-corner{background:0 0}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:auto;scrollbar-color:var(--scroll) transparent}}@keyframes pulse-ring{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.8)}}@keyframes float-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-36px)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@keyframes blink{50%{opacity:.35}}.fx-pulse{animation:pulse-ring var(--t-slow) var(--ease) infinite;transform-box:fill-box;transform-origin:50%}.fx-float{animation:float-up calc(var(--t-slow) * 1.5) var(--ease) forwards}.fx-shake{animation:shake var(--t-slow) var(--ease)}.fx-blink{animation:1.6s ease-in-out infinite blink}html.is-paused [data-freeze],html.is-paused [data-freeze] :where(*){animation-play-state:paused!important}::view-transition-old(root){animation:.14s ease-in both vt-out}::view-transition-new(root){animation:vt-in .32s var(--ease) 60ms both}::view-transition-new(adm-top){mix-blend-mode:normal;animation:none}::view-transition-new(site-head){mix-blend-mode:normal;animation:none}::view-transition-old(adm-top){mix-blend-mode:normal;animation:none}::view-transition-old(site-head){mix-blend-mode:normal;animation:none}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-new(*){animation:none!important}::view-transition-old(*){animation:none!important}*,:after,:before{transition:none!important;animation:none!important}}
