@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/ee2277e8d6d1e773-s.1vt7ool_lmqyt.woff2)format("woff2");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:italic;font-weight:400;font-display:swap;src:url(../media/327baff3ea678c3e-s.1adqm4rsw9dph.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:400;font-display:swap;src:url(../media/64a7bc2a1df89101-s.31_t08s1mo5zm.woff2)format("woff2");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:italic;font-weight:400;font-display:swap;src:url(../media/f734b73f67f6016a-s.2w784f2ltfir1.woff2)format("woff2");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:italic;font-weight:400;font-display:swap;src:url(../media/b473aa2ae3f6d166-s.0qtdb4wi4gay4.woff2)format("woff2");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:italic;font-weight:400;font-display:swap;src:url(../media/1c880e72800db394-s.p.0cvf5ethkf_0_.woff2)format("woff2");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:italic;font-weight:500;font-display:swap;src:url(../media/ee2277e8d6d1e773-s.1vt7ool_lmqyt.woff2)format("woff2");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:italic;font-weight:500;font-display:swap;src:url(../media/327baff3ea678c3e-s.1adqm4rsw9dph.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:500;font-display:swap;src:url(../media/64a7bc2a1df89101-s.31_t08s1mo5zm.woff2)format("woff2");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:italic;font-weight:500;font-display:swap;src:url(../media/f734b73f67f6016a-s.2w784f2ltfir1.woff2)format("woff2");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:italic;font-weight:500;font-display:swap;src:url(../media/b473aa2ae3f6d166-s.0qtdb4wi4gay4.woff2)format("woff2");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:italic;font-weight:500;font-display:swap;src:url(../media/1c880e72800db394-s.p.0cvf5ethkf_0_.woff2)format("woff2");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:italic;font-weight:600;font-display:swap;src:url(../media/ee2277e8d6d1e773-s.1vt7ool_lmqyt.woff2)format("woff2");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:italic;font-weight:600;font-display:swap;src:url(../media/327baff3ea678c3e-s.1adqm4rsw9dph.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:600;font-display:swap;src:url(../media/64a7bc2a1df89101-s.31_t08s1mo5zm.woff2)format("woff2");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:italic;font-weight:600;font-display:swap;src:url(../media/f734b73f67f6016a-s.2w784f2ltfir1.woff2)format("woff2");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:italic;font-weight:600;font-display:swap;src:url(../media/b473aa2ae3f6d166-s.0qtdb4wi4gay4.woff2)format("woff2");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:italic;font-weight:600;font-display:swap;src:url(../media/1c880e72800db394-s.p.0cvf5ethkf_0_.woff2)format("woff2");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:italic;font-weight:700;font-display:swap;src:url(../media/ee2277e8d6d1e773-s.1vt7ool_lmqyt.woff2)format("woff2");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:italic;font-weight:700;font-display:swap;src:url(../media/327baff3ea678c3e-s.1adqm4rsw9dph.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:700;font-display:swap;src:url(../media/64a7bc2a1df89101-s.31_t08s1mo5zm.woff2)format("woff2");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:italic;font-weight:700;font-display:swap;src:url(../media/f734b73f67f6016a-s.2w784f2ltfir1.woff2)format("woff2");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:italic;font-weight:700;font-display:swap;src:url(../media/b473aa2ae3f6d166-s.0qtdb4wi4gay4.woff2)format("woff2");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:italic;font-weight:700;font-display:swap;src:url(../media/1c880e72800db394-s.p.0cvf5ethkf_0_.woff2)format("woff2");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:italic;font-weight:800;font-display:swap;src:url(../media/ee2277e8d6d1e773-s.1vt7ool_lmqyt.woff2)format("woff2");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:italic;font-weight:800;font-display:swap;src:url(../media/327baff3ea678c3e-s.1adqm4rsw9dph.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:800;font-display:swap;src:url(../media/64a7bc2a1df89101-s.31_t08s1mo5zm.woff2)format("woff2");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:italic;font-weight:800;font-display:swap;src:url(../media/f734b73f67f6016a-s.2w784f2ltfir1.woff2)format("woff2");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:italic;font-weight:800;font-display:swap;src:url(../media/b473aa2ae3f6d166-s.0qtdb4wi4gay4.woff2)format("woff2");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:italic;font-weight:800;font-display:swap;src:url(../media/1c880e72800db394-s.p.0cvf5ethkf_0_.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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-weight:700;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:700;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:700;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:700;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:700;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:700;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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-weight:800;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:800;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:800;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:800;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:800;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:800;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_1a7ef571-module__0uyfmW__className{font-family:JetBrains Mono,JetBrains Mono Fallback}.jetbrains_mono_1a7ef571-module__0uyfmW__variable{--font-jetbrains-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_e0e3ef5f-module__pfbz0G__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_e0e3ef5f-module__pfbz0G__variable{--font-inter:"Inter", "Inter Fallback"}
:where(:root){--bg:#f6f7f9;--fg:#12141a;--accent:#3457e0;--accent-2:color-mix(in oklab, var(--accent), #ff5fa2 60%);--accent-fg:#fff;--elev-tint:#fff;--elev-lift:70%;--elev2-tint:var(--fg);--elev2-lift:4%;--shade:#14171c1f;--shade-weak:#14171c0f;--bg-elev:color-mix(in oklab, var(--bg), var(--elev-tint) var(--elev-lift));--bg-elev-2:color-mix(in oklab, var(--bg), var(--elev2-tint) var(--elev2-lift));--line:color-mix(in oklab, var(--bg), var(--fg) 13%);--fg-dim:color-mix(in oklab, var(--bg), var(--fg) 64%);--fg-dimmer:color-mix(in oklab, var(--bg), var(--fg) 46%);--accent-soft:color-mix(in oklab, var(--bg-elev), var(--accent) 14%);--accent-strong:color-mix(in oklab, var(--accent), var(--fg) 12%);--radius:16px;--radius-sm:10px;--radius-pill:999px;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:Manrope, Inter, ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Consolas, monospace;--ease:cubic-bezier(.2, .6, .3, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.34, 1.45, .64, 1);--surface-bg:var(--bg-elev);--surface-border:var(--line);--surface-border-w:1px;--surface-shadow:0 1px 2px var(--shade-weak);--surface-clip:none;--surface-blur:none;--tile-hover-bg:var(--surface-bg);--tile-hover-border:color-mix(in srgb, var(--accent) 45%, var(--line));--tile-hover-shadow:0 14px 34px -14px var(--shade);--tile-hover-transform:translateY(-4px);--tile-active-transform:translateY(-1px) scale(.975);--btn-bg:var(--bg-elev);--btn-fg:var(--fg-dim);--btn-border:var(--line);--btn-shadow:none;--btn-clip:none;--btn-radius:var(--radius-pill);--btn-hover-bg:var(--bg-elev);--btn-hover-fg:var(--fg);--btn-hover-border:color-mix(in srgb, var(--accent) 45%, var(--line));--btn-hover-shadow:none;--btn-active-transform:scale(.93);--btn-primary-bg:var(--accent);--btn-primary-fg:var(--accent-fg);--header-bg:color-mix(in srgb, var(--bg) 86%, transparent);--header-fg:var(--fg);--header-border:var(--line);--header-blur:blur(12px);--header-shadow:none;--page-bg:radial-gradient(1100px 480px at 50% -12%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%), var(--bg);--display-transform:none;--display-spacing:-.02em;--display-weight:700;--display-shadow:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:where(:root[data-mode=dark]){--bg:#0c0e13;--fg:#edeff4;--accent:#5b7cff;--accent-fg:var(--bg);--elev-lift:5%;--elev2-tint:#fff;--elev2-lift:8%;--shade:#00000073;--shade-weak:#00000040;--accent-strong:color-mix(in oklab, var(--accent), #fff 14%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.tk-body{background:var(--page-bg);font-family:var(--font-body);background-attachment:fixed}.tk-header{background:var(--header-bg);color:var(--header-fg);border-bottom:1px solid var(--header-border);-webkit-backdrop-filter:var(--header-blur);backdrop-filter:var(--header-blur);box-shadow:var(--header-shadow)}.tk-surface,.tk-tile{background:var(--surface-bg);border:var(--surface-border-w) solid var(--surface-border);border-radius:var(--radius);box-shadow:var(--surface-shadow);clip-path:var(--surface-clip);-webkit-backdrop-filter:var(--surface-blur);backdrop-filter:var(--surface-blur)}.tk-tile{transition:transform .4s var(--spring), box-shadow .3s var(--ease), border-color .25s var(--ease), background .3s var(--ease), border-radius .35s var(--ease-out), opacity .25s ease}.tk-tile:hover,.tk-tile:focus-visible{background:var(--tile-hover-bg);border-color:var(--tile-hover-border);box-shadow:var(--tile-hover-shadow);transform:var(--tile-hover-transform);outline:none}.tk-tile:active{transform:var(--tile-active-transform);transition-duration:.12s}.tk-btn{background:var(--btn-bg);color:var(--btn-fg);border:1px solid var(--btn-border);border-radius:var(--btn-radius);box-shadow:var(--btn-shadow);clip-path:var(--btn-clip);cursor:pointer;transition:background .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease), box-shadow .18s var(--ease), transform .3s var(--spring);font-family:inherit}.tk-btn:hover{background:var(--btn-hover-bg);color:var(--btn-hover-fg);border-color:var(--btn-hover-border);box-shadow:var(--btn-hover-shadow)}.tk-btn:active{transform:var(--btn-active-transform)}.tk-btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg);border-color:#0000}.tk-btn-primary:hover{background:var(--btn-primary-bg);color:var(--btn-primary-fg);filter:brightness(1.08)}.tk-pill{border-radius:var(--radius-pill)}.tk-display{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-spacing);text-transform:var(--display-transform);text-shadow:var(--display-shadow)}@keyframes tk-rise{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}.tk-rise{animation:tk-rise .5s var(--spring) backwards;animation-delay:calc(var(--i,0) * 50ms + 60ms)}@keyframes tk-fade-in{0%{opacity:0;filter:blur(3px);transform:translateY(8px)}to{opacity:1;filter:none;transform:none}}.tk-page-enter{animation:tk-fade-in .42s var(--ease-out) backwards}.tk-fx{z-index:9990;pointer-events:none;display:none;position:fixed;inset:0}.tk-no-trans,.tk-no-trans *,.tk-no-trans :before,.tk-no-trans :after{transition:none!important}:root[data-vt]::view-transition-old(root){mix-blend-mode:normal;animation:none}:root[data-vt]::view-transition-new(root){mix-blend-mode:normal;animation:none}:root[data-vt=shrink]::view-transition-old(root){z-index:2}:root[data-vt=shrink]::view-transition-new(root){z-index:1}.tk-controls{font-family:var(--font-body);align-items:center;gap:6px;display:inline-flex;position:relative}.tk-controls .tk-btn{justify-content:center;align-items:center;gap:7px;min-width:32px;height:32px;padding:0 11px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.tk-dot{background:conic-gradient(var(--accent) 0 40%, var(--accent-2) 40% 60%, var(--fg) 60% 80%, var(--bg-elev-2) 80%);width:14px;height:14px;box-shadow:0 0 0 1px var(--line);border-radius:50%}.tk-mode{width:32px;position:relative;overflow:hidden;padding:0!important}.tk-mode svg{transition:transform .55s var(--spring), opacity .3s var(--ease);position:absolute}.tk-mode .tk-sun{opacity:0;transform:rotate(-90deg)scale(.4)}.tk-mode .tk-moon,:root[data-mode=dark] .tk-mode .tk-sun{opacity:1;transform:none}:root[data-mode=dark] .tk-mode .tk-moon{opacity:0;transform:rotate(90deg)scale(.4)}@keyframes tk-menu-in{0%{opacity:0;transform:translateY(-6px)scale(.96)}to{opacity:1;transform:none}}.tk-menu{z-index:9000;text-align:left;width:min(360px,100vw - 24px);max-height:min(78vh,640px);color:var(--fg);background:var(--bg-elev);border:1px solid var(--line);box-shadow:0 24px 60px -20px var(--shade), 0 2px 8px -4px var(--shade);transform-origin:100% 0;animation:tk-menu-in .3s var(--spring);border-radius:14px;padding:14px;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto}.tk-menu[hidden]{display:none}.tk-menu-head{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dimmer);margin:0 0 9px 2px;font-size:10.5px;font-weight:600}.tk-fam-grid,.tk-pal-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.tk-fam-grid{margin-bottom:16px}.tk-fam,.tk-pal{font:inherit;color:inherit;cursor:pointer;animation:tk-rise .35s var(--spring) backwards;transition:border-color .16s var(--ease), background .16s var(--ease), transform .3s var(--spring)}.tk-fam{border:1px solid var(--line);background:var(--bg-elev);text-align:left;animation-delay:calc(var(--i,0) * 25ms);border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:7px;display:flex}.tk-fam:hover{border-color:color-mix(in srgb, var(--accent) 50%, var(--line));transform:translateY(-2px)}.tk-fam[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.tk-fam-name{color:var(--fg);margin-top:5px;font-size:11.5px;font-weight:600}.tk-fam-desc{color:var(--fg-dimmer);font-size:10px;line-height:1.3}.tk-pal{text-align:center;animation-delay:calc(var(--i,0) * 16ms);background:0 0;border:1px solid #0000;border-radius:10px;padding:5px}.tk-pal:hover{border-color:var(--line);transform:translateY(-2px)}.tk-pal[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.tk-swatch{border:1px solid;border-radius:7px;align-items:flex-end;gap:3px;height:34px;padding:5px;display:flex;overflow:hidden}.tk-swatch i{border-radius:3px;flex:1;height:9px;display:block}.tk-swatch i:first-child{height:100%}.tk-swatch i:last-child{flex:0 0 5px}.tk-pal-name{color:var(--fg-dim);white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:11px;display:block;overflow:hidden}.tk-pal[aria-pressed=true] .tk-pal-name{color:var(--accent-strong);font-weight:600}.tk-menu-foot{border-top:1px solid var(--line);color:var(--fg-dimmer);justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:11px;font-size:11px;display:flex}.tk-dash{color:var(--accent-strong);font-weight:600;text-decoration:none}.tk-dash:hover{text-decoration:underline}.tk-chip{border:1px solid color-mix(in oklab, var(--bg), var(--fg) 25%);background:var(--bg);width:100%;height:28px;display:block;position:relative;overflow:hidden}.tk-chip i{display:block;position:absolute}.tk-chip[data-fam=modern]{border-radius:7px}.tk-chip[data-fam=modern] i{background:var(--accent);border-radius:4px;width:12px;height:12px;bottom:6px;left:6px}.tk-chip[data-fam=glass]{background:radial-gradient(60% 90% at 20% 20%, color-mix(in srgb, var(--accent) 70%, transparent), transparent), radial-gradient(60% 90% at 90% 80%, #ff5fa28c, transparent), var(--bg);border-color:#ffffff73;border-radius:11px}.tk-chip[data-fam=glass] i{background:#ffffff4d;border-radius:7px;inset:5px 10px;box-shadow:inset 0 1px #ffffffb3}.tk-chip[data-fam=factorio]{background:#403f40;border:0;border-radius:0;box-shadow:0 0 0 1px #000,inset 1px 1px #ffffff24,inset -1px -1px #0009}.tk-chip[data-fam=factorio] i{background:repeating-linear-gradient(#2a292a 0 1px,#5a595a 1px 2px);height:6px;top:5px;left:5px;right:5px}.tk-chip[data-fam=factorio] i:after{content:"";background:linear-gradient(#ffc56b,#ff9f1b);width:26px;height:7px;position:absolute;top:10px;left:0;box-shadow:0 0 0 1px #000,0 0 6px #ff9f1b}.tk-chip[data-fam=xp]{background:#ece9d8;border:2px solid #0a5ae0;border-top:0;border-radius:5px 5px 0 0}.tk-chip[data-fam=xp] i{background:linear-gradient(#3d8af7,#0a5ae0 40%,#0a4bc6);height:9px;top:0;left:0;right:0}.tk-chip[data-fam=xp] i:after{content:"";background:#e0512f;border-radius:1px;width:7px;height:7px;position:absolute;top:1px;right:2px;box-shadow:0 0 0 1px #fff}.tk-chip[data-fam=cyber]{clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));background:#07070b;border:0;box-shadow:inset 0 0 0 1px #fcee0a}.tk-chip[data-fam=cyber] i{background:#00f0ff;height:2px;top:12px;left:6px;right:14px;box-shadow:0 0 6px #00f0ff,0 5px 0 -.5px #fcee0a}.tk-chip[data-fam=arcade]{background:radial-gradient(circle at 50% 120%,#ff3b5c55,#0000 70%),#1a0710;border:2px solid #ffc53d;border-radius:8px}.tk-chip[data-fam=arcade] i{background:radial-gradient(circle,#ffe38a 0 1.6px,#0000 2px) 0 0/7px 5px repeat-x;height:5px;top:3px;left:3px;right:3px}html:root[data-family=glass]{--radius:22px;--radius-sm:14px;--glass:color-mix(in oklab, var(--bg-elev) 58%, transparent);--glass-strong:color-mix(in oklab, var(--bg-elev) 78%, transparent);--glass-edge:#fff9;--glass-hi:#ffffffbf;--glass-blur:blur(22px) saturate(180%);--blob:38%;--surface-bg:var(--glass);--surface-border:var(--glass-edge);--surface-shadow:inset 0 1px 0 var(--glass-hi), 0 10px 36px -14px var(--shade);--surface-blur:var(--glass-blur);--tile-hover-bg:var(--glass-strong);--btn-bg:var(--glass);--btn-border:var(--glass-edge);--btn-shadow:inset 0 1px 0 var(--glass-hi);--btn-hover-bg:var(--glass-strong);--header-bg:var(--glass);--header-border:var(--glass-edge);--header-blur:var(--glass-blur);--page-bg:radial-gradient(38% 48% at 12% 8%, color-mix(in srgb, var(--accent) var(--blob), transparent), transparent 70%), radial-gradient(34% 44% at 88% 18%, color-mix(in srgb, color-mix(in oklab, var(--accent), #ff5fa2 60%) calc(var(--blob) + 20%), transparent), transparent 70%), radial-gradient(40% 50% at 70% 92%, color-mix(in srgb, color-mix(in oklab, var(--accent), #2ee6d6 55%) calc(var(--blob) + 20%), transparent), transparent 70%), var(--bg)}html:root[data-family=glass][data-mode=dark]{--glass:color-mix(in oklab, var(--bg-elev) 55%, transparent);--glass-strong:color-mix(in oklab, var(--bg-elev) 80%, transparent);--glass-edge:#ffffff21;--glass-hi:#ffffff29;--blob:30%}html:root[data-family=glass] .tk-menu{background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-color:var(--glass-edge)}html:root[data-family=xp]{--font-body:Tahoma, "Segoe UI", Verdana, sans-serif;--font-display:"Trebuchet MS", Tahoma, sans-serif;--radius:3px;--radius-sm:3px;--radius-pill:3px;--elev-lift:100%;--elev2-tint:var(--fg);--elev2-lift:3%;--line:color-mix(in oklab, var(--bg), var(--fg) 22%);--accent-soft:color-mix(in srgb, var(--xp-select) 16%, var(--bg-elev));--accent-strong:var(--xp-select);--xp-title-1:color-mix(in oklab, var(--accent), #fff 32%);--xp-title-2:var(--accent);--xp-title-3:color-mix(in oklab, var(--accent), #000 22%);--xp-title:linear-gradient(180deg, var(--xp-title-1) 0%, var(--xp-title-2) 14%, color-mix(in oklab, var(--accent), #fff 8%) 50%, var(--xp-title-2) 86%, var(--xp-title-3) 100%);--xp-btn:linear-gradient(180deg, #fff 0%, #f4f3ee 45%, #e6e2d6 88%, #d6d0c5 100%);--xp-btn-press:linear-gradient(180deg, #d6d0c5 0%, #e6e2d6 20%, #f4f3ee 100%);--xp-btn-border:#003c74;--xp-field:#7f9db9;--xp-hover:#f8b33a;--xp-hover-2:#fdd889;--xp-select:#316ac5;--xp-start:linear-gradient(180deg, #62b95a 0%, #3c9c3c 18%, #2f8a2f 60%, #257725 100%);--xp-glow:inset 0 -2px 0 var(--xp-hover), inset 0 2px 0 var(--xp-hover-2), inset 2px 0 0 var(--xp-hover-2), inset -2px 0 0 var(--xp-hover-2);--surface-bg:var(--bg-elev);--surface-border:var(--xp-field);--surface-shadow:none;--tile-hover-border:var(--xp-hover);--tile-hover-shadow:inset 0 0 0 1px var(--xp-hover-2), 0 0 0 1px var(--xp-hover-2);--tile-hover-transform:none;--tile-active-transform:translate(1px, 1px);--btn-bg:var(--xp-btn);--btn-fg:var(--fg);--btn-border:var(--xp-btn-border);--btn-hover-bg:var(--xp-btn);--btn-hover-fg:var(--fg);--btn-hover-border:var(--xp-btn-border);--btn-hover-shadow:var(--xp-glow);--btn-active-transform:none;--btn-primary-bg:var(--xp-btn);--btn-primary-fg:var(--fg);--header-bg:var(--xp-title);--header-fg:var(--accent-fg);--header-border:var(--xp-title-3);--header-blur:none;--header-shadow:0 2px 6px #0000004d;--page-bg:radial-gradient(ellipse 95% 46% at 22% 108%, #5fae3b 0 58%, transparent 59%), radial-gradient(ellipse 85% 40% at 90% 110%, #4a9a2e 0 58%, transparent 59%), radial-gradient(ellipse 18% 7% at 68% 20%, #ffffffd9, transparent 70%), radial-gradient(ellipse 12% 5% at 76% 17%, #ffffffb3, transparent 70%), radial-gradient(ellipse 20% 8% at 22% 30%, #ffffffa6, transparent 70%), linear-gradient(180deg, #2a6bd4 0%, #4f93e8 38%, #9cc8f3 68%, #d4e9fb 100%);--display-spacing:0}html:root[data-family=xp][data-mode=dark]{--elev-lift:4%;--xp-btn:linear-gradient(180deg, #55585f 0%, #45484e 45%, #37393e 88%, #2c2e32 100%);--xp-btn-press:linear-gradient(180deg, #2c2e32 0%, #37393e 20%, #45484e 100%);--xp-btn-border:#111316;--xp-field:#5a6272;--page-bg:radial-gradient(ellipse 95% 46% at 22% 108%, #1e4217 0 58%, transparent 59%), radial-gradient(ellipse 85% 40% at 90% 110%, #183813 0 58%, transparent 59%), radial-gradient(ellipse 18% 7% at 68% 20%, #ffffff1a, transparent 70%), radial-gradient(ellipse 20% 8% at 22% 30%, #ffffff14, transparent 70%), linear-gradient(180deg, #050b1c 0%, #0c1c3f 45%, #1d3563 100%)}html:root[data-family=xp] ::selection{background:var(--xp-select);color:#fff}html:root[data-family=xp] .tk-btn:active{background:var(--xp-btn-press)}html:root[data-family=xp] .tk-window{background:var(--bg);border:3px solid var(--xp-title-2);border-top:0;border-radius:8px 8px 0 0;margin-top:26px;margin-bottom:48px;padding-top:calc(30px + 1.75rem);position:relative;box-shadow:3px 5px 18px #0006}html:root[data-family=xp] .tk-window:before{content:attr(data-title);background:var(--xp-title);height:30px;color:var(--accent-fg);font:bold 13px/30px var(--font-display);text-align:left;text-shadow:1px 1px 1px color-mix(in oklab, var(--xp-title-3), #000 45%);border-radius:8px 8px 0 0;padding-left:12px;position:absolute;top:0;left:-3px;right:-3px}html:root[data-family=xp] .tk-window:after{content:"✕";color:#fff;text-align:center;width:21px;height:21px;box-shadow:inset 0 0 0 1px #fff, -24px 0 0 0 var(--xp-title-1), -24px 0 0 1px #fff, -48px 0 0 0 var(--xp-title-1), -48px 0 0 1px #fff;background:linear-gradient(#f09a80 0%,#e0512f 40%,#c43a18 100%);border-radius:3px;font:700 12px/21px Tahoma,sans-serif;position:absolute;top:4px;right:3px}html:root[data-family=xp] .tk-brand{background:var(--xp-start);color:#fff;text-shadow:1px 1px 1px #00000073;border-radius:0 14px 14px 0;margin-left:-20px;padding:3px 18px 3px 10px;font-style:italic;box-shadow:inset 0 1px #ffffff59,2px 0 4px #0000004d}html:root[data-family=xp] .tk-brand:hover{filter:brightness(1.08)}html:root[data-family=xp] .tk-header .tk-btn{color:var(--accent-fg);background:#ffffff29;border-color:#00000059;box-shadow:inset 0 1px #ffffff4d}html:root[data-family=xp] .tk-header .tk-btn:hover{background:#ffffff47}html:root[data-family=xp] .tk-header .tk-btn:active{box-shadow:inset 1px 1px 2px #0006}html:root[data-family=xp] .tk-menu{border-color:var(--xp-btn-border);background:var(--bg);border-radius:0;box-shadow:3px 3px 8px #00000059}html:root[data-family=xp] .tk-fam{border-color:var(--xp-btn-border);background:var(--xp-btn);border-radius:3px}html:root[data-family=xp] .tk-fam:hover{box-shadow:var(--xp-glow);transform:none}html:root[data-family=xp] :is(.tk-fam,.tk-pal)[aria-pressed=true]{border-color:var(--xp-select);background:var(--accent-soft)}html:root[data-family=xp] :is(.tk-pal,.tk-swatch){border-radius:2px}html:root[data-family=xp] .tk-page-enter{animation:none}html:root[data-family=factorio]{--font-body:"Titillium Web", "Segoe UI", system-ui, sans-serif;--font-display:"Titillium Web", "Segoe UI", system-ui, sans-serif;--radius:2px;--radius-sm:2px;--radius-pill:2px;--elev-lift:14%;--elev2-tint:#000;--elev2-lift:22%;--line:#000;--accent-strong:var(--accent);--spring:cubic-bezier(.2, .8, .2, 1);--fo-heading:color-mix(in oklab, #ffe6c0, var(--fg) 30%);--fo-bevel:inset 1px 1px 0 #ffffff1f, inset -1px -1px 0 #0000008c;--fo-well:inset 1px 1px 0 #0009, inset -1px -1px 0 #ffffff14;--fo-stripes:repeating-linear-gradient(to bottom, color-mix(in oklab, var(--bg-elev), #000 35%) 0 2px, color-mix(in oklab, var(--bg-elev), #fff 12%) 2px 4px);--fo-btn:linear-gradient(180deg, #c4c4c4 0%, #a9a9a9 45%, #8e8e8e 100%);--fo-btn-hover:linear-gradient(180deg, color-mix(in oklab, var(--accent), #fff 35%) 0%, var(--accent) 60%, color-mix(in oklab, var(--accent), #000 12%) 100%);--fo-btn-press:linear-gradient(180deg, color-mix(in oklab, var(--accent), #000 20%), var(--accent));--fo-green:linear-gradient(180deg, color-mix(in oklab, var(--accent-2), #fff 25%) 0%, var(--accent-2) 55%, color-mix(in oklab, var(--accent-2), #000 18%) 100%);--surface-bg:var(--bg-elev);--surface-border:#000;--surface-border-w:1px;--surface-shadow:var(--fo-bevel), 0 4px 12px -4px #0000008c;--tile-hover-bg:color-mix(in oklab, var(--bg-elev), var(--accent) 6%);--tile-hover-border:var(--accent);--tile-hover-shadow:var(--fo-bevel), 0 0 0 1px var(--accent), 0 0 14px -2px color-mix(in srgb, var(--accent) 70%, transparent);--tile-hover-transform:none;--tile-active-transform:translateY(1px);--btn-bg:var(--fo-btn);--btn-fg:#141312;--btn-border:#000;--btn-shadow:inset 0 1px 0 #ffffff8c, inset 0 -2px 0 #00000040;--btn-hover-bg:var(--fo-btn-hover);--btn-hover-fg:#000;--btn-hover-border:#000;--btn-hover-shadow:inset 0 1px 0 #ffffff73, 0 0 10px -1px color-mix(in srgb, var(--accent) 80%, transparent);--btn-active-transform:translateY(1px);--btn-primary-bg:var(--fo-green);--btn-primary-fg:#000;--header-bg:var(--bg-elev);--header-fg:var(--fg);--header-border:#000;--header-blur:none;--header-shadow:var(--fo-bevel), 0 2px 10px #00000080;--page-bg:radial-gradient(90% 70% at 50% 0%, color-mix(in srgb, var(--accent) 7%, transparent), transparent 70%), radial-gradient(120% 90% at 50% 50%, transparent 55%, #00000073), linear-gradient(#00000038 1px, transparent 1px) 0 0 / 64px 64px, linear-gradient(90deg, #00000038 1px, transparent 1px) 0 0 / 64px 64px, linear-gradient(#ffffff06 1px, transparent 1px) 0 32px / 64px 64px, var(--bg);--display-spacing:0;--display-weight:700}html:root[data-family=factorio][data-mode=light]{--elev-lift:32%;--elev2-tint:#000;--elev2-lift:8%;--fo-heading:color-mix(in oklab, var(--fg), var(--accent) 25%);--fo-bevel:inset 1px 1px 0 #fff9, inset -1px -1px 0 #0000004d}html:root[data-family=factorio] .tk-btn:active{background:var(--fo-btn-press);box-shadow:inset 0 2px 3px #00000059}html:root[data-family=factorio] .tk-display{color:var(--fo-heading);text-shadow:0 2px #00000073}html:root[data-family=factorio][data-mode=light] .tk-display{text-shadow:0 1px #ffffff8c}html:root[data-family=factorio] .tk-window{background:var(--bg-elev);box-shadow:var(--fo-bevel), 0 10px 30px -8px #0009;border:1px solid #000;margin-top:22px;margin-bottom:40px;padding-top:calc(34px + 1.5rem);position:relative}html:root[data-family=factorio] .tk-window:before{content:attr(data-title);z-index:1;background:var(--bg-elev);color:var(--fo-heading);font:700 17px/22px var(--font-display);text-shadow:0 1px #00000080;padding-right:10px;position:absolute;top:7px;left:12px}html:root[data-family=factorio] .tk-window:after{content:"";background:var(--fo-stripes);height:14px;position:absolute;top:11px;left:12px;right:12px}html:root[data-family=factorio] .tk-brand{color:var(--fo-heading);font-family:var(--font-display);text-shadow:0 1px #00000080;font-weight:700}html:root[data-family=factorio] .tk-menu{background:var(--bg-elev);box-shadow:var(--fo-bevel), 0 12px 30px -6px #000000b3;border-color:#000;border-radius:0}html:root[data-family=factorio] .tk-menu-head{color:var(--fo-heading);letter-spacing:0;text-transform:none;font-size:12px;font-weight:700}html:root[data-family=factorio] :is(.tk-fam,.tk-pal){background:var(--bg-elev-2);box-shadow:var(--fo-well);border-color:#000;border-radius:0}html:root[data-family=factorio] :is(.tk-fam,.tk-pal):hover{border-color:var(--accent);box-shadow:var(--fo-well), 0 0 8px -1px var(--accent);transform:none}html:root[data-family=factorio] :is(.tk-fam,.tk-pal)[aria-pressed=true]{border-color:var(--accent);background:color-mix(in oklab, var(--bg-elev-2), var(--accent) 22%)}html:root[data-family=factorio] .tk-swatch{border-radius:0}html:root[data-family=factorio] .tk-page-enter{animation:none}html:root[data-family=cyber]{--font-body:Rajdhani, "Archivo Narrow", "Segoe UI", system-ui, sans-serif;--font-display:Orbitron, Rajdhani, "Segoe UI", system-ui, sans-serif;--radius:0px;--radius-sm:0px;--radius-pill:0px;--notch:14px;--notch-sm:7px;--neon:color-mix(in srgb, var(--accent) 60%, transparent);--edge:color-mix(in oklab, var(--bg), var(--accent) 42%);--line:color-mix(in oklab, var(--bg), var(--accent) 28%);--elev-lift:3%;--spring:cubic-bezier(.2, .9, .1, 1);--accent-strong:var(--accent);--surface-bg:linear-gradient(135deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent 45%), color-mix(in oklab, var(--bg), var(--fg) 4%);--surface-border:transparent;--surface-border-w:0px;--surface-shadow:inset 0 0 0 1px var(--edge), inset 3px 0 0 0 var(--accent);--surface-clip:polygon(0 0, calc(100% - var(--notch)) 0, 100% var(--notch), 100% 100%, var(--notch) 100%, 0 calc(100% - var(--notch)));--tile-hover-bg:linear-gradient(135deg, color-mix(in srgb, var(--accent) 16%, transparent), transparent 55%), color-mix(in oklab, var(--bg), var(--fg) 6%);--tile-hover-border:transparent;--tile-hover-shadow:inset 0 0 0 1px var(--accent), inset 3px 0 0 0 var(--accent-2), inset 0 0 30px -10px var(--neon);--tile-hover-transform:translate(2px, -3px);--tile-active-transform:translate(0, 0);--btn-bg:transparent;--btn-fg:var(--accent);--btn-border:transparent;--btn-shadow:inset 0 0 0 1px var(--edge);--btn-clip:polygon(0 0, calc(100% - var(--notch-sm)) 0, 100% var(--notch-sm), 100% 100%, var(--notch-sm) 100%, 0 calc(100% - var(--notch-sm)));--btn-hover-bg:var(--accent);--btn-hover-fg:var(--accent-fg);--btn-hover-border:transparent;--btn-hover-shadow:0 0 18px var(--neon);--btn-active-transform:translate(1px, 1px);--header-bg:color-mix(in srgb, var(--bg) 88%, transparent);--header-border:var(--accent);--header-shadow:0 1px 0 var(--accent), 0 6px 24px -8px var(--neon);--page-bg:radial-gradient(50% 40% at 85% 0%, color-mix(in srgb, var(--accent-2) 16%, transparent), transparent 70%), radial-gradient(45% 45% at 0% 100%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%), linear-gradient(color-mix(in srgb, var(--accent) 6%, transparent) 1px, transparent 1px) 0 0 / 44px 44px, linear-gradient(90deg, color-mix(in srgb, var(--accent) 6%, transparent) 1px, transparent 1px) 0 0 / 44px 44px, var(--bg);--display-transform:uppercase;--display-spacing:.06em;--display-weight:900;--display-shadow:0 0 22px var(--neon)}html:root[data-family=cyber][data-mode=light]{--neon:color-mix(in srgb, var(--accent) 35%, transparent);--display-shadow:2px 2px 0 color-mix(in srgb, var(--accent-2) 45%, transparent)}html:root[data-family=cyber] .tk-fx{mix-blend-mode:multiply;background:repeating-linear-gradient(#00000029 0 1px,#0000 1px 3px);display:block}html:root[data-family=cyber] .tk-fx:after{content:"";background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--accent) 7%, transparent), transparent);height:120px;animation:7s linear infinite tk-scan;position:absolute;left:0;right:0}html:root[data-family=cyber][data-mode=light] .tk-fx{opacity:.35}@keyframes tk-scan{0%{top:-120px}to{top:100%}}@keyframes tk-glitch{0%,to{text-shadow:var(--display-shadow);transform:none}20%{text-shadow:-3px 0 var(--accent-2), 3px 0 var(--accent);transform:translate(1px,-1px)}40%{text-shadow:3px 0 var(--accent-2), -3px 0 var(--accent);clip-path:inset(10% 0 35%);transform:translate(-1px,1px)}60%{text-shadow:-2px 0 var(--accent-2), 2px 0 var(--accent);clip-path:inset(55% 0 5%);transform:none}80%{text-shadow:2px 0 var(--accent-2), -2px 0 var(--accent);clip-path:none}}html:root[data-family=cyber] .tk-display:hover{animation:.45s steps(2,end) tk-glitch}html:root[data-family=cyber] .tk-brand{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;text-shadow:0 0 12px var(--neon)}html:root[data-family=cyber] .tk-menu{background:color-mix(in oklab, var(--bg), var(--fg) 5%);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));box-shadow:inset 0 0 0 1px var(--accent);border:0;border-radius:0}html:root[data-family=cyber] :is(.tk-fam,.tk-pal){border-radius:0}html:root[data-family=cyber] .tk-fam[aria-pressed=true]{box-shadow:0 0 14px -2px var(--neon)}html:root[data-family=cyber] .tk-menu-head{font-family:var(--font-display);letter-spacing:.14em;color:var(--accent)}html:root[data-family=cyber] .tk-controls .tk-btn{text-transform:uppercase;letter-spacing:.08em}html:root[data-family=arcade]{--font-body:Rubik, "Segoe UI", system-ui, sans-serif;--font-display:Bungee, Impact, "Arial Black", sans-serif;--radius:18px;--radius-sm:12px;--elev-lift:7%;--line:color-mix(in oklab, var(--bg), var(--accent) 30%);--gold:linear-gradient(135deg, color-mix(in oklab, var(--accent), #fff 45%), var(--accent) 35%, color-mix(in oklab, var(--accent), #000 30%) 60%, var(--accent) 80%, color-mix(in oklab, var(--accent), #fff 35%));--glow:color-mix(in srgb, var(--accent) 45%, transparent);--accent-strong:var(--accent);--surface-bg:linear-gradient(180deg, color-mix(in oklab, var(--bg-elev), #fff 5%), color-mix(in oklab, var(--bg-elev), #000 12%)) padding-box, var(--gold) border-box;--surface-border:transparent;--surface-border-w:2px;--surface-shadow:0 10px 30px -12px var(--glow), inset 0 1px 0 #ffffff24;--tile-hover-bg:linear-gradient(180deg, color-mix(in oklab, var(--bg-elev), #fff 10%), color-mix(in oklab, var(--bg-elev), #000 6%)) padding-box, var(--gold) border-box;--tile-hover-border:transparent;--tile-hover-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent), 0 18px 40px -12px var(--glow);--tile-hover-transform:translateY(-5px) scale(1.025);--tile-active-transform:translateY(1px) scale(.98);--btn-bg:linear-gradient(180deg, color-mix(in oklab, var(--accent), #fff 38%) 0%, var(--accent) 48%, color-mix(in oklab, var(--accent), #000 18%) 100%);--btn-fg:var(--accent-fg);--btn-border:color-mix(in oklab, var(--accent), #000 35%);--btn-shadow:0 3px 0 color-mix(in oklab, var(--accent), #000 45%), inset 0 1px 0 #ffffff80;--btn-hover-bg:var(--btn-bg);--btn-hover-fg:var(--accent-fg);--btn-hover-border:var(--btn-border);--btn-hover-shadow:0 3px 0 color-mix(in oklab, var(--accent), #000 45%), 0 0 16px var(--glow), inset 0 1px 0 #ffffff80;--btn-active-transform:translateY(3px);--header-bg:linear-gradient(180deg, color-mix(in oklab, var(--bg), #000 35%), color-mix(in oklab, var(--bg), #000 10%));--header-fg:var(--fg);--header-border:transparent;--header-blur:none;--header-shadow:0 8px 26px -10px var(--glow);--page-bg:radial-gradient(60% 45% at 50% -8%, color-mix(in srgb, var(--accent) 26%, transparent), transparent 70%), radial-gradient(40% 40% at 0% 100%, color-mix(in srgb, var(--accent-2) 20%, transparent), transparent 70%), radial-gradient(40% 40% at 100% 100%, color-mix(in srgb, var(--accent-2) 16%, transparent), transparent 70%), radial-gradient(circle, color-mix(in srgb, var(--accent) 9%, transparent) 1.2px, transparent 1.6px) 0 0 / 22px 22px, var(--bg);--display-weight:400;--display-spacing:.02em}html:root[data-family=arcade][data-mode=light]{--elev-lift:80%;--header-bg:linear-gradient(180deg, color-mix(in oklab, var(--accent), #000 30%), color-mix(in oklab, var(--accent), #000 10%));--header-fg:#fff8e8;--surface-bg:linear-gradient(180deg, #fff, color-mix(in oklab, var(--bg), var(--accent) 7%)) padding-box, var(--gold) border-box;--tile-hover-bg:linear-gradient(180deg, #fff, color-mix(in oklab, var(--bg), var(--accent) 12%)) padding-box, var(--gold) border-box}html:root[data-family=arcade] .tk-btn:active{box-shadow:0 0 0 color-mix(in oklab, var(--accent), #000 45%), inset 0 2px 4px #00000059}html:root[data-family=arcade] .tk-header{position:relative}html:root[data-family=arcade] .tk-header:after{content:"";pointer-events:none;background:radial-gradient(circle, #fff8d6 0 2px, color-mix(in srgb, var(--accent) 90%, transparent) 2.6px, transparent 4px) 0 0 / 18px 10px repeat-x, radial-gradient(circle, color-mix(in srgb, var(--accent) 35%, transparent) 0 2.4px, transparent 3px) 9px 0 / 18px 10px repeat-x;height:10px;filter:drop-shadow(0 0 4px var(--accent));animation:.9s step-end infinite tk-chase;position:absolute;bottom:-5px;left:0;right:0}@keyframes tk-chase{0%{background-position:0 0,9px 0}50%{background-position:9px 0,0 0}}html:root[data-family=arcade] .tk-display{background:linear-gradient(180deg, color-mix(in oklab, var(--accent), #fff 55%) 0%, var(--accent) 50%, color-mix(in oklab, var(--accent), #000 28%) 100%);color:#0000;filter:drop-shadow(0 2px 0 color-mix(in oklab, var(--accent), #000 55%)) drop-shadow(0 0 14px var(--glow));-webkit-background-clip:text;background-clip:text}html:root[data-family=arcade] .tk-brand{font-family:var(--font-display);letter-spacing:.02em;font-weight:400}html:root[data-family=arcade] .tk-tile{position:relative;overflow:hidden}html:root[data-family=arcade] .tk-tile:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(110deg,#0000 30%,#ffffff59 48%,#0000 66%);position:absolute;inset:0;transform:translate(-120%)}html:root[data-family=arcade] .tk-tile:hover:before{transition:transform .7s var(--ease-out);transform:translate(120%)}html:root[data-family=arcade] .tk-menu{background:linear-gradient(var(--bg-elev), var(--bg-elev)) padding-box, var(--gold) border-box;box-shadow:0 20px 50px -16px var(--glow);border:2px solid #0000;border-radius:18px}html:root[data-family=arcade] .tk-menu-head{font-family:var(--font-display);letter-spacing:.06em;color:var(--accent);font-weight:400}html:root[data-family=arcade][data-mode=dark] .tk-fx{opacity:.5;background:radial-gradient(1.5px 1.5px at 12% 22%,#fff,#0000),radial-gradient(1.5px 1.5px at 78% 14%,#fff,#0000),radial-gradient(1px 1px at 42% 68%,#fff,#0000),radial-gradient(1.5px 1.5px at 88% 76%,#fff,#0000),radial-gradient(1px 1px at 24% 88%,#fff,#0000);animation:3.2s ease-in-out infinite alternate tk-twinkle;display:block}@keyframes tk-twinkle{0%{opacity:.15}to{opacity:.6}}@media (prefers-reduced-motion:reduce){.tk-rise,.tk-page-enter,.tk-fam,.tk-pal,.tk-menu,.tk-fx,.tk-fx:after,html:root[data-family=arcade] .tk-header:after{animation:none!important}}@media (max-width:560px){.tk-controls .tk-label{display:none}.tk-menu{transform-origin:top;width:auto;max-height:calc(100dvh - 84px);position:fixed;top:64px;left:10px;right:10px}.tk-fam-grid,.tk-pal-grid{grid-template-columns:repeat(2,1fr)}html:root:is([data-family=xp],[data-family=factorio]) .tk-window{margin-left:6px;margin-right:6px}}
:root{--font-body:var(--font-inter), Inter, system-ui, sans-serif;--font-display:var(--font-jetbrains-mono), ui-monospace, monospace;--font-mono:var(--font-jetbrains-mono), "JetBrains Mono", ui-monospace, monospace;--mono:var(--font-mono);--sans:var(--font-body);--label-font:var(--mono);--text:var(--fg);--text-dim:var(--fg-dim);--text-faint:var(--fg-dimmer);--heading:var(--fg);--panel:var(--bg-elev);--panel-hi:var(--bg-elev-2);--border:var(--line);--border-hi:color-mix(in oklab, var(--bg), var(--fg) 28%);--accent2:var(--accent-2);--accent-text:var(--accent-strong);--accent-dim:color-mix(in oklab, var(--accent), var(--bg) 25%);--accent2-soft:color-mix(in oklab, var(--bg-elev), var(--accent-2) 14%);--term-bg:color-mix(in oklab, var(--bg), #000 24%);--term-bar:var(--bg-elev-2);--diagram-rx:8px;--green:#3fb950;--red:#f85149;--rain-opacity:.06;--grid-opacity:.045}:root[data-mode=light]{--term-bg:color-mix(in oklab, var(--bg-elev), var(--bg) 35%);--green:#1a7f37;--red:#cf222e;--rain-opacity:.035;--grid-opacity:.05}html:root:is([data-family=factorio],[data-family=xp],[data-family=cyber],[data-family=arcade]){--label-font:var(--font-body)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;line-height:1.6;overflow-x:hidden}a{color:inherit}::selection{background:var(--accent);color:var(--accent-fg)}img,svg{max-width:100%;display:block}.wrap{max-width:960px;margin:0 auto;padding:0 24px}#matrix-bg{z-index:-2;opacity:var(--rain-opacity);pointer-events:none;transition:opacity .3s;position:fixed;inset:0}.grid-overlay{z-index:-1;pointer-events:none;background-image:repeating-linear-gradient(to right, var(--accent) 0 1px, transparent 1px 46px), repeating-linear-gradient(to bottom, var(--accent) 0 1px, transparent 1px 46px);opacity:var(--grid-opacity);position:fixed;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 0,#000,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 0,#000,#0000 75%)}html:root:not([data-family=modern]) :is(#matrix-bg,.grid-overlay){display:none}#scroll-progress{background:linear-gradient(90deg,var(--accent),var(--accent2));z-index:200;width:0%;height:2px;transition:width .1s linear;position:fixed;top:0;left:0}#boot{background:var(--bg);z-index:500;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;padding:24px;transition:opacity .5s,visibility .5s;display:flex;position:fixed;inset:0}#boot.hidden{opacity:0;visibility:hidden;pointer-events:none}#boot-body{width:100%;max-width:560px;font-family:var(--mono);color:var(--text-dim);white-space:pre-wrap;min-height:280px;font-size:13px;line-height:1.8}#boot-body .ok{color:var(--green)}#boot-body .warn{color:var(--accent)}#boot-body .head{color:var(--text-faint)}#boot-body .prompt{color:var(--accent)}.boot-bar{display:none}#boot-skip{text-align:center;font-family:var(--label-font);letter-spacing:.05em;color:var(--text-faint);font-size:11px;animation:2s ease-in-out infinite softpulse;position:absolute;bottom:28px;left:0;right:0}@keyframes softpulse{0%,to{opacity:.4}50%{opacity:.9}}.cursor{background:var(--accent);vertical-align:text-bottom;width:8px;height:1em;margin-left:1px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}#logout-screen{background:var(--bg);z-index:500;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}#logout-body{width:100%;max-width:480px;font-family:var(--mono);font-size:13px;line-height:1.9}#logout-body .line{margin-bottom:2px}.logout-reconnect{font-family:var(--mono);padding:9px 14px;font-size:13px}.term-inline-btn{font-family:inherit;font-size:inherit;color:var(--text);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--border-hi);text-decoration-color:var(--border-hi);text-underline-offset:3px;background:0 0;border:none;padding:0}.term-inline-btn:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}nav{z-index:60;position:sticky;top:0}nav .wrap{justify-content:space-between;align-items:center;gap:16px;height:56px;display:flex}.nav-brand{font-family:var(--mono);color:var(--text);letter-spacing:-.01em;flex-shrink:0;align-items:center;gap:8px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.nav-brand .prompt-mark{color:var(--accent)}.nav-status{font-family:var(--label-font);color:var(--text-faint);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:6px;margin-left:10px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.status-dot{background:var(--green);width:6px;height:6px;box-shadow:0 0 6px var(--green);border-radius:50%;animation:2s ease-in-out infinite dotpulse}@keyframes dotpulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.nav-links{scrollbar-width:none;-ms-overflow-style:none;min-width:0;list-style:none;display:flex;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links li{flex-shrink:0}.nav-links li+li{margin-left:22px}.nav-links a{font-family:var(--label-font);letter-spacing:.03em;color:var(--text-dim);white-space:nowrap;padding-bottom:3px;font-size:12px;text-decoration:none;transition:color .15s;position:relative}.nav-links a:after{content:"";background:var(--accent);width:0;height:1px;transition:width .2s;position:absolute;bottom:0;left:0}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{width:100%}.nav-theme{flex-shrink:0;margin-left:14px}.nav-theme .tk-menu-foot{display:none}@media (max-width:560px){.nav-status{display:none}.nav-links li+li{margin-left:14px}.nav-links a{font-size:11px}.nav-theme{margin-left:8px}}@media (max-width:420px){.nav-brand{gap:0;font-size:0}.nav-brand .prompt-mark{font-size:13px}}.term-window{position:relative;overflow:hidden}html:root[data-family=modern][data-mode=dark] .term-window:before{content:"";z-index:5;pointer-events:none;mix-blend-mode:overlay;background:repeating-linear-gradient(#ffffff06 0 1px,#0000 1px 3px);position:absolute;inset:0}.term-titlebar{background:var(--term-bar);border-bottom:1px solid var(--border);grid-template-columns:1fr auto 1fr;align-items:center;column-gap:8px;padding:10px 14px;display:grid}.term-dots{justify-self:start;align-items:center;gap:8px;display:inline-flex}.term-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.term-dot.red{background:#ff5f56}.term-dot.amber{background:#ffbd2e}.term-dot.green{background:#27c93f}.term-title{font-family:var(--mono);color:var(--text-faint);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;justify-self:center;min-width:0;font-size:11.5px;overflow:hidden}.term-grip,.term-close{display:none}.term-body{font-family:var(--mono);color:var(--text-dim);background:var(--term-bg);padding:20px 22px;font-size:13px;line-height:1.6;overflow-x:auto}.term-body .line{opacity:1}.term-line-prompt{color:var(--accent-text)}.term-line-ok{color:var(--green)}.term-line-warn{color:var(--accent-text)}.term-line-dim{color:var(--text-faint)}.term-line-text{color:var(--text)}.term-comment{color:var(--text-faint)}.help-list{margin-top:5px}.help-row{grid-template-columns:130px 20px 1fr;align-items:baseline;gap:4px;margin-bottom:3px;display:grid}.help-cmd{color:var(--accent-text);font-weight:600}.help-arrow{color:var(--text-faint)}.help-desc{color:var(--text-dim);font-family:var(--sans);font-size:12.5px}@media (max-width:480px){.help-row{grid-template-columns:110px 16px 1fr;font-size:12px}}header.hero{padding:76px 0 64px;position:relative}.eyebrow{font-family:var(--label-font);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:8px;margin-bottom:22px;font-size:11.5px;font-weight:600;display:flex}.eyebrow .status-dot{width:7px;height:7px}.eyebrow .on{color:var(--green)}.hero-grid{grid-template-columns:.95fr 1.05fr;align-items:start;gap:44px;display:grid}@media (max-width:820px){.hero-grid{grid-template-columns:1fr;gap:36px}}h1{color:var(--heading);margin-bottom:14px;font-size:clamp(32px,5.6vw,48px);line-height:1.14}h1 .accent{color:var(--accent-text);text-transform:none;letter-spacing:0;-webkit-text-fill-color:currentColor;margin-top:10px;font-size:.62em;font-style:italic;font-weight:500;animation:1.4s ease-out .2s both flicker-in;display:block}@keyframes flicker-in{0%{opacity:0}5%{opacity:.7}8%{opacity:.1}12%{opacity:.8}20%{opacity:.3}28%{opacity:1}to{opacity:1}}.role-badges{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.role-badge{font-family:var(--label-font);border-radius:var(--radius-pill);letter-spacing:.01em;border:1px solid;padding:5px 11px;font-size:11px;font-weight:600}.role-badge em{opacity:.75;font-style:normal;font-weight:400}.role-badge-devops{color:var(--accent-text);border-color:var(--accent);background:var(--accent-soft)}.role-badge-game{color:var(--accent2);border-color:var(--accent2);background:var(--accent2-soft)}.role-line{font-family:var(--label-font);color:var(--text-dim);margin-bottom:22px;font-size:14px}.role-line .sep{color:var(--text-faint);margin:0 8px}.hero-summary{max-width:520px;color:var(--text-dim);margin-bottom:28px;font-size:15.5px}.hero-links{flex-wrap:wrap;gap:10px;display:flex}.pill{font-family:var(--label-font);align-items:center;gap:7px;padding:10px 16px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.pill svg{flex-shrink:0;width:14px;height:14px}.hero-term .term-body{scrollbar-width:thin;scrollbar-color:var(--border-hi) transparent;height:300px;overflow:hidden auto}.hero-term .term-body::-webkit-scrollbar{width:6px}.hero-term .term-body::-webkit-scrollbar-track{background:0 0}.hero-term .term-body::-webkit-scrollbar-thumb{background:var(--border-hi);border-radius:3px}.hero-term .term-body::-webkit-scrollbar-thumb:hover{background:var(--accent-dim)}.hero-term>.wrap{background:var(--term-bg)}#hero-input-line{font-family:var(--mono);color:var(--accent-text);align-items:center;gap:6px;padding-top:4px;font-size:13px;display:flex}#hero-input{font-family:var(--mono);color:var(--text);caret-color:var(--accent);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:2px 0 2px 4px;font-size:13px}#hero-input::placeholder{color:var(--text-faint)}.hero-hint{font-family:var(--mono);color:var(--text-faint);margin-top:10px;font-size:11px}.hero-hint kbd{background:var(--panel-hi);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-dim);padding:1px 6px;font-size:10.5px}.divider{background:linear-gradient(var(--border),var(--border)) bottom/100% 1px no-repeat, repeating-linear-gradient(to right, var(--border) 0 1px, transparent 1px 26px) bottom/100% 6px no-repeat;height:13px}section{padding:64px 0;scroll-margin-top:70px}#experience,#projects,#case-study,#adr-002,#adr-003,#skills,#credentials,#contact{scroll-margin-top:70px}.entry-head{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:30px;display:flex}.entry-id{font-family:var(--mono);letter-spacing:.06em;color:var(--accent-text);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:nowrap;background:var(--accent-soft);padding:3px 8px;font-size:10.5px}.entry-head h2{color:var(--heading);font-size:23px}.entry-sub{font-family:var(--mono);color:var(--text-faint);text-align:right;margin-left:auto;font-size:11.5px}[data-reveal]{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(18px)}[data-reveal].in-view{opacity:1;transform:translateY(0)}.log-meta{border-bottom:1px dashed var(--border-hi);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:16px;padding-bottom:14px;display:flex}.log-meta h3{font-family:var(--label-font);color:var(--heading);font-size:16px;font-weight:600}.log-meta .org{color:var(--accent-text);font-weight:600}.log-meta .dur{font-family:var(--mono);color:var(--text-faint);font-size:11.5px}.log-line{opacity:0;gap:10px;margin-bottom:11px;font-size:12.5px;transition:opacity .5s,transform .5s;display:flex;transform:translate(-8px)}.log-line.in-view{opacity:1;transform:translate(0)}.log-ts{color:var(--text-faint);flex-shrink:0}@media (max-width:480px){.log-ts{display:none}}.log-tag{flex-shrink:0;width:44px;font-weight:700}.log-tag.ok{color:var(--green)}.log-tag.info{color:var(--accent-text)}.log-msg{color:var(--text-dim)}.log-msg strong{color:var(--text);font-weight:600}.diagram-wrap{margin-bottom:26px}.diagram-wrap svg{width:100%;height:auto}.diagram-wrap rect{rx:var(--diagram-rx)}.diagram-wrap text{font-family:var(--mono)}.case-kicker{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.case-kicker .num{font-family:var(--mono);color:var(--accent-fg);background:var(--accent);border-radius:var(--radius-sm);letter-spacing:.03em;padding:3px 8px;font-size:11px;font-weight:700}.case-kicker .num.num-alt{background:var(--accent2)}.case-kicker .title{font-family:var(--label-font);color:var(--heading);font-size:14px;font-weight:600}.case-kicker .title span{color:var(--text-faint);font-weight:400}.status-badge{font-family:var(--mono);color:var(--accent2);border:1px solid var(--accent2);background:var(--accent2-soft);border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;padding:3px 9px;font-size:10.5px;display:inline-flex}.status-badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite dotpulse;box-shadow:0 0 5px}.case-divider{border-top:1px dashed var(--border-hi);margin:56px 0 32px}.adr-list{flex-direction:column;gap:0;display:flex}.adr-field{border-bottom:1px dashed var(--border-hi);grid-template-columns:150px 1fr;gap:16px;padding:14px 0;display:grid}.adr-field:last-child{border-bottom:none}.adr-field dt{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-text);padding-top:2px;font-size:10.5px;font-weight:700}.adr-field dd{color:var(--text-dim);font-size:14.5px;font-family:var(--sans)}@media (max-width:560px){.adr-field{grid-template-columns:1fr;gap:4px}}.sys-group{margin-bottom:28px}.sys-group:last-child{margin-bottom:0}.sys-group-label{margin-bottom:10px}.group-tag{font-family:var(--label-font);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);border:1px solid;padding:4px 10px;font-size:10.5px;font-weight:700;display:inline-block}.group-tag.group-devops{color:var(--accent-text);border-color:var(--accent);background:var(--accent-soft)}.group-tag.group-game{color:var(--accent2);border-color:var(--accent2);background:var(--accent2-soft)}.sys-table{width:100%}.sys-head-row{font-family:var(--mono);color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-hi);grid-template-columns:1.2fr 100px 1.5fr;gap:12px;margin-bottom:4px;padding-bottom:10px;font-size:10.5px;display:grid}.sys-row{border-bottom:1px dashed var(--border-hi);font-family:var(--mono);opacity:0;grid-template-columns:1.2fr 100px 1.5fr;align-items:center;gap:12px;padding:11px 0;font-size:12.5px;transition:opacity .45s,transform .45s;display:grid;transform:translateY(8px)}.sys-row.in-view{opacity:1;transform:translateY(0)}.sys-row:last-child{border-bottom:none}.sys-unit{color:var(--text);align-items:center;gap:10px;display:inline-flex}.sys-unit .ico-slot{--slot:32px}.sys-status{align-items:center;gap:6px;font-size:11px;display:inline-flex}.sys-status.active{color:var(--green)}.sys-status.activating{color:var(--accent2)}.sys-status .dot{background:currentColor;border-radius:50%;width:6px;height:6px;box-shadow:0 0 5px}.sys-status.activating .dot{animation:1.2s ease-in-out infinite dotpulse}.sys-desc{color:var(--text-dim);font-family:var(--sans);font-size:13px}.sys-used{font-style:normal;font-family:var(--mono);color:var(--accent-text);white-space:nowrap;margin-left:8px;font-size:10.5px;display:inline-block}.sys-used:before{content:"→ ";color:var(--text-faint)}.proj-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (max-width:700px){.proj-grid{grid-template-columns:1fr}}.proj-card{flex-direction:column;gap:12px;padding:22px;display:flex}.proj-head{align-items:center;gap:12px;display:flex}.proj-head .ico-slot{--slot:40px}.proj-card h3{font-family:var(--label-font);color:var(--heading);font-size:15.5px;font-weight:700}.proj-card p{color:var(--text-dim);flex:1;font-size:13.5px}.proj-tags{flex-wrap:wrap;gap:6px;list-style:none;display:flex}.proj-tags li{font-family:var(--mono);color:var(--text-dim);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--panel-hi);padding:2px 8px;font-size:10.5px}.proj-links{flex-wrap:wrap;gap:16px;display:flex}.proj-links a{font-family:var(--label-font);color:var(--accent-text);font-size:12.5px;font-weight:600;text-decoration:none}.proj-links a:hover{text-underline-offset:3px;text-decoration:underline}.proj-more{color:var(--text-faint);margin-top:20px;font-size:13px}.proj-more a{color:var(--accent-text)}.adr-tree{font-family:var(--mono);color:var(--text);white-space:pre;border-bottom:1px dashed var(--border-hi);margin-bottom:6px;padding-bottom:14px;font-size:12px;line-height:1.55;overflow-x:auto}@media (max-width:640px){.sys-head-row{display:none}.sys-row{grid-template-columns:1fr;gap:4px;padding:14px 0}}.cred-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (max-width:700px){.cred-grid{grid-template-columns:1fr}}.cred-card{padding:24px}.cred-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.cred-head .ico-slot{--slot:40px}.cred-card h4{font-family:var(--label-font);color:var(--heading);font-size:14.5px;font-weight:600}.cred-card p{color:var(--text-dim);margin-bottom:14px;font-size:13.5px}.progress-track{background:var(--panel-hi);border:1px solid var(--border);border-radius:3px;height:6px;position:relative;overflow:hidden}.progress-fill{background:repeating-linear-gradient(45deg, var(--accent) 0 8px, var(--accent-dim) 8px 16px);background-size:200% 100%;border-radius:3px;width:40%;animation:1.2s linear infinite stripes;position:absolute;inset:0}@keyframes stripes{0%{background-position:0 0}to{background-position:32px 0}}.cred-badge{font-family:var(--mono);color:var(--accent-strong);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;margin-top:12px;font-size:10.5px;display:inline-flex}.cred-badge.done{color:var(--text-faint)}footer{text-align:center;padding:56px 0 72px}footer .term-window{text-align:left;max-width:480px;margin:0 auto 28px}footer .foot-links{flex-wrap:wrap;justify-content:center;gap:22px;margin-top:16px;display:flex}footer .foot-links a{color:var(--text-dim);font-family:var(--label-font);font-size:13px;font-weight:600;text-decoration:none;transition:color .15s}footer .foot-links a:hover{color:var(--accent)}#uptime-badge{font-family:var(--mono);color:var(--text-faint);border-radius:var(--radius-pill);z-index:40;opacity:0;align-items:center;gap:6px;padding:6px 10px;font-size:10.5px;transition:opacity .6s;display:flex;position:fixed;bottom:16px;right:16px}#uptime-badge.show{opacity:1}@media (max-width:640px){#uptime-badge{display:none}}html:root[data-family=factorio]{--heading:var(--fo-heading);--border:color-mix(in oklab, var(--bg-elev), #000 45%);--border-hi:color-mix(in oklab, var(--bg-elev), #fff 14%);--term-bg:color-mix(in oklab, var(--bg-elev), #000 40%);--diagram-rx:0px;--fo-bar:linear-gradient(180deg, color-mix(in oklab, var(--accent), #fff 32%) 0%, var(--accent) 55%, color-mix(in oklab, var(--accent), #000 14%) 100%)}html:root[data-family=factorio][data-mode=light]{--accent-text:color-mix(in oklab, var(--accent), #000 38%);--term-bg:color-mix(in oklab, var(--bg-elev), #fff 30%);--border-hi:color-mix(in oklab, var(--bg-elev), #000 22%);--green:#2d7a32}html:root[data-family=factorio] .term-window{padding:0 10px 10px}html:root[data-family=factorio] .term-titlebar{background:0 0;border:0;grid-template-columns:auto 1fr auto;column-gap:10px;padding:7px 0 8px}html:root[data-family=factorio] .term-dots{display:none}html:root[data-family=factorio] .term-title{font:700 15px/22px var(--font-display);letter-spacing:0;color:var(--fo-heading);text-shadow:0 1px #00000080;justify-self:start}html:root[data-family=factorio][data-mode=light] .term-title{text-shadow:0 1px #ffffff80}html:root[data-family=factorio] .term-grip{background:var(--fo-stripes);height:14px;display:block}html:root[data-family=factorio] .term-close{width:22px;height:22px;font:700 11px/1 var(--font-body);color:#141312;background:var(--fo-btn);border:1px solid #000;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff8c,inset 0 -2px #00000040}html:root[data-family=factorio] .term-body,html:root[data-family=factorio] .hero-term>.wrap{box-shadow:var(--fo-well);border:1px solid #000}html:root[data-family=factorio] .hero-term .term-body{border-bottom:0;box-shadow:inset 1px 1px #0009}html:root[data-family=factorio] .hero-term>.wrap{border-top:0;box-shadow:inset 1px -1px #ffffff14}html:root[data-family=factorio] h1 .accent{font-style:normal;font-weight:600}html:root[data-family=factorio] .nav-brand{font-family:var(--font-display);letter-spacing:0;font-size:16px}html:root[data-family=factorio] :is(.role-badge,.entry-id,.group-tag,.status-badge,.nav-status){box-shadow:var(--fo-bevel);border-color:#000}html:root[data-family=factorio] .proj-tags li{box-shadow:var(--fo-well);background:var(--bg-elev-2);border-color:#000;border-radius:0}html:root[data-family=factorio] .proj-card:hover .ico-slot{border-color:var(--accent);box-shadow:var(--fo-well), 0 0 8px -1px var(--accent)}html:root[data-family=factorio] .entry-id{color:var(--accent-text);background:var(--bg-elev-2);box-shadow:var(--fo-well)}html:root[data-family=factorio] .case-kicker .num{color:#000;background:var(--fo-bar);border:1px solid #000;box-shadow:inset 0 1px #ffffff73}html:root[data-family=factorio] .case-kicker .num.num-alt{background:var(--fo-green)}html:root[data-family=factorio] .nav-links a{font-weight:600}html:root[data-family=factorio] .hero-hint kbd{box-shadow:var(--fo-bevel);background:var(--fo-btn);color:#141312;border-color:#000}html:root[data-family=factorio] .divider{--belt-rail:color-mix(in oklab, var(--accent), #ffd21a 35%);background:linear-gradient(#000,#000) top/100% 1px no-repeat, linear-gradient(#000,#000) bottom/100% 1px no-repeat, linear-gradient(var(--belt-rail),var(--belt-rail)) left 0 top 1px/100% 3px no-repeat, linear-gradient(var(--belt-rail),var(--belt-rail)) left 0 bottom 1px/100% 3px no-repeat, linear-gradient(#00000080,#00000080) left 0 top 4px/100% 1px no-repeat, repeating-linear-gradient(90deg, #262525 0 6px, #4a4847 6px 8px, #262525 8px 14px);height:22px;animation:.7s linear infinite fo-belt}@keyframes fo-belt{0%{background-position:top,bottom,0 1px,left 0 bottom 1px,0 4px,0 0}to{background-position:top,bottom,0 1px,left 0 bottom 1px,0 4px,14px 0}}html:root[data-family=factorio] #scroll-progress{background:var(--fo-bar);height:5px;box-shadow:0 1px 0 #000, 0 0 10px color-mix(in srgb, var(--accent) 70%, transparent)}html:root[data-family=factorio] .progress-track{background:var(--bg-elev-2);height:14px;box-shadow:var(--fo-well);border-color:#000;border-radius:0}html:root[data-family=factorio] .progress-fill{background:var(--fo-bar);border-radius:0;animation:none;overflow:hidden;box-shadow:inset 0 1px #ffffff59,1px 0 #000}html:root[data-family=factorio] .progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff73,#0000);width:40%;animation:2.6s ease-in-out infinite fo-glint;position:absolute;top:0;bottom:0;left:0}@keyframes fo-glint{0%{transform:translate(-100%)}to{transform:translate(260%)}}html:root[data-family=factorio] .cred-badge{color:var(--accent-text)}html:root[data-family=factorio] #boot{background:var(--page-bg)}html:root[data-family=factorio] #boot-body{background:var(--term-bg);height:300px;min-height:0;box-shadow:var(--fo-well);border:1px solid #000;padding:14px 16px;overflow:hidden}html:root[data-family=factorio] .boot-bar{background:var(--bg-elev-2);width:100%;max-width:560px;height:18px;box-shadow:var(--fo-well);border:1px solid #000;margin-top:14px;display:block}html:root[data-family=factorio] .boot-bar i{background:var(--fo-bar);height:100%;box-shadow:inset 0 1px 0 #ffffff59, 0 0 10px color-mix(in srgb, var(--accent) 60%, transparent);transition:width .15s linear;display:block}html:root[data-family=xp]{--diagram-rx:3px;--term-bg:var(--bg-elev)}html:root[data-family=xp] .page-main{background:var(--bg);border:3px solid var(--xp-title-2);border-top:0;border-radius:8px 8px 0 0;max-width:1010px;margin:26px auto 48px;padding-top:30px;position:relative;box-shadow:3px 5px 18px #0006}html:root[data-family=xp] .page-main:before{content:attr(data-title);background:var(--xp-title);height:30px;color:var(--accent-fg);font:bold 13px/30px var(--font-display);text-shadow:1px 1px 1px color-mix(in oklab, var(--xp-title-3), #000 45%);border-radius:8px 8px 0 0;padding-left:12px;position:absolute;top:0;left:-3px;right:-3px}html:root[data-family=xp] .page-main:after{content:"✕";color:#fff;text-align:center;width:21px;height:21px;box-shadow:inset 0 0 0 1px #fff, -24px 0 0 0 var(--xp-title-1), -24px 0 0 1px #fff, -48px 0 0 0 var(--xp-title-1), -48px 0 0 1px #fff;background:linear-gradient(#f09a80 0%,#e0512f 40%,#c43a18 100%);border-radius:3px;font:700 12px/21px Tahoma,sans-serif;position:absolute;top:4px;right:3px}@media (max-width:1060px){html:root[data-family=xp] .page-main{margin:18px 6px 36px}}html:root[data-family=xp] .term-window{border:3px solid var(--xp-title-2);border-radius:8px 8px 0 0}html:root[data-family=xp] .term-titlebar{background:var(--xp-title);border:0;grid-template-columns:1fr auto;padding:3px 3px 3px 9px}html:root[data-family=xp] :is(.term-dots,.term-grip){display:none}html:root[data-family=xp] .term-title{font:bold 13px/21px var(--font-display);color:#fff;text-shadow:1px 1px 1px color-mix(in oklab, var(--xp-title-3), #000 45%);justify-self:start}html:root[data-family=xp] .term-close{color:#fff;background:linear-gradient(#f09a80 0%,#e0512f 40%,#c43a18 100%);border-radius:3px;place-items:center;width:21px;height:21px;font:700 12px/1 Tahoma,sans-serif;display:grid;box-shadow:inset 0 0 0 1px #fff}html:root[data-family=cyber]{--diagram-rx:0px;--term-bg:color-mix(in oklab, var(--bg), #000 30%);--term-bar:transparent}html:root[data-family=cyber][data-mode=light]{--term-bg:color-mix(in oklab, var(--bg), #fff 40%)}html:root[data-family=cyber] .term-titlebar{border-bottom-color:var(--line);grid-template-columns:auto 1fr}html:root[data-family=cyber] .term-dots{display:none}html:root[data-family=cyber] .term-title{color:var(--accent);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.12em;justify-self:start;font-size:11px}html:root[data-family=cyber] .term-grip{background:linear-gradient(90deg,var(--accent),transparent);height:1px;display:block}html:root[data-family=glass]{--diagram-rx:14px;--term-bg:color-mix(in oklab, var(--bg) 45%, transparent);--term-bar:transparent}html:root[data-family=glass] .term-titlebar{border-bottom-color:var(--glass-edge)}html:root[data-family=arcade]{--diagram-rx:14px;--term-bg:color-mix(in oklab, var(--bg-elev), #000 22%)}html:root[data-family=arcade][data-mode=light]{--term-bg:#fffdf8}html:root[data-family=arcade] .term-titlebar{background:var(--btn-bg);border-bottom:0}html:root[data-family=arcade] .term-title{color:var(--accent-fg);font-family:var(--font-display);letter-spacing:.04em}:root{--ico-body:color-mix(in srgb, var(--accent) 16%, transparent);--ico-acc:var(--accent);--ico-line:currentColor;--ico-w:1.6px;--ico-g1:#fff;--ico-g2:#aaa;--ico-a1:var(--accent);--ico-a2:var(--accent);--ico-filter:none}.ico{width:22px;height:22px;color:var(--accent-text);filter:var(--ico-filter);flex-shrink:0;overflow:visible}.ico .b{fill:var(--ico-body);stroke:var(--ico-line);stroke-width:var(--ico-w);stroke-linejoin:round}.ico .a{fill:var(--ico-acc);stroke:var(--ico-line);stroke-width:var(--ico-w);stroke-linejoin:round}.ico .l{fill:none;stroke:var(--ico-line);stroke-width:var(--ico-w);stroke-linecap:round;stroke-linejoin:round}.ico .d{fill:var(--ico-line)}.ico.ico-alt,.sys-group:nth-child(2) .ico{color:var(--accent2);--ico-acc:var(--accent2);--ico-body:color-mix(in srgb, var(--accent2) 16%, transparent)}.ico-slot{--slot:34px;width:var(--slot);height:var(--slot);border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));flex-shrink:0;place-items:center;display:inline-grid}.ico-slot .ico{width:calc(var(--slot) * .74);height:calc(var(--slot) * .74)}.sys-group:nth-child(2) .ico-slot{background:var(--accent2-soft);border-color:color-mix(in srgb, var(--accent2) 30%, var(--line))}html:root[data-family=factorio]{--ico-body:url(#ico-g);--ico-acc:url(#ico-ga);--ico-line:#000;--ico-w:1.3px;--ico-g1:#e4e2de;--ico-g2:#8d8a86;--ico-a1:color-mix(in oklab, var(--accent), #fff 35%);--ico-a2:color-mix(in oklab, var(--accent), #000 10%);--ico-filter:drop-shadow(0 1.5px 0 #0000008c)}html:root[data-family=factorio] .ico .f{stroke:color-mix(in oklab, var(--fg), #000 12%)}html:root[data-family=factorio] :is(.ico.ico-alt,.sys-group:nth-child(2) .ico){--ico-acc:url(#ico-ga);--ico-a1:color-mix(in oklab, var(--accent-2), #fff 30%);--ico-a2:color-mix(in oklab, var(--accent-2), #000 12%);--ico-body:url(#ico-g)}html:root[data-family=factorio] .ico-slot,html:root[data-family=factorio] .sys-group:nth-child(2) .ico-slot{background:color-mix(in oklab, var(--bg-elev-2), #000 18%);box-shadow:var(--fo-well);border:1px solid #000;border-radius:0;transition:box-shadow .12s,border-color .12s}html:root[data-family=factorio] :is(.sys-row,.cred-card,.entry-head):hover .ico-slot{border-color:var(--accent);box-shadow:var(--fo-well), 0 0 8px -1px var(--accent)}html:root[data-family=xp]{--ico-body:url(#ico-g);--ico-acc:url(#ico-ga);--ico-line:color-mix(in oklab, var(--accent), #000 50%);--ico-w:1.2px;--ico-g1:#fff;--ico-g2:color-mix(in oklab, var(--accent), #fff 45%);--ico-a1:#ffd66b;--ico-a2:#e38b00;--ico-filter:drop-shadow(1px 1px 1px #0000004d)}html:root[data-family=xp] .ico-slot,html:root[data-family=xp] .sys-group:nth-child(2) .ico-slot{background:0 0;border:0}html:root[data-family=cyber]{--ico-body:color-mix(in srgb, var(--accent) 8%, transparent);--ico-acc:var(--accent-2);--ico-line:var(--accent);--ico-w:1.4px;--ico-filter:drop-shadow(0 0 3px var(--neon))}html:root[data-family=cyber] .ico-slot,html:root[data-family=cyber] .sys-group:nth-child(2) .ico-slot{box-shadow:inset 0 0 0 1px var(--edge);clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));background:0 0;border:0;border-radius:0}html:root[data-family=arcade]{--ico-body:url(#ico-g);--ico-acc:var(--accent-2);--ico-line:color-mix(in oklab, var(--accent), #000 60%);--ico-w:1.2px;--ico-g1:color-mix(in oklab, var(--accent), #fff 55%);--ico-g2:color-mix(in oklab, var(--accent), #000 25%)}html:root[data-family=arcade] .ico-slot,html:root[data-family=arcade] .sys-group:nth-child(2) .ico-slot{background:linear-gradient(var(--bg-elev),var(--bg-elev)) padding-box, var(--gold) border-box;box-shadow:0 0 10px -2px var(--glow);border:2px solid #0000;border-radius:50%}html:root[data-family=glass] .ico-slot,html:root[data-family=glass] .sys-group:nth-child(2) .ico-slot{background:var(--glass);border-color:var(--glass-edge);box-shadow:inset 0 1px 0 var(--glass-hi);border-radius:50%}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}a:focus-visible,.pill:focus-visible,.term-inline-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#hero-input:focus-visible{box-shadow:0 0 0 2px var(--accent);border-radius:4px;outline:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
