@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-cyrillic-ext-400-normal.3jvet3qmpe_np.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-400-normal.3h3676at96nns.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:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-cyrillic-400-normal.1kar6y_w7xc92.woff2)format("woff2"),url(../media/manrope-cyrillic-400-normal.2ow5pljymqch1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-greek-400-normal.3ndh7452icn1t.woff2)format("woff2"),url(../media/manrope-greek-400-normal.010saykxxeioc.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:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-vietnamese-400-normal.3twqkh3lr93h-.woff2)format("woff2"),url(../media/manrope-vietnamese-400-normal.3o_jvyozxy7do.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:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-ext-400-normal.3kpz2pq12o9y7.woff2)format("woff2"),url(../media/manrope-latin-ext-400-normal.3dacdzxdo3dh1.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:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-400-normal.2xa18tgv2np2i.woff2)format("woff2"),url(../media/manrope-latin-400-normal.16uzrbq5-8z5v.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:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-cyrillic-ext-500-normal.2kuwqy2x2_kvx.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-500-normal.0xr2oo9ws-j-l.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:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-cyrillic-500-normal.2j2me72v6wy09.woff2)format("woff2"),url(../media/manrope-cyrillic-500-normal.1snb6zl_nhipa.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-greek-500-normal.3fllgi463pg36.woff2)format("woff2"),url(../media/manrope-greek-500-normal.44ok24c-hm52c.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:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-vietnamese-500-normal.2rmwx81er-1wg.woff2)format("woff2"),url(../media/manrope-vietnamese-500-normal.3j-azu-_-g81b.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:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-ext-500-normal.2m4b1kv6exkn9.woff2)format("woff2"),url(../media/manrope-latin-ext-500-normal.09w2uqje_gnk0.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:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-500-normal.23dhs730snm70.woff2)format("woff2"),url(../media/manrope-latin-500-normal.1uxcnzel4f8qj.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:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-cyrillic-ext-600-normal.2c5msalb399p0.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-600-normal.15dz_0yvxte-y.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:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-cyrillic-600-normal.2dlkzm0g6c5lw.woff2)format("woff2"),url(../media/manrope-cyrillic-600-normal.2lp-6i5mhw61k.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-greek-600-normal.36n2ro-k8135v.woff2)format("woff2"),url(../media/manrope-greek-600-normal.2cdz12dc1iljx.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:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-vietnamese-600-normal.44s_uvku5lu7o.woff2)format("woff2"),url(../media/manrope-vietnamese-600-normal.04ryp5-ejuw11.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:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-ext-600-normal.0rboslp6omgc3.woff2)format("woff2"),url(../media/manrope-latin-ext-600-normal.2dnw-ugx_s-0m.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:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-600-normal.2ybi4mo9-3upl.woff2)format("woff2"),url(../media/manrope-latin-600-normal.0d_nc7hu7m8km.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:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-cyrillic-ext-700-normal.24rfadzth-ea_.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-700-normal.24rbunm8ei_ow.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:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-cyrillic-700-normal.16p40z5fn5_zv.woff2)format("woff2"),url(../media/manrope-cyrillic-700-normal.3te-i5lbatid1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-greek-700-normal.345zy40yxw5yy.woff2)format("woff2"),url(../media/manrope-greek-700-normal.106e_m097cdnm.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:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-vietnamese-700-normal.3spwa7rpbdcfi.woff2)format("woff2"),url(../media/manrope-vietnamese-700-normal.09mmasjjym1bw.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:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-latin-ext-700-normal.14ezai-4kezdq.woff2)format("woff2"),url(../media/manrope-latin-ext-700-normal.3p3hfqi13m0pv.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:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-latin-700-normal.22dwiag9_pj68.woff2)format("woff2"),url(../media/manrope-latin-700-normal.2dopus2zh5ii9.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:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(../media/manrope-cyrillic-ext-800-normal.29qbcrtmcyu4t.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-800-normal.066cgovoj794h.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:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(../media/manrope-cyrillic-800-normal.2ohq_hu38ve4h.woff2)format("woff2"),url(../media/manrope-cyrillic-800-normal.32dd6yd8_gpxf.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(../media/manrope-greek-800-normal.0289vjefxfdzw.woff2)format("woff2"),url(../media/manrope-greek-800-normal.35thbajvftyqu.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:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(../media/manrope-vietnamese-800-normal.442n86tidv_77.woff2)format("woff2"),url(../media/manrope-vietnamese-800-normal.3icp_a-119ojs.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:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(../media/manrope-latin-ext-800-normal.3brv9jqybigpz.woff2)format("woff2"),url(../media/manrope-latin-ext-800-normal.0jpddng83u627.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:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(../media/manrope-latin-800-normal.037pwi_4ver8j.woff2)format("woff2"),url(../media/manrope-latin-800-normal.0a-2q2cgln7hh.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:#10191c;--panel:#172226;--line:#2a373a;--text:#eef2ed;--muted:#8e9e9f;--mint:#c6f39a;--font:"Manrope",sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-size:14px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.4;cursor:default}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--mint);outline-offset:5px}button{transition:background .18s,color .18s,transform .18s}button:hover:not(:disabled){filter:brightness(1.1)}a{color:inherit;text-decoration:none}.app-shell{max-width:1560px;margin:auto;padding:0 52px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;height:100px;display:flex}.brand{letter-spacing:-1.2px;align-items:center;gap:12px;font-size:24px;font-weight:800;display:flex}.brand-mark{background:var(--mint);color:#20302b;border-radius:13px;place-items:center;width:43px;height:43px;display:grid}.brand-light{font-weight:400}.brand small{color:#839896;letter-spacing:2.1px;margin-top:4px;font-size:7px;font-weight:600;display:block}.topbar nav{align-items:center;gap:34px;height:100%;margin-left:auto;margin-right:66px;display:flex}.topbar nav button{color:#94a3a4;align-items:center;gap:8px;height:100%;font-size:12px;font-weight:600;display:flex;position:relative}.topbar nav .nav-active{color:var(--mint)}.nav-active:after{content:"";background:var(--mint);height:2px;position:absolute;bottom:-1px;left:0;right:0}.nav-count,.beta{border:1px solid #3d4d48;border-radius:4px;padding:2px 5px;font-size:9px}.beta{color:var(--mint);letter-spacing:.6px;font-size:8px}.icon-button{color:#9eaeae;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.icon-button:hover{color:var(--mint);background:#ffffff0d}.page-heading{justify-content:space-between;align-items:center;margin:37px 0 30px;display:flex}.eyebrow{letter-spacing:1.9px;color:#9cacaa;align-items:center;gap:7px;font-size:9px;font-weight:700;display:flex}.eyebrow>span{background:var(--mint);border-radius:50%;width:5px;height:5px}h1{letter-spacing:-1.4px;margin:12px 0;font-size:37px;font-weight:650;line-height:1.2}h1>span{color:var(--mint)}.page-heading p{color:var(--muted);margin:0;font-size:12px}.chapter-tag{color:var(--mint);border-left:1px solid var(--line);align-items:center;gap:14px;padding:12px 0 12px 25px;display:flex}.chapter-tag div{flex-direction:column;gap:5px;display:flex}.chapter-tag strong{color:#d5dfd8;font-size:11px;font-weight:600}.chapter-tag span{color:var(--muted);font-size:10px}.game-layout{grid-template-columns:minmax(0,1fr) 296px;gap:22px;display:grid}.game-stage{background:radial-gradient(at 50% 45%,#283c37 0%,#1d2d29 45%,#1a2826 100%);border:1px solid #33433f;border-radius:18px;flex-direction:column;min-height:563px;display:flex;position:relative;overflow:hidden}.stage-top{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;padding:25px 28px 0;display:flex}.tiny-label{letter-spacing:1.8px;color:#9fbaab;font-size:9px;font-weight:600}.level-label h2{letter-spacing:-.4px;margin:7px 0 0;font-size:17px;font-weight:500}.lives{background:#111e1b55;border:1px solid #4a5e4933;border-radius:20px;gap:7px;padding:10px 13px;display:flex}.alive{color:var(--mint)}.lost{color:#58675e}.scene-wrap{flex:1;min-height:417px;position:relative}.board-canvas{z-index:1;cursor:grab;position:absolute;inset:0;outline-offset:-6px!important}.board-canvas canvas{touch-action:none;display:block}.ambient-orbit{pointer-events:none;border:1px solid #a8d7aa08;border-radius:50%;width:76%;height:72%;position:absolute;top:12%;left:12%;transform:rotate(-25deg)}.orbit-two{width:90%;height:91%;top:2%;left:5%;transform:rotate(-25deg)}.axis-label{color:#89a295;letter-spacing:1.4px;pointer-events:none;align-items:center;gap:6px;font-size:8px;display:flex;position:absolute;bottom:5px;left:28px}.axis-dot{background:#93b99a;border-radius:50%;width:5px;height:5px}.zoom-controls{z-index:3;background:#14231ecc;border:1px solid #455c4844;border-radius:10px;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;bottom:0;right:22px}.zoom-controls button{color:#afbeb3;border-radius:5px;place-items:center;width:30px;height:30px;display:grid}.zoom-controls button:hover{background:#ffffff0c}.zoom-controls>span{background:#ffffff10;height:1px;margin:3px 5px}.stage-bottom{z-index:2;border-top:1px solid #a6c6af14;justify-content:space-between;align-items:center;gap:12px;margin:15px 25px 14px;padding-top:13px;display:flex}.stage-bottom>span{color:#9fb0a6;align-items:center;gap:7px;font-size:10px;display:flex}.stage-bottom>div{gap:6px;display:flex}.sidebar{flex-direction:column;gap:16px;display:flex}.progress-card,.journey-card{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:22px}.section-title{justify-content:space-between;align-items:center;display:flex}.section-title h3{margin:0;font-size:12px;font-weight:600}.status-dot{background:var(--mint);border-radius:100%;width:6px;height:6px;box-shadow:0 0 0 4px #c6f39a0c}.progress-numbers{justify-content:space-between;align-items:end;margin:22px 0 14px;display:flex}.progress-numbers>strong{letter-spacing:-1.5px;font-size:35px;font-weight:500;line-height:1}.progress-numbers strong>span{color:#738685;letter-spacing:0;font-size:17px}.progress-numbers>span{color:var(--muted);padding-bottom:4px;font-size:9px}.progress-track{background:#2c3a3c;border-radius:3px;height:4px;overflow:hidden}.progress-track>div{background:var(--mint);border-radius:3px;height:100%;transition:width .4s}.stats-row{justify-content:space-between;margin:22px 0;display:flex}.stats-row>div{flex-direction:column;gap:7px;display:flex}.stats-row>div>span{color:#7f9494;letter-spacing:1.2px;font-size:8px}.stats-row strong{font-variant-numeric:tabular-nums;font-size:17px;font-weight:500}.stats-row i{color:#6d8683;padding:0 2px;font-style:normal}.stats-row small{color:#7f9494;margin-left:3px;font-size:11px}.hint-button{background:var(--mint);color:#263928;border-radius:9px;align-items:center;gap:8px;width:100%;padding:13px 12px;font-size:10px;font-weight:750;display:flex}.hint-button>span{margin-left:auto;font-size:19px;line-height:1}.restart-button{color:#9cafad;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:15px;padding:3px;font-size:10px;display:flex}.journey-card{padding:21px 22px 17px}.section-title>span:not(.status-dot){color:#7d9191;font-size:9px}.level-grid{grid-template-columns:repeat(6,1fr);gap:6px;margin-top:17px;display:grid}.level-grid button{aspect-ratio:1;color:#8b9fa0;border:1px solid #324347;border-radius:6px;place-items:center;font-size:10px;display:grid;position:relative}.level-grid button:hover{background:#273a38}.level-grid .selected{background:var(--mint);color:#2c422d;border-color:var(--mint)}.level-grid .selected>span{background:#385733;border-radius:50%;width:3px;height:3px;position:absolute;bottom:4px}.level-grid .completed:not(.selected){color:var(--mint);background:#26352c;border-color:#536c48}.journey-card p{color:#718886;text-align:center;margin:16px 0 0;font-size:9px}.lab-card{text-align:left;background:linear-gradient(120deg,#232f2a,#1a2627);border:1px solid #384340;border-radius:13px;flex:1;align-items:center;gap:14px;padding:20px 17px;display:flex}.lab-cube{color:var(--mint);transform:rotate(-8deg)}.lab-card>div:last-child{flex-direction:column;gap:7px;display:flex}.lab-card .tiny-label{letter-spacing:1.4px;color:#8caa8e;font-size:7px}.lab-card strong{font-size:11px;font-weight:600}.lab-card div>span:last-child{color:#a1b29e;align-items:center;gap:5px;font-size:9px;display:flex}.how-strip{border:1px solid var(--line);border-radius:13px;grid-template-columns:1.05fr 1fr 1fr 1fr;gap:25px;margin:23px 0;padding:22px 25px;display:grid}.how-strip>div{align-items:center;gap:14px;display:flex}.how-title{color:#a8b8b3;border-right:1px solid var(--line);font-size:11px;line-height:1.7}.how-title svg{color:var(--mint)}.how-title strong{color:#d4ddd7;font-weight:500}.step-number{color:#809995;border:1px solid #344845;border-radius:50%;flex-shrink:0;place-items:center;width:27px;height:27px;font-size:10px;display:grid}.how-strip p{flex-direction:column;gap:5px;margin:0;display:flex}.how-strip p strong{font-size:10px;font-weight:500}.how-strip p>span{color:#7b9190;font-size:8px}footer{color:#607c7b;letter-spacing:.2px;justify-content:space-between;align-items:center;padding:0 0 24px;font-size:8px;display:flex}footer>span{align-items:center;gap:6px;display:flex}.footer-star{color:#b4c9a5;margin-left:3px;font-size:17px}.toast{color:#dbedcf;z-index:5;text-align:center;pointer-events:none;background:#101d16ee;border:1px solid #7c9a6b;border-radius:10px;width:max-content;max-width:85%;padding:12px 20px;font-size:11px;position:absolute;bottom:76px;left:50%;transform:translate(-50%)}.result-overlay{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#10201bc9;place-items:center;padding:25px;display:grid;position:absolute;inset:0}.result-card{text-align:center;max-width:350px}.result-icon{color:var(--mint);margin-bottom:22px}.result-card .eyebrow{color:var(--mint);justify-content:center}.result-card h2{letter-spacing:-1px;font-size:28px;font-weight:500}.result-card p{color:#a5b9ad;margin:0 0 25px;font-size:12px;line-height:1.8}.primary-button{background:var(--mint);color:#213723;border-radius:9px;justify-content:center;align-items:center;gap:20px;width:100%;padding:14px 20px;font-size:12px;font-weight:700;display:flex}.text-button{color:#aac3b0;margin-top:15px;font-size:11px}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#07100bba;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#1a2928;border:1px solid #4b5b4f;border-radius:19px;width:100%;max-width:500px;max-height:90dvh;padding:35px;position:relative;overflow:auto}.modal-close{position:absolute;top:15px;right:15px}.modal h2{letter-spacing:-.7px;margin:15px 0 22px;font-size:25px;font-weight:500}.modal p{color:#b0c2b7;font-size:12px;line-height:1.8}.help-rule{color:#c6d9c7;align-items:center;gap:13px;margin:20px 0;font-size:11px;line-height:1.7;display:flex}.help-rule svg{width:20px;color:var(--mint);flex-shrink:0}.modal .keyboard-help{color:#809c8c;font-size:10px}.modal .primary-button{margin-top:25px}.level-list{flex-direction:column;gap:5px;display:flex}.level-list button{text-align:left;background:#213432;border-radius:7px;align-items:center;gap:15px;padding:11px 12px;font-size:12px;display:flex}.level-list button>span{color:#86a68c;font-size:10px}.level-list svg{color:var(--mint);margin-left:auto}.loading-board,.webgl-error{color:#acc4b3;text-align:center;justify-content:center;align-items:center;gap:10px;padding:30px;font-size:12px;display:flex;position:absolute;inset:0}.loading-board span{background:var(--mint);border-radius:50%;width:8px;height:8px;animation:1s infinite alternate pulse}.game-stage:fullscreen{background:#1a2b25;border-radius:0;height:100vh}.game-stage:fullscreen .scene-wrap{height:80vh}@keyframes pulse{to{opacity:.2;transform:scale(.6)}}@media (min-width:1500px){.game-stage{min-height:660px}.scene-wrap{min-height:510px}.sidebar{gap:21px}.progress-card{padding:27px}.journey-card{padding:25px}.lab-card{max-height:145px}.page-heading{margin:42px 0 34px}}@media (max-width:1100px){.app-shell{padding:0 28px}.topbar nav{gap:24px;margin-right:10px}.game-layout{grid-template-columns:minmax(0,1fr) 270px;gap:17px}.game-stage{min-height:550px}.scene-wrap{min-height:400px}.progress-card,.journey-card{padding:19px}.how-strip{gap:17px;padding:20px}.how-strip>div{gap:9px}.how-strip p>span{font-size:7px}h1{font-size:33px}}@media (max-width:800px){.app-shell{padding:0 20px}.topbar{gap:15px;height:82px}.brand{font-size:21px}.brand-mark{width:36px;height:36px}.topbar nav{gap:20px;margin:0}.topbar nav button{font-size:10px}.topbar nav button:first-child,.beta,.nav-count,.help-top{display:none}.page-heading{margin:28px 0 23px}.chapter-tag{display:none}h1{font-size:31px}.eyebrow{font-size:7px}.game-layout{grid-template-columns:1fr}.game-stage{min-height:560px}.scene-wrap{min-height:415px}.sidebar{grid-template-columns:1fr 1fr;gap:15px;display:grid}.lab-card{grid-column:1/-1;justify-content:center;padding:15px}.progress-card{grid-row:span 1}.journey-card{flex-direction:column;justify-content:center;display:flex}.level-grid{grid-template-columns:repeat(4,1fr)}.how-strip{grid-template-columns:1fr 1fr;gap:22px}.how-title{border-right:none}.how-strip p>span{font-size:8px}footer>span:last-child{display:none}.stats-row{margin:17px 0}.hint-button{font-size:9px}.progress-numbers>span{font-size:8px}}@media (max-width:480px){.app-shell{padding:0 14px}.topbar nav{gap:14px}.topbar nav button{font-size:9px}.topbar nav svg{display:none}.brand small{letter-spacing:1.5px;font-size:6px}.brand{gap:8px}.brand-mark{border-radius:10px;width:32px;height:32px}.page-heading p{font-size:10px}h1{font-size:28px}.game-stage{min-height:480px}.scene-wrap{min-height:335px}.stage-top{padding:21px 19px 0}.level-label h2{font-size:15px}.tiny-label{font-size:8px}.lives{gap:5px;padding:8px 10px}.lives svg{width:16px}.stage-bottom{margin:13px 16px}.stage-bottom>span{max-width:210px;font-size:8px;line-height:1.6}.axis-label{font-size:7px;left:19px}.zoom-controls{right:14px}.sidebar{gap:10px}.progress-card,.journey-card{padding:15px}.section-title h3{font-size:10px}.progress-numbers{flex-direction:column;align-items:start;gap:5px;margin:19px 0 12px}.progress-numbers>strong{font-size:31px}.stats-row strong{font-size:14px}.stats-row>div>span{font-size:6px}.hint-button{text-align:left;gap:5px;padding:10px;font-size:8px}.hint-button svg{flex-shrink:0;width:16px}.hint-button>span{display:none}.restart-button{font-size:9px}.level-grid{gap:5px}.journey-card p{font-size:8px;line-height:1.7}.how-strip{gap:21px 12px;padding:17px}.how-strip>div{gap:8px}.how-strip p strong{font-size:9px}.how-strip p>span{font-size:7px;line-height:1.6}.how-title{font-size:9px}.step-number{width:23px;height:23px;font-size:8px}footer{font-size:7px}.modal{padding:28px 23px}.modal h2{font-size:23px}.lab-card .tiny-label{font-size:7px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.mobile-toolbar{display:none}@media (max-width:600px){.app-shell{padding:0 12px;padding-bottom:calc(88px + env(safe-area-inset-bottom))}.topbar{height:62px}.brand{font-size:21px}.brand small{display:none}.topbar nav button{min-height:44px}.topbar nav button:nth-child(2){display:none}.topbar nav button:last-child{font-size:10px}.topbar nav button:last-child svg{display:block}.help-top{width:44px;height:44px;display:grid}.topbar nav{gap:0;margin-left:auto}.topbar{gap:8px}.page-heading{margin:21px 6px 18px}.page-heading .eyebrow{display:none}h1{letter-spacing:-1px;margin:0 0 8px;font-size:27px}.page-heading p{font-size:10px}.game-layout{gap:12px}.game-stage{border-radius:16px;min-height:0}.stage-top{padding:18px 18px 0}.scene-wrap{flex:none;height:49svh;min-height:310px;max-height:490px}.stage-bottom{min-height:43px;margin:7px 14px 9px;padding-top:5px}.stage-bottom>span{max-width:230px;font-size:9px}.stage-bottom .icon-button{width:40px;height:40px}.stage-bottom>div{gap:0}.lives{gap:8px;padding:9px 12px}.lives svg{width:18px}.zoom-controls{border-radius:11px;padding:2px;bottom:8px;right:10px}.zoom-controls button{width:40px;height:40px}.axis-label{bottom:12px;left:18px}.level-label h2{font-size:16px}.sidebar{gap:12px;display:flex}.progress-card{border-radius:13px;grid-template-columns:1fr 1fr;gap:9px 18px;padding:16px 18px;display:grid}.progress-card .section-title{display:none}.progress-numbers{flex-direction:row;justify-content:start;align-items:center;gap:9px;margin:0}.progress-numbers>strong{font-size:24px}.progress-numbers strong>span{font-size:13px}.progress-numbers>span{max-width:54px;padding:0;font-size:8px;line-height:1.5}.progress-track{grid-area:2/1;align-self:center}.stats-row{grid-area:1/2/3;justify-content:space-between;gap:12px;margin:0}.stats-row>div{gap:5px}.stats-row>div>span{font-size:6px}.stats-row strong{font-size:14px}.stats-row>div:last-child,.progress-card .hint-button,.progress-card .restart-button,.journey-card{display:none}.lab-card{justify-content:start;gap:16px;padding:14px 18px}.lab-cube svg{width:30px;height:30px}.lab-card>div:last-child{grid-template-columns:1fr auto;gap:5px;width:100%;display:grid}.lab-card .tiny-label{grid-column:1/-1;font-size:6px}.lab-card strong{font-size:10px}.lab-card div>span:last-child{justify-content:end;font-size:0}.lab-card div>span:last-child svg{width:18px;height:18px}.how-strip{display:none}.mobile-toolbar{z-index:20;padding:10px max(15px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#14211ff5;border-top:1px solid #34443d;grid-template-columns:1fr 1.55fr 1fr;align-items:center;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-toolbar button{color:#a9beb0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:49px;font-size:10px;display:flex}.mobile-toolbar .mobile-hint{background:var(--mint);color:#253c25;font-size:12px;font-weight:700}.mobile-toolbar button:not(.mobile-hint){flex-direction:column;gap:3px;font-size:9px}footer{padding:16px 5px 8px;font-size:7px}footer>span:first-child{font-size:7px}.modal-backdrop{align-items:end;padding:12px}.modal{max-height:85dvh;margin-bottom:env(safe-area-inset-bottom);border-radius:20px;padding:30px 24px}.modal-close{width:44px;height:44px;top:8px;right:8px}.level-list button{min-height:44px}.result-card h2{font-size:25px}.toast{padding:11px 13px;font-size:10px;bottom:65px}}@media (max-width:600px) and (max-height:740px){.page-heading{margin:15px 6px}.page-heading p{display:none}.page-heading h1{margin:0;font-size:25px}.scene-wrap{height:45svh;min-height:275px}.lab-card{display:none}}@media (max-height:500px) and (orientation:landscape){.topbar,.page-heading,.how-strip,footer,.lab-card{display:none}.app-shell{padding:10px}.game-layout{grid-template-columns:minmax(0,1fr) 230px}.game-stage{min-height:calc(100svh - 20px)}.scene-wrap{height:calc(100svh - 130px);min-height:150px}.stage-top{padding-top:12px}.sidebar{display:flex}.journey-card{display:none}.progress-card{padding:18px}.stage-bottom{margin-top:0}.mobile-toolbar{display:none}}.game-stage{background:#2e3552;border-color:#414965}.game-stage:fullscreen{background:#2e3552}.game-stage .tiny-label,.game-stage .axis-label{color:#a6abc9}.game-stage .axis-dot{background:#9b9fbf}.game-stage .lives{background:#191e32;border-color:#414764}.game-stage .alive{color:#f54d7a}.game-stage .lost{color:#646782}.game-stage .zoom-controls{background:#242a43dd;border-color:#4a506a}.game-stage .zoom-controls button,.game-stage .icon-button{color:#b2b7d3}.game-stage .stage-bottom{border-top-color:#8e94b328}.game-stage .stage-bottom>span{color:#a7acc7}.game-stage .board-canvas:focus-visible{outline-color:#60d7ed}.level-grid{grid-template-columns:repeat(5,1fr)}.browse-levels{width:100%;min-height:44px;color:var(--mint);justify-content:center;align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.catalogue-modal{overscroll-behavior:contain;max-width:650px;padding:28px}.catalogue-modal h2{margin-bottom:18px}.catalogue-tabs{background:#111e1e;border:1px solid #344a43;border-radius:13px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.catalogue-tabs button{color:#9fb9ac;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:46px;font-size:12px;font-weight:650;display:flex}.catalogue-tabs button[aria-pressed=true]{background:var(--mint);color:#213723}.catalogue-summary{color:#93a99d;justify-content:space-between;gap:12px;margin:14px 0;font-size:10px;line-height:1.6;display:flex}.chapter-control{align-items:center;gap:10px;margin:16px 0;display:flex}.chapter-control>button{border:1px solid #3b5147;border-radius:10px;place-items:center;min-width:44px;height:46px;display:grid}.chapter-control label{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.chapter-control label>span{color:#8aa18f;letter-spacing:1.5px;font-size:8px}.chapter-control select{color:#e9f2e8;width:100%;font:inherit;cursor:pointer;background:#1a2928;border:0;min-height:30px;font-size:13px}.catalogue-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.level-tile{text-align:left;background:#21312f;border:1px solid #3b5047;border-radius:12px;flex-direction:column;gap:5px;min-height:150px;padding:11px 10px;display:flex}.level-tile.current{border-color:var(--mint);background:#2b3c30}.level-tile.passed .tile-top{color:var(--mint)}.tile-top{color:#c2d3c5;justify-content:space-between;align-items:center;gap:5px;font-size:11px;display:flex}.difficulty-dots{letter-spacing:1px;color:#d9af73}.shape-preview{fill:#a4c8bb;width:100%;height:62px;margin:2px 0}.level-tile.current .shape-preview{fill:var(--mint)}.level-tile strong{font-size:10px;font-weight:650;line-height:1.4}.level-tile small{color:#90a99b;font-size:8px;line-height:1.4}.catalogue-note{text-align:center;color:#8ba493!important;margin:16px 0 0!important;font-size:10px!important}@media (max-width:600px){.catalogue-modal{padding:27px 18px 20px}.catalogue-modal h2{margin:12px 0 17px;font-size:22px}.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.level-tile{min-height:150px;padding:12px 14px}.shape-preview{height:76px}.level-tile strong{font-size:12px}.level-tile small{font-size:10px}.catalogue-summary{font-size:9px}.catalogue-tabs button{font-size:12px}.chapter-control{z-index:1;background:#1a2928;margin:4px 0 6px;padding:10px 0;position:sticky;top:-27px}}@media (max-width:800px) and (max-height:500px) and (orientation:landscape){.app-shell{padding:8px 10px 72px}.game-layout{grid-template-columns:1fr}.sidebar{display:none}.game-stage{min-height:calc(100svh - 82px)}.scene-wrap{height:calc(100svh - 200px);min-height:140px}.stage-top{padding:10px 16px 0}.stage-bottom{min-height:32px;margin:4px 14px 5px;padding-top:3px}.stage-bottom .icon-button{width:32px;height:30px}.mobile-toolbar{padding:6px 15px calc(6px + env(safe-area-inset-bottom));z-index:20;background:#14211ff5;border-top:1px solid #34443d;grid-template-columns:1fr 1.55fr 1fr;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-toolbar button{color:#a9beb0;border-radius:10px;justify-content:center;align-items:center;min-height:44px;display:flex;flex-direction:row!important;gap:7px!important;font-size:10px!important}.mobile-toolbar .mobile-hint{background:var(--mint);color:#253c25;font-weight:700}.modal-backdrop{align-items:center}.catalogue-modal{max-height:calc(100dvh - 20px)}.catalogue-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.level-tile{min-height:130px;padding:8px}.shape-preview{height:50px}.level-tile strong{font-size:10px}.level-tile small{font-size:8px}}.immersive-controls{display:none}.app-shell.is-immersive>.topbar,.app-shell.is-immersive .page-heading,.app-shell.is-immersive .sidebar,.app-shell.is-immersive .how-strip,.app-shell.is-immersive>footer,.app-shell.is-immersive>.mobile-toolbar{display:none!important}.app-shell.is-immersive .game-stage{z-index:40;top:var(--game-view-top,0);left:var(--game-view-left,0);width:var(--game-view-width,100vw);height:var(--game-view-height,100dvh);overscroll-behavior:none;border:0;border-radius:0;min-height:0;max-height:none;position:fixed}.app-shell.is-immersive .stage-top{padding:calc(12px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 8px max(18px,env(safe-area-inset-left));flex-shrink:0}.app-shell.is-immersive .scene-wrap{flex:1;height:auto;min-height:0;max-height:none}.app-shell.is-immersive .stage-bottom{margin:4px max(14px,env(safe-area-inset-right)) 0 max(14px,env(safe-area-inset-left));flex-shrink:0;min-height:48px;padding-top:3px}.app-shell.is-immersive .icon-button{width:44px;height:44px}.app-shell.is-immersive .immersive-controls{padding:8px max(15px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(15px,env(safe-area-inset-left));background:#242a43;border-top:1px solid #535d793d;flex-shrink:0;grid-template-columns:1fr 1.55fr 1fr;gap:10px;display:grid}.immersive-controls button{color:#c3c8df;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:11px;display:flex}.immersive-controls .immersive-hint{background:var(--mint);color:#253c25;font-weight:700}.app-shell.is-immersive .modal-backdrop{z-index:60}.app-shell.is-immersive .toast{bottom:calc(122px + env(safe-area-inset-bottom))}@media (max-height:500px){.app-shell.is-immersive .stage-top{padding-top:calc(5px + env(safe-area-inset-top));padding-bottom:3px}.app-shell.is-immersive .level-label h2{margin-top:3px;font-size:14px}.app-shell.is-immersive .stage-bottom>span{display:none}.app-shell.is-immersive .stage-bottom{justify-content:flex-end;min-height:44px;margin-top:0;padding-top:0}.app-shell.is-immersive .immersive-controls{padding-top:5px;padding-bottom:calc(5px + env(safe-area-inset-bottom))}.immersive-controls button{min-height:44px}}.app-shell.is-immersive .result-overlay{bottom:calc(114px + env(safe-area-inset-bottom))}.app-shell.is-immersive .result-card{max-height:100%;overflow:auto}@media (max-height:500px){.app-shell.is-immersive .result-overlay{padding:12px}.app-shell.is-immersive .result-icon{display:none}.app-shell.is-immersive .result-card h2{margin:8px 0;font-size:20px}.app-shell.is-immersive .result-card p{margin-bottom:12px;font-size:11px}}
