@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-cyrillic-ext-400-normal-Dd6cloe3.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-ext-400-normal-CrASIfTD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-cyrillic-400-normal-DEefT5SH.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-400-normal-BYnr3akz.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-greek-ext-400-normal-DQnGmpgu.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-ext-400-normal-CQ7TdN9y.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-greek-400-normal-C3_3AjBd.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-400-normal-DZxCeFvo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-vietnamese-400-normal-Un2RHKlO.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-vietnamese-400-normal-BI4RI0NG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-latin-ext-400-normal-y1HDdWqs.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-ext-400-normal-Bap0sdgF.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-extra-condensed-latin-400-normal-DUk-yWWw.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-400-normal-4JA34lds.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-cyrillic-ext-600-normal-DkAfGrGK.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-ext-600-normal-fOtsCqSb.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-cyrillic-600-normal-BWBafYGs.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-600-normal-EMsnhRZL.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-greek-ext-600-normal-CGyGAhy0.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-ext-600-normal-zsgi6LeM.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-greek-600-normal-DlPqi6mI.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-600-normal-pEc81niQ.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-vietnamese-600-normal-ClfBunhT.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-vietnamese-600-normal-Bh8xM3we.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-latin-ext-600-normal-WL9XF4X9.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-ext-600-normal-DukZNPtU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-extra-condensed-latin-600-normal-BzesOp-p.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-600-normal-nYmh4kF1.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-cyrillic-ext-800-normal-BFDpUYO8.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-ext-800-normal-BCgNOYwq.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-cyrillic-800-normal-BVzE8zDH.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-800-normal-G6iNPNUV.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-greek-ext-800-normal-BlNg0qVg.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-ext-800-normal-C1OoRayT.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-greek-800-normal-C-ejy_3z.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-800-normal-DufhE44O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-vietnamese-800-normal-VEPdih5n.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-vietnamese-800-normal-BK-_W2CL.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-latin-ext-800-normal-jGyAPibr.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-ext-800-normal-DjI3NqEc.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-extra-condensed-latin-800-normal-Cvvr1VvK.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-800-normal-C8Mq2QSE.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-cyrillic-ext-900-normal-ChdKJXny.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-ext-900-normal-C4RidZNc.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-cyrillic-900-normal-D9OgvRJp.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-cyrillic-900-normal-m-h-K5Eb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-greek-ext-900-normal-Bg9WvI9Y.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-ext-900-normal-Dp687Yv7.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-greek-900-normal-BI4AmR8o.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-greek-900-normal-Dl18LnyL.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-vietnamese-900-normal-D_gr-9o2.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-vietnamese-900-normal-BHtw5gQI.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-latin-ext-900-normal-B5ocHmp2.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-ext-900-normal-DbFYNq_-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans Extra Condensed;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/fira-sans-extra-condensed-latin-900-normal-Cd4Yxlan.woff2)format("woff2"),url(/assets/fira-sans-extra-condensed-latin-900-normal-CU7SlW4d.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#1c1b19;--on-ink:#fff;--paper:#fff;--bg:#faf7f2;--muted:#5e5a53;--label:#6b675f;--faint:#b8b3aa;--hairline:#d6d1c7;--warm:#f3eee6;--warm-2:#ebe5da;--ink-hover:#3a3833;--current:#a31726;--current-soft:#e8939c;--on-current:#fff;--in-fill:#8fcbae;--in-stroke:#4f8e70;--in-text:#1c1b19;--out-fill:#eceae5;--out-stroke:#9a958b;--out-text:#6b675f;--board:#f6f2ea;--hand:#f3eee6;--hand-thumb:#d9d5ce;--gold:#f2b01e;--gold-deep:#b97a00;--gold-soft:#fdf1cf;--on-gold:#2b2100;--flame:#f0651a;--flame-core:#ffc83a;--flame-soft:#fde6d6;--overlay:#1c1b1973;--shadow:#1c1b1929;--radius:10px;--radius-lg:16px;--pad:max(16px, env(safe-area-inset-left));--pad-r:max(16px, env(safe-area-inset-right));--font:"Fira Sans Extra Condensed", "Arial Narrow", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f1ede6;--on-ink:#171614;--paper:#211f1d;--bg:#171614;--muted:#b5afa5;--label:#9c968c;--faint:#6b675f;--hairline:#3b3936;--warm:#2c2a27;--warm-2:#383531;--ink-hover:#d9d4cb;--current:#e5495c;--current-soft:#8a2f3a;--on-current:#fff;--in-fill:#3d7a5f;--in-stroke:#7cc5a0;--in-text:#f1ede6;--out-fill:#2a2826;--out-stroke:#6b675f;--out-text:#9c968c;--board:#1b1a18;--hand:#4a433b;--hand-thumb:#38332e;--gold:#f2b01e;--gold-deep:#ffd166;--gold-soft:#3c3116;--flame-soft:#45261a;--overlay:#0009;--shadow:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--ink:#f1ede6;--on-ink:#171614;--paper:#211f1d;--bg:#171614;--muted:#b5afa5;--label:#9c968c;--faint:#6b675f;--hairline:#3b3936;--warm:#2c2a27;--warm-2:#383531;--ink-hover:#d9d4cb;--current:#e5495c;--current-soft:#8a2f3a;--on-current:#fff;--in-fill:#3d7a5f;--in-stroke:#7cc5a0;--in-text:#f1ede6;--out-fill:#2a2826;--out-stroke:#6b675f;--out-text:#9c968c;--board:#1b1a18;--hand:#4a433b;--hand-thumb:#38332e;--gold:#f2b01e;--gold-deep:#ffd166;--gold-soft:#3c3116;--flame-soft:#45261a;--overlay:#0009;--shadow:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:18px;line-height:1.3}button,select,input{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{flex-direction:column;height:100dvh;display:flex}.view{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto}.topbar{padding:8px var(--pad-r) 8px var(--pad);border-bottom:1px solid var(--hairline);background:var(--paper);align-items:center;gap:8px 18px;display:flex}.brand{white-space:nowrap;align-items:center;gap:9px;display:flex}.brand-mark{background:var(--current);border:3px solid var(--ink);border-radius:50%;width:22px;height:22px}.brand-title{font-size:24px;font-weight:900;line-height:1}.nav{gap:2px;margin-right:auto;display:flex}.nav a{border-radius:var(--radius);color:var(--muted);white-space:nowrap;padding:9px 14px;font-weight:600}.nav a:hover{background:var(--warm)}.nav a[aria-current=page]{background:var(--ink);color:var(--on-ink)}.topbar-right{align-items:center;gap:8px;display:flex}.chip{background:var(--warm);border-radius:999px;align-items:center;gap:4px;min-height:40px;padding:4px 12px 4px 8px;font-weight:800;display:inline-flex}.lang{background:var(--warm);border-radius:999px;padding:3px;display:inline-flex}.lang button{min-width:40px;min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 10px;font-size:15px;font-weight:800}.lang button[aria-pressed=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px var(--shadow)}.account-btn{align-items:center;gap:8px;max-width:190px;padding:4px 14px 4px 10px;display:inline-flex}.account-btn.in{padding-left:5px}.account-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.avatar{background:var(--ink);width:32px;height:32px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:inline-grid}.spacer{flex:1 1 0}.group{gap:6px;display:flex}.btn,.toggle,select,input[type=text],input[type=email],input[type=password]{border:1.5px solid var(--hairline);border-radius:var(--radius);background:var(--paper);min-height:44px;padding:6px 16px;font-weight:600;transition:background-color .15s,border-color .15s}.btn,.toggle,select{cursor:pointer}.btn{white-space:nowrap;justify-content:center;align-items:center;gap:8px;display:inline-flex}.btn:hover:not(:disabled),.toggle:hover{border-color:var(--muted)}:is(.btn,.toggle,select,input,.link,.nav a,.lang button,.coin,.node,.extra,.player,.chip,.brand):focus-visible{outline:2px solid var(--ink);outline-offset:2px}.btn:disabled{cursor:default;opacity:.4}.btn.icon{min-width:46px;padding:6px 10px;font-size:22px;line-height:1}.btn.primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink);padding:6px 22px}.btn.primary:hover:not(:disabled){background:var(--ink-hover)}.btn.danger{background:var(--paper);border-color:var(--ink);font-weight:800}.link{text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.toggle{color:var(--muted);white-space:nowrap}.toggle:before{content:"";vertical-align:1px;border:1.5px solid;border-radius:3px;width:10px;height:10px;margin-right:8px;display:inline-block}.toggle[aria-pressed=true]{color:var(--ink);background:var(--warm);border-color:var(--ink)}.toggle[aria-pressed=true]:before{background:var(--ink);border-color:var(--ink)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231C1B19' stroke-width='2'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;min-width:170px;padding-right:38px;font-size:19px;font-weight:800}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23F1EDE6' stroke-width='2'/%3E%3C/svg%3E")}}:root[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23F1EDE6' stroke-width='2'/%3E%3C/svg%3E")}.star{fill:none;stroke:var(--faint);stroke-width:1.6px}.star.on{fill:var(--gold);stroke:var(--gold-deep)}.stars{vertical-align:middle;gap:2px;display:inline-flex}.flame .flame-outer{fill:var(--hairline)}.flame .flame-inner{fill:var(--paper)}.flame.lit .flame-outer{fill:var(--flame)}.flame.lit .flame-inner{fill:var(--flame-core)}.flame.lit{transform-origin:50% 90%;animation:1.6s ease-in-out infinite flicker}@keyframes flicker{0%,to{transform:scale(1)rotate(0)}30%{transform:scale(.96,1.06)rotate(-2deg)}60%{transform:scale(1.03,.97)rotate(2deg)}}.medal .medal-ribbon{fill:var(--faint)}.medal .medal-disc{fill:var(--warm-2);stroke:var(--faint);stroke-width:1.2px}.medal .medal-star{fill:var(--faint)}.medal.on .medal-ribbon{fill:var(--ink)}.medal.on .medal-disc{fill:var(--gold);stroke:var(--gold-deep)}.medal.on .medal-star{fill:var(--paper)}.xpbar{background:var(--warm-2);border-radius:999px;height:10px;overflow:hidden}.xpbar span{background:var(--gold);border-radius:999px;height:100%;transition:width .9s cubic-bezier(.2,.8,.2,1);display:block}.level-badge{background:var(--gold);border:3px solid var(--gold-deep);border-radius:50%;flex:none;place-items:center;width:54px;height:54px;font-size:26px;font-weight:900;display:grid}.view:has(>.page){background:var(--bg)}.page{width:100%;max-width:1180px;padding:clamp(14px, 2.5vw, 28px) var(--pad-r) 40px var(--pad);flex-direction:column;gap:18px;margin:0 auto;display:flex}.page-title{font-size:34px;font-weight:900;line-height:1.1}.section-title{margin-top:6px;font-size:22px;font-weight:900}.muted{color:var(--muted)}.small{font-size:15px}.tile,.panel{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius-lg)}.tile{align-items:center;gap:14px;min-width:0;padding:14px 18px;display:flex}.hero-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.hero-body strong{font-size:22px;font-weight:900;line-height:1.05}.hero-body small,.tile small{color:var(--muted);font-size:15px}.ring-track{fill:none;stroke:var(--warm-2);stroke-width:6px}.ring-value{fill:none;stroke:var(--ink);stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset .7s}.ring.full .ring-value{stroke:var(--gold)}.ring text{fill:var(--ink);font-size:15px;font-weight:800}.page.home{gap:16px;max-width:1100px}.player{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius-lg);grid-template-columns:1.5fr 1fr 1.2fr;transition:border-color .15s;display:grid}.player:hover{border-color:var(--muted)}.player-seg{align-items:center;gap:12px;min-width:0;padding:10px 16px;display:flex}.player-seg+.player-seg{border-left:1px solid var(--hairline)}.player-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.player-body b{font-size:19px;font-weight:900;line-height:1.05}.player-body small{color:var(--muted);font-size:14px}.player-body .player-number{font-size:30px}.player .level-badge{width:46px;height:46px;color:var(--on-gold);font-size:22px}.player .ring text{font-size:13px}.journey{background:var(--paper);border:1px solid var(--hairline);border-radius:22px;flex-direction:column;gap:14px;padding:16px 20px 20px;display:flex}.coins{flex-wrap:wrap;gap:6px 30px;display:flex}.coin-group{flex-direction:column;gap:6px;display:flex}.coin-group-label,.path-stage-label,.nd-kicker{color:var(--label);letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:800}.coin-row{flex-wrap:wrap;gap:8px;display:flex}.coin{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;width:62px;height:62px;padding:0;transition:transform .16s cubic-bezier(.2,.9,.3,1.4);position:relative}.coin:hover{transform:translateY(-2px)}.coin-ring{position:absolute;inset:0}.coin-ring .ring-value,.coin-ring.full .ring-value{stroke:var(--gold)}.coin-face{background:var(--warm);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;line-height:1;transition:background-color .16s,color .16s;display:flex;position:absolute;inset:7px}.coin-face b{font-size:19px;font-weight:900}.coin-face small{color:var(--muted);font-size:10.5px;font-weight:700}.coin[aria-selected=true]{transform:scale(1.1)}.coin[aria-selected=true] .coin-face{background:var(--ink);color:var(--on-ink)}.coin[aria-selected=true] .coin-face small{color:var(--on-ink);opacity:.7}.coin.mastered .coin-face{background:var(--gold);color:var(--on-gold)}.coin.mastered .coin-face small{color:var(--on-gold)}.journey-book{color:var(--muted);margin-top:-4px;font-size:15px}.journey-head{border-top:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:6px 16px;padding-top:14px;display:flex}.journey-head h2{font-size:30px;font-weight:900;line-height:1}.journey-stars{color:var(--muted);align-items:center;gap:4px;font-size:17px;font-weight:700;display:inline-flex}.journey-mastered{background:var(--gold-soft);color:var(--gold-deep);border-radius:999px;align-items:center;gap:6px;padding:2px 12px 2px 6px;font-weight:800;display:inline-flex}.path{margin:0;padding:0;list-style:none;display:flex}.path-stage{flex-direction:column;flex:3 1 0;gap:10px;min-width:0;padding:0 8px;display:flex}.path-stage-practice,.path-stage-challenge{flex-grow:2}.path-stage+.path-stage{border-left:2px dashed var(--hairline)}.path-stage-label{align-items:center;gap:6px;padding-left:4px;display:flex}.path-stage-label i{background:var(--warm);width:20px;height:20px;color:var(--muted);border-radius:50%;place-items:center;font-size:12px;font-style:normal;display:grid}.path-stage-nodes{justify-content:space-around;padding-top:18px;display:flex;position:relative}.path-stage-nodes:before{content:"";background:var(--warm-2);border-radius:2px;height:4px;position:absolute;top:52px;left:14%;right:14%}.node{z-index:1;width:112px;color:var(--ink);font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:4px 4px 8px;transition:background-color .15s;display:flex;position:relative}.node-disc{border:3px solid var(--hairline);background:var(--paper);width:64px;height:64px;color:var(--muted);box-shadow:0 4px 0 var(--hairline);border-radius:50%;place-items:center;transition:transform .16s cubic-bezier(.2,.9,.3,1.4);display:grid;position:relative}.node:hover .node-disc{transform:translateY(-3px)}.node:active .node-disc{box-shadow:0 1px 0 var(--hairline);transform:translateY(2px)}.node-text{letter-spacing:-.02em;font-size:21px;font-weight:900}.node-name{font-size:16px;font-weight:800;line-height:1.1}.node .stars{gap:1px}.node-played .node-disc{border-color:var(--ink);color:var(--ink);box-shadow:0 4px 0 var(--ink)}.node-gold .node-disc{border-color:var(--gold-deep);background:var(--gold);color:var(--on-gold);box-shadow:0 4px 0 var(--gold-deep)}.node-check{border:2px solid var(--paper);background:var(--ink);width:22px;height:22px;color:var(--on-ink);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-3px;right:-5px}.node.is-next .node-disc{border-color:var(--ink);background:var(--ink);color:var(--on-ink);box-shadow:0 4px 0 var(--muted), 0 0 0 6px var(--warm-2);animation:1.8s ease-in-out infinite node-bob}.node-flag{z-index:2;background:var(--ink);color:var(--on-ink);white-space:nowrap;border-radius:999px;padding:1px 9px;font-size:13px;font-weight:800;animation:1.8s ease-in-out infinite node-bob;position:absolute;top:-19px;left:50%;transform:translate(-50%)}.node[aria-pressed=true]{background:var(--warm)}@keyframes node-bob{50%{translate:0 -4px}}.node-detail{background:var(--warm);border-radius:16px;align-items:center;gap:14px 24px;padding:14px 16px 14px 20px;animation:.24s cubic-bezier(.2,.9,.3,1.2) detail-in;display:flex}@keyframes detail-in{0%{opacity:0;transform:translateY(6px)}}.nd-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.nd-body strong{font-size:26px;font-weight:900;line-height:1.05}.nd-body p{color:var(--muted);font-size:17px}.nd-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 16px;font-size:15px;display:flex}.goal-chip{color:var(--ink);align-items:center;gap:5px;font-weight:700;display:inline-flex}.btn.play-cta{min-height:62px;box-shadow:0 5px 0 var(--muted);border-radius:18px;gap:10px;padding:8px 34px 8px 28px;font-size:25px;font-weight:900;transition:transform 90ms,box-shadow 90ms}.btn.play-cta:active{box-shadow:0 1px 0 var(--muted);transform:translateY(4px)}.next-scale{align-self:flex-end;font-size:17px}.extras{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.extra{border:1px solid var(--hairline);background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:11px 14px;transition:border-color .15s,transform .15s;display:flex}.extra:hover{border-color:var(--ink);transform:translateY(-1px)}.extra-icon{background:var(--warm);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.extra-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.extra-body strong{font-size:18px;font-weight:800;line-height:1.1}.extra-body small{color:var(--muted);font-size:14px;line-height:1.2}.extra.accent{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.extra.accent .extra-icon{background:color-mix(in srgb, var(--on-ink) 14%, transparent)}.extra.accent small{color:var(--on-ink);opacity:.75}.extra.done{cursor:default}.extra.done:hover{border-color:var(--hairline);transform:none}.extra.done .extra-icon{background:var(--gold);color:var(--on-gold)}.extra-dots{gap:4px;display:flex}.extra-dots i{border:1.5px solid;border-radius:50%;width:10px;height:10px}.extra-dots i.on{border-color:var(--gold);background:var(--gold)}@media (width<=960px){.node{width:92px}.node-name{font-size:15px}}@media (width<=760px){.player{grid-template-columns:1fr 1fr}.player-level{border-bottom:1px solid var(--hairline);grid-column:1/-1}.player-level+.player-seg{border-left:0}.path{flex-direction:column;gap:12px}.path-stage+.path-stage{border-left:0;border-top:2px dashed var(--hairline);padding-top:10px}.path-stage-nodes{justify-content:flex-start;gap:6px}.node-detail{flex-wrap:wrap}.btn.play-cta{width:100%}}.guest-hint{color:var(--muted);text-align:center;font-size:16px}.tiles{grid-template-columns:2fr repeat(4,1fr);gap:12px;display:grid}.tile b{font-size:34px;font-weight:900;line-height:1;display:block}.columns{grid-template-columns:1.3fr 1fr;gap:12px;display:grid}.panel{flex-direction:column;gap:12px;min-width:0;padding:16px 18px;display:flex}.panel h2{font-size:21px;font-weight:900}.bars{grid-template-columns:repeat(14,1fr);gap:6px;height:150px;display:grid}.bar{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex}.bar span{background:var(--warm-2);border-radius:6px 6px 2px 2px;width:100%;max-width:34px;min-height:3px}.bar.on span{background:var(--gold)}.bar small{height:16px;color:var(--label);white-space:nowrap;font-size:12px}.board{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.board li{border-radius:var(--radius);align-items:center;gap:10px;padding:6px 10px;display:flex}.board li.me{background:var(--gold-soft)}.board-rank{width:26px;color:var(--label);text-align:center;font-weight:800}.board li:nth-child(-n+3) .board-rank{color:var(--gold-deep)}.board-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.board-name em{color:var(--muted);font-style:normal;font-weight:400}.achievements{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.achievements li{border:1px solid var(--hairline);color:var(--muted);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.achievements li.on{background:var(--gold-soft);border-color:var(--gold);color:var(--ink)}.achievements strong{font-weight:800;line-height:1.15;display:block}.achievements small{font-size:14px}.table-wrap{overflow-x:auto}.history{border-collapse:collapse;width:100%;font-size:17px}.history th{color:var(--label);text-align:left;white-space:nowrap;padding:4px 10px 6px 0;font-size:14px;font-weight:800}.history td{border-top:1px solid var(--hairline);white-space:nowrap;padding:7px 10px 7px 0}.history .num{text-align:right;font-variant-numeric:tabular-nums}.history tr.uncounted td{color:var(--label)}.play{flex-direction:column;flex:auto;min-height:430px;display:flex}.play-bar{padding:8px var(--pad-r) 8px var(--pad);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.play-title{flex-direction:column;min-width:0;line-height:1.15;display:flex}.play-title strong{font-size:24px;font-weight:900}.play-title span{color:var(--muted);font-size:16px}.hud{gap:6px;display:flex}.hud-item{border-radius:var(--radius);background:var(--warm);flex-direction:column;align-items:center;min-width:68px;padding:3px 12px;line-height:1.1;display:flex}.hud-item small{color:var(--label);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:800}.hud-item b{font-variant-numeric:tabular-nums;font-size:22px;font-weight:900;display:inline-block}.hud-points{background:var(--gold-soft)}.hud-points b{color:var(--gold-deep)}.hud-combo b{align-items:center;gap:1px;display:inline-flex}.hud-combo.hot{background:var(--flame-soft)}.hud-combo.hot b{color:var(--flame)}.hud-combo .flame{margin-left:-4px}.bump{animation:.32s cubic-bezier(.2,.9,.3,1.4) bump}@keyframes bump{0%{transform:scale(1.6)rotate(-4deg)}to{transform:scale(1)}}.progress-track{height:8px;margin:2px var(--pad-r) 0 var(--pad);background:var(--warm-2);border-radius:999px;position:relative}.progress-track span{background:var(--ink);border-radius:999px;height:100%;transition:width .28s cubic-bezier(.3,1.5,.5,1);display:block;position:relative}.progress-track span:after{content:"";background:inherit;width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:50%;margin-top:-7px;position:absolute;top:50%;right:-4px}.progress-track span[style="width: 0%;"]:after{display:none}.progress-track span.is-done{background:var(--gold);animation:.7s ease-out track-done}.progress-track span.is-done:after{box-shadow:0 0 0 5px color-mix(in srgb, var(--gold) 35%, transparent)}@keyframes track-done{40%{transform:scaleY(1.8)}}.progress-track i{background:var(--hairline);border-radius:2px;width:4px;height:16px;margin-left:-2px;position:absolute;top:-4px}.progress-track i.on{background:var(--gold)}.stage{min-height:0;padding:clamp(6px, 1.6vh, 18px) var(--pad-r) clamp(6px, 1.4vh, 14px) var(--pad);flex:auto;align-items:stretch;gap:clamp(10px,2.5vw,40px);display:flex}.side{flex:0 0 clamp(130px,25%,400px);justify-content:center;align-items:center;min-height:0;display:flex}.keyboard{width:100%;height:100%;max-height:640px}.side.has-chords{flex-basis:clamp(200px,38%,560px)}.center{flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:clamp(2px,1.2vh,14px);min-width:0;min-height:0;display:flex;container-type:inline-size}.staff-wrap{flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:70px;max-height:27cqw;display:flex}.stage:not(.has-hand) .staff-wrap{max-height:34cqw}.staff{width:100%;max-width:1400px;height:100%}.staff-note{transition:opacity .2s}.staff-note[role=button]{cursor:pointer}.staff-note:focus{outline:none}.staff-played{opacity:.38}.staff-off{opacity:.16}.staff-head,.staff-ring{transform-box:fill-box;transform-origin:50%}.staff-pulse .staff-head{animation:.26s ease-out head-pulse}.staff-ring{pointer-events:none;animation:.46s ease-out forwards ring}.staff.is-done .staff-head{animation:.32s ease-out both head-pulse;animation-delay:calc(var(--i) * 70ms)}@keyframes head-pulse{0%{transform:scale(1)}45%{transform:scale(1.45)}to{transform:scale(1)}}@keyframes ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.4)}}.stepline{text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 12px;min-height:1.5em;font-size:clamp(18px,2.3vw,30px);line-height:1.2;display:flex}.stepline .sep{color:var(--hairline)}.step-count{color:var(--label);font-weight:600}.step-note{font-weight:900;animation:.28s cubic-bezier(.2,.9,.3,1.5) note-in;display:inline-block}@keyframes note-in{0%{opacity:.2;transform:translateY(6px)scale(.7)}}.finger-current{color:var(--current);font-weight:900}.finale{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;display:inline-flex}.finale strong{font-weight:900}.finale-time{color:var(--muted)}.finale-points{background:var(--gold-soft);border-radius:999px;padding:0 12px;font-weight:900}.hand-wrap{flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:60px;max-height:300px;display:flex}.hand{aspect-ratio:140/100;max-width:100%;height:100%}.back-compact,.rotate-hint{display:none}@media (orientation:portrait) and (width<=560px){.play>.stage,.play>.status,.play>.progress-track{display:none}.rotate-hint{text-align:center;color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.rotate-hint strong{color:var(--ink);font-size:26px;font-weight:900}}.kb-button[role=button]{cursor:pointer}.kb-badge{transform-box:fill-box;transform-origin:50%;animation:.18s ease-out pop}@keyframes pop{0%{transform:scale(.4)}70%{transform:scale(1.15)}to{transform:scale(1)}}.st-lines line{stroke:var(--ink);stroke-width:.9px;opacity:.8}.st-lines .st-bar{stroke-width:1.6px;opacity:1}.st-ledger{stroke:var(--ink);stroke-width:1.1px}.st-glyph,.staff-head{fill:var(--ink)}.st-hit{fill:#0000}.st-cursor{fill:var(--current);opacity:.09;transition:transform .22s}.st-name{fill:var(--ink);font-size:14px;font-weight:800}.st-badge{fill:var(--paper);stroke:var(--faint);stroke-width:1.6px}.st-badge-text{fill:var(--label);font-size:11.5px;font-weight:800}.staff-head,.st-name,.st-badge,.st-badge-text{transition:fill .2s,stroke .2s}.staff-current .staff-head,.staff-current .st-name{fill:var(--current)}.staff-current .st-ledger{stroke:var(--current)}.staff-current .st-badge{fill:var(--current);stroke:var(--current)}.staff-current .st-badge-text{fill:var(--on-current)}.staff-note:focus-visible>.st-hit{stroke:var(--ink);stroke-width:.8px;stroke-dasharray:2 2}.staff-ring{fill:none;stroke:var(--current);stroke-width:1.4px}.staff-ghost path{fill:var(--label)}.st-stem{stroke:var(--ink);stroke-width:1px;transition:stroke .2s}.st-barline{stroke:var(--ink);stroke-width:.9px}.staff-piece .st-bar{stroke:var(--ink);stroke-width:2.4px}.st-dot{fill:var(--ink)}.st-time text{fill:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:19px;font-weight:900}.st-mark{fill:var(--ink);font-size:12px;font-weight:800}.staff-piece .st-name{font-size:12.5px}.staff-piece .staff-chord .st-name{fill:var(--label);font-weight:600}.staff-current .st-stem{stroke:var(--current)}.staff-current .st-mark,.staff-piece .staff-current .st-name{fill:var(--current)}.kb-board{fill:var(--board);stroke:var(--hairline);stroke-width:1.5px}.kb-row-label{fill:var(--label);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:800}.kb-shadow{fill:var(--ink);opacity:.2}.kb-face{stroke-width:1.8px;transition:fill .18s,stroke .18s}.kb-gloss{fill:#fff;opacity:.28;pointer-events:none}.kb-label{font-size:16px;font-weight:700;transition:fill .18s}.kb-long .kb-label{font-size:13px}.kb-chord .kb-label{font-size:14px}.kb-chord.kb-long .kb-label{font-size:12px}.kb-row-chord{letter-spacing:.02em;font-size:14px}.kb-in .kb-face{fill:var(--in-fill);stroke:var(--in-stroke)}.kb-in .kb-label{fill:var(--in-text)}.kb-out .kb-face{fill:var(--out-fill);stroke:var(--out-stroke);stroke-width:1.4px;stroke-dasharray:3 3}.kb-out .kb-label{fill:var(--out-text);font-weight:600}.kb-current .kb-face{fill:var(--current);stroke:var(--ink);stroke-width:3px}.kb-current .kb-label{fill:var(--on-current);font-weight:800}.kb-current .kb-gloss{opacity:.2}.kb-halo{fill:none;stroke:var(--current);stroke-width:3px;opacity:.35;transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite halo}@keyframes halo{50%{opacity:.12;transform:scale(1.1)}}.kb-badge-link{stroke:var(--current);stroke-width:2px}.kb-badge-disc{fill:var(--paper);stroke:var(--current);stroke-width:2.4px}.kb-badge-text{fill:var(--current);font-size:17px;font-weight:900}.kb-button[role=button]:hover .kb-face{filter:brightness(.94)}.hand-fill{fill:var(--hand)}.hand-thumb{fill:var(--hand-thumb)}.hand-finger{fill:#0000;transition:fill .2s}.hand-finger.is-current{fill:var(--current-soft)}.hand-outline{fill:none;stroke:var(--ink);stroke-width:.34px;stroke-linejoin:round}.hand-badge circle{fill:var(--paper);stroke:var(--faint);stroke-width:1.8px;transition:fill .2s,stroke .2s}.hand-badge text{fill:var(--label);font-size:11px;font-weight:800;transition:fill .2s}.hand-badge.is-current circle{fill:var(--current);stroke:var(--current)}.hand-badge.is-current text{fill:var(--on-current)}.hand-badge.is-all circle{stroke:var(--current)}.hand-badge.is-all text{fill:var(--current)}.hand-thumb-label{fill:var(--muted);font-size:11px;font-weight:600}.map-head{fill:var(--label);font-size:15px;font-weight:800}.map-empty{fill:none;stroke:var(--hairline);stroke-width:1.5px;stroke-dasharray:3 3}.map-track{fill:none;stroke:var(--hairline);stroke-width:4px}.map-ring{fill:none;stroke:var(--gold);stroke-width:4px;stroke-linecap:round}.map-face.none{fill:var(--out-fill);stroke:var(--out-stroke);stroke-width:1.5px;stroke-dasharray:3 3}.map-face.some{fill:var(--in-fill);stroke:var(--in-stroke);stroke-width:1.5px}.map-face.full{fill:var(--gold);stroke:var(--gold-deep);stroke-width:2px}.map-note{fill:var(--in-text);font-size:19px;font-weight:800}.map-note.none{fill:var(--out-text)}.map-count{fill:var(--muted);font-size:14px;font-weight:600}.map-button:hover .map-face,.map-button:focus-visible .map-face{stroke:var(--ink);stroke-width:2.5px;stroke-dasharray:none}.status{min-height:42px;padding:7px var(--pad-r) max(7px, env(safe-area-inset-bottom)) var(--pad);border-top:1px solid var(--hairline);color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:15px;display:flex}.status-source{background:var(--warm);color:var(--ink);border-radius:999px;padding:2px 10px;font-weight:800}.status-source.on{background:var(--ink);color:var(--on-ink)}.status-heard{background:var(--warm-2);color:var(--ink);border-radius:999px;margin-left:auto;padding:2px 12px;font-weight:600}.status-text{color:var(--ink)}.status-error{color:var(--ink);font-weight:700}.status-warn{color:var(--muted);font-style:italic}.btn.listen{min-width:124px}.btn.listen.on,.btn.listen.on:hover:not(:disabled){background:var(--warm);color:var(--ink);border-color:var(--ink)}.btn.listen.on:before{content:"";background:var(--ink);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.25}}.meter{background:var(--warm-2);border-radius:999px;width:140px;height:10px;display:inline-block;position:relative;overflow:hidden}.meter-fill{background:var(--hairline);transition:width 60ms linear;position:absolute;inset:0 auto 0 0}.meter-fill.open{background:var(--ink)}.meter-threshold{background:var(--muted);width:2px;margin-left:-1px;position:absolute;top:-2px;bottom:-2px}.overlay{z-index:20;background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:16px;animation:.2s ease-out fade-in;display:grid;position:fixed;inset:0;overflow:auto}@keyframes fade-in{0%{opacity:0}}.result{background:var(--paper);width:min(480px,100%);box-shadow:0 18px 60px var(--shadow);text-align:center;border-radius:22px;flex-direction:column;align-items:center;gap:10px;padding:22px 26px;animation:.32s cubic-bezier(.2,.9,.3,1.2) rise;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(24px)scale(.96)}}.result h2{font-size:36px;font-weight:900;line-height:1}.result-sub{color:var(--muted)}.result-stars{justify-content:center;align-items:flex-end;gap:6px;height:84px;display:flex;position:relative}.big-star{place-items:center;animation:.52s cubic-bezier(.2,.9,.3,1.4) both star-in;display:inline-grid;position:relative}.big-star svg{fill:var(--warm-2);stroke:var(--faint);stroke-width:1.2px}.big-star.on svg{fill:var(--gold);stroke:var(--gold-deep)}@keyframes star-in{0%{opacity:0;transform:scale(0)rotate(-40deg)}to{opacity:1;transform:scale(1)rotate(0)}}.sparks{width:6px;height:6px;color:var(--gold);opacity:0;border-radius:50%;margin:-3px;animation:.62s ease-out both sparks;position:absolute;top:50%;left:50%;box-shadow:0 -30px,26px -15px,26px 15px,0 30px,-26px 15px,-26px -15px}@keyframes sparks{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.7)}}.result-points{align-items:baseline;gap:8px;display:flex}.result-points b{font-variant-numeric:tabular-nums;font-size:54px;font-weight:900;line-height:1}.result-points span{color:var(--muted)}.result-note{color:var(--muted);font-size:15px}.result-hint{background:var(--warm);color:var(--ink);border-radius:999px;padding:4px 12px;font-size:16px;font-weight:700}.result.s3{box-shadow:0 18px 60px var(--shadow), 0 0 0 3px var(--gold)}.big-star{z-index:1}.result-rays{background:repeating-conic-gradient(color-mix(in srgb, var(--gold) 38%, transparent) 0deg 9deg, transparent 9deg 24deg);pointer-events:none;border-radius:50%;width:300px;height:300px;margin:-150px 0 0 -150px;animation:.6s ease-out .9s both rays-in,14s linear infinite rays-spin;position:absolute;top:50%;left:50%;-webkit-mask:radial-gradient(circle,#000 18%,#0000 68%);mask:radial-gradient(circle,#000 18%,#0000 68%)}@keyframes rays-in{0%{opacity:0;scale:.4}}@keyframes rays-spin{to{rotate:360deg}}.result-stats{flex-wrap:wrap;justify-content:center;gap:8px;margin:2px 0;display:flex}.result-stats div{border-radius:var(--radius);background:var(--warm);min-width:92px;padding:6px 12px}.result-stats div.key{background:var(--gold-soft)}.result-stats dt{color:var(--label);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:800}.result-stats dd{margin:0;font-size:22px;font-weight:900}.result-badges{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.badge{border-radius:999px;align-items:center;gap:6px;padding:4px 14px;font-weight:800;animation:.32s ease-out .9s both pop;display:inline-flex}.badge.gold{background:var(--gold-soft);border:1.5px solid var(--gold)}.badge.flame{background:var(--flame-soft);border:1.5px solid var(--flame)}.result-level{width:100%;color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-size:15px;font-weight:600;display:grid}.result-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px;display:flex}.dialog{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--paper);width:min(460px,100vw - 32px);color:var(--ink);font-family:var(--font);padding:20px 22px}.dialog::backdrop{background:var(--overlay)}.dialog h2{margin:0 0 12px;font-size:28px;font-weight:900}.dialog p{margin-bottom:14px}.dialog-field{border:0;flex-direction:column;gap:6px;margin:0 0 16px;padding:0;display:flex}.dialog-field>span,.dialog-field>legend{padding:0;font-weight:800}.dialog-field small{color:var(--muted);font-size:14px}.dialog-field select,.dialog-field input{width:100%;font-size:18px;font-weight:600}.segmented{gap:6px;display:flex}.segmented .toggle{flex:1}.segmented .toggle:before{display:none}.segmented .toggle[aria-checked=true]{color:var(--ink);background:var(--warm);border-color:var(--ink)}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.dialog-actions.spread>.link,.link-row{text-align:left;flex:1 0 100%;margin-bottom:6px}.link-row{flex-wrap:wrap;gap:6px 18px;display:flex}.code-input{letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums;font-size:28px!important;font-weight:800!important}.dev-code{background:var(--gold-soft);border-radius:6px;padding:4px 8px;font-weight:700;color:var(--ink)!important}.dialog-actions.spread .spacer{display:none}.form-error{border:1.5px solid var(--ink);border-radius:var(--radius);padding:8px 12px;font-weight:700}.account-who{align-items:center;gap:12px;display:flex}.account-who .avatar{width:48px;height:48px;font-size:24px}.account-who strong{font-size:22px;font-weight:900;line-height:1.1;display:block}.account-who small{color:var(--muted)}.sync-state{color:var(--muted);font-size:15px}.sync-state.offline{color:var(--ink);font-weight:700}.nav-labs{border:1.5px dashed var(--hairline)}.lead{max-width:720px;font-size:20px}.lab-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lab-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.lab{flex-direction:row;align-items:flex-start;gap:16px}.lab.off .lab-body,.lab.off .lab-num{opacity:.45}.lab-num{background:var(--ink);width:38px;height:38px;color:var(--on-ink);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.lab-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.lab-body h2{font-size:24px}.lab-side{flex-direction:column;flex:none;align-items:flex-end;gap:10px;display:flex}.switch{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:inline-flex}.switch input{width:22px;height:22px;accent-color:var(--ink)}.btn.big{min-height:52px;padding:8px 30px;font-size:21px;font-weight:800}.queue-chip{background:var(--ink);color:var(--on-ink);border-radius:999px;margin-right:8px;padding:0 8px;font-style:normal;font-weight:800}.hud-ghost.ahead{background:var(--gold-soft)}.staff-ghost{transition:transform .26s}.metro{align-items:center;gap:4px;display:inline-flex}.metro .btn[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.metro-bpm{font-variant-numeric:tabular-nums;align-items:center;gap:6px;min-width:52px;font-size:20px;font-weight:900;display:inline-flex}.beat{background:var(--ink);border-radius:50%;width:10px;height:10px;animation:.32s ease-out both beat}@keyframes beat{0%{opacity:1;transform:scale(1.7)}to{opacity:.25;transform:scale(.6)}}.restart-btn svg{display:none}.hud-item b{white-space:nowrap}.btn.listen{flex:none}.demo-btn.on{background:var(--warm);border-color:var(--ink)}.map-panel{flex-direction:row;align-items:center;gap:24px}.map-panel>div{flex-direction:column;flex:1;gap:8px;display:flex}.scale-map{flex:0 300px;width:300px;max-width:100%;height:auto}.map-button{cursor:pointer}.map-button:focus{outline:none}.map-ring{transition:stroke-dashoffset .8s}.cal-page{max-width:760px}.cal-steps{flex-direction:column;gap:8px;margin:0;padding-left:1.3em;font-size:19px;display:flex}.cal-guest{border:1.5px solid var(--gold);background:var(--gold-soft);border-radius:12px;padding:12px 16px}.instrument-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.cal-run{min-height:0;padding:clamp(8px, 2vh, 24px) var(--pad-r) clamp(8px, 2vh, 20px) var(--pad);flex:auto;gap:clamp(12px,4vw,56px);display:flex}.cal-side{flex:0 0 clamp(90px,16%,200px);justify-content:center;min-height:0;display:flex}.cal-row{width:100%;height:100%}.cal-main{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(4px,1.6vh,16px);min-width:0;display:flex}.cal-count{color:var(--label);letter-spacing:.05em;text-transform:uppercase;font-weight:800}.cal-ask,.cal-wait{font-size:clamp(22px,3.4vw,38px);font-weight:800}.cal-target{aspect-ratio:1;place-items:center;width:clamp(120px,34vh,260px);display:grid;position:relative}.cal-target svg{width:100%;height:100%;position:absolute;inset:0}.cal-target strong{color:var(--current);font-size:clamp(40px,12vh,96px);font-weight:900;line-height:1}.cal-ring-track{fill:none;stroke:var(--warm-2);stroke-width:7px}.cal-ring{fill:none;stroke:var(--current);stroke-width:7px;stroke-linecap:round;transition:stroke-dashoffset .12s linear}.cal-target.done .cal-ring{stroke:var(--in-stroke)}.cal-target.done strong{color:var(--ink)}.cal-status{min-height:1.6em;color:var(--muted);font-size:clamp(18px,2.4vw,26px)}.cal-result{color:var(--ink);align-items:center;gap:8px;font-weight:800;display:inline-flex}.cal-actions{justify-content:center}.cal-side-chords{flex-basis:clamp(200px,36%,520px);align-items:center}.cal-kb{width:100%;max-height:100%}.cal-target strong.chcal-name{text-align:center;font-size:clamp(30px,8vh,64px)}.chcal-list{flex-wrap:wrap;gap:8px;margin:4px 0 12px;padding:0;list-style:none;display:flex}.chcal-list li{background:var(--warm);border-radius:999px;padding:6px 14px;font-weight:800}.chcal-prompt{margin:6px var(--pad-r) 0 var(--pad);border:1px solid var(--hairline);background:var(--paper);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px 8px 16px;display:flex}.chcal-prompt-text{flex:280px;min-width:0;font-size:15px;line-height:1.3}.chcal-prompt-text span{color:var(--muted)}.tuner{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:6px 18px;margin:0;padding:0;list-style:none;display:grid}.tuner button{border:1px solid var(--hairline);background:var(--paper);cursor:pointer;text-align:left;border-radius:12px;grid-template-columns:62px 1fr 44px 86px;align-items:center;gap:10px;width:100%;padding:8px 12px;display:grid}.tuner button:hover{border-color:var(--ink)}.tuner b{font-size:22px;font-weight:900}.tuner-bar{background:var(--warm-2);border-radius:999px;height:8px;position:relative}.tuner-bar:before{content:"";background:var(--faint);width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px;left:50%}.tuner-bar i{background:var(--ink);border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;position:absolute;top:50%}.tuner-value{font-variant-numeric:tabular-nums;text-align:right;font-weight:800}.tuner small{color:var(--muted);font-size:14px}.tuner .missing b,.tuner .missing .tuner-value{color:var(--label)}.tuner .missing .tuner-bar i{display:none}.tuner .weak .tuner-bar i{background:var(--paper);border:2.5px solid var(--ink)}@media (width<=900px){.topbar{flex-wrap:wrap}.nav{scrollbar-width:none;flex:1 0 100%;order:3;min-width:0;margin:0;overflow-x:auto}.nav a{text-align:center;flex:1;padding:8px 6px}.topbar-right{margin-left:auto}.account-label{display:none}.account-btn{padding:4px 8px}.columns{grid-template-columns:1fr 1fr}.columns>:first-child{grid-column:1/-1}.tiles{grid-template-columns:1fr 1fr}.lab,.map-panel{flex-wrap:wrap}.lab-side{flex-direction:row;align-items:center;width:100%}.demo-btn span{display:none}.tile.wide{grid-column:1/-1}}@media (width<=640px){.brand-title{font-size:20px}.status-hint{display:none}.play-title strong{font-size:20px}.hud-item{min-width:54px;padding:3px 8px}.columns{grid-template-columns:1fr}.btn.listen{min-width:0}}@media (height<=540px) and (orientation:landscape){.app.in-play .topbar{display:none}.back-compact{display:inline-flex}.play{min-height:0}.play-bar{padding-top:max(4px, env(safe-area-inset-top));flex-wrap:nowrap;gap:6px;padding-bottom:4px}.play-bar .btn,.play-bar .toggle,.play-bar select{min-height:38px;padding:2px 10px;font-size:16px}.play-bar .btn.icon{min-width:38px;padding:2px 6px}.play-bar select{background-position:right 10px center;min-width:0;padding-right:30px}.play-bar .btn.listen{min-width:0;padding:2px 14px}.demo-btn span,.restart-btn span{display:none}.restart-btn svg{display:block}.hud-time,.hud-combo{display:none}.play-title{flex:70px;min-width:70px}.play-title strong{text-overflow:ellipsis;overflow:hidden}.play-bar .spacer{display:none}.metro{gap:2px}.play-bar .metro .btn.icon:not([aria-pressed]){min-width:30px}.metro-bpm{min-width:42px;font-size:17px}.is-free .play-bar .toggle:before{display:none}.is-free .play-bar .btn.listen{gap:0;padding:2px 12px;font-size:0}.play-title{flex:0 auto;overflow:hidden}.play-title strong{white-space:nowrap;font-size:18px}.play-title span{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.hud-item{min-width:48px;padding:1px 8px}.hud-item small{font-size:10px}.hud-item b{font-size:17px}.progress-track{height:3px}.stage{gap:12px;padding-top:4px;padding-bottom:2px}.side{flex-basis:clamp(120px,24%,240px)}.stepline{min-height:0;font-size:17px}.hand-wrap{min-height:50px}.status{min-height:0;padding-top:2px;padding-bottom:max(2px, env(safe-area-inset-bottom));white-space:nowrap;flex-wrap:nowrap;font-size:13px;overflow:hidden}.status-hint{display:none}.result{gap:5px;width:min(620px,100%);padding:12px 18px}.result-stars{height:54px}.big-star svg{width:44px;height:44px}.result h2{font-size:26px}.result-points b{font-size:36px}.result-sub{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important;animation-delay:0s!important}.staff-ring,.sparks,.fx-spark,.confetti,.result-rays{display:none}.kb-halo,.flame.lit{animation:none}}.staff-wrap{position:relative}.hitfx{pointer-events:none;width:100%;max-width:1400px;height:100%;position:absolute;top:0;left:50%;overflow:visible;transform:translate(-50%)}.fx-flash,.fx-spark,.fx-points,.kb-flash-glow,.kb-flash-ring{transform-box:fill-box;transform-origin:50%}.fx-flash{fill:var(--gold);opacity:0;animation:.42s ease-out fx-flash}@keyframes fx-flash{0%{opacity:.6;transform:scale(.4)}to{opacity:0;transform:scale(2.4)}}.fx-spark{opacity:0;animation:.68s cubic-bezier(.12,.7,.3,1) fx-spark}.fx-spark.t0{fill:var(--gold)}.fx-spark.t1{fill:var(--in-stroke)}.fx-spark.t2{fill:var(--gold-deep)}.is-hot .fx-spark.t1{fill:var(--flame)}.is-hot .fx-spark.t2{fill:var(--flame-core)}@keyframes fx-spark{0%{opacity:1;transform:translate(0, 0) rotate(0) scale(var(--s))}70%{opacity:1}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(var(--rot)) scale(.2)}}.fx-points{fill:var(--gold-deep);stroke:var(--paper);stroke-width:3px;paint-order:stroke;opacity:0;font-size:13px;font-weight:900;animation:.95s cubic-bezier(.2,.9,.3,1.2) fx-points}.is-hot .fx-points{fill:var(--flame);font-size:15px}@keyframes fx-points{0%{opacity:0;transform:translateY(4px)scale(.5)}18%{opacity:1;transform:translateY(-2px)scale(1.3)}35%{transform:translateY(-4px)scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-16px)scale(1)}}.praise{z-index:3;pointer-events:none;white-space:nowrap;position:absolute;top:0;left:50%;transform:translate(-50%,-45%)}.praise span{color:var(--gold);letter-spacing:-.01em;text-shadow:0 3px 0 var(--gold-deep), 0 10px 26px var(--shadow);opacity:0;font-size:clamp(30px,4.6vw,64px);font-weight:900;line-height:1;animation:1.15s cubic-bezier(.2,.9,.3,1.3) praise;display:inline-block}.praise.p4 span,.praise.p5 span,.praise.p6 span{color:var(--flame-core);text-shadow:0 3px 0 var(--flame), 0 10px 26px var(--shadow);font-size:clamp(34px,5.4vw,76px)}@keyframes praise{0%{opacity:0;transform:scale(.3)rotate(-10deg)}16%{opacity:1;transform:scale(1.18)rotate(3deg)}28%{transform:scale(1)rotate(0)}72%{opacity:1;transform:translateY(-4px)}to{opacity:0;transform:translateY(-22px)scale(.96)}}.kb-flash{pointer-events:none}.kb-flash-glow{fill:var(--gold);opacity:0;animation:.46s ease-out kb-glow}@keyframes kb-glow{0%{opacity:.75}to{opacity:0;transform:scale(1.15)}}.kb-flash-ring{fill:none;stroke:var(--gold);stroke-width:4px;opacity:0;animation:.56s ease-out kb-ring}@keyframes kb-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.75)}}.confetti{z-index:40;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti i{top:100%;left:var(--x0);animation:cf-x var(--dur) cubic-bezier(.2, .6, .4, 1) var(--delay) both;position:absolute}.confetti i:before{content:"";width:var(--w);height:var(--h);animation:cf-y var(--dur) var(--delay) both;background:currentColor;border-radius:2px;display:block}.confetti i.round:before{height:var(--w);border-radius:50%}.confetti .c0{color:var(--gold)}.confetti .c1{color:var(--flame)}.confetti .c2{color:var(--current)}.confetti .c3{color:var(--in-fill)}.confetti .c4{color:var(--flame-core)}@keyframes cf-x{to{translate:var(--vx) 0}}@keyframes cf-y{0%{animation-timing-function:cubic-bezier(.15,.75,.35,1);transform:translateY(0)rotate(0)}42%{transform:translateY(var(--vy)) rotate(calc(var(--spin) * .4));animation-timing-function:cubic-bezier(.55,0,.85,.5)}to{transform:translateY(15vh) rotate(var(--spin))}}.autoplay{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.dev-tag{background:var(--ink);color:var(--on-ink);letter-spacing:.05em;border-radius:6px;padding:1px 6px;font-size:11px;font-style:normal;font-weight:800}.btn.auto-btn{gap:5px;min-height:30px;padding:2px 10px;font-size:15px}.btn.auto-btn.on{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.autoplay select{background-position:right 8px center;min-width:0;min-height:30px;padding:2px 28px 2px 8px;font-size:15px}.auto-check{color:var(--ink);align-items:center;gap:4px;display:inline-flex}.onb{z-index:50;padding:16px var(--pad-r) 16px var(--pad);background:var(--bg);grid-template-columns:minmax(0,1fr);place-items:center;animation:.2s ease-out fade-in;display:grid;position:fixed;inset:0;overflow:auto}.onb-card{border:1px solid var(--hairline);background:var(--paper);width:min(780px,100%);min-width:0;min-height:min(640px,100dvh - 32px);box-shadow:0 18px 60px var(--shadow);border-radius:26px;flex-direction:column;gap:12px;padding:18px 26px 22px;display:flex}.onb-top{align-items:center;gap:14px;display:flex}.onb-dots{gap:6px;margin-right:auto;display:flex}.onb-dots button{background:var(--warm-2);cursor:pointer;border:0;border-radius:999px;width:10px;height:10px;padding:0;transition:width .22s,background-color .22s}.onb-dots button[aria-selected=true]{background:var(--ink);width:30px}.onb-skip{color:var(--muted)}.onb-slide{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;animation:.34s cubic-bezier(.2,.9,.3,1.1) onb-in;display:flex}@keyframes onb-in{0%{opacity:0;transform:translate(28px)}}.onb-slide h2{font-size:clamp(28px,4.6vw,42px);font-weight:900;line-height:1.05}.onb-text{max-width:540px;color:var(--muted);font-size:19px;line-height:1.35}.onb-scene{align-items:center;gap:18px;width:100%;max-width:640px;height:240px;display:flex}.onb-kb{flex:none;width:auto;height:100%}.onb-staff{flex:1;min-width:0;height:130px}.onb-how{justify-content:center;align-items:center;gap:28px;height:280px;display:flex}.onb-kb-how{height:100%}.onb-legend,.onb-list{text-align:left;flex-direction:column;gap:14px;margin:0;padding:0;font-size:21px;font-weight:700;list-style:none;display:flex}.onb-legend li,.onb-list li{align-items:center;gap:14px;display:flex}.onb-legend li>:first-child,.onb-list li>:first-child{text-align:center;flex:none;width:44px}.onb-swatch{overflow:visible}.onb-mic{background:var(--warm);color:var(--ink);border-radius:14px;align-items:center;gap:10px;padding:10px 18px;display:inline-flex}.onb-plus{color:var(--gold-deep);font-weight:900}.onb-rewards{justify-content:center;align-items:flex-end;gap:22px;width:100%;height:170px;padding-bottom:10px;display:flex;position:relative}.onb-stars{align-items:flex-end;gap:6px;display:flex}.onb-star{animation:3s cubic-bezier(.2,.9,.3,1.4) infinite both onb-star;display:inline-block}.onb-star svg{fill:var(--gold);stroke:var(--gold-deep);stroke-width:1.2px}@keyframes onb-star{0%{opacity:0;transform:scale(0)rotate(-40deg)}16%,82%{opacity:1;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(1)}}.onb-pop{color:var(--gold-deep);font-size:28px;font-weight:900;animation:3s ease-out infinite both onb-pop;position:absolute}.onb-pop.p1{top:34%;left:18%}.onb-pop.p2{animation-delay:.45s;top:6%;left:30%}.onb-pop.p3{animation-delay:.9s;top:18%;right:22%}@keyframes onb-pop{0%{opacity:0;transform:translateY(12px)scale(.6)}12%{opacity:1;transform:translateY(0)scale(1.15)}40%{opacity:0;transform:translateY(-34px)scale(1)}to{opacity:0}}.onb-micart{place-items:center;width:150px;height:150px;display:grid;position:relative}.onb-micart span{z-index:1;background:var(--ink);width:88px;height:88px;color:var(--on-ink);border-radius:50%;place-items:center;display:grid}.onb-micart i{border:3px solid var(--ink);opacity:0;border-radius:50%;animation:2s ease-out infinite mic-wave;position:absolute;inset:31px}.onb-micart i+i{animation-delay:1s}@keyframes mic-wave{0%{opacity:.55;transform:scale(.8)}to{opacity:0;transform:scale(1.8)}}.onb-choices{flex-direction:column;align-items:center;gap:10px;display:flex}.onb-note{color:var(--muted);font-size:15px}.onb-nav{align-items:center;gap:10px;display:flex}@media (height<=560px){.onb-card{gap:8px;min-height:0;padding:12px 18px 14px}.onb-slide{gap:8px}.onb-slide h2{font-size:26px}.onb-text{font-size:16px}.onb-scene{height:150px}.onb-staff{height:90px}.onb-rewards{height:100px}.onb-how{height:170px}.onb-legend,.onb-list{gap:6px;font-size:17px}.onb-micart{width:90px;height:90px}.onb-micart span{width:60px;height:60px}.onb-micart i{inset:15px}}@media (width<=560px){.onb-card{border-radius:20px;padding:14px 16px 16px}.onb-slide{gap:12px}.onb-text{font-size:17px}.onb-scene,.onb-how{flex-direction:column;gap:12px;height:auto}.onb-kb,.onb-kb-how{height:190px}.onb-staff{flex:none;width:100%;height:auto}.onb-legend,.onb-list{gap:10px;font-size:17px}.onb-mic{padding:8px 12px}.onb-rewards{height:130px}}.debug{z-index:10;border:1px solid var(--hairline);background:var(--paper);width:330px;max-height:calc(100dvh - 140px);box-shadow:0 6px 24px var(--shadow);border-radius:12px;padding:12px 14px;font-size:14px;position:fixed;bottom:56px;right:12px;overflow:auto}.debug.collapsed{width:auto}.debug.collapsed>:not(.debug-head){display:none}.debug.collapsed .debug-head{margin-bottom:0}.debug-collapse{border:1px solid var(--hairline);background:var(--paper);cursor:pointer;border-radius:8px;min-width:32px;min-height:32px;padding:0 8px}.debug-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.debug-head select{min-width:0;min-height:32px;padding:2px 30px 2px 10px;font-size:14px}.debug h3{letter-spacing:.06em;text-transform:uppercase;color:var(--label);margin:12px 0 4px;font-size:13px;font-weight:800}.debug-muted{color:var(--muted)}.debug-grid{grid-template-columns:max-content 1fr;gap:2px 10px;margin:0;display:grid}.debug-grid dt{color:var(--muted)}.debug-grid dd{font-variant-numeric:tabular-nums;margin:0}.chroma{grid-template-columns:repeat(12,1fr);gap:3px;height:84px;margin-top:10px;display:grid}.chroma-bin{flex-direction:column;justify-content:flex-end;align-items:center;min-width:0;display:flex}.chroma-bar{background:var(--hairline);border-radius:2px 2px 0 0;width:100%;min-height:1px}.chroma-bin.win .chroma-bar{background:var(--ink)}.chroma-label{color:var(--muted);white-space:nowrap;font-size:10px}.debug-history{columns:2;margin:0 0 8px;padding-left:0;list-style:none}.debug-history span{color:var(--muted);font-variant-numeric:tabular-nums}.debug .btn{width:100%;margin-top:8px}.rec-page{max-width:760px}.rec-state{font-size:30px;font-weight:900}.rec-seq{font-size:20px;font-weight:700}.rec-seq>span{color:var(--label);font-size:15px;font-weight:600;display:block}.rec-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.rec-list li{border:1.5px solid var(--hairline);border-radius:var(--radius);background:var(--paper);overflow-wrap:anywhere;flex-direction:column;gap:6px;padding:12px 16px;display:flex}.rec-ok{color:var(--in-stroke);font-weight:800}.rec-bad{color:var(--current);font-weight:800}
