@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/nunito-cyrillic-ext-500-normal-BooqzoBf.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-500-normal-ryWF3qTI.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:500;src:url(/assets/nunito-cyrillic-500-normal-C7KGZCzc.woff2)format("woff2"),url(/assets/nunito-cyrillic-500-normal-CsSUaxYY.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:500;src:url(/assets/nunito-vietnamese-500-normal-BpqpEYcO.woff2)format("woff2"),url(/assets/nunito-vietnamese-500-normal-9ShSsgIA.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:500;src:url(/assets/nunito-latin-ext-500-normal-DpF2BH_v.woff2)format("woff2"),url(/assets/nunito-latin-ext-500-normal-CVNQN0KE.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:500;src:url(/assets/nunito-latin-500-normal-EugFkASW.woff2)format("woff2"),url(/assets/nunito-latin-500-normal-B5klmw3Q.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: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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)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:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQAAAAQtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVDYAdBEICoRkg3gLIAABNgIkAzoEIAWFIgeBFAwHG1wHKI7DuPEacDIiFJ/g+f47+1/7dIcdXTlD8DKqmcw4eIC+AOCPf6+qiWq3h6+aSCLNJDnkqX9Xl+rv/6dSBcwSBCzEoVqxNbp5SqPMYdKBQhBq1dK9ggSsgYUoGnHOqttMECvWjIJfPA8cjQAuAEAQLAiClASc7M6OkfbO/nHs6ACmCYBxZXKP4s9uXIHECh4AdEhX0yIHC6jzgAb65sshStMMChwEfWVjZe8Anset/6H93x8jOyL5fuS67z4Dlam+BPyH/pV2FLCZAOnU0XPzCQGiJ7AkXgSFhqDEB4AAoAAN2ExDgM10joCNfDQUbvxaXM8LovT79D9MEyYU9+q/myT9p/m8uWi2mLJBPbzcih2wYIPzBDFNvABt315OXwy8BaRnbo5hXsOS5taknX4FguiaZnd4vQ7HxnBnm3SPYXHrQbclvOgyDhsHnZPO8f3G5I2fbr34Y7+hzRozVzyw5bKHdu03plXgvE9FO/Uz4/xPUKd8/PHk+R+JODnlg1lDTv3Qed77zDNqRszaqHUQT248kUPGzBXXXHGFnHrVVdft2m8c4PhpjB+/QEqMU54xruc6m3w8++XNXx4sya9rMvNq88m6X1zeOMlRuQ+/nvNw4+ZrCt58yDdSVOQdfoi/jc/ePfZY+1taYaH21FH2Y4fGG+RVNJkIN4SSiWj3ZKGG1oojoYr2SNWFVbHvY1XX1PR+H6y+oKrqgmryqj1UXnmk5cKWysPM3R4Uh5svYo6saAtU3V297+d91U/X/frzLvUdqiqfruKvhx5+OeOYxbHI7SenQum+PTw/fvRLGQ/jiufOn3/S+vlsfGn9h4Zb96fekZ7xRups68FhVCYCWHHvZVIPxjanr3NABSALqkR7FMBOulF9ScHvV3np+6pK/eEzRx877K3/z65pvwN89eGtV3Ly5ft/25ngaiSYDVYUAAKvIKimMdLO6YBQEY+aZpbXZ5WinTBQXwAA4LMAXuNUBPCSTmMfjd6jpNLNjbToDuBpaR9AoTBbUeERO2o0erNeR6KFne5HK/nOQA+VBtFnt1LtBj6pJQIutnLwipz/Ix9OYNSqZQEreiQELIkKmRIRNWdewpiIZVGtVi0J6xWR0ComIGpFnN+AVStWzUtIWBNXq0iRuJCYqDUJcYXiopYUWhUzp8iQTv20dtO84Agw6YrhuOijfqUKlSpRAruvTq9WdeQw2vs5SUsCYhdt7icIt1nNkseKPZzgV6q4FfYbH4ZIBcThYTEgLIgIkYRbJLl7/rks+ObZDxydE8W9LymoUMiqZUVbtVv0GNkcispQM0IpEG7sBdK9IYr6aKKLRaxiQxO7OMQphrUlGIscFbElV6LF5S0dQN5RbRoUdRbWWOYCy8sB83RxS7FqG/UEQslE5Nsd5v93uF3T0bLiypD/uJhn3q9fCAA=)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:600;src:url(/assets/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.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:600;src:url(/assets/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.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:600;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.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:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.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:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.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{--font-ui:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--font-code:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ground:#f6f2ea;--panel:#fff;--panel-2:#fbf8f3;--text:#1f2328;--text-2:#3c4046;--muted:#6b6f76;--faint:#b8b2a7;--border:#e7e0d4;--grid-dot:#e1dace;--shadow-sm:0 1px 2px #1f232814;--shadow-md:0 4px 14px #1f23281a;--shadow-lg:0 24px 60px #1f232838;--accent:#d9663a;--accent-fill:#ba4e26;--accent-text:#ba4e26;--accent-deep:#a33a1e;--accent-hover:#9e401e;--accent-soft:#fcebe2;--accent-shadow:0 2px 6px #d9663a59;--on-accent:#fff;--step:#f5c451;--step-soft:#fff3c7;--step-pill:#fff8e3;--step-text:#7a5a00;--select:#8c6fbf;--select-soft:#efe9fa;--select-text:#5a3f96;--ok:#3e9c6e;--ok-text:#2c7a50;--error:#c2412d;--error-soft:#fbe9e5;--error-text:#a3321f;--live-bg:#e2efe6;--live-text:#2f6b4a;--live-dot:#3e9c6e;--dark-card:#1f2328;--dark-card-text:#fff;--dark-card-muted:#c9ccd1;--dark-card-input:#2b3037;--cat-logic:#5b7db1;--cat-loops:#4f9a6a;--cat-math:#8c6fbf;--cat-variables:#c98b4a;--cat-text:#c4688a;--cat-io:#3e9c8e;--cat-lists:#7a8ca8;--chip-logic-bg:#e3ecf7;--chip-logic-fg:#2f5a9c;--chip-loops-bg:#e2f1e7;--chip-loops-fg:#2e6b45;--chip-math-bg:#ede6f7;--chip-math-fg:#6b4fa6;--chip-variables-bg:#f6eadb;--chip-variables-fg:#8a5a22;--chip-text-bg:#f7e4ec;--chip-text-fg:#8e3a5c;--chip-io-bg:#e0f0ec;--chip-io-fg:#1a6b58;--syn-keyword:#7c5cbf;--syn-fn:#25709f;--syn-number:#b3541e;--syn-string:#2e7d5b;--syn-comment:#6f747b;--syn-box:#b8b2a7;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--ground:#15171b;--panel:#1c1f24;--panel-2:#22262d;--text:#ece8e1;--text-2:#d3cfc8;--muted:#9a9fa8;--faint:#5e636b;--border:#2e333b;--grid-dot:#2b3037;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 14px #00000059;--shadow-lg:0 24px 60px #0000008c;--accent:#e0703f;--accent-fill:#ba4e26;--accent-text:#e0703f;--accent-deep:#ec8558;--accent-hover:#a8461f;--accent-soft:#3a2419;--accent-shadow:0 2px 8px #e0703f59;--step:#f5c451;--step-soft:#3a3016;--step-pill:#2a2414;--step-text:#f5c451;--select:#a98ae0;--select-soft:#2c2640;--select-text:#c9b5f2;--ok:#5bb88a;--ok-text:#7fcca3;--error:#e0705c;--error-soft:#3a211c;--error-text:#f0937f;--live-bg:#183226;--live-text:#8fd3ad;--live-dot:#5bb88a;--dark-card:#2a2f37;--dark-card-text:#ece8e1;--dark-card-muted:#aeb3bb;--dark-card-input:#1c1f24;--chip-logic-bg:#1f2b3d;--chip-logic-fg:#9dbbe6;--chip-loops-bg:#1d3226;--chip-loops-fg:#8fd0a6;--chip-math-bg:#2a2340;--chip-math-fg:#c3adef;--chip-variables-bg:#3a2c1c;--chip-variables-fg:#e6b582;--chip-text-bg:#3a2230;--chip-text-fg:#eda7c3;--chip-io-bg:#19322e;--chip-io-fg:#86d3c4;--syn-keyword:#b69cff;--syn-fn:#6fb3e8;--syn-number:#f0a36b;--syn-string:#7cc49a;--syn-comment:#7d828a;--syn-box:#5e636b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-ui);color:var(--text);background:var(--ground);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;font-weight:500}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:var(--accent-text)}a:hover{color:var(--accent-hover)}code,kbd,pre{font-family:var(--font-code)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.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}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.inline-code{font-family:var(--font-code);background:var(--ground);border-radius:5px;padding:1px 5px;font-size:.93em}.code-block{font-family:var(--font-code);background:var(--ground);white-space:pre;border-radius:8px;margin:0 0 8px;padding:8px 10px;font-size:.9em;line-height:1.45;overflow-x:auto}.btn{border:1px solid var(--border);background:var(--panel);height:36px;color:var(--text);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.btn:hover:not(:disabled){background:var(--panel-2)}.btn-primary{background:var(--accent-fill);color:var(--on-accent);box-shadow:var(--accent-shadow);border:0;font-weight:800}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-dark{background:var(--dark-card);color:var(--dark-card-text);border:0;font-weight:800}.btn-dark:hover:not(:disabled){background:#33383f}.btn-lg{height:44px;padding:0 20px;font-size:15px}.btn-sm{height:28px;color:var(--muted);border-radius:8px;padding:0 10px;font-size:12px}.icon-btn{width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.dots{gap:3px;display:inline-flex}.dots i{background:var(--border);border-radius:50%;width:6px;height:6px;display:block}.dots i.on{background:var(--accent)}.chip{border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.chip-logic{background:var(--chip-logic-bg);color:var(--chip-logic-fg)}.chip-loops{background:var(--chip-loops-bg);color:var(--chip-loops-fg)}.chip-math{background:var(--chip-math-bg);color:var(--chip-math-fg)}.chip-variables{background:var(--chip-variables-bg);color:var(--chip-variables-fg)}.chip-text{background:var(--chip-text-bg);color:var(--chip-text-fg)}.chip-io{background:var(--chip-io-bg);color:var(--chip-io-fg)}.segmented{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;align-items:center;gap:6px;padding:4px;display:flex}.segmented button{height:28px;color:var(--muted);background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:12px;font-weight:700}.segmented button[aria-pressed=true]{background:var(--panel);box-shadow:var(--shadow-sm);color:var(--text)}.status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.center-page{min-height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.toast{z-index:50;background:var(--dark-card);color:var(--dark-card-text);box-shadow:var(--shadow-md);border-radius:10px;padding:10px 16px;font-size:13px;font-weight:700;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.topbar{background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:16px;height:56px;padding:0 20px;display:flex}.brand{color:var(--text);align-items:center;gap:10px;text-decoration:none;display:flex}.brand:hover{color:var(--text)}.brand-mark{background:var(--accent);color:#fff;border-radius:9px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.brand-name{letter-spacing:-.01em;font-size:17px;font-weight:800}.topbar-divider{background:var(--border);width:1px;height:24px}.topbar-spacer{flex-grow:1}.crumbs{color:var(--muted);align-items:center;gap:8px;min-width:0;font-weight:600;display:flex}.crumb,.crumb-current{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.crumb-current{color:var(--text);text-overflow:ellipsis;overflow:hidden}.crumb-sep{color:var(--faint)}.save-status{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.save-status .ok{color:var(--ok)}.editor{background:var(--ground);flex-direction:column;height:100%;display:flex}.editor-body{flex-grow:1;min-height:0;display:flex}.side-panel{width:var(--side-w,320px);background:var(--panel);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;min-height:0;display:flex}.exercise-scroll{flex-direction:column;flex-grow:1;gap:14px;padding:20px 20px 16px;display:flex;overflow-y:auto}.exercise-eyebrow{align-items:center;gap:8px;display:flex}.exercise-title{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:800;line-height:1.2}.exercise-statement{color:var(--text-2);font-size:14px;line-height:1.55}.exercise-statement p{margin:0 0 8px}.exercise-statement p:last-child{margin-bottom:0}.solved-badge{color:var(--ok-text);align-items:center;gap:6px;margin:0;font-size:13px;font-weight:700;display:inline-flex}.examples{flex-direction:column;gap:8px;display:flex}.examples-head{flex-direction:column;gap:2px;display:flex}.examples-note{color:var(--text-2);font-size:12.5px;line-height:1.4}.example-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.example-card{background:var(--ground);border:1px solid #0000;border-radius:10px;flex-direction:column;gap:8px;min-width:0;padding:10px 12px;display:flex}.example-card.example-ok{border-color:var(--ok)}.example-card.example-bad{border-color:var(--error);background:var(--error-soft)}.example-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.example-name{font-size:12.5px;font-weight:800}.example-verdict{align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.example-field{flex-direction:column;gap:2px;min-width:0;display:flex}.example-card .eyebrow{letter-spacing:.06em;color:var(--text-2)}.example-value{font-family:var(--font-code);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600;line-height:1.45}.hint-blocks{flex-direction:column;gap:6px;display:flex}.hint-blocks .eyebrow{letter-spacing:.06em;font-size:12px}.chips{flex-wrap:wrap;gap:6px;display:flex}.editor-center{flex-direction:column;flex-grow:1;min-width:0;display:flex}.workspace-area{flex-grow:1;min-height:0;position:relative}.blockly-host{position:absolute;inset:0}.code-panel{width:var(--code-w,400px);background:var(--panel);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;min-height:0;display:flex;overflow:hidden}.code-tabs{border-bottom:1px solid var(--border);align-items:center;gap:2px;min-width:0;padding:10px 12px 0;display:flex}.code-tabs>.icon-btn{flex-shrink:0}.code-tab{white-space:nowrap;height:36px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex-shrink:0;padding:0 12px;font-size:13px;font-weight:700}.code-tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--text);font-weight:800}.code-tab:hover{color:var(--text)}.code-body{flex-grow:1;min-height:0;position:relative}.code-view{position:absolute;inset:0}.code-empty{color:var(--muted);margin:0;padding:20px;line-height:1.5}.code-footer{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.code-footer:empty{display:none}.line-card{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.line-card p{color:var(--text-2);margin:0;font-size:12.5px;line-height:1.5}.line-card code{overflow-wrap:anywhere;font-size:12px}.line-card-badge{color:#1f2328;background:var(--step);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.line-card-badge.select{background:var(--select);color:#fff}.code-note{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.status-pill{z-index:5;background:var(--step-pill);border:1px solid var(--step);max-width:calc(100% - 160px);color:var(--step-text);pointer-events:none;border-radius:10px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:700;display:flex;position:absolute;top:12px;left:124px}.status-pill .status-dot{width:8px;height:8px;color:var(--step)}.status-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.step-bar{z-index:5;background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:12px;align-items:center;gap:6px;padding:6px;display:flex;position:absolute;bottom:16px;right:20px}.step-icon{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;display:flex}.step-icon:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.step-main{background:var(--step);color:#1f2328;border:0;border-radius:9px;align-items:center;gap:8px;height:36px;padding:0 14px;font-size:13px;font-weight:800;display:flex}.step-main:hover:not(:disabled){filter:brightness(.96)}.step-divider{background:var(--border);width:1px;height:22px}.speed{color:var(--muted);align-items:center;gap:8px;padding:0 8px 0 6px;font-size:12px;font-weight:700;display:flex}.speed input[type=range]{appearance:none;background:linear-gradient(to right, var(--accent) 0 var(--fill,40%), var(--border) var(--fill,40%) 100%);cursor:pointer;border-radius:2px;width:84px;height:4px}.speed input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--panel);border:2px solid var(--accent);border-radius:50%;width:16px;height:16px}.speed input[type=range]::-moz-range-thumb{background:var(--panel);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px}.console{background:var(--panel);border-top:1px solid var(--border);flex-shrink:0;height:208px;display:flex}.console-input{border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;width:220px;padding:14px 16px;display:flex}.console-input textarea{resize:none;border:1px solid var(--border);font-family:var(--font-code);background:var(--panel-2);color:var(--text);border-radius:10px;flex-grow:1;padding:10px 12px;font-size:13px}.console-hint{color:var(--muted);font-size:11px;font-weight:600}.console-output{flex-direction:column;flex-grow:1;gap:8px;min-width:0;padding:14px 16px;display:flex}.console-head{align-items:center;gap:12px;min-height:28px;display:flex}.console-status{align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.tone-step{color:var(--step-text)}.tone-step .status-dot{color:var(--step)}.tone-ok{color:var(--ok-text)}.tone-error{color:var(--error-text)}.tone-muted{color:var(--muted)}.tone-accent{color:var(--accent)}.console-box{background:var(--panel-2);border:1px solid var(--border);min-height:0;font-family:var(--font-code);color:var(--text-2);border-radius:10px;flex-direction:column;flex-grow:1;padding:10px 12px;font-size:13px;line-height:1.7;display:flex;overflow-y:auto}.console-box>*{white-space:pre-wrap;overflow-wrap:anywhere}.c-out{color:var(--text)}.c-trace{color:var(--muted)}.c-faint{color:var(--faint)}.c-error{color:var(--error-text)}.c-link{font:inherit;color:var(--accent-text);text-align:left;background:0 0;border:0;align-self:flex-start;padding:0;font-weight:600}.c-link:hover{text-decoration:underline}.c-prompt{color:var(--faint);gap:8px;display:flex}.c-prompt input{border:0;border-bottom:1px dashed var(--faint);font-family:var(--font-code);color:var(--text);background:0 0;outline:none;flex-grow:1;font-size:13px}.select-pill{background:var(--select-soft);border-color:var(--select);color:var(--select-text)}.select-pill .status-dot{color:var(--select)}.explain-code{width:100%;height:40px}.accent-icon{color:var(--accent)}.resize-handle{z-index:6;cursor:col-resize;touch-action:none;flex-shrink:0;width:8px;margin:0 -4px;position:relative}.resize-handle:after{content:"";background:0 0;width:2px;transition:background .15s;position:absolute;top:0;bottom:0;left:3px}.resize-handle:hover:after,.resize-handle:focus-visible:after{background:var(--accent)}.resize-handle:focus-visible{outline:none}.code-tablist{scrollbar-width:none;gap:2px;min-width:0;display:flex;overflow-x:auto}.code-tablist::-webkit-scrollbar{display:none}@media (max-width:1366px){.code-tabs{padding:10px 8px 0}.code-tab{padding:0 9px}}@media (max-width:1180px){.topbar{gap:10px;padding:0 14px}.code-tabs{padding:10px 6px 0}.code-tab{padding:0 7px;font-size:12.5px}.console-input{width:170px}.participant-name{display:none}.participant{padding:0 6px 0 3px}}.code-toggle{display:none}@media (max-width:1180px){.code-toggle{display:inline-flex}.code-toggle.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.editor-body.narrow{position:relative}.editor-body.narrow .side-panel{width:clamp(240px, 32vw, var(--side-w,320px))}.editor-body.narrow>.resize-handle:last-of-type,.editor-body.narrow .code-panel{display:none}.editor-body.narrow.code-open .code-panel{z-index:30;width:min(var(--code-w,400px), 60vw);box-shadow:var(--shadow-md);display:flex;position:absolute;top:0;bottom:0;right:0}}@media (max-width:900px){.editor-body.narrow .side-panel{width:clamp(220px,38vw,300px)}.console-input{width:130px}.topbar{flex-wrap:wrap;row-gap:8px;height:auto;min-height:56px;padding:8px 14px}.topbar .crumbs{flex-shrink:1;flex-basis:100%;order:-1;overflow:hidden}.topbar .crumbs>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mode-btn{padding:0 8px;font-size:12px}.code-toggle{padding:0 10px}}.mode-switch{border:1px solid var(--border);background:var(--panel-2);border-radius:999px;padding:2px;display:inline-flex}.mode-btn{height:26px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:0 12px;font-size:12.5px;font-weight:800}.mode-btn.on{background:var(--panel);color:var(--text);box-shadow:var(--shadow-sm,0 1px 2px #0000001f)}.editor-body.typing .workspace-area{display:none}.code-stage{flex-grow:1;min-height:0;display:flex;position:relative}.code-stage .code-panel{border-left:0;flex:auto;width:auto;min-width:0}.code-stage .step-bar,.code-stage .status-pill,.code-stage .select-pill{z-index:5}.code-mistake{background:var(--error-soft);color:var(--error-text);border-radius:10px;margin:0;padding:8px 12px;font-size:12.5px;font-weight:700}.blockly-host .blocklyToolbox{border-right:1px solid var(--border);width:108px;padding:14px 10px;background:var(--panel-2)!important}.blockly-host .blocklyToolboxCategoryContainer{margin-bottom:6px}.blockly-host .blocklyToolboxCategory{height:40px;color:var(--text-2);border-radius:10px;align-items:center;display:flex;background:0 0!important;border:0!important;padding:0 8px!important}.blockly-host .blocklyToolboxCategory:hover{background:var(--panel)!important}.blockly-host .blocklyToolboxSelected{box-shadow:var(--shadow-sm);background:var(--panel)!important}.blockly-host .blocklyTreeRowContentContainer{align-items:center;display:flex}.blockly-host .blocklyToolboxCategoryLabel{font-family:var(--font-ui);white-space:normal;font-size:12px;font-weight:700;line-height:1.15;color:var(--text-2)!important}.blockly-host .blocklyToolboxSelected .blocklyToolboxCategoryLabel{color:var(--text)!important}.blockly-host .pc-cat-icon{border-radius:3px;flex-shrink:0;margin-right:8px;visibility:visible!important;background-image:none!important;width:10px!important;height:10px!important;display:inline-block!important}.pc-cat-logic{background-color:var(--cat-logic)}.pc-cat-loops{background-color:var(--cat-loops)}.pc-cat-math{background-color:var(--cat-math)}.pc-cat-variables{background-color:var(--cat-variables)}.pc-cat-text{background-color:var(--cat-text)}.pc-cat-io{background-color:var(--cat-io)}.pc-cat-lists{background-color:var(--cat-lists)}.blockly-host .blocklyFlyoutBackground{stroke:var(--border)}.blockly-host .pc-flyout-label .blocklyFlyoutLabelText,.blockly-host .blocklyFlyoutLabelText{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800;fill:var(--muted)!important}.blockly-host .blocklyFlyoutButton .blocklyText{font-family:var(--font-ui);font-weight:700}.blockly-host .blocklyText,.blockly-host .blocklyHtmlInput{font-family:var(--font-ui)!important}.blockly-host .blocklyHighlighted>.blocklyPath,.blockly-host .blocklySelected>.blocklyPath{filter:none!important}.blockly-host .blocklySelected>.blocklyPath{stroke:var(--select)!important;stroke-width:3px!important}.blockly-host .blocklyHighlighted>.blocklyPath{stroke:var(--step)!important;stroke-width:4px!important}.blockly-host .blocklyZoom>image{opacity:.35}.blockly-host .blocklyMainBackground{stroke:none}.blocklyWidgetDiv .blocklyMenu,.blocklyDropDownDiv{font-family:var(--font-ui)!important}.blocklyTooltipDiv{border-radius:8px;font-family:var(--font-ui)!important;padding:6px 8px!important}.home{background:var(--ground);min-height:100%}.home-topbar{z-index:10;padding:0 32px;position:sticky;top:0}.home-nav{align-items:center;gap:4px;display:flex}.home-nav a{height:36px;color:var(--muted);border-radius:9px;align-items:center;padding:0 12px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.home-nav a:hover{color:var(--text)}.home-nav a[aria-current=page]{background:var(--ground);color:var(--text);font-weight:800}.home-main{gap:32px;max-width:1440px;margin:0 auto;padding:36px 32px 48px;display:flex}.home-left{flex-direction:column;flex-grow:1;gap:28px;min-width:0;display:flex}.home-right{flex-direction:column;flex-shrink:0;gap:16px;width:340px;display:flex}.card{background:var(--panel);border:1px solid var(--border);border-radius:16px}.continue-card{align-items:center;gap:28px;padding:24px 28px;display:flex}.continue-text{flex-direction:column;flex-grow:1;gap:10px;min-width:0;display:flex}.continue-text h1{letter-spacing:-.01em;margin:0;font-size:26px;font-weight:800}.welcome-text{max-width:560px;color:var(--text-2);margin:0;line-height:1.5}.continue-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13px;font-weight:600;display:flex}.meta-dot{background:var(--faint);border-radius:50%;width:4px;height:4px}.meta-run{color:var(--muted);align-items:center;gap:6px;display:flex}.meta-run .status-dot{width:8px;height:8px}.meta-run.tone-accent .status-dot{color:var(--accent)}.meta-run.tone-ok .status-dot{color:var(--ok)}.meta-run.tone-muted .status-dot{color:var(--faint)}.meta-run.tone-accent,.meta-run.tone-ok{color:var(--muted)}.continue-actions{align-items:center;gap:8px;margin-top:6px;display:flex}.continue-actions a{text-decoration:none}.continue-actions .btn-primary:hover{color:var(--on-accent)}.btn-lg{height:40px;font-size:13px}.mini-blocks{background-color:var(--panel-2);background-image:radial-gradient(var(--grid-dot) 1px, transparent 1px);border:1px solid var(--border);background-size:14px 14px;border-radius:12px;flex-direction:column;flex-shrink:0;gap:3px;width:300px;height:132px;padding:14px 16px;display:flex;overflow:hidden}.mini-block{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:3px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:5px 8px;font-size:10px;font-weight:700;overflow:hidden}.mini-hat{border-radius:6px 6px 3px 3px}.cat-logic{background:var(--cat-logic)}.cat-loops{background:var(--cat-loops)}.cat-math{background:var(--cat-math)}.cat-variables{background:var(--cat-variables)}.cat-text{background:var(--cat-text)}.cat-io{background:var(--cat-io)}.catalog{flex-direction:column;gap:14px;display:flex}.catalog-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.catalog-head h2{margin:0;font-size:18px;font-weight:800}.filter-tabs{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;gap:4px;padding:4px;display:flex}.filter-tabs button{height:30px;color:var(--muted);background:0 0;border:0;border-radius:7px;padding:0 12px;font-size:12.5px;font-weight:700}.filter-tabs button:hover{color:var(--text)}.filter-tabs button[aria-selected=true]{background:var(--dark-card);color:var(--dark-card-text);font-weight:800}.exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.exercise-card{color:var(--text);border-radius:14px;flex-direction:column;gap:10px;padding:18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.exercise-card:hover{color:var(--text);border-color:var(--faint);box-shadow:var(--shadow-sm)}.exercise-card.in-progress{border:2px solid var(--accent);padding:17px}.exercise-card-top{align-items:center;gap:8px;display:flex}.exercise-num{color:var(--muted);font-size:11px;font-weight:800}.badge-done{color:var(--ok-text);align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.badge-progress{color:var(--accent-text);font-size:12px;font-weight:800}.exercise-card-title{font-size:15px;font-weight:800}.exercise-card-summary{color:var(--muted);font-size:12.5px;font-weight:600;line-height:1.45}.catalog-foot{color:var(--muted);font-size:12.5px;font-weight:600}.link-btn{font:inherit;color:var(--muted);text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.link-btn:hover{color:var(--text)}.muted-text{color:var(--muted);margin:0}.join-card{background:var(--dark-card);color:var(--dark-card-text);border-radius:16px;flex-direction:column;gap:12px;padding:22px;display:flex}.join-card h2{margin:0;font-size:16px;font-weight:800}.join-card p{color:var(--dark-card-muted);margin:0;font-size:13px;font-weight:600;line-height:1.5}.join-card form{gap:8px;display:flex}.join-card input{min-width:0;height:44px;font-family:var(--font-code);letter-spacing:.14em;text-transform:uppercase;background:var(--dark-card-input);color:var(--dark-card-text);border:1px solid #3c4046;border-radius:10px;flex-grow:1;padding:0 14px;font-size:16px}.join-card input::placeholder{color:#6b6f76}.join-card .join-btn{height:44px;box-shadow:none;padding:0 16px}.join-card .join-error{color:#f0937f}.side-card{flex-direction:column;gap:12px;padding:20px 22px;display:flex}.side-card h2{margin:0;font-size:14px;font-weight:800}.side-card p{color:var(--muted);margin:0;font-size:12.5px;font-weight:600;line-height:1.5}.side-card-head{justify-content:space-between;align-items:center;display:flex}.new-btn{color:var(--text);gap:4px;height:30px;text-decoration:none}.new-btn:hover{color:var(--text)}.lang-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.lang-grid button{border:1px solid var(--border);background:var(--panel);border-radius:10px;height:40px;font-size:13px;font-weight:700}.lang-grid button:hover{background:var(--panel-2)}.lang-grid button[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent-deep);font-weight:800}.project-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.project-list li{background:var(--panel-2);border-radius:10px;align-items:center;display:flex}.project-list a{min-width:0;color:var(--text);flex-grow:1;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:800;text-decoration:none;display:flex}.project-title{text-overflow:ellipsis;white-space:nowrap;flex-grow:1;overflow:hidden}.project-time{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:700}.project-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.dot-0{background:var(--cat-loops)}.dot-1{background:var(--cat-math)}.dot-2{background:var(--cat-logic)}.dot-3{background:var(--cat-text)}.project-delete{opacity:0;margin-right:4px}.project-list li:hover .project-delete,.project-delete:focus-visible{opacity:1}.title-input{color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;max-width:320px;margin-left:-8px;padding:4px 8px;font-weight:700}.title-input:hover{border-color:var(--border)}.title-input:focus{border-color:var(--accent);background:var(--panel);outline:none}@media (max-width:1180px){.home-main{flex-direction:column}.home-right{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));width:auto;display:grid}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.home-main{gap:16px;padding:16px}.exercise-grid,.home-right{grid-template-columns:1fr}.home-nav{gap:12px}}.participants{border:1px solid var(--border);background:var(--panel-2);border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex}.participant{background:var(--panel);border-radius:999px;align-items:center;gap:6px;height:30px;padding:0 10px 0 3px;font-size:13px;font-weight:800;display:flex}.avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:800;display:flex}.participant-role{color:var(--muted)}.share-btn{border-color:var(--accent);color:var(--accent-text)}.share-btn:hover:not(:disabled){background:var(--accent-soft)}.live-banner{background:var(--live-bg);height:44px;color:var(--live-text);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:0 20px;font-size:13.5px;font-weight:700;display:flex}.live-dot{background:var(--live-dot);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--live-dot) 25%, transparent);border-radius:50%;animation:2s ease-in-out infinite live-pulse}@keyframes live-pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--live-dot) 10%, transparent)}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.live-code{font-family:var(--font-code);background:color-mix(in srgb, var(--live-text) 12%, transparent);border-radius:5px;padding:2px 6px;font-size:12px}.live-started{font-weight:700}.live-end{color:var(--live-text);border-color:color-mix(in srgb, var(--live-text) 30%, transparent);background:0 0}.view-only-pill{z-index:5;border:1px solid var(--border);background:var(--panel);height:34px;color:var(--muted);box-shadow:var(--shadow-sm);border-radius:10px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:700;display:flex;position:absolute;bottom:16px;left:124px}.view-only-pill:hover:not(:disabled){color:var(--text)}.live-updates{color:var(--muted);align-items:center;gap:10px;margin:0;font-size:13px;font-weight:700;line-height:1.4;display:flex}.activity-card{border:1px solid var(--border);background:var(--panel-2);border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.activity-card ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.activity-card li{color:var(--text-2);gap:10px;font-size:13px;line-height:1.4;display:flex}.activity-card time{font-family:var(--font-code);color:var(--faint);flex-shrink:0;padding-top:1px;font-size:12px}.activity-empty{color:var(--muted);margin:0;font-size:13px}.message-box{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:16px 20px 20px;display:flex}.message-row{gap:8px;display:flex}.message-row input{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;flex-grow:1;min-width:0;height:44px;padding:0 12px}.send-btn{background:var(--accent-fill);color:#fff;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.send-btn:hover:not(:disabled){background:var(--accent-hover)}.console.mirror .console-input textarea{color:var(--text-2)}.live-toasts{z-index:40;flex-direction:column;gap:10px;width:340px;display:flex;position:fixed;top:112px;right:20px}.live-toast{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:12px;align-items:center;gap:10px;padding:12px 12px 12px 16px;font-size:13px;font-weight:700;display:flex}.live-toast>span,.live-toast>div{flex-grow:1}.live-toast.message{border-left:3px solid var(--accent);align-items:flex-start}.live-toast p{margin:4px 0 0;font-weight:600;line-height:1.45}.modal-backdrop{z-index:60;background:#1f232859;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}:root[data-theme=dark] .modal-backdrop{background:#0000008c}.modal{background:var(--panel);width:100%;max-width:480px;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;gap:16px;padding:24px;display:flex}.share-dialog{max-width:520px;padding:26px 24px 24px}.modal-head{align-items:flex-start;gap:16px;display:flex}.modal-head>div{flex-grow:1}.modal h2{margin:0;font-size:20px;font-weight:800}.modal-head p{color:var(--muted);margin:4px 0 0;font-size:13.5px;font-weight:700;line-height:1.4}.modal-close{background:var(--panel-2);border:1px solid var(--border)}.share-row{flex-direction:column;gap:8px;display:flex}.share-label{align-items:center;gap:8px;display:flex}.pill{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}.pill-ok{background:var(--live-bg);color:var(--live-text)}.pill-accent{background:var(--accent-soft);color:var(--accent-deep)}.share-field{gap:8px;display:flex}.share-field input{border:1px solid var(--border);min-width:0;height:40px;font-family:var(--font-code);background:var(--panel-2);border-radius:10px;flex-grow:1;padding:0 12px;font-size:13px}.share-code{background:var(--panel-2);border-radius:12px;align-items:center;gap:14px;padding:14px 18px;font-size:13.5px;font-weight:700;line-height:1.3;display:flex}.share-code-value{font-family:var(--font-code);letter-spacing:.12em;font-size:24px;font-weight:600}.name-prompt input{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;height:44px;padding:0 14px;font-size:15px}.tutor-quick{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:16px 20px 20px;display:flex}.tutor-quick-head{align-items:center;gap:8px;display:flex}.tutor-quick-head strong{font-size:14px;font-weight:800}.tutor-tagline{color:var(--muted);font-size:12px;font-weight:600}.tutor-badge{background:var(--accent-soft);width:26px;height:26px;color:var(--accent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tutor-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.tutor-quick-actions .btn{height:38px;padding:0 8px}.tutor-panel{width:max(var(--side-w,320px), min(340px, 38vw));background:var(--panel-2)}.tutor-head{border-bottom:1px solid var(--border);background:var(--panel);align-items:center;gap:10px;padding:12px 16px;display:flex}.tutor-head div{flex-direction:column;min-width:0;display:flex}.tutor-head strong{font-size:15px;font-weight:800}.tutor-head span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.tutor-back{border:1px solid var(--border);background:var(--panel-2);width:34px;height:34px;color:var(--text)}.tutor-list{flex-direction:column;flex-grow:1;gap:16px;padding:16px;display:flex;overflow-y:auto}.tutor-turn{flex-direction:column;gap:8px;display:flex}.tutor-ask{background:var(--dark-card);max-width:92%;color:var(--dark-card-text);border-radius:10px;flex-wrap:wrap;align-self:flex-end;align-items:center;gap:4px 8px;padding:9px 14px;font-size:14px;font-weight:800;display:flex}.tutor-ask-block{background:var(--cat-math);color:#fff;border-radius:999px;padding:2px 9px;font-size:12.5px}.tutor-ask-error{font-family:var(--font-code);color:var(--step);flex-basis:100%;font-size:12px;font-weight:500}.tutor-ask-question{display:none}.tutor-answer{background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.55}.tutor-answer p{margin:0 0 8px}.tutor-answer p:last-child{margin:0}.tutor-answer .inline-code,.tutor-answer .code-block{background:var(--step-soft)}.tutor-answer .code-block:last-child{margin:0}.tutor-answer.hint{background:var(--step-pill);border-color:var(--step)}.tutor-answer.hint .eyebrow{color:var(--step-text);margin-bottom:6px;display:block}.tutor-answer.pending{color:var(--muted);font-style:italic}.tutor-answer.failed{border-color:var(--error);color:var(--error-text)}.tutor-answer.note{color:var(--muted)}.tutor-feedback{color:var(--muted);align-items:center;gap:6px;padding-left:4px;font-size:12.5px;font-weight:700;display:flex}.tutor-feedback button{font:inherit;color:var(--accent-text);background:0 0;border:0;padding:0}.tutor-feedback button:hover{text-decoration:underline}.tutor-compose{border-top:1px solid var(--border);background:var(--panel-2);flex-direction:column;gap:10px;padding:12px 16px 14px;display:flex}.tutor-chips{flex-wrap:wrap;gap:6px;display:flex}.tutor-chips button{border:1px solid var(--border);background:var(--panel);border-radius:999px;height:32px;padding:0 12px;font-size:13px;font-weight:700}.tutor-chips button:hover{border-color:var(--faint)}.tutor-footer{color:var(--muted);margin:0;font-size:11.5px;font-weight:700;line-height:1.4}.rewards-chip{border:1px solid var(--border);background:var(--panel-2);height:32px;color:var(--text);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 4px;font-size:13px;font-weight:800;text-decoration:none;display:flex}.rewards-chip:hover{color:var(--text);border-color:var(--faint)}.rewards-chip-icon{background:var(--accent-soft);width:24px;height:24px;color:var(--accent-text);border-radius:50%;justify-content:center;align-items:center;display:flex}.rewards-chip .muted-label,.rewards-chip-points{color:var(--muted);font-weight:700}.reward-toasts{z-index:55;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.reward-toast{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow-md);color:var(--text);border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;font-weight:700;animation:.25s ease-out toast-in;display:flex}.reward-toast.level{background:var(--dark-card);color:var(--dark-card-text);border-color:#0000}.reward-toast-points{color:var(--ok-text);font-weight:800}@keyframes toast-in{0%{transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.reward-toast{animation:none}}.medal{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;box-shadow:inset 0 -3px #00000026}.medal.locked{background:var(--panel-2);color:var(--faint);box-shadow:inset 0 0 0 2px var(--border)}.level-bar{color:var(--muted);flex-direction:column;gap:6px;font-size:12.5px;font-weight:700;display:flex}.level-bar-track{background:var(--panel-2);height:8px;box-shadow:inset 0 0 0 1px var(--border);border-radius:999px;overflow:hidden}.level-bar-fill{background:var(--accent);border-radius:999px;height:100%}.progress-level{color:var(--accent-text);align-items:center;gap:6px;font-size:13px;font-weight:800;display:flex}.progress-points{font-size:20px;font-weight:800}.side-card .progress-streak{color:var(--text-2)}.progress-badges{gap:6px;display:flex}.progress-link{font-size:13px;font-weight:800;text-decoration:none}.rewards-hero{align-items:center;gap:24px;padding:24px 28px;display:flex}.rewards-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.rewards-hero-text{flex-direction:column;flex-grow:1;gap:6px;min-width:0;display:flex}.rewards-hero-text h1{margin:0;font-size:26px;font-weight:800}.rewards-points{font-size:15px}.streak-box{background:var(--panel-2);width:220px;color:var(--muted);border-radius:12px;flex-direction:column;flex-shrink:0;gap:4px;padding:14px 16px;font-size:13px;font-weight:700;display:flex}.streak-box strong{color:var(--text);font-size:18px}.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.badge-card{border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.badge-card div{flex-direction:column;gap:2px;min-width:0;display:flex}.badge-card strong{font-size:14px;font-weight:800}.badge-card span{color:var(--muted);font-size:12.5px;font-weight:600;line-height:1.35}.badge-card.locked strong{color:var(--text-2)}.unlock-card{flex-direction:column;gap:10px;padding:18px 20px;display:flex}.unlock-card h3{margin:0;font-size:15px;font-weight:800}.unlock-row{flex-wrap:wrap;gap:10px;display:flex}.swatch{background:0 0;border:2px solid #0000;border-radius:50%;width:40px;height:40px;padding:4px;position:relative}.swatch span{border-radius:50%;width:100%;height:100%;display:block}.swatch.on{border-color:var(--text)}.swatch:disabled span{opacity:.25}.swatch small{color:var(--text-2);justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex;position:absolute;inset:0}.icon-choice{border:1px solid var(--border);background:var(--panel);border-radius:10px;align-items:center;gap:8px;height:40px;padding:0 12px;font-size:13px;font-weight:700;display:flex}.icon-choice.on,.theme-choice.on{border:2px solid var(--accent);background:var(--accent-soft)}.icon-choice:disabled,.theme-choice:disabled{color:var(--muted)}.theme-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.theme-choice{border:1px solid var(--border);background:var(--panel);text-align:left;color:var(--muted);border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;font-size:12.5px;font-weight:700;display:flex}.theme-choice strong{color:var(--text);font-size:14px}.theme-swatches{gap:3px;display:flex}.theme-swatches i{border-radius:4px;width:14px;height:14px;display:block}.theme-choice:disabled .theme-swatches{opacity:.35}.rules{color:var(--text-2);flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:13px;line-height:1.45;display:flex}.recent-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.recent-list li{align-items:baseline;gap:10px;font-size:13px;display:flex}.recent-points{width:36px;color:var(--ok-text);flex-shrink:0;font-weight:800}.recent-what{color:var(--text-2);flex-grow:1;font-weight:600}.recent-when{color:var(--muted);white-space:nowrap;font-size:12px}@media (max-width:1180px){.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-row{grid-template-columns:repeat(3,minmax(0,1fr))}.rewards-hero{flex-wrap:wrap}}@media (max-width:820px){.badge-grid{grid-template-columns:1fr}.theme-row{grid-template-columns:repeat(2,minmax(0,1fr))}.rewards-hero{gap:16px;padding:18px}.streak-box{width:100%}}.account-login{color:var(--text)}.account-menu{position:relative}.account-button{border:1px solid var(--border);background:var(--panel-2);height:34px;color:var(--text);border-radius:999px;align-items:center;gap:8px;padding:0 12px 0 4px;font-size:13px;font-weight:800;display:flex}.account-button:hover{border-color:var(--faint)}.account-initial{background:var(--accent-fill);width:26px;height:26px;color:var(--on-accent);border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:flex}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.account-popover{z-index:40;background:var(--panel);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.account-popover-head{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;margin-bottom:4px;padding:8px 10px 10px;font-size:13px;display:flex}.account-popover-head span{color:var(--muted);text-overflow:ellipsis;font-size:12px;overflow:hidden}.account-popover a,.account-popover button{height:36px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.account-popover a:hover,.account-popover button:hover{background:var(--panel-2)}.page-main{max-width:1440px;margin:0 auto;padding:36px 32px 64px}.page-column{flex-direction:column;gap:20px;max-width:720px;margin:0 auto;display:flex}.page-column-wide{max-width:1100px}.page-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-head .topbar-spacer{flex-grow:1}.page-title{margin:0;font-size:26px;font-weight:800}.page-sub{color:var(--muted);margin:0;font-weight:700}.back-link{color:var(--muted);align-items:center;gap:4px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text)}.auth-card{flex-direction:column;gap:16px;max-width:460px;margin:24px auto 0;padding:28px;display:flex}.auth-card h1{margin:0;font-size:24px;font-weight:800}.auth-card h2{margin:8px 0 0;font-size:15px;font-weight:800}.auth-card ul{margin:0;padding-left:20px;line-height:1.5}.auth-lead{color:var(--text-2);margin:0;line-height:1.5}.auth-aside-link{align-self:center;font-size:13px;font-weight:700}.auth-switch{text-align:center;color:var(--muted);margin:0;font-size:13px;font-weight:700}.parent-card{max-width:600px}.privacy{max-width:720px}.privacy p{margin:4px 0 0;line-height:1.55}.form-card{flex-direction:column;gap:14px;padding:22px 24px;display:flex}.form-card h2{margin:0;font-size:17px;font-weight:800}.form-card p{margin:0;line-height:1.5}.danger-card{border-color:color-mix(in srgb, var(--error) 35%, var(--border))}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:13px;font-weight:800}.field-hint{color:var(--muted);font-size:12.5px;font-weight:600;line-height:1.4}.field input,.field select,.field textarea,.toolbar input,.data-table select,.inline-form input,.inline-form select{border:1px solid var(--border);background:var(--panel);min-height:40px;color:var(--text);border-radius:10px;width:100%;padding:0 12px;font-size:14px;font-weight:600}.field textarea{resize:vertical;padding:10px 12px;line-height:1.45}.field textarea.mono,.mono{font-family:var(--font-code);font-size:13px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.toolbar input:focus-visible,.inline-form input:focus-visible,.inline-form select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field input[readonly]{background:var(--panel-2);color:var(--muted)}.password-input{display:flex;position:relative}.password-input input{padding-right:64px}.password-input .link-btn{position:absolute;top:50%;right:10px;transform:translateY(-50%)}.month-year{grid-template-columns:2fr 1fr;gap:8px;display:grid}.check-row{align-items:flex-start;gap:10px;font-size:13.5px;font-weight:600;line-height:1.45;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--accent-fill);flex-shrink:0;margin-top:3px}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.form-error{background:var(--error-soft);color:var(--error-text);border-radius:10px;margin:0;padding:10px 12px;font-size:13px;font-weight:700}.form-ok{color:var(--ok-text);font-size:13px;font-weight:800}.form-note{color:var(--muted);font-size:13px;font-weight:600}.btn-danger{border-color:var(--error);color:var(--error-text)}.btn-danger:hover:not(:disabled){background:var(--error-soft)}.inline-form{flex-wrap:wrap;gap:8px;display:flex}.inline-form input,.inline-form select{flex:200px;width:auto}.account-banner{background:var(--step-pill);border:1px solid color-mix(in srgb, var(--step) 50%, var(--border));color:var(--text);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;font-size:13.5px;font-weight:700;display:flex}.account-banner>div{flex-grow:1}.account-banner p{margin:0;line-height:1.45}.info-toast{background:var(--live-bg);color:var(--live-text);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;font-size:13.5px;font-weight:700;display:flex}.info-toast>span{flex-grow:1}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar input{flex:260px;width:auto}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13.5px}.data-table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px;font-size:12px;font-weight:800}.data-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:12px 14px}.data-table tr:last-child td{border-bottom:0}.data-table select{width:auto;min-height:32px;font-size:13px}.status-tags,.row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag{background:var(--panel-2);border:1px solid var(--border);height:22px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:11.5px;font-weight:800;display:inline-flex}.tag-accent{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}.tag-error{background:var(--error-soft);color:var(--error-text);border-color:#0000}.tag-ok{background:var(--live-bg);color:var(--live-text);border-color:#0000}.tag-step{background:var(--step-pill);color:var(--step-text);border-color:#0000}.class-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.class-card{color:var(--text);flex-direction:column;gap:6px;padding:18px 20px;text-decoration:none;display:flex}.class-card:hover{border-color:var(--faint);box-shadow:var(--shadow-sm)}.class-card strong{font-size:17px;font-weight:800}.class-card span{color:var(--muted);font-size:13px;font-weight:700}.code-box{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.code-box code{font-family:var(--font-code);letter-spacing:.12em;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:6px 12px;font-size:22px;font-weight:600}.link-box{align-items:center;gap:8px;display:flex}.link-box input{border:1px solid var(--border);background:var(--panel-2);min-height:36px;color:var(--text-2);font-family:var(--font-code);border-radius:9px;flex-grow:1;padding:0 10px;font-size:12.5px}.roster{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.roster li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.roster li:last-child{border-bottom:0}.roster .who{flex-direction:column;flex-grow:1;min-width:0;display:flex}.roster .who span{color:var(--muted);font-size:12.5px;font-weight:600}.two-col{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}@media (max-width:960px){.two-col{grid-template-columns:minmax(0,1fr)}}.live-card{background:var(--live-bg);border:1px solid color-mix(in srgb, var(--live-dot) 35%, transparent);border-radius:16px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.live-card h2{color:var(--live-text);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:800;display:flex}.live-row{align-items:center;gap:10px;display:flex}.live-row>div{flex-direction:column;flex-grow:1;min-width:0;display:flex}.live-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.live-row span{color:var(--live-text);font-size:12.5px;font-weight:700}.hw-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hw-item{border:1px solid var(--border);background:var(--panel);border-radius:12px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.hw-item-top{align-items:center;gap:8px;display:flex}.hw-item-top strong{text-overflow:ellipsis;flex-grow:1;min-width:0;overflow:hidden}.hw-meta{color:var(--muted);font-size:12.5px;font-weight:700}.hw-note{color:var(--text-2);margin:0;font-size:13px;line-height:1.45}.hw-feedback{background:var(--select-soft);color:var(--select-text);border-radius:8px;margin:0;padding:8px 10px;font-size:13px;line-height:1.45}.hw-feedback strong{text-transform:uppercase;letter-spacing:.03em;font-size:11.5px;display:block}.progress-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.progress-bar>i{background:var(--ok);height:100%;display:block}.example-editor{border:1px solid var(--border);background:var(--panel-2);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.example-editor-head{align-items:center;gap:10px;display:flex}.example-editor-head strong{flex-grow:1}.example-editor .two-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (max-width:640px){.example-editor .two-fields{grid-template-columns:1fr}.page-main{padding:24px 16px 48px}}.review-banner{background:var(--select-soft);color:var(--select-text);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 16px;font-size:13.5px;display:flex}.share-class{align-items:center;gap:6px;display:flex;color:var(--live-text)!important}.review-feedback{align-items:center;gap:8px;display:flex}.review-feedback input{border:1px solid var(--border);background:var(--panel);width:280px;min-height:32px;color:var(--text);border-radius:8px;padding:0 10px;font-size:13px}
