@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:800;src:url(./syne-greek-800-normal-n2LZS_yH.woff2)format("woff2"),url(./syne-greek-800-normal-DtzFnRR0.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:Syne;font-style:normal;font-display:swap;font-weight:800;src:url(./syne-latin-ext-800-normal-CAQAsWuS.woff2)format("woff2"),url(./syne-latin-ext-800-normal-B2iBRfEf.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:Syne;font-style:normal;font-display:swap;font-weight:800;src:url(./syne-latin-800-normal-EehdNYzx.woff2)format("woff2"),url(./syne-latin-800-normal-BuJcbPcX.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-vietnamese-400-normal-B7xT_GF5.woff2)format("woff2"),url(./space-grotesk-vietnamese-400-normal-BIWiOVfw.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-latin-ext-400-normal-CfP_5XZW.woff2)format("woff2"),url(./space-grotesk-latin-ext-400-normal-DRPE3kg4.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./space-grotesk-latin-400-normal-CJ-V5oYT.woff2)format("woff2"),url(./space-grotesk-latin-400-normal-BnQMeOim.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-vietnamese-500-normal-BmEvtly_.woff2)format("woff2"),url(./space-grotesk-vietnamese-500-normal-BTqKIpxg.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(./space-grotesk-latin-ext-500-normal-3dgZTiw9.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(./space-grotesk-latin-500-normal-CNSSEhBt.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./space-grotesk-vietnamese-700-normal-DMty7AZE.woff2)format("woff2"),url(./space-grotesk-vietnamese-700-normal-Duxec5Rn.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2)format("woff2"),url(./space-grotesk-latin-ext-700-normal-HVCqSBdx.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(./space-grotesk-latin-700-normal-CwsQ-cCU.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(./jetbrains-mono-greek-400-normal-B9oWc5Lo.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(./jetbrains-mono-vietnamese-400-normal-CqNFfHCs.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-400-normal-fXTG6kC5.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(./jetbrains-mono-latin-400-normal-6-qcROiO.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-cyrillic-ext-500-normal-C9ShMxGR.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-ext-500-normal-CEVyPk4Y.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-greek-500-normal-JpySY46c.woff2)format("woff2"),url(./jetbrains-mono-greek-500-normal-D7SFKleX.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-vietnamese-500-normal-BvH7FW2L.woff2)format("woff2"),url(./jetbrains-mono-vietnamese-500-normal-DNRqzVM1.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-500-normal-ckzbgY84.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(./jetbrains-mono-latin-500-normal-CJOVTJB7.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-cyrillic-ext-700-normal-D6iG63UR.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-ext-700-normal-iEXTdOVf.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-cyrillic-700-normal-BWTpRfYl.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-700-normal-CEoEElIJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-greek-700-normal-C6CZE3T8.woff2)format("woff2"),url(./jetbrains-mono-greek-700-normal-DEigVDxa.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-vietnamese-700-normal-k5PzE07T.woff2)format("woff2"),url(./jetbrains-mono-vietnamese-700-normal-BDLVIk2r.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-700-normal-CxPITLHs.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(./jetbrains-mono-latin-700-normal-D3wTyLJW.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:800;src:url(./jetbrains-mono-cyrillic-ext-800-normal-DAxANmC2.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-ext-800-normal-Dhn3VQNE.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:800;src:url(./jetbrains-mono-cyrillic-800-normal-ByBGbHIv.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-800-normal-B6A7wovd.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:800;src:url(./jetbrains-mono-greek-800-normal-CHF5NZ22.woff2)format("woff2"),url(./jetbrains-mono-greek-800-normal-kI_3BVxX.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:800;src:url(./jetbrains-mono-vietnamese-800-normal-BYbabB8t.woff2)format("woff2"),url(./jetbrains-mono-vietnamese-800-normal-PNBZwIr4.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:800;src:url(./jetbrains-mono-latin-ext-800-normal-M9NLV9AA.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-800-normal-BTI8MNNQ.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:800;src:url(./jetbrains-mono-latin-800-normal-D2mQHRMK.woff2)format("woff2"),url(./jetbrains-mono-latin-800-normal-Dj9qwObk.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{--bg:#06070c;--bg2:#0b0d16;--panel:#10121cdb;--panel-2:#1a1d2aeb;--line:#ffffff14;--line-2:#ffffff24;--text:#eef1ff;--dim:#eef1ff94;--faint:#eef1ff52;--accent:#3ef2ff;--hazard:#ff3b6b;--warn:#ffc94a;--good:#4dffb5;--gold:#ffe14a;--display:Syne, "Space Grotesk", system-ui, sans-serif;--ui:"Space Grotesk", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--radius:8px;--gutter:clamp(16px, 5vw, 72px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--ui);-webkit-font-smoothing:antialiased;overscroll-behavior:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}#app{position:fixed;inset:0}button{font:inherit;color:inherit}::selection{background:var(--accent);color:#000}.bg-canvas{z-index:0;width:100%;height:100%;display:block;position:fixed;inset:0}.screen{z-index:1;padding:clamp(18px, 5vh, 56px) var(--gutter) 48px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;animation:.28s cubic-bezier(.2,.8,.2,1) screen-in;position:absolute;inset:0;overflow:hidden auto}.rm .screen,.rm .screen *{transition:none!important;animation:none!important}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.bg-canvas{transition:opacity .4s}.bg-canvas.dim{opacity:.12}.screen.home{padding:clamp(28px, 10vh, 110px) var(--gutter) clamp(18px, 4vh, 34px);background:linear-gradient(90deg,#06070cf0 0%,#06070cc7 30%,#06070c33 60%,#06070c00 78%);flex-direction:column;justify-content:space-between;gap:32px;display:flex}.home-main{width:min(540px,100%);container-type:inline-size}.logo{font-family:var(--display);letter-spacing:-.045em;white-space:nowrap;color:#fff;-webkit-user-select:none;user-select:none;margin:0;font-size:clamp(36px,13.5cqi,110px);font-weight:800;line-height:.9}.logo .o{display:inline-block;position:relative}.logo .o:after{content:"";background:var(--hazard);border-radius:50%;width:.11em;height:.11em;margin:-.055em 0 0 -.055em;animation:3.2s linear infinite orbit;position:absolute;top:50%;left:50%}@keyframes orbit{0%{transform:rotate(0)translate(.52em)rotate(0)}to{transform:rotate(360deg)translate(.52em)rotate(-360deg)}}.rm .logo .o:after{animation:none;transform:translate(.4em,-.3em)}.tagline{font:500 clamp(13px, 1.2vw, 16px) var(--ui);color:var(--dim);margin:12px 0 0 3px}.nav{flex-direction:column;align-items:flex-start;margin-top:clamp(28px,7vh,72px);display:flex}.nav-btn{cursor:pointer;color:#eef1ff8c;font:600 clamp(18px, 1.9vw, 24px) var(--ui);background:0 0;border:0;outline:none;padding:6px 0;transition:color .12s,transform .12s;position:relative}.nav-btn:before{content:"";background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:50%;margin-top:-5px;transition:transform .12s;position:absolute;top:50%;left:-22px;transform:scale(0)}.nav-btn:hover,.nav-btn:focus-visible{color:var(--text);transform:translate(22px)}.nav-btn:hover:before,.nav-btn:focus-visible:before{transform:scale(1)}.nav-btn.primary{color:var(--text);margin-bottom:6px;font-size:clamp(26px,3vw,38px);font-weight:700}.home-foot{font:500 12px var(--mono);color:var(--dim);flex-wrap:wrap;align-items:baseline;gap:8px 28px;display:flex}.home-foot .k{color:var(--faint);text-transform:uppercase;letter-spacing:.12em;margin-right:8px;font-size:10px}.home-foot b{color:var(--text);margin-left:8px;font-weight:600}.home-foot .keys{color:var(--faint);margin-left:auto}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(#141722e6,#0c0e16e6);padding:18px 20px}.card h3{font:600 11px var(--mono);letter-spacing:.1em;color:var(--faint);text-transform:uppercase;margin:0 0 10px}.card .big{font:700 30px var(--mono);letter-spacing:-.02em}.card .sub{color:var(--dim);font-size:14px}.kv{grid-template-columns:1fr auto;gap:6px 12px;font-size:14px;display:grid}.kv span:nth-child(odd){color:var(--dim)}.kv span:nth-child(2n){font-family:var(--mono);text-align:right}.rating-chip{align-items:center;gap:14px;display:flex}.rating-chip .num{font:700 34px var(--mono)}.rating-chip .tier{font:800 13px var(--display);letter-spacing:.22em}.tag{font:600 10px var(--mono);letter-spacing:.08em;border:1px solid var(--line-2);color:var(--dim);text-transform:uppercase;border-radius:4px;padding:3px 7px;display:inline-block}.tag.hot{border-color:color-mix(in srgb, var(--hazard) 60%, transparent);color:var(--hazard)}.tag.acc{border-color:color-mix(in srgb, var(--accent) 60%, transparent);color:var(--accent)}.head{flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:clamp(18px,4vh,36px);display:flex}.head h1{font:800 clamp(30px, 4.4vw, 56px) var(--display);letter-spacing:-.03em;margin:0}.head .spacer{flex:1}.back{background:var(--panel);border:1px solid var(--line);font:600 12px var(--mono);letter-spacing:.06em;color:var(--dim);cursor:pointer;border-radius:6px;outline:none;padding:8px 14px}.back:hover,.back:focus-visible{color:var(--text);border-color:var(--line-2)}.btn{border:1px solid var(--line-2);background:var(--panel-2);font:700 15px var(--ui);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border-radius:6px;outline:none;justify-content:center;align-items:center;gap:10px;padding:13px 24px;transition:transform .12s,background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.btn:hover,.btn:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.btn:active{transform:scale(.98)}.btn.go{background:var(--accent);color:#031015;border-color:#0000}.btn.go:hover,.btn.go:focus-visible{box-shadow:inset 0 0 0 2px #fff}.btn.danger:hover,.btn.danger:focus-visible{border-color:var(--hazard);box-shadow:0 0 0 1px var(--hazard) inset}.btn .key{font:600 11px var(--mono);letter-spacing:.04em;background:#00000040;border-radius:5px;padding:2px 6px}.btn.go .key{background:#0000002e}.setup{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:start;gap:clamp(18px,3vw,40px);display:grid}.section-label{font:600 11px var(--mono);letter-spacing:.1em;white-space:pre;color:var(--faint);text-transform:uppercase;margin:0 0 12px}.modes{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-bottom:30px;display:grid}.opt{text-align:left;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:12px;outline:none;padding:14px 16px;transition:border-color .12s,background .12s,transform .12s;position:relative}.opt:hover,.opt:focus-visible{border-color:var(--line-2);background:var(--panel-2)}.opt.sel{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.opt:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 50%, transparent)}.opt .name{font:700 16px var(--ui);letter-spacing:.06em;text-transform:uppercase}.opt .desc{color:var(--dim);margin-top:4px;font-size:13px;line-height:1.35}.opt .best{font:500 11px var(--mono);color:var(--faint);margin-top:8px}.opt.locked{cursor:not-allowed}.opt.locked>:not(.lock){opacity:.4;filter:grayscale(.7)}.diffs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.diff .bar{background:var(--line);border-radius:3px;height:3px;margin-top:10px;overflow:hidden}.diff .bar i{background:var(--dc,var(--accent));height:100%;display:block}.diff.sel{border-color:var(--dc,var(--accent));background:color-mix(in srgb, var(--dc,var(--accent)) 9%, transparent)}.diff .name{color:var(--dc,var(--text))}.play-wrap{flex-direction:column;max-width:1120px;min-height:100%;margin:0 auto;display:flex}.play-cols{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);display:grid}.list{border-top:1px solid var(--line);flex-direction:column;display:flex}.lrow{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;background:0 0;border-left:3px solid #0000;outline:none;grid-template-columns:minmax(110px,.8fr) minmax(0,1.6fr) auto;align-items:center;gap:14px;padding:13px 14px;transition:background .1s;display:grid}.lrow .name{font:700 16px var(--ui);color:var(--dim)}.lrow .desc{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.lrow .meta{font:500 12px var(--mono);color:var(--faint)}.lrow:hover,.lrow:focus-visible{background:#ffffff09}.lrow:hover .name,.lrow:focus-visible .name{color:var(--text)}.lrow:focus-visible{box-shadow:inset 0 0 0 1px var(--line-2)}.lrow.sel{border-left-color:var(--accent);background:#ffffff0d}.lrow.sel .name{color:var(--text)}.lrow.sel .desc{color:var(--dim)}.lrow.diff .name{color:color-mix(in srgb, var(--dc) 75%, transparent)}.lrow.diff.sel{border-left-color:var(--dc)}.lrow.diff.sel .name,.lrow.diff:hover .name,.lrow.diff:focus-visible .name{color:var(--dc)}.play-bar{border-top:1px solid var(--line-2);background:var(--bg);align-items:center;gap:24px;margin-top:28px;padding:18px 0 22px;display:flex;position:sticky;bottom:-48px}.play-info{flex:1;min-width:0}.play-title{font:800 26px var(--display);letter-spacing:-.02em}.play-title span:first-child{color:var(--faint)}.play-rules{color:var(--dim);margin-top:6px;font-size:13px;line-height:1.5}.play-best{font:500 12px var(--mono);color:var(--faint);margin-top:6px}.play-bar .btn.go{padding:16px 40px;font-size:17px}.detail{flex-direction:column;gap:14px;display:flex;position:sticky;top:0}.detail .title{font:800 30px var(--display);letter-spacing:-.02em;margin:0}.detail ul{color:var(--dim);margin:6px 0 0;padding-left:18px;font-size:14px;line-height:1.6}.top-list{font-family:var(--mono);gap:3px;font-size:13px;display:grid}.top-list .row{color:var(--dim);grid-template-columns:26px 1fr auto;gap:8px;display:grid}.top-list .row b{color:var(--text);font-weight:600}.top-list .row.hl b,.top-list .row.hl{color:var(--gold)}.empty{color:var(--faint);font-size:13px}.row-set{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 0;display:flex}.row-set .lbl{flex:160px}.row-set:last-child{border-bottom:0}.row-set .lbl{font-weight:600}.row-set .lbl small{color:var(--faint);margin-top:2px;font-size:12px;font-weight:400;display:block}.seg{border:1px solid var(--line);background:#0000004d;border-radius:10px;flex-wrap:wrap;gap:2px;max-width:100%;padding:3px;display:inline-flex}.row-set .seg{flex-wrap:nowrap}.seg button{font:600 12px var(--mono);letter-spacing:.06em;color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:7px;outline:none;padding:7px 12px}.seg button.sel{background:var(--accent);color:#031015}.seg button:focus-visible{box-shadow:0 0 0 2px var(--accent);color:var(--text)}.seg button.sel:focus-visible{color:#031015;box-shadow:0 0 0 2px #fff}input[type=range]{appearance:none;background:var(--line-2);border-radius:4px;outline:none;width:min(220px,40vw);height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}input[type=range]::-moz-range-thumb{background:var(--accent);cursor:pointer;border:0;border-radius:50%;width:16px;height:16px}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 40%, transparent)}.range-wrap{font:500 12px var(--mono);color:var(--dim);align-items:center;gap:12px;display:flex}.toggle{border:1px solid var(--line-2);cursor:pointer;background:#00000059;border-radius:999px;outline:none;flex:none;width:46px;height:26px;position:relative}.toggle:after{content:"";background:var(--dim);border-radius:50%;width:18px;height:18px;transition:transform .15s,background .15s;position:absolute;top:3px;left:3px}.toggle.on{background:color-mix(in srgb, var(--accent) 30%, transparent);border-color:var(--accent)}.toggle.on:after{background:var(--accent);transform:translate(20px)}.toggle:focus-visible{box-shadow:0 0 0 2px var(--accent)}.keybind{border:1px solid var(--line-2);min-width:92px;font:600 12px var(--mono);cursor:pointer;color:var(--text);background:#0000004d;border-radius:8px;outline:none;padding:8px 12px}.keybind.wait{border-color:var(--warn);color:var(--warn);animation:.8s infinite blink}.keybind:focus-visible{box-shadow:0 0 0 2px var(--accent)}@keyframes blink{50%{opacity:.4}}.cols-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));align-items:start;gap:18px;display:grid}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.stat .v{font:700 22px var(--mono)}.stat .k{font:600 10px var(--mono);letter-spacing:.18em;color:var(--faint);text-transform:uppercase;margin-top:4px}.parts{gap:10px;margin-top:12px;display:grid}.part{grid-template-columns:150px 1fr 40px;align-items:center;gap:12px;font-size:13px;display:grid}.part .label small{color:var(--faint);font-family:var(--mono);margin-left:4px;font-size:10px}.part .label{color:var(--dim)}.part .track{background:var(--line);border-radius:6px;height:6px;overflow:hidden}.part .track i{background:var(--accent);border-radius:6px;height:100%;display:block}.part .pct{font-family:var(--mono);text-align:right;color:var(--dim)}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.items{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.item .swatch{border:1px solid var(--line);background:#00000059;border-radius:9px;place-items:center;height:64px;margin-bottom:10px;display:grid;overflow:hidden}.item .lock{font:500 11px var(--mono);color:var(--faint);margin-top:6px;line-height:1.35}.item.sel .name:after{content:" ✓";color:var(--accent)}.rt-pad{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--line);border-radius:20px;outline:none;place-items:center;height:min(52vh,460px);display:grid}.rt-pad.idle{background:#0d1020}.rt-pad.wait{background:#3a0d18;border-color:#6a1b2c}.rt-pad.go{color:#02150b;background:#13d67c;border-color:#13d67c}.rt-pad.early{border-color:var(--warn);background:#2a1f05}.rt-pad.result{background:#0d1020}.rt-pad .main{font:800 clamp(34px, 6vw, 72px) var(--display);letter-spacing:-.02em}.rt-pad .hint{font:500 13px var(--mono);letter-spacing:.12em;opacity:.7;margin-top:10px}.rt-tries{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.rt-tries span{font:600 13px var(--mono);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:6px 10px}.rt-tries span.best{border-color:var(--good);color:var(--good)}.game{z-index:3;cursor:none;background:#000;position:absolute;inset:0}.game.show-cursor{cursor:default}.game canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.overlay{z-index:5;cursor:default;background:radial-gradient(#06070cb8,#06070ceb);place-items:center;padding:16px;animation:.2s fade-in;display:grid;position:absolute;inset:0;overflow-y:auto}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.panel{flex-direction:column;gap:18px;width:min(640px,100%);display:flex}.panel h2{font:800 clamp(34px, 6vw, 64px) var(--display);letter-spacing:-.03em;margin:0;line-height:1}.panel .meta{font:600 11px var(--mono);letter-spacing:.22em;color:var(--faint);text-transform:uppercase}.actions{flex-wrap:wrap;gap:10px;display:flex}.res-score{font:700 clamp(44px, 8vw, 84px) var(--mono);letter-spacing:-.03em;line-height:1}.res-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.badge{font:800 11px var(--mono);letter-spacing:.18em;background:var(--gold);color:#1a1400;border-radius:6px;padding:5px 10px}.badge.rank{border:1px solid var(--line-2);color:var(--dim);background:0 0}.res-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;display:grid}.res-grid .stat{padding:10px 12px}.res-grid .stat .v{font-size:18px}.tip{color:var(--dim);border-left:2px solid var(--warn);padding:4px 0 4px 12px;font-size:14px;line-height:1.45}.tip b{color:var(--text)}.unlock{font:600 13px var(--mono);color:var(--good);letter-spacing:.06em}.controls-list{color:var(--dim);grid-template-columns:auto 1fr;align-items:center;gap:8px 16px;font-size:14px;display:grid}.kbd{font:600 12px var(--mono);border:1px solid var(--line-2);color:var(--text);white-space:nowrap;background:#ffffff0a;border-radius:6px;justify-self:start;padding:4px 8px}.touch-btn{z-index:4;color:var(--text);font:700 12px var(--mono);letter-spacing:.1em;touch-action:none;-webkit-user-select:none;user-select:none;background:#ffffff0f;border:1px solid #ffffff40;border-radius:50%;place-items:center;display:grid;position:absolute}.touch-dash{width:84px;height:84px;right:max(18px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom))}.touch-dash.cool{opacity:.4}.touch-pause{width:46px;height:46px;left:max(14px, env(safe-area-inset-left));bottom:max(22px, env(safe-area-inset-bottom))}.toast-area{z-index:50;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;right:16px}.toast{border:1px solid var(--good);color:var(--text);font:600 13px var(--mono);background:#0a0c14eb;border-radius:10px;padding:10px 14px;animation:.2s fade-in}.setup>*{min-width:0}@media (max-width:860px){.screen.home{background:linear-gradient(#06070ce0,#06070cb3)}.home-foot .keys{display:none}.setup{grid-template-columns:1fr}.detail{position:static}.play-cols{grid-template-columns:1fr}.play-bar{flex-wrap:wrap}.play-bar .btn.go{width:100%}}@media (max-width:520px){.modes,.diffs{grid-template-columns:1fr 1fr}.opt .desc{font-size:12px}.btn{padding:12px 18px;font-size:13px}.row-set{flex-wrap:wrap}.part{grid-template-columns:120px 1fr 36px}}
