@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(/assets/nunito-vietnamese-600-normal-DO1RqFw5.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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.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:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.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:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/nunito-cyrillic-ext-900-normal-BLeVovcl.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-900-normal-DKFql_-q.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:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/nunito-cyrillic-900-normal-CWPcV0_V.woff2)format("woff2"),url(/assets/nunito-cyrillic-900-normal-Dr1fjxoU.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/nunito-vietnamese-900-normal-D6LWQAy_.woff2)format("woff2"),url(/assets/nunito-vietnamese-900-normal-WV2-fBew.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:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/nunito-latin-ext-900-normal-Dllsvgjo.woff2)format("woff2"),url(/assets/nunito-latin-ext-900-normal-CTBZd6bf.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:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/nunito-latin-900-normal-BVB1fGs6.woff2)format("woff2"),url(/assets/nunito-latin-900-normal-CVn49sIn.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAASUABAAAAAACRAAAAQ3AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3oLIAABNgIkAzoEIAWFHgeBFAwHG3AHKB4HzukrRjyF5Gb4kQ/B873d17mv8TWkoqUUGaHodJCtoqntw7m8tiPWyGkfWDU/IMpzVk4zAs9Czv3c7Os5NvKFG1Ht9vBVXySRZpJc4tTrbM3sTRFcLa3zVboKWRIoAksKSKgqUQWEwlSoqjp44V5J9/kjd0+Fi5xaFjwJArgBAIJgIAgCCAI4CdNMqGuYXYUKdADLAkAAJwl6iX0+bZqEm1AH0Hu9rvrJHwxQG1Q/gFYwWYbgTRWgwEESVzbmtjQAt3DXO7Tu/+9Q/KNKWhTCgZ8fQSWoL0CUUgTBjgL8iEAcce7YHBeA8ZvogieCnxI0BCVeACCAAhBD/oDcAdUPABSgAX4kBPBTwjCAjwYSCneiqF65LUo/qXdYFrRwTujtMrKm07plTbSqLQFAiHBN7E4DG5wkiGXhCYBNETh3K/AciHN69iFfQjFOr9EXQQAAQXRNszs8PR0OH4fDV/dwGe76CHdj1MQa11DXYGcfZ6+B1X0OfwjY+i7KpQ1w9d+1z3/HydCB1f3U8A0fRFv+0bXxPWrZu3d9Nn4UcbLs/QCXLH/j3PCKblKOiZxLOR78W9brPo7eGTLz/F27ZPmePQdCB1YP4nJU91o4gU9cy64L3c3SPu8GfDn6ZXD2cGmllVqSxtD5vCXHm5xaeHlnpffx7DcPvXog5NnjA//cPz2btsz3yf+0MI8ri33tuv7upNbYmW5STbosW8bYItV/SPzxvXC0KnpWnFdC91oojit5Lyo6WcJQ1YzwBYbi52ohJVpcxfcHBqsv0nFz8U74rzS6M7r0RVlXZ3jJC4G92O//7Lm78VOtnUx+aQxAzsqPnrRr1t9zDrezKePvZ027x+fGte4s4NXu7/jEp3G9cM1bICYgACbuETUUD5wmenGXA/IBpAKVrl0AEJ5cqr6Q89tGq+SpqkDfX2DtG+pZ9teuae0AX98c301CX179InyErnSG8WCiABB4HFbVrw/lpTdBIOk82nXbpHKoQGyBpUovAAD4XQA8ZTUCeBJHIpI0v0FRrgcnckV3ANckrwYJKXEihQfdSKPER6XeExmEeEMmSe6QBwWmkZdmSOSthhibgIkBlUYreBKd/0NeVAE9WAyEaQpH6KikDWlUVg43Jy2FOmaYlsZhDEGZXO3mWEyWHI6zuaJkMlcSQ9k4F+KidIiFyZItGDc7r1pUj6wP6zrWB0/fbeeFeHl4YOvETMNiM8Ny+7OO6Qh2wur20YVxFts5dlORdl5Kwd5utR7SRcxqX8RA5Ehacha76hg7c6yzNm/Xf6vOLNrv544lIEkWg7xWo/ItBAeIJEmt0XgBwgM8gTifoiiLJroYYooNTeziEKe4zOoR/wvIKp89hSr+6jFAqw/LaonjmZHSscMNg4iPlWpFrO1RN3zkMU+/xUP+JQ99TbvTl1Vg0gtirT6lbwYAAAA=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,d09GMgABAAAAAASAABAAAAAACNgAAAQlAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3gLIAABNgIkAzoEIAWEaAeBFAwHGzgHSJ4DbjN9OmtkIy0becnT/RjJ4uGfw99974/GXrhoTCqLok66NY3jTloEUdrmwCevn/Ls30xSpFlZ6UJMrW+fTNwAEdSuvSzCRANvEgnjUmw8swT+87+w7I/7qb8XlIB7NpGBjXiUjRX0b7ZpJ8+orRLzvGhWYCMdAU3BbRdPuqOeKAXuRKAWEEJJCIEQqNbLD9osq2kBviL8A4Fq4yLgAa+6DNaiAwcYOrqYHfgQcMgL3AFgG4fHHqREEUBSxUtmBfzNWxXADfviy8Kff7dA4QfFBQG6fnoX5Dh+gEEcIVRKtMIYhc/kCgsCDiarQY4QWpEKQoYTAAIJUcaHAHIXIN9BooBWhEAr0j7QzAkh1RnEWOY4wuRW8uX/f5o5W8gXcjriOUb9z/wjACRuWaWrpKIyLMQ/DUDN/TT+ErgHRpPBIRQrKCcZCvxBBCBEkSD4lKMjRblQlCvpQHPsSZE9R6K2o/vpXkGboKWbbltxx2feLT+a6KJb5293n7vTt53uwOzUO4gYc5eedhvS+a1bbdNuIiSA89cuGo25IZh6DXrJJIIUUibFUG0zt+ijO+cvnj8fjVm4cKlvN90DwzrdMmy8H9GjDyv90Xz2W10PVj3oTY7LLfwfmxMHoef+8n33R0duOxF3LPCYFXtymWNdcLBD3VF4S91+GWf8c9k7sZC6fPpnbENnCmayerBNki0ZbFUXiHV/wkxWklGmydCkaR5o0oZnlj3oSVdnZKjTITaXStOyWGYakzUgTSt1gvSs/otJL1FkzE/3e+aXvj7n+TOv9HkZ6evS4e3OXafCx8iqJfNGpQLM7rkt0ppRJ8N3gd1IjHLaROM0cLkhdf2NQjZ4bmjo2mBWKJ4CPA4IZXX9hFlPBnhxWhXzgBGQ88QeRD3j1/AD5a/JxMnL5gK5deaC2H7HvK98gngBbzfWLKD0g2ufeA7nMsQepBwDgpdhy90BzC+8DSCers8O6KKloYn0RCtKo9EM9LsAd7AgNBhFGEAsvl4K1LpCiCIF3IZHFUKvX5AqfUPBgkO+ovHpUNJtOJSN6hDWWxAigkCt9hbEXdaOHLvI6lM5gQA79LRYOpUsWBpKYu2klOQULGlGCwOzHIkSmYmZKBlQrlmCQ0mDv5SeiVyiemVqVJGyEDJhKemY1dLT0YsnpKch0UbKxExJTydIigQpkiUvYA3SVFDqFH2uNggh343VmPs2ycX0DIYwPYTigMak5AjS0ohI8zmoo4EJwypS4iVcDOuDuvRMgytHPa5LTjnoc1YiCcT0tBI3qjXxqqFomJf2PylAOHMDRp1HGBaDQCTiIC7iQSH4iEICRHMZkUlqk/KsOmVSGlOK7NIseRNZFp3NkbNaLateTmKScHGTAyu2WqQf6lD8rMNg1+lKTcpwkfvQ/7eRMwAA)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAbAAA8AAAAACLwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABgAAAAcABQABEdQT1MAAAFwAAAAHgAAAB5EdEx1R1NVQgAAAZAAAAAnAAAAKLj8uOpPUy8yAAABuAAAAFEAAABgGDBcS1NUQVQAAAIMAAAAPgAAAEzrJ8wpY21hcAAAAkwAAABRAAAAdAyHCodnYXNwAAACoAAAAAgAAAAIAAAAEGdseWYAAAKoAAAB6wAAAmCgFyn6aGVhZAAABJQAAAA2AAAANhSU8UNoaGVhAAAEzAAAAB8AAAAkAc0A/2htdHgAAATsAAAAHwAAADoe9gKVbG9jYQAABQwAAAAgAAAAIATdBZ9tYXhwAAAFLAAAABwAAAAgAIcCb25hbWUAAAVIAAABBwAAAmg1nlsfcG9zdAAABlAAAABwAAAAlNdzMTB42mNgZGBg4GGAAEYgZAWTjCAeAAG0ABkAAQAAAAoAHAAcAAFERkxUAAgABAAAAAD//wAAAAAAAHjaY2BkYGDgYlADQiYXN58QBqGcxJI8Bj4GEGABEf//g0gAWkkFVQB42mNgYYpi2sPAysDA1MUUwcDA4A2hGeMYjBgdgKIMDJwMUMDEzoAEvJyAxAIGXpaXzH/+XWFgYP7DqKPAwDj//nWgSjWmW0BZBQZWAB8jDeMAAAB42gXBsQ1AABQFwHufiI5CYQBDaVVIlBLLmckM7kT0CpPCop79uIPz3q4MojUrSFcvtVIfGlEZQfgB9IwGBAAAeNpVyEcBwkAQBdCXHnoVgJU44Y4pFIAFUAOJiS23ZOZ3lKhwVSlkr91xdlQp7dwMnr5FWb/rMQQW26v+h3xT+IRHGEIBCvNr9Wh0OUU7NxUUAAAAAAEAAf//AA942m0QNZQUMfQn2Zt1Gcdhd2Dt/DLJrOLu0OHu7u4uJf3D+odLhUOLu0MLJVQ7S3C4u+S7/w8EJgIgFz8XkgR+ACrH5V5xGaH4RHTSPY7q3KsCH+LnlWQLLrqAi4DBAsBM5HghBkBVqlopy6vSVDKZkiSvdenY5e3p6+k+R+qCMUKioe/Jp08j82bzGEUZ0wTV6s8K5AJOAgIQncPd2rNGBEVgCms/0U1oVCbUNAyTc8ehRP70eNfKsEI8cnjZzsfIj+5VuhVisUK3itvofhX1fmViCTwAQGBo9QuO4Y8QEZ4eADWJJJNtTlsMXdYkKdXCGbN0zSCU2UkrIemobtGGDYsWbcjNGcKd57ncc0c0DqybjfKz166d7d7pP9NZUrYXL7bLaMhkViox0TNTHYkbcVL09P/Tswlk6ATWj55Jxmz+vauh6/+2Tf1tO2huPj930E/KC2+LxbcFzooBNrPfoX4zGJ/+nfEFBdalCyu878DyeQbod2dQAUxGqNoNm6bDHQEqJfrnWzvmeQM+LJ7HXyPN3Xbz3DmcdM/pmR4B8WI9NR2Nqjw/B4DgOsmiM+QCEADVod7rC/euJNnDh4VnK0mgF8ITBkDielQzaAsXTEJ1o6fPyFpW7YzpJDG+fzydjvcfD98ArHSFeAAAAQAAAAI2BCpkDTZfDzz1AAMD6AAAAADb0qaaAAAAANva0PL5PP7UBJID/AABAAYAAgAAAAAAAHjaY2BkYGD+8+8KAwPLhp82f3NYJgFFUAEfAK0mBsoAeNpjimCIAmJlJCwOxR5ArIlEM0AxCBxiqAMA3bsHpgAAAAAaADsARgBRAG4AdgCoALAA5QEKAQoBCgEKARcBMHjaY2BkYGDgZ9zBkMewhYENzEMAZgYmAC0aAfh42oyQA25FUQBET20EtW27DWrbcfVtcx1dzV9V40adpLdmXiZzMnfmCSjlnhyycouATFa14SwaeTScTSEPhnOYJmM4l+7XbR71pA3n08ml4XL12585C0qpNpz/ds+sCuXFhitFcIwPD9d42SIsd+Pglgsscht2ZZIuPyHmGWFEfksQh5KweFhy4Jb7lNp0fsA6u2xjIcyysmsceNXaU8MrDSn14eaOc3WCaI9OaGWcYWlM19d16+u+9XX/1l9gW+nCv55q/NdnrEh+EgRf/4LejlEk0akSi/z3tzwkKHeqc4v2LBGR25UFUZPeL3/WhgM11LthmKclg2NGH4st+nj8qQkARipb8wB42mNgYgCD/6kMRkCKkQEd8AOxCsNJRiYGG0ZmRhZGVkY2RnYGZkYORk5GLkZuNsekotSyVPbSvEwDE0dXCO1qAeW7QfmWrOmJubmJYJ6BowGTcxBfYnJpSWpyfm6SXnJicSoPSMbYwAzMAQCg7RyY)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-cyrillic-700-normal-BWTpRfYl.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-700-normal-CEoEElIJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-greek-700-normal-C6CZE3T8.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-700-normal-DEigVDxa.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-700-normal-BDLVIk2r.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-700-normal-CxPITLHs.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--green:#58cc02;--green-d:#58a700;--green-l:#d7ffb8;--blue:#1cb0f6;--blue-d:#1899d6;--blue-l:#ddf4ff;--blue-b:#84d8ff;--red:#ff4b4b;--red-d:#ea2b2b;--red-l:#ffdfe0;--orange:#ff9600;--orange-d:#e08600;--gold:#ffc800;--purple:#ce82ff;--text:#4b4b4b;--muted:#777;--faint:#afafaf;--line:#e5e5e5;--bg2:#f7f7f7;--page:#fff;--surface-2:var(--surface-2);--line-2:#cecece;--blue-t:#1899d6;--green-t:#58a700;--red-t:#ea2b2b;--green-b:#a5ed6e;--red-b:#ffb2b2;--gold-l:#fff9e0;--orange-l:#ffe7c2;--mem-changed:#ffe7a3;--code-last:#f0f0f0;--ln:#c9c9c9;--backdrop:#00000073;--answer-bg:#fff9;--tok-op:#a542f5;--tok-reg:#1899d6;--tok-num:#e07800;--tok-label:#58a700;--tok-size:#ea2b2b;--tok-punct:#999;--tok-comment:#aaa;--mono:"JetBrains Mono", ui-monospace, Menlo, monospace;--radius:16px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text:#f1f7fb;--muted:#9db0b9;--faint:#62767f;--line:#37464f;--bg2:#202f36;--page:#131f24;--surface-2:#18262c;--line-2:#26343b;--blue-l:#1a3746;--blue-b:#2f6f8f;--blue-t:#49c0f8;--green-l:#1f3519;--green-t:#79d634;--green-b:#477f22;--red-l:#3a2125;--red-t:#ff7878;--red-b:#823238;--gold-l:#3a3216;--orange-l:#4a3414;--mem-changed:#66521a;--code-last:#22333a;--ln:#4a5f68;--backdrop:#000000a6;--answer-bg:#00000040;--tok-op:#c792ff;--tok-reg:#49c0f8;--tok-num:#ffaa4d;--tok-label:#8ee04c;--tok-size:#ff7b7b;--tok-punct:#7d919a;--tok-comment:#63777f}[data-theme=dark] .course-flag{background:#37464f}[data-theme=dark] .modal{border:2px solid var(--line)}[data-theme=dark] .streak-big{text-shadow:0 5px #8a4f00}*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:var(--text);background:var(--page);-webkit-font-smoothing:antialiased;font-family:Nunito,Segoe UI,system-ui,sans-serif;font-weight:700;transition:background .2s}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3{margin:0;font-weight:800}code{font-family:var(--mono);background:var(--bg2);border:2px solid var(--line);color:var(--blue-t);border-radius:8px;padding:0 6px;font-size:.9em;font-weight:700}strong{font-weight:900}.btn{--bg:var(--page);--sh:var(--line);--fg:var(--blue);background:var(--bg);color:var(--fg);box-shadow:0 4px 0 var(--sh);letter-spacing:.8px;text-transform:uppercase;-webkit-user-select:none;user-select:none;border:2px solid #0000;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:15px;font-weight:800;transition:filter .1s,transform 50ms;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.06)}.btn:active:not(:disabled){box-shadow:none;transform:translateY(4px)}.btn:disabled{cursor:default;box-shadow:0 4px 0 var(--line-2);--bg:var(--line)!important;--sh:var(--line)!important;--fg:var(--faint)!important;color:var(--faint)!important}.btn-green{--bg:var(--green);--sh:var(--green-d);--fg:#fff}.btn-blue{--bg:var(--blue);--sh:var(--blue-d);--fg:#fff}.btn-red{--bg:var(--red);--sh:var(--red-d);--fg:#fff}.btn-orange{--bg:var(--orange);--sh:var(--orange-d);--fg:#fff}.btn-white{--bg:#fff;--sh:#0000002e}.btn-ghost{border-color:var(--line);--fg:var(--blue)}.btn-ghost-red{--sh:transparent;--fg:var(--red);box-shadow:none}.btn-lg{min-width:150px;padding:14px 32px;font-size:16px}.btn-sm{box-shadow:0 3px 0 var(--sh);border-radius:12px;padding:7px 12px;font-size:13px}.btn-ghost.btn-sm{box-shadow:0 3px 0 var(--line)}.btn-block{width:100%}.icon-btn{color:var(--faint);background:0 0;border:0;border-radius:12px;place-items:center;padding:6px;display:grid}.icon-btn:hover{background:var(--bg2)}.link-btn{color:inherit;text-underline-offset:3px;opacity:.9;background:0 0;border:0;margin-top:6px;padding:0;font-weight:800;text-decoration:underline}.app{grid-template-columns:256px minmax(0,1fr) 368px;min-height:100vh;display:grid}.sidebar{border-right:2px solid var(--line);flex-direction:column;gap:8px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.logo{color:var(--green);letter-spacing:-1px;cursor:pointer;padding:4px 16px 28px;font-size:32px;font-weight:900}.nav-item{text-transform:uppercase;letter-spacing:.8px;color:var(--muted);text-align:left;background:0 0;border:2px solid #0000;border-radius:12px;align-items:center;gap:18px;padding:8px 16px;font-size:15px;font-weight:800;display:flex}.nav-item:hover{background:var(--bg2)}.nav-item.is-on{border-color:var(--blue-b);background:var(--blue-l);color:var(--blue-t)}.theme-toggle{margin-top:auto}.nav-icon{place-items:center;width:36px;height:36px;display:grid}.main{min-width:0;padding:24px 32px 80px}.rightbar{flex-direction:column;gap:20px;height:100vh;padding:24px 24px 24px 8px;display:flex;position:sticky;top:0;overflow-y:auto}.topbar{display:none}.stats-row{justify-content:space-between;align-items:center;gap:4px;display:flex}.stat-chip{border-radius:12px;align-items:center;gap:6px;padding:6px 10px;font-size:17px;font-weight:800;display:flex}.stat-chip:hover{background:var(--bg2)}.stat-chip.is-orange{color:var(--orange)}.stat-chip.is-dim{color:var(--faint)}.stat-chip.is-blue{color:var(--blue)}.stat-chip.is-red{color:var(--red)}.course-flag{color:#fff;width:40px;height:30px;font-family:var(--mono);background:#4b4b4b;border-radius:8px;place-items:center;font-size:13px;display:inline-grid;box-shadow:inset 0 -4px #00000040}.card{border:2px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:14px;padding:20px;display:flex}.card-row{align-items:center;gap:14px;display:flex}.card-title{font-size:19px}.card-sub{color:var(--muted);margin:4px 0 0;font-size:15px;font-weight:600}.freeze-line{color:var(--blue-t);align-items:center;gap:6px;display:flex}.goal-bar{background:var(--line);border-radius:99px;flex:1;height:18px;position:relative;overflow:hidden}.goal-fill{background:var(--gold);border-radius:99px;height:100%;transition:width .6s}.goal-text{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:800}.shop-item{grid-template-columns:40px 1fr auto;align-items:center;gap:12px;display:grid}.shop-item b{display:block}.shop-item span{color:var(--muted);font-size:13px;font-weight:600}.week{background:var(--bg2);border-radius:14px;justify-content:space-between;padding:10px 12px;display:flex}.week-day{color:var(--faint);flex-direction:column;align-items:center;gap:6px;font-size:13px;display:flex}.week-day.is-today{color:var(--orange)}.week-dot{background:var(--line);border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.week-dot.is-on{background:var(--orange-l)}.week-dot.is-frozen{background:var(--blue-l)}.learn{max-width:600px;margin:0 auto}.unit{margin-bottom:56px}.unit-banner{border-radius:var(--radius);color:#fff;z-index:10;justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 16px 20px;display:flex;position:sticky;top:16px}.unit.is-locked .unit-banner{color:var(--faint)}.unit-kicker{letter-spacing:1px;opacity:.85;text-transform:uppercase;font-size:13px;font-weight:800}.unit-banner h2{margin:2px 0;font-size:22px}.unit-banner p{opacity:.95;margin:0;font-weight:600}.guide-btn{color:inherit;letter-spacing:.8px;text-transform:uppercase;white-space:nowrap;background:0 0;border:2px solid;border-radius:14px;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:800;display:flex}.guide-btn:hover{background:#ffffff1f}.path{flex-direction:column;align-items:center;gap:22px;padding-top:76px;display:flex}.node-wrap.is-current{margin:52px 0 10px}.node-wrap{flex-direction:column;align-items:center;display:flex;position:relative}.node{--c:var(--line);--s:var(--line-2);background:var(--c);width:72px;height:66px;box-shadow:0 8px 0 var(--s);color:#fff;border:0;border-radius:50%;place-items:center;margin-bottom:8px;transition:transform 50ms;display:grid;position:relative}.node.is-locked{color:var(--faint)}.node:active{box-shadow:0 2px 0 var(--s);transform:translateY(6px)}.node.is-done:after{content:"";background:#ffffff59;border-radius:50%;width:14px;height:8px;position:absolute;inset:8px 14px auto auto;transform:rotate(-35deg)}.node-ring{opacity:.25;pointer-events:none;border:7px solid;border-radius:50%;position:absolute;inset:-12px -12px -18px}.node-start{background:var(--page);border:2px solid var(--line);letter-spacing:.8px;z-index:2;border-radius:12px;padding:8px 14px;font-weight:900;animation:1.2s ease-in-out infinite bob;position:absolute;top:-50px}.node-start:after{content:"";background:var(--page);border:2px solid var(--line);border-top:0;border-left:0;width:12px;height:12px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)rotate(45deg)}@keyframes bob{50%{transform:translateY(-6px)}}.node-pop{border-radius:var(--radius);color:#fff;z-index:20;border:2px solid;width:300px;padding:16px;animation:.15s ease-out pop;position:absolute;top:92px;left:50%}.node-pop-title{font-size:18px;font-weight:800}.node-pop-sub{opacity:.95;margin:4px 0 14px;font-weight:600}.node-pop .is-locked{color:var(--faint)}@keyframes pop{0%{opacity:0;transform:translate(-50%)scale(.92)}}.path-mascot{pointer-events:none;position:absolute;top:10px}.path-mascot.is-right{left:140px}.path-mascot.is-left{right:140px}.path-mascot.is-locked{filter:grayscale();opacity:.45}.learn-end{text-align:center;color:var(--muted);padding:20px 0 60px}.page{max-width:760px;margin:0 auto}.page-head h1{font-size:30px}.page-head p{color:var(--muted);margin:6px 0 20px;font-weight:600}.section-title{margin:32px 0 14px;font-size:22px}.select{border:2px solid var(--line);background:var(--bg2);border-radius:12px;padding:9px 12px;font-weight:700}.practice-hero{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px 20px;display:flex}.practice-hero h1{font-size:30px}.practice-hero p{max-width:440px;color:var(--muted);margin:0 0 8px;font-weight:600}.pg-bar{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.seg{border:2px solid var(--line);border-radius:14px;display:flex;overflow:hidden}.seg button{background:var(--page);color:var(--muted);border:0;padding:9px 18px;font-weight:800}.seg button.is-on{background:var(--blue-l);color:var(--blue-t)}.editor{border:2px solid var(--line);border-radius:var(--radius);background:var(--surface-2);min-height:340px;display:flex;overflow:hidden}.editor-gutter{text-align:right;font-family:var(--mono);color:var(--ln);background:var(--bg2);border-right:2px solid var(--line);-webkit-user-select:none;user-select:none;min-width:46px;padding:16px 10px;font-size:15px;line-height:1.6}.editor-gutter .is-error{color:#fff;background:var(--red);border-radius:6px}.editor-text{resize:vertical;font-family:var(--mono);white-space:pre;background:0 0;border:0;outline:0;flex:1;min-height:340px;padding:16px;font-size:15px;line-height:1.6}.reference{border:2px solid var(--line);border-radius:var(--radius);margin-top:28px;padding:14px 18px}.reference summary{cursor:pointer;font-size:17px;font-weight:800}.profile-head{border-bottom:2px solid var(--line);align-items:center;gap:20px;padding-bottom:24px;display:flex}.avatar{background:var(--purple);color:#fff;border-radius:50%;place-items:center;width:96px;height:96px;font-size:44px;font-weight:900;display:grid;box-shadow:inset 0 -6px #00000026}.name-input{background:0 0;border:0;border-radius:10px;width:100%;margin-left:-6px;padding:2px 6px;font-size:28px;font-weight:900}.name-input:hover,.name-input:focus{background:var(--bg2);outline:0}.profile-sub{color:var(--muted);font-weight:600}.stats-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.stat{border:2px solid var(--line);border-radius:var(--radius);align-items:center;gap:14px;padding:14px 18px;display:flex}.stat b{font-size:22px;display:block}.stat span{color:var(--faint);font-weight:600}.gold{color:var(--gold)}.chart{border:2px solid var(--line);border-radius:var(--radius);gap:10px;height:220px;padding:18px;display:flex}.chart-col{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.chart-val{color:var(--muted);height:16px;font-size:13px}.chart-bar-wrap{flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex;position:relative}.chart-bar{background:var(--blue);border-radius:8px 8px 4px 4px;width:70%;max-width:44px;min-height:4px;transition:height .5s}.chart-bar.is-goal{background:var(--gold)}.chart-goal{border-top:2px dashed var(--line);position:absolute;left:0;right:0}.chart-day{color:var(--faint);font-size:13px}.chart-day.is-today{color:var(--blue)}.badges{grid-template-columns:1fr 1fr;gap:12px;display:grid}.badge{border:2px solid var(--line);border-radius:var(--radius);opacity:.55;filter:grayscale();align-items:center;gap:14px;padding:12px 16px;display:flex}.badge.is-got{opacity:1;filter:none;border-color:var(--gold);background:var(--gold-l)}.badge-icon{font-size:34px}.badge b{display:block}.badge span{color:var(--muted);font-size:13px;font-weight:600}.settings{border:2px solid var(--line);border-radius:var(--radius)}.setting{border-bottom:2px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.setting:last-child{border-bottom:0}.setting b{align-items:center;gap:6px;display:flex}.setting span span{color:var(--muted);font-size:14px;font-weight:600}.switch{appearance:none;background:var(--line);cursor:pointer;border-radius:99px;flex-shrink:0;width:52px;height:30px;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 2px #00000026}.switch:checked{background:var(--blue)}.switch:checked:after{left:25px}.md p{margin:0 0 12px;font-size:17px;font-weight:600;line-height:1.55}.md ul{margin:0 0 12px;padding-left:22px;font-weight:600;line-height:1.6}.md table{border-collapse:separate;border-spacing:0;border:2px solid var(--line);border-radius:12px;margin:0 0 14px;font-weight:600;overflow:hidden}.md th,.md td{border-bottom:2px solid var(--line);text-align:left;padding:7px 14px}.md th{background:var(--bg2);font-weight:800}.md tr:last-child td{border-bottom:0}.code{font-family:var(--mono);background:var(--surface-2);border:2px solid var(--line);border-radius:var(--radius);margin:0;padding:14px 0;font-size:17px;font-weight:500;line-height:1.75;overflow-x:auto}.code-small{margin-bottom:14px;padding:10px 0;font-size:14px}.code-line{align-items:center;min-height:1.75em;padding:0 18px;display:flex;position:relative}.code-line.is-indented .code-text{padding-left:1.5em}.code-ln{width:2em;color:var(--ln);-webkit-user-select:none;user-select:none;flex-shrink:0}.code-line.is-active{background:var(--blue-l);box-shadow:inset 4px 0 0 var(--blue)}.code-line.is-last{background:var(--code-last)}.code-line.is-error{background:var(--red-l);box-shadow:inset 4px 0 0 var(--red)}.code-arrow{color:var(--blue);margin-left:auto;font-size:12px}.tok-op{color:var(--tok-op);font-weight:700}.tok-reg{color:var(--tok-reg);font-weight:700}.tok-num{color:var(--tok-num);font-weight:700}.tok-label{color:var(--tok-label);font-weight:700}.tok-size{color:var(--tok-size)}.tok-punct{color:var(--tok-punct)}.tok-comment{color:var(--tok-comment);font-style:italic}.tok-slot{display:inline-block}.slot-empty{border-bottom:3px solid var(--faint);min-width:140px;color:var(--faint);text-align:center;line-height:1.3;display:inline-block}.slot-filled{background:var(--blue-l);color:var(--blue-t);border:2px solid var(--blue-b);border-radius:8px;padding:0 10px;line-height:1.4;display:inline-block}.stepper{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;margin-top:6px;display:grid}.stepper.is-compact .code{font-size:15px}.stepper-code{min-width:0}.stepper-side{flex-direction:column;gap:10px;display:flex}.stepper-controls{grid-column:1/-1;align-items:center;gap:8px;display:flex}.stepper-count{text-align:center;color:var(--faint);flex:1;font-size:14px}.stepper-error{background:var(--red-l);color:var(--red-t);border-radius:12px;margin-top:10px;padding:10px 14px;font-weight:700}.regs{flex-direction:column;gap:6px;display:flex}.reg{border:2px solid var(--line);border-radius:12px;grid-template-columns:46px 1fr auto;align-items:baseline;gap:8px;padding:6px 12px;transition:border-color .2s,background .2s;display:grid}.reg-name{font-family:var(--mono);color:var(--blue-t);font-size:14px;font-weight:700}.reg-val{font-family:var(--mono);font-size:20px;font-weight:700;display:inline-block}.reg-hex{font-family:var(--mono);color:var(--faint);font-size:12px}.reg.is-changed{border-color:var(--gold);background:var(--gold-l)}.reg.is-changed .reg-val{animation:.35s ease-out bump}@keyframes bump{40%{color:var(--orange);transform:scale(1.25)}}.flags{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.flag{border:2px solid var(--line);text-align:center;font-family:var(--mono);color:var(--faint);border-radius:10px;justify-content:center;gap:6px;padding:4px 0;font-size:13px;display:flex}.flag.is-on{border-color:var(--green);background:var(--green-l);color:var(--green-t)}.flag.is-changed{animation:.35s ease-out bump}.mem{border:2px solid var(--line);font-family:var(--mono);border-radius:12px;padding:8px 10px;font-size:13px}.mem-title{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;font-family:Nunito,sans-serif;font-size:12px;font-weight:800}.mem-row{border-radius:6px;align-items:center;gap:10px;padding:2px 4px;display:flex}.mem-row.is-top{background:var(--blue-l)}.mem-addr{color:var(--faint)}.mem-bytes{gap:4px;display:flex}.mem-byte{background:var(--bg2);border-radius:4px;padding:0 3px}.mem-byte.is-changed{background:var(--mem-changed)}.mem-val{margin-left:auto;font-weight:700}.mem-tag{color:var(--blue);font-weight:700}.mem-empty{color:var(--faint)}.lesson{flex-direction:column;min-height:100vh;display:flex}.lesson-top{align-items:center;gap:16px;width:100%;max-width:1040px;margin:0 auto;padding:28px 24px 8px;display:flex}.progress{background:var(--line);border-radius:99px;flex:1;height:16px;position:relative}.progress-fill{background:var(--green);border-radius:99px;height:100%;transition:width .4s cubic-bezier(.3,1.4,.6,1);position:relative}.progress-shine{background:#ffffff4d;border-radius:99px;height:4px;position:absolute;top:4px;left:10px;right:10px}.combo{color:var(--orange);letter-spacing:.8px;font-size:13px;font-weight:900;animation:.3s ease-out pop-up;position:absolute;top:-22px;left:0}@keyframes pop-up{0%{opacity:0;transform:translateY(6px)}}.lesson-hearts{color:var(--red);align-items:center;gap:6px;font-size:18px;font-weight:900;display:flex}.lesson-body{flex:1;width:100%;max-width:720px;margin:0 auto;padding:24px 24px 180px;animation:.25s ease-out slide-in}@keyframes slide-in{0%{opacity:0;transform:translate(24px)}}.lesson-foot{border-top:2px solid var(--line);background:var(--page);z-index:30;position:fixed;bottom:0;left:0;right:0}.lesson-foot.is-correct{background:var(--green-l);color:var(--green-t);border-color:#0000}.lesson-foot.is-wrong{background:var(--red-l);color:var(--red-t);border-color:#0000}.lesson-foot-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1040px;min-height:140px;margin:0 auto;padding:24px;display:flex}.lesson-foot.is-correct .foot-msg,.lesson-foot.is-wrong .foot-msg{animation:.2s ease-out pop-up}.foot-msg{align-items:center;gap:16px;min-width:0;display:flex}.foot-icon{background:var(--page);border-radius:50%;flex-shrink:0;place-items:center;width:72px;height:72px;display:grid}.foot-title{font-size:24px;font-weight:900}.foot-answer{margin-top:2px;font-size:17px}.foot-answer b{font-family:var(--mono)}.foot-note{max-width:560px;margin-top:4px;font-size:15px;font-weight:600}.answer-code{white-space:pre;vertical-align:top;color:inherit;background:var(--answer-bg);border-color:#0000;display:inline-block}.foot-dots{gap:8px;display:flex}.foot-dots i{background:var(--line);border-radius:50%;width:12px;height:12px}.foot-dots i.on{background:var(--green)}.ex{flex-direction:column;gap:20px;display:flex}.ex-title{font-size:28px;line-height:1.25}.ex-hint{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:14px;font-weight:600;display:flex}.ex-bubble-row{align-items:center;gap:8px;display:flex}.ex-mascot{flex-shrink:0}.ex-bubble{border:2px solid var(--line);border-radius:16px;padding:14px 18px;font-size:21px;font-weight:800;line-height:1.35;position:relative}.ex-bubble:before{content:"";background:var(--page);border-left:2px solid var(--line);border-bottom:2px solid var(--line);width:14px;height:14px;position:absolute;top:50%;left:-9px;transform:translateY(-50%)rotate(45deg)}.init{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.init-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:13px;font-weight:800}.init-mem{display:contents}.init-chip{font-family:var(--mono);background:var(--blue-l);color:var(--blue-t);border-radius:10px;padding:3px 10px;font-size:15px}.options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.options.is-wide{grid-template-columns:1fr}.option{border:2px solid var(--line);border-radius:var(--radius);background:var(--page);text-align:left;border-bottom-width:4px;align-items:center;gap:14px;padding:14px 16px;font-size:18px;font-weight:700;transition:background .1s,border-color .1s,transform 50ms;display:flex}.option:hover:not(:disabled){background:var(--bg2)}.option:active:not(:disabled){border-bottom-width:2px;margin-bottom:2px;transform:translateY(2px)}.option.is-mono .option-text,.option.is-mono{font-family:var(--mono)}.option-key{border:2px solid var(--line);width:30px;height:30px;color:var(--faint);border-radius:8px;flex-shrink:0;place-items:center;font-family:Nunito,sans-serif;font-size:14px;display:grid}.option.is-selected{border-color:var(--blue-b);background:var(--blue-l);color:var(--blue-t)}.option.is-selected .option-key{border-color:var(--blue-b);color:var(--blue-t)}.option.is-right{border-color:var(--green-b);background:var(--green-l);color:var(--green-t)}.option.is-wrong{border-color:var(--red-b);background:var(--red-l);color:var(--red-t)}.option.is-dim{opacity:.5}.option:disabled{cursor:default}.answer-input{align-items:center;gap:14px;display:flex}.answer-label{font-family:var(--mono);color:var(--blue-t);min-width:64px;font-size:20px;font-weight:700}.input{border:2px solid var(--line);background:var(--bg2);font-family:var(--mono);border-radius:14px;outline:0;flex:1;padding:12px 16px;font-size:18px;font-weight:700}.input:focus{border-color:var(--blue-b);background:var(--page)}.input-big{padding:14px 18px;font-size:22px}.code-input{resize:vertical;line-height:1.6}.reg-inputs{flex-direction:column;gap:12px;display:flex}.flag-toggles{flex-wrap:wrap;gap:14px;display:flex}.flag-toggle{border:2px solid var(--line);border-radius:var(--radius);background:var(--page);width:110px;font-family:var(--mono);border-bottom-width:4px;flex-direction:column;align-items:center;gap:4px;padding:12px 0;display:flex}.flag-toggle-name{color:var(--muted);font-size:16px}.flag-toggle-val{color:var(--faint);font-size:34px;font-weight:700}.flag-toggle.is-on{border-color:var(--blue-b);background:var(--blue-l)}.flag-toggle.is-on .flag-toggle-val{color:var(--blue-t)}.flag-toggle.is-right{border-color:var(--green-b);background:var(--green-l)}.flag-toggle.is-wrong{border-color:var(--red-b);background:var(--red-l)}.build-answer{background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 56px, var(--line) 56px, var(--line) 58px);flex-wrap:wrap;align-content:flex-start;gap:8px;min-height:120px;padding:10px 0;display:flex}.build-answer.is-lines{background:var(--surface-2);border:2px dashed var(--line);border-radius:var(--radius);flex-flow:column;padding:12px}.build-placeholder{color:var(--faint);align-self:center;margin:auto;font-weight:600}.build-bank{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.build-bank.is-lines{flex-direction:column;align-items:stretch}.chip-slot{background:var(--line);border-radius:14px;display:inline-flex}.chip{border:2px solid var(--line);background:var(--page);font-family:var(--mono);border-bottom-width:4px;border-radius:14px;padding:9px 16px;font-size:18px;font-weight:700;animation:.15s ease-out pop-up}.chip-line{text-align:left;width:100%}.chip.is-used{visibility:hidden}.chip:disabled{cursor:default}.match{grid-template-columns:1fr 1fr;gap:16px;display:grid}.match-col{flex-direction:column;gap:12px;display:flex}.match-item{justify-content:center;min-height:60px}.match-item.is-done{opacity:.35;border-color:var(--line);background:var(--bg2)}.shake{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.concept-tag{color:var(--purple);letter-spacing:1px;font-size:14px;font-weight:900}.concept-head{align-items:flex-start;gap:18px;display:flex}.concept-text{flex:1}.concept-text .ex-title{margin-bottom:10px}.complete{flex-direction:column;min-height:100vh;display:flex}.complete-inner{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.complete-title{color:var(--gold);text-shadow:0 2px #e5a500;font-size:34px}.complete-sub{color:var(--muted);margin:0}.stat-cards{gap:14px;margin-top:12px;display:flex}.stat-card{border:2px solid;border-radius:16px;width:140px;animation:.4s ease-out both pop-up;overflow:hidden}.stat-card:nth-child(2){animation-delay:.1s}.stat-card:nth-child(3){animation-delay:.2s}.stat-card-label{color:#fff;letter-spacing:.8px;padding:4px 0 2px;font-size:13px;font-weight:900}.stat-card-body{background:var(--page);border-radius:13px;justify-content:center;align-items:center;gap:6px;padding:14px 0;font-size:22px;font-weight:900;display:flex}.complete-gems{color:var(--blue);align-items:center;gap:6px;margin-top:6px;display:flex}.complete-foot{border-top:2px solid var(--line);justify-content:flex-end;width:100%;max-width:1040px;margin:0 auto;padding:24px;display:flex}.streak-big{color:var(--orange);text-shadow:0 5px #ffc46b;font-size:110px;font-weight:900;line-height:1}.streak-big-label{color:var(--orange);margin-top:-8px;font-size:30px;font-weight:900}.streak-week-card{border:2px solid var(--line);border-radius:var(--radius);width:380px;max-width:100%;margin-top:10px;padding:16px}.streak-week-card p{color:var(--muted);margin:12px 0 0;font-weight:600}.confetti{pointer-events:none;z-index:50;width:100vw;height:100vh;position:fixed;inset:0}.pop-in{animation:.5s cubic-bezier(.3,1.6,.6,1) pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}}.mascot{object-fit:contain;-webkit-user-select:none;user-select:none}.modal-backdrop{background:var(--backdrop);z-index:100;place-items:center;padding:20px;animation:.15s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--page);border-radius:20px;width:420px;max-width:100%;max-height:90vh;padding:28px;animation:.2s ease-out pop-up;position:relative;overflow-y:auto}.modal.is-wide{width:860px}.modal-close{position:absolute;top:14px;right:14px}.modal-center{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.modal-center p{color:var(--muted);margin:0 0 8px;font-weight:600}.modal-title{margin-bottom:6px;font-size:24px}.modal-sub{color:var(--muted);margin:0 0 14px;font-weight:600}.tip{border-top:2px solid var(--line);padding:18px 0 10px}.tip h3{margin-bottom:8px}.guide-head{color:#fff;border-radius:20px 20px 0 0;margin:-28px -28px 20px;padding:24px 28px}@media (width<=1160px){.app{grid-template-columns:88px minmax(0,1fr)}.rightbar,.nav-label{display:none}.logo{padding:0 0 20px;font-size:0}.logo:before{content:"a";place-items:center;font-size:40px;display:grid}.nav-item{justify-content:center;padding:8px}.topbar{z-index:20;background:var(--page);border-bottom:2px solid var(--line);grid-area:1/2;padding:8px 24px;display:block;position:sticky;top:0}.main{grid-area:2/2}.sidebar{grid-row:1/span 2}.unit-banner{top:72px}}@media (width<=720px){.app{grid-template-columns:1fr;padding-bottom:72px}.sidebar{border-right:0;border-top:2px solid var(--line);background:var(--page);z-index:40;flex-direction:row;justify-content:space-around;height:auto;padding:8px;position:fixed;inset:auto 0 0}.logo,.theme-toggle{display:none}.topbar,.main{grid-column:1}.main{padding:16px 16px 60px}.path-mascot,.guide-btn span{display:none}.stepper,.options{grid-template-columns:1fr}.ex-title{font-size:22px}.ex-bubble{font-size:17px}.ex-mascot{width:64px;height:64px}.lesson-foot-inner{flex-direction:column;align-items:stretch;min-height:0}.foot-icon{width:48px;height:48px}.stat-cards{flex-direction:column}.stats-grid,.badges{grid-template-columns:1fr}.concept-head .mascot{width:72px;height:72px}}.boxes{flex-wrap:wrap;justify-content:center;gap:14px;padding:10px 0;display:flex}.box{background:var(--blue-l);border:2px solid var(--blue-b);border-bottom-width:6px;border-radius:18px;flex-direction:column;align-items:center;width:104px;padding:12px 0 10px;animation:.45s cubic-bezier(.3,1.6,.6,1) both pop-in;display:flex}.box:nth-child(2){animation-delay:80ms}.box:nth-child(3){animation-delay:.16s}.box:nth-child(4){animation-delay:.24s}.box-val{font-family:var(--mono);color:var(--blue-t);font-size:30px;font-weight:700}.box-name{font-family:var(--mono);color:var(--blue);font-weight:700}
