@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAcwABUAAAAADVQAAAbBAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGkQbgR4cLj9IVkFSYD9NVkFSRgZgP1NUQVSBECcqAFwvZBEICoMkgnELFAAwhH4BNgIkAyIEIAWGEAdnDAcboAsonoWxMy2MW9VSU/H2d24ggnj6P7/qdF8kHtj4XCsDah+E/KT39YIFcHcr5mdFZwLNDw9CeW4KlnBLVwQRet6nWJGSNRWvjZZM5AF9/V+YzdmiNbWZhBUUSOGWSLhW2RoXvEtYlxCEfCMrFAA6BuFam7oKRUZVCFWhRR/qJMlMiCgVZ/4ca0sETSHYgDJIJKezg6AEeH4/UIDkWQgqQABAB41AABe1VKK6dOsdhehnpalC9DfR1iEaDRCEADJ7qqmDPyCAYODEgeBAUIADRQ2tgB4qkWgAgOBp5BnH2tUEgA3ErCKtimIziMYx+tZRkDo+B2CcYroAUAMQQMOC/DExNOyf1AIEqIEEKgEKoAEFyK2JYdUjqxX9gAAwZpyto8zKVlMAICtmCHZvvscvU9uhetlltjPXxFCpcgAT1C41AqC3NxEZR3GGgPFsQPEn9Dv9AAEV1gUdEnSDES/lADn+6DGoZioeqIBCEBwIUIQ/UAa5fLpoEwZQQLIclVoNmiUiAMTkNhAAsaQOgAYUSg6A+hsQAHFIasTfqUaMdhH93bqCn0dv0Y1Mxwz/rMEkngeFGyecLPOg2jTgjVHHlnFn1ePPoBCvIU0PgI97z1hU0OQ8V6Iq/BwEUU8EQ4OB4FQdyadBEOByAhRAIhThj4OXDnAXcgDG2hAxxIQMtyzUgY0DcCA1wwnPy+biZg5xg64AiKelqxEkCD8ATgAKAdzAdMBJoAx4e5naGUU9jSAGahwNjTq+8W7DtfwYMsuPz6g1XPyMe4OHcM9wzZ544OVL2fjTo1fDhz95JRtfunY9r+B6JRd3737xgg3f338+ZMjD5wE2vLjmvqrsfi7KpklBNhwDNs4hLtfZB1nVo/LtXbteDo7bGL+x9LnOu7gSi0s45CJc/mquZ+53Had/3dvtr8Ybttd9ifzjnXq4Zb+pTblf584tP9A9sdAIX89W9cqWOy8urXS6243Og4UTLSdNOtqi74T6Wi+zp5Xr6RpTqLOrX2Wp2FTquoyMtjObjK4jpZMt84p3bd218fcnDp+IoMbXTl0+vgP56caMH6fVqeP+OKNQ34WDI8PmIJDVIAAbW7oRW9vBIzQAYINeo695N38DAQQF1BAAQB1AaXV6TEEMP0RLzQ5ctUHhwY/gB6cDpZRWWNvhvV7xtTdCTx62RTr+t9EROf52+4hqwKoHM4/P3FgXpe6yLMD76VNExDcBX1jIH3Yp7lSX+fKlzCapUmWPbtYsN7eRA47ZYTVbbEp/xcTqp40a3d8kgcC2lmDn2kCI59VnWx1NAZbGgyDNV1vAFJu5FO3miyhkCFmswIrSVn+m4cGofr9T0gtXmTw09dO1a16PkZUSH/IBkrx9G5qSFfLgxvTvUt01arz+FBpnGCEhx00R2RZKkZ2alp0fzE1LDbpKNhShcYSQv0hQG1qZDr/fmZca/ghYVGJxlLKSkix/drZ/c6tCgVkxImp4WHxugc/XJo8s3HRlyqfYLHfRckwVJGlsXycqqOGwidPXFPr25z/Nmxau/p9Rr57aFGS1RW4u7iIFAw1tFS5Mxb/8VkR5k5cXVEauSXY2pXVWSkRkklGk1rBYI0tr8nLTSpb8G+5yhXMADzyTaevXgL1Zp6VZlh0QM3fsx6LChf9nUFEe5Rfxel+//BCekJby74034cm1Sj0pKdGfMTg6JQXHolu80R26VNVeFRGjTGrML/a3KLdYsfRSwdIdF/wS97oFBJCflu4t3XhyfFibNIfWkQCf9r4tAJ9v5YH5D/L/t64YRwELBYDAz9xlvaUoc/8UQJDdHboro2Mz9jFInPDh9H5qASpKQgBOzmMzgG87VkOtVdB9GjGcwLdyIEJCoawjhU8WkKZZWpFBpZQgk2Guk0Ul58N9NCPHEwMP48ikiG6ycNGBbHyygBx4aEJOCsggFw7KkJtCAo/uwQV0olqyQtFmHZtpSTNMxXktRyAaKYo+cK9zaHpJBCK7ld6ZnAkoolP/ZzYvSzUPD8sKk8TLZmFYJCoGZhJ4DGjXa4xuGebQcRBOoWGIwKFaYhqHmCwSTJeiCKMCq0gNAc+GYSrLDBajCqNYJQYHcZXJJ0A4xapUqMKZ6z2NlL69lfVr0u8Nccx9YwPV6tkC81rPZI+nqPdmFSuWYpQISRkjH5QNMRmyUjejicO9FXMknCLnOWQIJNp0jmWMFZiWYyRwhQrhmdU9JWEPp+eCXCSYbnA0cgpOoIp7UWjRYogpltVxkolc5Ld0nsQ2aGrgvbG4QXMT38TJjo3+3UW3hhd38NKijMZseaj+FQn2vbEXAA==)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-vietnamese-wght-normal-rat7GD3o.woff2)format("woff2-variations");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:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-ext-wght-normal-D6H-S6MW.woff2)format("woff2-variations");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:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.woff2)format("woff2-variations");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:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2)format("woff2-variations");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:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");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{--yg-bg:#f3f5fb;--yg-surface:#fff;--yg-surface-2:#eef1f8;--yg-surface-sunk:#e4e9f4;--yg-border:#dfe4ef;--yg-ink:#141a2e;--yg-ink-soft:#4a5473;--yg-ink-faint:#6b7493;--yg-brand:#4361ee;--yg-brand-strong:#3049c9;--yg-brand-ink:#fff;--yg-brand-soft:#e6ebfd;--yg-chart-2:#8ea0f4;--yg-chart-3:#c5cefa;--yg-xp:#0b7fb0;--yg-xp-soft:#d6ecf6;--yg-coin:#a86f00;--yg-coin-fill:#f4b928;--yg-coin-soft:#fbedc6;--yg-success:#1b7f45;--yg-success-soft:#d7efdf;--yg-warning:#a35f00;--yg-warning-soft:#fbe9cc;--yg-danger:#b9322a;--yg-danger-soft:#f8dcd8;--yg-asgard:#3f55c9;--yg-jotunheim:#4f7d12;--yg-bifrost:#c43a6d;--yg-vanaheim:#7448d0;--yg-shadow:0 1px 2px #141a2e0f, 0 4px 16px #141a2e0f;--yg-shadow-lift:0 2px 4px #141a2e14, 0 12px 32px #141a2e1f;--yg-focus:#4361ee;--yg-code-keyword:#7c3aed;--yg-code-type:#b45309;--yg-code-string:#15803d;--yg-code-number:#c2410c;--yg-code-comment:#8790ab;--yg-code-def:#2563eb;--yg-code-bg:#eaeef8;--yg-code-ink:#141a2e;--yg-code-gutter:#8790ab;--yg-code-border:#dfe4ef;--yg-code-line:#e1e6f6;--yg-code-select:#c3cdf5;--yg-code-editor-size:13px;--yg-code-block-size:12.5px;--yg-code-console-size:12px;--yg-font-display:"Unbounded Variable", "Arial Rounded MT Bold", "Trebuchet MS", sans-serif;--yg-font-body:"Atkinson Hyperlegible Next Variable", "Atkinson Hyperlegible", "Segoe UI", system-ui, sans-serif;--yg-font-code:"JetBrains Mono Variable", "Cascadia Code", Consolas, monospace;--yg-heading-font:var(--yg-font-body);--yg-heading-weight:700;--yg-text-base:.9375rem;--yg-density:1;--yg-radius-sm:8px;--yg-radius:14px;--yg-radius-lg:22px;--yg-celebrate:1;--yg-text-xs:calc(var(--yg-text-base) * .8125);--yg-text-sm:calc(var(--yg-text-base) * .9);--yg-text-md:var(--yg-text-base);--yg-text-lg:calc(var(--yg-text-base) * 1.25);--yg-text-xl:calc(var(--yg-text-base) * 1.563);--yg-text-2xl:calc(var(--yg-text-base) * 1.953);--yg-text-3xl:calc(var(--yg-text-base) * 2.441);--yg-space-1:calc(4px * var(--yg-density));--yg-space-2:calc(8px * var(--yg-density));--yg-space-3:calc(12px * var(--yg-density));--yg-space-4:calc(16px * var(--yg-density));--yg-space-5:calc(24px * var(--yg-density));--yg-space-6:calc(32px * var(--yg-density));--yg-space-7:calc(48px * var(--yg-density));--yg-ease:cubic-bezier(.2, .8, .2, 1);--yg-realm:var(--yg-brand);--yg-button-mix:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--yg-button-mix:68%;--yg-bg:#090d18;--yg-surface:#121a2d;--yg-surface-2:#18223a;--yg-surface-sunk:#0d1322;--yg-border:#24304f;--yg-ink:#e8ecf8;--yg-ink-soft:#a5b0cc;--yg-ink-faint:#7f8aa8;--yg-brand:#6e8dff;--yg-brand-strong:#8aa3ff;--yg-brand-ink:#0a1030;--yg-brand-soft:#1f2a4a;--yg-chart-2:#4a5fb3;--yg-chart-3:#2f3d72;--yg-xp:#5cc6f2;--yg-xp-soft:#10324a;--yg-coin:#ffcb45;--yg-coin-fill:#f4b928;--yg-coin-soft:#3a2e0d;--yg-success:#58d18c;--yg-success-soft:#123423;--yg-warning:#f3ae4a;--yg-warning-soft:#3b2a0e;--yg-danger:#ff8378;--yg-danger-soft:#3d1715;--yg-asgard:#8f9cff;--yg-jotunheim:#a9d861;--yg-bifrost:#ff86b0;--yg-vanaheim:#b89cff;--yg-shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--yg-shadow-lift:0 2px 4px #00000059, 0 12px 32px #0006;--yg-focus:#8aa3ff;--yg-code-keyword:#c792ea;--yg-code-type:#ffcb6b;--yg-code-string:#c3e88d;--yg-code-number:#f78c6c;--yg-code-comment:#6b7799;--yg-code-def:#82aaff;--yg-code-bg:#0d1322;--yg-code-ink:#e8ecf8;--yg-code-gutter:#6e7a9a;--yg-code-border:#24304f;--yg-code-line:#111a2f;--yg-code-select:#24305a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--yg-button-mix:68%;--yg-bg:#090d18;--yg-surface:#121a2d;--yg-surface-2:#18223a;--yg-surface-sunk:#0d1322;--yg-border:#24304f;--yg-ink:#e8ecf8;--yg-ink-soft:#a5b0cc;--yg-ink-faint:#7f8aa8;--yg-brand:#6e8dff;--yg-brand-strong:#8aa3ff;--yg-brand-ink:#0a1030;--yg-brand-soft:#1f2a4a;--yg-chart-2:#4a5fb3;--yg-chart-3:#2f3d72;--yg-xp:#5cc6f2;--yg-xp-soft:#10324a;--yg-coin:#ffcb45;--yg-coin-fill:#f4b928;--yg-coin-soft:#3a2e0d;--yg-success:#58d18c;--yg-success-soft:#123423;--yg-warning:#f3ae4a;--yg-warning-soft:#3b2a0e;--yg-danger:#ff8378;--yg-danger-soft:#3d1715;--yg-asgard:#8f9cff;--yg-jotunheim:#a9d861;--yg-bifrost:#ff86b0;--yg-vanaheim:#b89cff;--yg-shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--yg-shadow-lift:0 2px 4px #00000059, 0 12px 32px #0006;--yg-focus:#8aa3ff;--yg-code-keyword:#c792ea;--yg-code-type:#ffcb6b;--yg-code-string:#c3e88d;--yg-code-number:#f78c6c;--yg-code-comment:#6b7799;--yg-code-def:#82aaff;--yg-code-bg:#0d1322;--yg-code-ink:#e8ecf8;--yg-code-gutter:#6e7a9a;--yg-code-border:#24304f;--yg-code-line:#111a2f;--yg-code-select:#24305a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-age=young]{--yg-heading-font:var(--yg-font-display);--yg-text-base:1.125rem;--yg-density:1.2;--yg-radius-sm:12px;--yg-radius:20px;--yg-radius-lg:30px;--yg-celebrate:1.6;--yg-heading-weight:700}:root[data-age=adult]{--yg-text-base:.9375rem;--yg-density:.9;--yg-radius-sm:4px;--yg-radius:8px;--yg-radius-lg:12px;--yg-celebrate:.5;--yg-heading-font:var(--yg-font-body);--yg-heading-weight:700}[data-realm=asgard]{--yg-realm:var(--yg-asgard)}[data-realm=jotunheim]{--yg-realm:var(--yg-jotunheim)}[data-realm=bifrost]{--yg-realm:var(--yg-bifrost)}[data-realm=vanaheim]{--yg-realm:var(--yg-vanaheim)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:100%}body{background:var(--yg-bg);color:var(--yg-ink);font-family:var(--yg-font-body);font-size:var(--yg-text-md);margin:0;line-height:1.55}h1,h2,h3,h4{font-family:var(--yg-heading-font);font-weight:var(--yg-heading-weight);text-wrap:balance;margin:0;line-height:1.2}h1{font-size:var(--yg-text-2xl);letter-spacing:-.01em}h2{font-size:var(--yg-text-lg)}h3{font-size:var(--yg-text-md)}p{margin:0}code,kbd,pre{font-family:var(--yg-font-code);font-size:.92em}:focus-visible{outline:3px solid var(--yg-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.yg-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.yg-label{font-size:var(--yg-text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--yg-ink-faint);font-weight:700}.yg-muted{color:var(--yg-ink-soft)}.yg-num{font-variant-numeric:tabular-nums}.yg-button{justify-content:center;align-items:center;gap:var(--yg-space-2);min-height:calc(40px * var(--yg-density));padding-inline:var(--yg-space-4);border-radius:var(--yg-radius-sm);font:inherit;cursor:pointer;transition:transform .12s var(--yg-ease), background-color .12s var(--yg-ease), box-shadow .12s var(--yg-ease);border:1px solid #0000;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.yg-button:active{transform:translateY(1px)}.yg-button:disabled{opacity:.5;cursor:not-allowed}.yg-button--primary{background:color-mix(in oklab, var(--yg-brand) var(--yg-button-mix), #0b1430);color:#fff;box-shadow:0 1px 2px #0a143c2e}.yg-button--primary:hover{filter:brightness(1.08)}.yg-button--secondary{background:var(--yg-surface);border-color:var(--yg-border);color:var(--yg-ink)}.yg-button--secondary:hover{background:var(--yg-surface-2)}.yg-button--ghost{color:var(--yg-ink-soft);background:0 0}.yg-button--ghost:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.yg-button--coin{background:var(--yg-coin-fill);color:#2b1d00;box-shadow:0 1px 2px #0a143c2e}.yg-button--sm{min-height:calc(32px * var(--yg-density));padding-inline:var(--yg-space-3);font-size:var(--yg-text-sm)}.yg-button--lg{min-height:calc(52px * var(--yg-density));padding-inline:var(--yg-space-5);font-size:var(--yg-text-lg)}.yg-card{background:var(--yg-surface);border:1px solid var(--yg-border);border-radius:var(--yg-radius);padding:var(--yg-space-5);min-width:0}.yg-card--raised{box-shadow:var(--yg-shadow);border-color:#0000}.yg-card--interactive{cursor:pointer;transition:transform .16s var(--yg-ease), box-shadow .16s var(--yg-ease)}.yg-card--interactive:hover{box-shadow:var(--yg-shadow-lift);transform:translateY(-2px)}.yg-badge{align-items:center;gap:var(--yg-space-1);padding:2px var(--yg-space-2);font-size:var(--yg-text-xs);white-space:nowrap;background:var(--yg-surface-2);color:var(--yg-ink-soft);border-radius:999px;font-weight:700;line-height:1.6;display:inline-flex}.yg-badge--success{background:var(--yg-success-soft);color:var(--yg-success)}.yg-badge--warning{background:var(--yg-warning-soft);color:var(--yg-warning)}.yg-badge--danger{background:var(--yg-danger-soft);color:var(--yg-danger)}.yg-badge--brand{background:var(--yg-brand-soft);color:var(--yg-brand)}.yg-badge--realm{background:color-mix(in srgb, var(--yg-realm) 16%, transparent);color:var(--yg-realm)}.yg-badge__dot{background:currentColor;border-radius:50%;width:.55em;height:.55em}.yg-progress{height:calc(10px * var(--yg-density));background:var(--yg-surface-sunk);border-radius:999px;display:block;overflow:hidden}.yg-progress__bar{border-radius:inherit;background:var(--yg-progress-color,var(--yg-realm));height:100%;transition:width .6s var(--yg-ease);display:block}.yg-ring{place-items:center;display:inline-grid;position:relative}.yg-ring svg{display:block;transform:rotate(-90deg)}.yg-ring__track{stroke:var(--yg-surface-sunk)}.yg-ring__value{stroke:var(--yg-xp);stroke-linecap:round;transition:stroke-dashoffset .8s var(--yg-ease)}.yg-ring__label{justify-items:center;gap:2px;line-height:1;display:grid;position:absolute}.yg-ring__level{font-family:var(--yg-font-display);font-size:var(--yg-text-2xl);font-weight:700}.yg-coin{font-variant-numeric:tabular-nums;color:var(--yg-coin);align-items:center;gap:.35em;font-weight:700;display:inline-flex}.yg-coin__icon{flex:none;width:1.15em;height:1.15em}.yg-xp{font-variant-numeric:tabular-nums;color:var(--yg-xp);align-items:center;gap:.35em;font-weight:700;display:inline-flex}.yg-avatar{width:var(--yg-avatar-size,40px);height:var(--yg-avatar-size,40px);background:var(--yg-avatar-bg,var(--yg-brand-soft));color:var(--yg-avatar-ink,var(--yg-brand));font-family:var(--yg-font-display);font-weight:700;font-size:calc(var(--yg-avatar-size,40px) * .38);-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;display:inline-grid}.yg-segmented{border-radius:calc(var(--yg-radius-sm) + 3px);background:var(--yg-surface-2);justify-self:start;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.yg-segmented button{border-radius:var(--yg-radius-sm);padding:var(--yg-space-2) var(--yg-space-4);color:var(--yg-ink-soft);font:inherit;font-size:var(--yg-text-md);cursor:pointer;background:0 0;border:0;font-weight:700}.yg-segmented button[aria-pressed=true]{background:var(--yg-surface);color:var(--yg-ink);box-shadow:var(--yg-shadow)}.yg-stat{gap:var(--yg-space-1);min-width:0;display:grid}.yg-stat__value{font-family:var(--yg-heading-font);font-size:var(--yg-text-2xl);font-weight:var(--yg-heading-weight);font-variant-numeric:tabular-nums;line-height:1.1}.yg-stat__trend{font-size:var(--yg-text-sm);font-weight:700}.yg-stat__trend--up{color:var(--yg-success)}.yg-stat__trend--down{color:var(--yg-danger)}@keyframes yg-pop{0%{transform:scale(1)}40%{transform:scale(calc(1 + .12 * var(--yg-celebrate)))}to{transform:scale(1)}}.yg-pop{animation:yg-pop .42s var(--yg-ease)}.yg-field{align-content:start;gap:var(--yg-space-1);min-width:0;display:grid}.yg-field__label{font-weight:700;font-size:var(--yg-text-sm)}.yg-field__hint{font-size:var(--yg-text-xs);color:var(--yg-ink-faint)}.yg-input{width:100%;min-height:calc(42px * var(--yg-density));padding:var(--yg-space-2) var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface);color:var(--yg-ink);font:inherit}.yg-input:hover{border-color:var(--yg-ink-faint)}.yg-input:focus-visible{outline:3px solid color-mix(in srgb, var(--yg-focus) 50%, transparent);outline-offset:0;border-color:var(--yg-focus)}textarea.yg-input{resize:vertical;min-height:12rem;font-family:var(--yg-font-code);font-size:var(--yg-text-sm);line-height:1.6}.yg-check{align-items:center;gap:var(--yg-space-2);cursor:pointer;font-weight:700;display:inline-flex}.yg-check input{width:1.15em;height:1.15em;accent-color:var(--yg-brand)}.yg-notice{gap:var(--yg-space-1);padding:var(--yg-space-3) var(--yg-space-4);border-radius:var(--yg-radius-sm);background:var(--yg-surface-2);color:var(--yg-ink);font-size:var(--yg-text-sm);display:grid}.yg-notice--danger{background:var(--yg-danger-soft);color:var(--yg-danger);font-weight:700}.yg-notice--success{background:var(--yg-success-soft);color:var(--yg-success)}.yg-notice--brand{background:var(--yg-brand-soft)}.yg-dialog{width:min(100% - 2 * var(--yg-space-4), 34rem);max-height:min(100% - 2 * var(--yg-space-6), 52rem);border-radius:var(--yg-radius-lg,var(--yg-radius));background:var(--yg-surface);color:var(--yg-ink);box-shadow:var(--yg-shadow-lift);border:0;padding:0}.yg-dialog--sm{width:min(100% - 2 * var(--yg-space-4), 26rem)}.yg-dialog--lg{width:min(100% - 2 * var(--yg-space-4), 48rem)}.yg-dialog[open]{animation:yg-dialog-in .18s var(--yg-ease)}.yg-dialog::backdrop{background:color-mix(in srgb, var(--yg-ink) 38%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}@keyframes yg-dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.yg-dialog[open]{animation:none}}.yg-dialog__box{max-height:inherit;flex-direction:column;display:flex}.yg-dialog__head{align-items:flex-start;gap:var(--yg-space-3);padding:var(--yg-space-5) var(--yg-space-5) var(--yg-space-3);display:flex}.yg-dialog__titles{flex:1;min-width:0}.yg-dialog__title{font-size:var(--yg-text-xl,1.25rem);text-wrap:balance;margin:0}.yg-dialog__description{margin:var(--yg-space-1) 0 0;color:var(--yg-ink-soft);font-size:var(--yg-text-sm)}.yg-dialog__close{width:2rem;height:2rem;color:var(--yg-ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.4rem;line-height:1;display:grid}.yg-dialog__close:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.yg-dialog__body{min-height:0;padding:var(--yg-space-2) var(--yg-space-5) var(--yg-space-5);flex:auto;overflow-y:auto}.yg-dialog__foot{justify-content:flex-end;gap:var(--yg-space-2);padding:var(--yg-space-4) var(--yg-space-5);border-top:1px solid var(--yg-border);background:var(--yg-surface-2);border-radius:0 0 var(--yg-radius-lg,var(--yg-radius)) var(--yg-radius-lg,var(--yg-radius));flex-wrap:wrap;display:flex}.shell{--yg-gutter:clamp(16px, 2.5vw, 56px);--yg-page-pad:var(--yg-gutter);background:radial-gradient(1200px 400px at 85% -120px, color-mix(in srgb, var(--yg-brand) 14%, transparent), transparent 70%), radial-gradient(900px 300px at -10% -80px, color-mix(in srgb, var(--yg-xp) 10%, transparent), transparent 70%), var(--yg-bg);min-height:100vh}.topbar{top:env(safe-area-inset-top,0px);z-index:10;align-items:center;gap:var(--yg-space-3) var(--yg-space-6);min-height:4.5rem;padding-block:var(--yg-space-3);padding-left:max(var(--yg-page-pad), env(safe-area-inset-left,0px));padding-right:max(var(--yg-page-pad), env(safe-area-inset-right,0px));background:color-mix(in srgb, var(--yg-bg) 85%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--yg-border);flex-wrap:wrap;display:flex;position:sticky}.brand{align-items:center;gap:var(--yg-space-3);color:var(--yg-ink);text-decoration:none;display:inline-flex}.brand__name{font-family:var(--yg-font-display);font-weight:700;font-size:var(--yg-text-xl);letter-spacing:-.02em}.nav{gap:var(--yg-space-1);flex-wrap:wrap;order:3;width:100%;display:flex}.nav__link{padding:var(--yg-space-2) var(--yg-space-4);border-radius:var(--yg-radius-sm);color:var(--yg-ink-soft);font-size:var(--yg-text-lg);font-weight:700;text-decoration:none}.nav__link:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.nav__link[aria-current=page]{background:var(--yg-brand-soft);color:var(--yg-brand)}.topbar__me{align-items:center;gap:var(--yg-space-4);font-size:var(--yg-text-lg);margin-left:auto;display:flex}@media (width>=760px){.nav{order:0;width:auto}}@media (width<=759px){.topbar{gap:var(--yg-space-2) var(--yg-space-3)}.brand svg{width:34px;height:34px}.brand__name{font-size:var(--yg-text-lg)}.topbar__me{gap:var(--yg-space-2);font-size:var(--yg-text-md)}.nav__link{font-size:var(--yg-text-md);padding-inline:var(--yg-space-3)}}.main{padding-block:var(--yg-space-6) var(--yg-space-7);padding-left:max(var(--yg-page-pad), env(safe-area-inset-left,0px));padding-right:max(var(--yg-page-pad), env(safe-area-inset-right,0px))}.stack{gap:var(--yg-space-5);min-width:0;display:grid}.stack--tight{gap:var(--yg-space-2)}.row{align-items:center;gap:var(--yg-space-2);min-width:0;display:flex}.row--between{justify-content:space-between}.row--wrap{flex-wrap:wrap}.row--center{gap:var(--yg-space-5)}.grid{gap:var(--yg-space-4);margin:0;padding:0;list-style:none;display:grid}.measure{max-width:62ch}.plain-list{gap:var(--yg-space-3);margin:0;padding:0;list-style:none;display:grid}.pill{align-items:center;gap:var(--yg-space-1);padding:var(--yg-space-1) var(--yg-space-3);background:var(--yg-surface);border:1px solid var(--yg-border);border-radius:999px;font-weight:700;display:inline-flex}.hero{justify-content:space-between;align-items:center;gap:var(--yg-space-5);flex-wrap:wrap;display:flex}.hero,.profile-head{padding:var(--yg-space-5);border:1px solid var(--yg-border);border-radius:var(--yg-radius-lg,var(--yg-radius));background:radial-gradient(circle at 90% 0%, color-mix(in oklab, var(--yg-brand) 22%, transparent), transparent 55%), var(--yg-surface)}.hero__text{gap:var(--yg-space-2);flex:320px;min-width:0;display:grid}.hero h1{font-size:var(--yg-text-2xl)}.hero__stats{gap:var(--yg-space-2);margin-top:var(--yg-space-2);flex-wrap:wrap;display:flex}.grid--two{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));align-items:start}.grid--realms{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.realm{gap:var(--yg-space-1);padding:var(--yg-space-4);border-radius:var(--yg-radius);background:color-mix(in srgb, var(--yg-realm) 10%, var(--yg-surface));border:1px solid color-mix(in srgb, var(--yg-realm) 30%, transparent);display:grid}.realm__swatch{background:var(--yg-realm);width:36px;height:36px;margin-bottom:var(--yg-space-2);border-radius:50%}.swatches{gap:var(--yg-space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:0;padding:0;list-style:none;display:grid}.swatches li{gap:var(--yg-space-2);font-size:var(--yg-text-sm);align-items:center;min-width:0;font-weight:700;display:flex}.swatches li>span:last-child{min-width:0;display:grid}.swatch{border-radius:var(--yg-radius-sm);border:1px solid var(--yg-border);flex:none;width:36px;height:36px}.swatch__token{font-size:var(--yg-text-xs);overflow-wrap:anywhere;font-weight:400}.type-scale{gap:var(--yg-space-3);margin:0;padding:0;list-style:none;display:grid}.type-scale li{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.specimen{gap:var(--yg-space-3);padding-top:var(--yg-space-4);border-top:1px solid var(--yg-border);display:grid}.specimen__bars{gap:var(--yg-space-3);flex:200px;display:grid}.splash{min-height:100vh;animation:yg-pop 1.2s var(--yg-ease) infinite;place-items:center;display:grid}.skip{position:absolute;left:-9999px}.skip:focus{left:max(16px, env(safe-area-inset-left,0px));top:calc(env(safe-area-inset-top,0px) + 8px);z-index:20;padding:var(--yg-space-2) var(--yg-space-3);background:var(--yg-surface);border-radius:var(--yg-radius-sm)}.me-link{border-radius:50%}.me-link[aria-current=page]{outline:2px solid var(--yg-brand);outline-offset:2px}.auth{background:var(--yg-bg);min-height:100vh;display:grid;position:relative}@media (width>=900px){.auth{grid-template-columns:minmax(0,1.1fr) minmax(420px,1fr)}}.auth__story{align-content:center;justify-items:center;gap:var(--yg-space-4);padding-block:var(--yg-space-7);padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));color:#e8ecf8;background:radial-gradient(600px 420px at 50% 30%,#6e8dff33,#0000 70%),radial-gradient(500px 300px at 15% 90%,#8f9cff1f,#0000 70%),linear-gradient(160deg,#121a2d,#090d18 70%);display:grid;position:relative;overflow:hidden}.auth__story:after{content:"";opacity:.35;pointer-events:none;background-image:radial-gradient(#e8ecf880 1px,#0000 1.5px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 65%);mask-image:linear-gradient(#000,#0000 65%)}.auth__story-text{z-index:1;gap:var(--yg-space-2);text-align:center;display:grid;position:relative}.auth__wordmark{font-family:var(--yg-font-display);letter-spacing:-.03em;font-size:clamp(2.4rem,6vw,4.2rem);font-weight:800;line-height:1}.auth__tagline{max-width:30ch;font-size:var(--yg-text-lg);color:#e8ecf8bf;text-wrap:balance}.auth__tree{z-index:1;width:min(100%,440px);height:auto;position:relative}.auth__branches{stroke:#8aa3ff;opacity:.8}.auth__node{color:var(--yg-realm);animation:7s ease-in-out infinite auth-float}.auth__orb{fill:var(--yg-realm);stroke:#ffffffa6;stroke-width:2.5px}.auth__realm{fill:#e8ecf8;font-family:var(--yg-font-display);font-size:13px;font-weight:700}.auth__lang{fill:#e8ecf8a6;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}@keyframes auth-float{50%{transform:translateY(-6px)}}@media (width<=899px){.auth__story{padding-block:var(--yg-space-5) var(--yg-space-3)}.auth__tree{width:min(100%,300px)}.auth__tagline{font-size:var(--yg-text-md)}}.auth__card{gap:var(--yg-space-4);width:min(100% - 32px,420px);margin-block:var(--yg-space-6);padding:var(--yg-space-6);place-self:center;display:grid}.auth__brand{justify-items:center;gap:var(--yg-space-2);text-align:center;display:grid}.auth__hint{font-size:var(--yg-text-sm);text-align:center}.page-head{justify-content:space-between;align-items:end;gap:var(--yg-space-3);flex-wrap:wrap;display:flex}.back-link{color:var(--yg-ink-soft);justify-self:start;font-weight:700;text-decoration:none}.narrow{max-width:640px}.form{max-width:760px}.form-grid{align-items:start;gap:var(--yg-space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));display:grid}.row--end{flex-wrap:wrap;align-items:end}.row--end>.yg-field{flex:220px}.textarea--short{min-height:5rem;font-family:var(--yg-font-body)}.panel{padding:var(--yg-space-4);border-radius:var(--yg-radius);background:var(--yg-surface-2)}.yg-button.danger{background:var(--yg-danger);box-shadow:none;color:var(--yg-surface)}.grid--cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.tile{gap:var(--yg-space-2);padding:var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);color:var(--yg-ink);transition:transform .16s var(--yg-ease), box-shadow .16s var(--yg-ease);align-content:start;text-decoration:none;display:grid}.tile:hover{box-shadow:var(--yg-shadow-lift);transform:translateY(-2px)}.steps{margin:0;padding:0;list-style:none}.step{height:100%}.step__number{background:var(--yg-brand-soft);width:2rem;height:2rem;color:var(--yg-brand);font-family:var(--yg-font-display);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.tile--course{border-top:4px solid var(--yg-realm)}.tile__title{font-family:var(--yg-heading-font);font-weight:var(--yg-heading-weight);font-size:var(--yg-text-lg);line-height:1.2}.tile__meta{gap:var(--yg-space-1)}.class-block{gap:var(--yg-space-4);display:grid}.class-block__name{font-size:var(--yg-text-xl)}.grid--courses{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.course-card{gap:var(--yg-space-3);padding:var(--yg-space-4);border-radius:var(--yg-radius-sm);background:color-mix(in srgb, var(--yg-realm) 6%, var(--yg-surface));border:1px solid color-mix(in srgb, var(--yg-realm) 25%, transparent);border-left:5px solid var(--yg-realm);align-content:start;min-width:0;display:grid}.course-card__title{font-size:var(--yg-text-lg)}.course-card__desc{font-size:var(--yg-text-sm)}.chapter-list{gap:var(--yg-space-3);margin:0;padding-left:1.4em;display:grid}.chapter-list>li::marker{color:var(--yg-realm);font-weight:700}.chapter-list__title{font-weight:700}.item-list{margin:var(--yg-space-1) 0 0;gap:2px;padding:0;list-style:none;display:grid}.item-link{align-items:baseline;gap:var(--yg-space-2);padding:var(--yg-space-1) var(--yg-space-2);border-radius:var(--yg-radius-sm);color:var(--yg-ink);text-decoration:none;display:flex}a.item-link:hover{background:color-mix(in srgb, var(--yg-realm) 12%, transparent)}.item-link--disabled{color:var(--yg-ink-faint)}.lesson{max-width:760px}.prose{gap:var(--yg-space-3);overflow-wrap:anywhere;min-width:0;line-height:1.7;display:grid}.prose :is(h1,h2,h3){margin-top:var(--yg-space-3)}.prose :is(p,ul,ol,pre,blockquote){margin:0}.prose a{color:var(--yg-brand)}.prose code{background:var(--yg-surface-2);border-radius:4px;padding:.1em .35em}.prose pre,.code-block{padding:var(--yg-space-4);border-radius:var(--yg-radius-sm);background:var(--yg-code-bg);color:var(--yg-code-ink);margin:0;line-height:1.6;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose .table-scroll{max-width:100%;overflow-x:auto}.prose table{border-collapse:collapse;min-width:60%;font-size:var(--yg-text-sm);overflow-wrap:normal;line-height:1.5}.prose th,.prose td{padding:var(--yg-space-2) var(--yg-space-3);border:1px solid var(--yg-border);text-align:left;vertical-align:top}.prose th{background:var(--yg-surface-2);font-weight:700}.prose td code,.prose th code{-webkit-box-decoration-break:clone;box-decoration-break:clone}.prose blockquote{padding-left:var(--yg-space-3);border-left:4px solid var(--yg-realm);color:var(--yg-ink-soft)}.grid--detail{grid-template-columns:minmax(0,1fr);align-items:start}@media (width>=1000px){.grid--detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.people{gap:var(--yg-space-2);margin:0;padding:0;list-style:none;display:grid}.person{align-items:center;gap:var(--yg-space-2) var(--yg-space-3);padding-block:var(--yg-space-2);border-bottom:1px solid var(--yg-border);flex-wrap:wrap;display:flex}.person:last-child{border-bottom:0}.person__body{flex:160px;min-width:0;display:grid}.person__login{font-size:var(--yg-text-sm);overflow-wrap:anywhere}.person__meta,.person__actions{align-items:center;gap:var(--yg-space-1);flex-wrap:wrap;display:flex}.start-password{gap:var(--yg-space-1);padding:var(--yg-space-4);border-radius:var(--yg-radius);background:var(--yg-coin-soft);display:grid}.start-password__value{font-size:var(--yg-text-xl);letter-spacing:.04em;font-weight:700}.class-course{gap:var(--yg-space-3);padding:var(--yg-space-4);border-radius:var(--yg-radius-sm);border:1px solid var(--yg-border);border-left:5px solid var(--yg-realm);display:grid}.class-course__title{font-weight:700;font-size:var(--yg-text-lg);color:var(--yg-ink)}.locks{gap:var(--yg-space-1);margin:0;padding:0;list-style:none;display:grid}.locks li{justify-content:space-between;align-items:center;gap:var(--yg-space-2);display:flex}.lock{border:1px solid var(--yg-border);padding:2px var(--yg-space-3);background:var(--yg-success-soft);color:var(--yg-success);font:inherit;font-size:var(--yg-text-sm);cursor:pointer;border-radius:999px;font-weight:700}.lock--on{background:var(--yg-surface-2);color:var(--yg-ink-soft)}.problems{padding-left:var(--yg-space-4);color:var(--yg-danger);font-size:var(--yg-text-sm);margin:0}.slips{gap:var(--yg-space-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));margin:0;padding:0;list-style:none;display:grid}.slip{gap:var(--yg-space-1);padding:var(--yg-space-3);border:1px dashed var(--yg-border);border-radius:var(--yg-radius-sm);overflow-wrap:anywhere;display:grid}.slip code{white-space:nowrap}.slip__password{font-size:var(--yg-text-md);font-weight:700}.print-only{display:none}@media print{body *{visibility:hidden}.print-sheet,.print-sheet *{visibility:visible}.print-sheet{color:#000;background:#fff;padding:1cm;position:absolute;inset:0}.print-only{display:block}.slips{grid-template-columns:repeat(2,1fr)}.slip{break-inside:avoid;border-color:#000}}.grid--home{grid-template-columns:minmax(0,1fr)}@media (width>=900px){.grid--home{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.continue{grid-row:span 2}}.continue{gap:var(--yg-space-3);border-top:4px solid var(--yg-realm);display:grid}.continue__head{justify-content:space-between;align-items:center;gap:var(--yg-space-2);flex-wrap:wrap;display:flex}.continue__title{font-size:var(--yg-text-lg)}.continue__code{padding:var(--yg-space-4);border-radius:var(--yg-radius-sm);border:1px solid var(--yg-code-border);background:var(--yg-code-bg);color:var(--yg-code-ink);line-height:1.6;font-family:var(--yg-font-code);font-size:var(--yg-code-block-size);margin:0;overflow-x:auto}.continue__code code{font:inherit}.tok-k{color:var(--yg-asgard);font-weight:600}.tok-t{color:var(--yg-bifrost)}.tok-f{color:var(--yg-brand)}.tok-c{color:var(--yg-ink-faint);font-style:italic}.continue__foot{justify-content:space-between;align-items:end;gap:var(--yg-space-4);flex-wrap:wrap;display:flex}.continue__tests{gap:var(--yg-space-2);flex:200px;display:grid}.continue .yg-button--primary{background:color-mix(in oklab, var(--yg-realm) var(--yg-button-mix), #0b1430);color:#fff}.continue .yg-button--primary:hover{filter:brightness(1.08)}.pill--streak{color:var(--yg-warning)}.quest__claimed{color:var(--yg-success)}.board__xp{color:var(--yg-ink-soft)}.quest{gap:var(--yg-space-3);background:linear-gradient(160deg, var(--yg-coin-soft), var(--yg-surface) 70%);align-content:start;display:grid}.board{gap:var(--yg-space-3);align-content:start;display:grid}.board__list{gap:var(--yg-space-1);margin:0;padding:0;list-style:none;display:grid}.board__row{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-1) var(--yg-space-2);border-radius:var(--yg-radius-sm);grid-template-columns:1.5em auto 1fr auto;display:grid}.board__row--me{background:var(--yg-xp-soft);font-weight:700}.board__rank{color:var(--yg-ink-faint);font-weight:700}.board__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.grid--classes{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}.class-card{gap:var(--yg-space-3);align-content:start;display:grid}.class-card h3{font-size:var(--yg-text-lg)}.course-list{gap:var(--yg-space-3);margin:0;padding:0;list-style:none;display:grid}.course{gap:var(--yg-space-3);grid-template-columns:auto 1fr;align-items:center;display:grid}.course__realm{width:calc(10px * var(--yg-density) + 4px);height:calc(10px * var(--yg-density) + 4px);background:var(--yg-realm);border-radius:4px;transform:rotate(45deg)}.course__body{gap:var(--yg-space-1);min-width:0;display:grid}.course__title{min-width:0;font-weight:700}.dash-head{justify-content:space-between;align-items:end;gap:var(--yg-space-4);flex-wrap:wrap;display:flex}.dash-head__actions{gap:var(--yg-space-2);flex-wrap:wrap;display:flex}.stats{gap:var(--yg-space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));display:grid}.grid--dash{grid-template-columns:minmax(0,1fr);align-items:start}@media (width>=1000px){.grid--dash{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}}.matrix{gap:var(--yg-space-4);display:grid}.matrix__scroll{position:relative;overflow-x:auto}.matrix__table{border-collapse:separate;border-spacing:4px;width:100%}.matrix__table th{font-size:var(--yg-text-xs);color:var(--yg-ink-faint);font-weight:700}.matrix__table th.matrix__student{text-align:left}tbody .matrix__student{align-items:center;gap:var(--yg-space-2);white-space:nowrap;color:var(--yg-ink);font-size:var(--yg-text-sm);padding-right:var(--yg-space-3);display:flex}.matrix__ex{place-items:center;width:2em;display:inline-grid}.cell{width:calc(26px * var(--yg-density));height:calc(26px * var(--yg-density));border-radius:calc(var(--yg-radius-sm) * .6);margin-inline:auto;display:block}.cell--passed{background:var(--yg-success)}.cell--trying{background:var(--yg-xp);opacity:.75}.cell--failing{background:var(--yg-danger)}.cell--none{background:var(--yg-surface-sunk)}.legend{gap:var(--yg-space-3);font-size:var(--yg-text-sm);color:var(--yg-ink-soft);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:var(--yg-space-1);display:inline-flex}.legend .cell{border-radius:3px;width:12px;height:12px}.attention{align-items:center;gap:var(--yg-space-3);grid-template-columns:auto 1fr auto;display:grid}.attention__body{min-width:0;font-size:var(--yg-text-sm);display:grid}.error-row{justify-content:space-between;align-items:center;gap:var(--yg-space-3);font-size:var(--yg-text-sm);display:flex}.error-row__what{min-width:0;display:grid}.error-row__code{color:var(--yg-danger);overflow-wrap:anywhere}.error-row__count{flex:none;font-weight:700}.course__link{color:inherit;border-radius:var(--yg-radius-sm);text-decoration:none}.course__link:hover .course__title{color:var(--yg-realm)}.realm-button.yg-button--primary{background:color-mix(in oklab, var(--yg-realm) var(--yg-button-mix), #0b1430);color:#fff}.realm-button.yg-button--primary:hover{filter:brightness(1.08)}.course-progress{max-width:520px}.learn-chapters{margin:0;padding:0;list-style:none}.learn-chapter{border-left:4px solid var(--yg-realm)}.learn-chapter__number{color:var(--yg-realm)}.learn-items{gap:var(--yg-space-1);margin:0;padding:0;list-style:none;display:grid}.learn-item{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);color:var(--yg-ink);grid-template-columns:1.6rem auto 1fr auto;text-decoration:none;display:grid}a.learn-item:hover{background:color-mix(in srgb, var(--yg-realm) 8%, transparent)}.learn-item__mark{border:2px solid color-mix(in srgb, var(--yg-realm) 45%, transparent);width:1.6rem;height:1.6rem;color:var(--yg-surface);font-size:var(--yg-text-xs);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.learn-item--done .learn-item__mark{background:var(--yg-realm);border-color:var(--yg-realm)}.learn-item__title{min-width:0;font-weight:700}.learn-item__kind{font-size:var(--yg-text-sm)}.learn-item--soon{opacity:.6}.reward{padding:var(--yg-space-2) var(--yg-space-4);border-radius:var(--yg-radius-sm);background:var(--yg-coin-soft);color:var(--yg-coin);justify-self:start;font-weight:700}.lesson-nav{justify-content:space-between;gap:var(--yg-space-3);padding-top:var(--yg-space-4);border-top:1px solid var(--yg-border);flex-wrap:wrap;display:flex}.matrix__table{width:auto}.lesson-card{gap:var(--yg-space-5);padding:var(--yg-space-6) var(--yg-space-6) var(--yg-space-7);border-radius:var(--yg-radius);border-top:5px solid var(--yg-realm);background:var(--yg-surface);box-shadow:var(--yg-shadow);display:grid}@media (width<=600px){.lesson-card{padding:var(--yg-space-4)}}.lesson-card__head{gap:var(--yg-space-3);display:grid}.lesson-card__chapter{color:var(--yg-realm)}.lesson-card__body{font-size:1.06em}.inline-form{align-items:end;gap:var(--yg-space-2);display:flex}.inline-form>.yg-field{flex:auto;min-width:0}.inline-form .yg-field__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.inline-form>.yg-button{flex:none}.people-search{flex:0 380px}.profile-head{align-items:center;gap:var(--yg-space-4);flex-wrap:wrap;display:flex}.profile-head>.stack{flex:240px;min-width:0}.profile-head h1{overflow-wrap:anywhere}.profile-head__stats{margin:0}.grid--profile{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:start}.tile--class{padding-top:calc(var(--yg-space-4) + 6px);position:relative;overflow:hidden}.tile--class:before{content:"";background:linear-gradient(90deg, var(--yg-realm), color-mix(in oklab, var(--yg-realm) 30%, transparent));height:6px;position:absolute;inset:0 0 auto}.tile--class:after{content:"";background:radial-gradient(circle, color-mix(in oklab, var(--yg-realm) 18%, transparent), transparent 70%);pointer-events:none;border-radius:50%;width:140px;height:140px;position:absolute;bottom:-40px;right:-40px}.tile--class__name{font-size:var(--yg-text-xl)}.tile--class__foot{gap:var(--yg-space-1) var(--yg-space-3);margin-top:var(--yg-space-2);padding-top:var(--yg-space-2);border-top:1px solid var(--yg-border);color:var(--yg-ink-soft);font-size:var(--yg-text-sm);flex-wrap:wrap;font-weight:700;display:flex}.tile--add{min-height:140px;color:var(--yg-ink-soft);font:inherit;cursor:pointer;background:0 0;border-style:dashed;place-content:center;justify-items:center;font-weight:700}.tile--add:hover{color:var(--yg-brand);border-color:var(--yg-brand)}.tile--add__plus{background:var(--yg-brand-soft);width:2.5rem;height:2.5rem;color:var(--yg-brand);border-radius:50%;place-items:center;font-size:1.5rem;line-height:1;display:inline-grid}.theme-toggle{border:1px solid var(--yg-border);background:var(--yg-surface);width:40px;height:40px;color:var(--yg-ink-soft);cursor:pointer;transition:color .16s var(--yg-ease), transform .16s var(--yg-ease);border-radius:50%;place-items:center;padding:0;display:inline-grid}.theme-toggle:hover{color:var(--yg-brand);transform:rotate(-15deg)}.theme-toggle--corner{top:calc(env(safe-area-inset-top,0px) + 16px);right:max(16px, env(safe-area-inset-right,0px));z-index:2;position:absolute}.main--workspace{max-width:none;padding:0}.workspace-pad{padding:var(--yg-space-5) max(16px, env(safe-area-inset-right,0px)) var(--yg-space-5) max(16px, env(safe-area-inset-left,0px))}.workspace{--ws-side:clamp(16px, 4vw, 72px);--ws-h:calc(100dvh - var(--yg-topbar-h,64px));min-height:var(--ws-h);grid-template-columns:minmax(0,1fr);display:grid}.workspace__main{flex-direction:column;min-width:0;display:flex}.icon{vertical-align:-.15em;flex:none}.icon--turned{transform:rotate(-90deg)}.icon--success{color:var(--yg-success)}.icon--danger{color:var(--yg-danger)}.icon-button{border-radius:var(--yg-radius-sm);width:2.25rem;height:2.25rem;color:var(--yg-ink-soft);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.icon-button:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.text-button{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);color:var(--yg-ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;display:inline-flex}.text-button:hover,.text-button[aria-expanded=true]{background:var(--yg-surface-2);color:var(--yg-ink)}.text-button--small{padding:var(--yg-space-1) var(--yg-space-2);font-size:var(--yg-text-sm)}.path{inset:var(--yg-topbar-h,64px) auto 0 2.75rem;z-index:9;overscroll-behavior:contain;background:var(--yg-surface);border-right:1px solid var(--yg-border);visibility:hidden;width:min(23rem,100vw - 4rem);transition:transform .24s var(--yg-ease), visibility 0s linear .24s;position:fixed;overflow-y:auto;transform:translate(-104%)}.path--open{visibility:visible;transition:transform .24s var(--yg-ease);transform:none;box-shadow:12px 0 32px -12px #0a143c47}.path-scrim{inset:var(--yg-topbar-h,64px) 0 0 2.75rem;z-index:8;background:color-mix(in srgb, var(--yg-ink) 18%, transparent);opacity:0;pointer-events:none;transition:opacity .24s var(--yg-ease);position:fixed}.path-scrim--open{opacity:1;pointer-events:auto}@media (prefers-reduced-motion:reduce){.path,.path--open,.path-scrim{transition:none}}.path__inner{gap:var(--yg-space-3);padding:var(--yg-space-4) var(--yg-space-3) var(--yg-space-6);grid-template-columns:minmax(0,1fr);display:grid}.path__card{gap:var(--yg-space-2);min-width:0;padding:var(--yg-space-3) var(--yg-space-4) var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);grid-template-columns:minmax(0,1fr);display:grid}.path__courses{gap:var(--yg-space-1);margin-bottom:var(--yg-space-1);border-radius:var(--yg-radius-sm);background:var(--yg-surface-2);flex-wrap:wrap;padding:3px;display:flex}.path__course{min-width:0;max-width:100%;padding:var(--yg-space-1) var(--yg-space-2);border-radius:calc(var(--yg-radius-sm) - 2px);color:var(--yg-ink-soft);font-size:var(--yg-text-xs);text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:auto;font-weight:700;text-decoration:none;overflow:hidden}.path__course[aria-current=page]{background:var(--yg-surface);color:var(--yg-realm);box-shadow:var(--yg-shadow)}.path__title{color:var(--yg-ink);font-weight:700;text-decoration:none}.path__progress{color:var(--yg-ink-soft);font-size:var(--yg-text-sm)}.path__progress .yg-num{color:var(--yg-ink);font-weight:700}.path__chapter{gap:var(--yg-space-1);grid-template-columns:minmax(0,1fr);display:grid}.path__chapter-head{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-2) var(--yg-space-1);color:var(--yg-ink-faint);font:inherit;font-size:var(--yg-text-xs);letter-spacing:.08em;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:700;display:flex}.path__chapter-head:hover{color:var(--yg-ink)}.path__chapter-title{flex:1;min-width:0}.path__items{grid-template-columns:minmax(0,1fr);gap:2px;margin:0;padding:0;list-style:none;display:grid}.path__item{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);color:var(--yg-ink-soft);font-size:var(--yg-text-sm);border-left:3px solid #0000;text-decoration:none;display:flex}.path__item:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.path__item[aria-current=page]{border-left-color:var(--yg-realm);background:color-mix(in srgb, var(--yg-realm) 13%, transparent);color:var(--yg-ink);font-weight:700}.path__item-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.path__item-kind{color:var(--yg-realm);opacity:.85}.state-dot{border:2px solid var(--yg-ink-faint);width:18px;height:18px;color:var(--yg-brand-ink);border-radius:50%;flex:none;place-items:center;display:inline-grid}[data-state=done]>.state-dot{border-color:var(--yg-success);background:var(--yg-success);color:var(--yg-surface)}[data-state=started]>.state-dot{border-color:var(--yg-coin-fill);background:linear-gradient(90deg, var(--yg-coin-fill) 50%, transparent 50%)}.learn-item__icon{color:var(--yg-realm)}.crumbs{align-items:center;gap:var(--yg-space-2);min-height:3rem;padding-block:var(--yg-space-1);padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));border-bottom:1px solid var(--yg-border);font-size:var(--yg-text-sm);min-width:0;display:flex}.crumbs__link{color:var(--yg-ink-soft);white-space:nowrap;text-decoration:none}.crumbs__link:hover{color:var(--yg-ink);text-decoration:underline}.crumbs__sep{color:var(--yg-ink-faint)}.crumbs__here{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}@media (width>=1000px){.crumbs{padding-left:var(--yg-space-5)}}.course-overview,.lesson-pane{width:100%;max-width:calc(56rem + 2 * var(--ws-side));padding-block:var(--yg-space-6) var(--yg-space-7);padding-left:max(var(--ws-side), env(safe-area-inset-left,0px));padding-right:max(var(--ws-side), env(safe-area-inset-right,0px));margin-inline:auto}.lesson-pane{gap:var(--yg-space-5);display:grid}.lesson-pane__head{gap:var(--yg-space-3);padding-bottom:var(--yg-space-4);border-bottom:1px solid var(--yg-border);display:grid}.lesson-pane__head h1{font-size:var(--yg-text-2xl);text-wrap:balance}.lesson-pane__body{font-size:1.06em}.rich{gap:var(--yg-space-4);min-width:0;display:grid}.prose pre code,.code-block code{font-family:var(--yg-font-code);font-size:var(--yg-code-block-size)}.prose pre{border:1px solid var(--yg-code-border)}.tok-keyword,.tok-modifier,.tok-operatorKeyword,.tok-controlKeyword{color:var(--yg-code-keyword)}.tok-typeName,.tok-className,.tok-namespace{color:var(--yg-code-type)}.tok-string,.tok-string2,.tok-character{color:var(--yg-code-string)}.tok-number,.tok-bool,.tok-atom,.tok-null{color:var(--yg-code-number)}.tok-comment,.tok-meta{color:var(--yg-code-comment);font-style:italic}.tok-definition,.tok-function{color:var(--yg-code-def)}.uml{gap:var(--yg-space-4);flex-wrap:wrap;margin:0;display:flex}.uml__class{border:1.5px solid var(--yg-realm);background:var(--yg-surface);min-width:15rem;max-width:100%;font-family:var(--yg-font-code);font-size:var(--yg-text-sm);border-radius:4px;overflow-x:auto}.uml__name{padding:var(--yg-space-2) var(--yg-space-3);background:color-mix(in srgb, var(--yg-realm) 12%, transparent);text-align:center;font-weight:700}.uml__part{padding:var(--yg-space-2) var(--yg-space-3);border-top:1.5px solid var(--yg-realm);white-space:pre;line-height:1.6}.uml__vis{width:1.4em;color:var(--yg-danger);font-weight:700;display:inline-block}.uml__vis--public{color:var(--yg-success)}.nsd{gap:var(--yg-space-2);margin:0;display:grid;overflow-x:auto}.nsd figcaption{font-weight:700}.nsd__frame{border:1.5px solid var(--yg-ink-soft);background:var(--yg-surface);min-width:22rem;max-width:40rem;font-size:var(--yg-text-sm)}.nsd__step,.nsd__head{padding:var(--yg-space-2) var(--yg-space-3)}.nsd__frame>*+*,.nsd__body>*+*,.nsd__branches>div>*+*{border-top:1.5px solid var(--yg-ink-soft)}.nsd__step--empty{color:var(--yg-ink-faint);text-align:center}.nsd__loop{background:color-mix(in srgb, var(--yg-realm) 6%, transparent)}.nsd__body{border-left:1.5px solid var(--yg-ink-soft);background:var(--yg-surface);margin-left:1.75rem}.nsd__loop:not(.nsd__loop--after)>.nsd__body{border-top:1.5px solid var(--yg-ink-soft)}.nsd__loop--after>.nsd__body{border-bottom:1.5px solid var(--yg-ink-soft)}.nsd__cond{min-height:3.6rem;padding:var(--yg-space-2) var(--yg-space-3) 1.3rem;text-align:center;display:grid;position:relative}.nsd__cond svg{fill:none;width:100%;height:100%;stroke:var(--yg-ink-soft);stroke-width:1.5px;position:absolute;inset:0}.nsd__text{font-weight:700;position:relative}.nsd__yes,.nsd__no{font-size:var(--yg-text-xs);color:var(--yg-ink-soft);position:absolute;bottom:2px}.nsd__yes{left:var(--yg-space-2)}.nsd__no{right:var(--yg-space-2)}.nsd__branches{border-top:1.5px solid var(--yg-ink-soft);grid-template-columns:1fr 1fr;display:grid}.nsd__branches>div+div{border-left:1.5px solid var(--yg-ink-soft)}.quiz{gap:var(--yg-space-3);padding:var(--yg-space-4);border:1px solid color-mix(in srgb, var(--yg-realm) 35%, var(--yg-border));border-radius:var(--yg-radius);background:color-mix(in srgb, var(--yg-realm) 5%, var(--yg-surface));display:grid}.quiz__head{align-items:center;gap:var(--yg-space-2);color:var(--yg-realm);font-size:var(--yg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700;display:flex}.question{gap:var(--yg-space-3);padding:var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface);display:grid}.question--right{border-color:color-mix(in srgb, var(--yg-success) 55%, var(--yg-border))}.question--wrong{border-color:color-mix(in srgb, var(--yg-danger) 55%, var(--yg-border));animation:yg-shake .35s var(--yg-ease)}@keyframes yg-shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (prefers-reduced-motion:reduce){.question--wrong{animation:none}}.question__prompt .prose{font-weight:700}.question__choices{gap:var(--yg-space-2);display:grid}.choice{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface);color:var(--yg-ink);font:inherit;text-align:left;cursor:pointer;display:flex}.choice:hover:not(:disabled){border-color:var(--yg-realm)}.choice[aria-checked=true]{border-color:var(--yg-realm);background:color-mix(in srgb, var(--yg-realm) 10%, transparent)}.choice:disabled{cursor:default}.choice code{background:var(--yg-surface-2);border-radius:4px;padding:.1em .35em}.choice__box{border:2px solid var(--yg-ink-faint);border-radius:50%;flex:none;width:18px;height:18px}.choice__box--square{border-radius:4px}.choice[aria-checked=true] .choice__box{border-color:var(--yg-realm);background:var(--yg-realm);box-shadow:inset 0 0 0 3px var(--yg-surface)}.question__typed{padding:var(--yg-space-2) var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface-sunk);color:var(--yg-ink);font-family:var(--yg-font-code);font-size:var(--yg-text-sm)}.question__foot{align-items:center;gap:var(--yg-space-3);flex-wrap:wrap;display:flex}.question__feedback{align-items:flex-start;gap:var(--yg-space-2);font-size:var(--yg-text-sm);display:flex}.question__explanation{padding:var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-success-soft);font-size:var(--yg-text-sm)}.try{border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);display:grid;overflow:hidden}.try__head{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);border-bottom:1px solid var(--yg-border);background:color-mix(in srgb, var(--yg-realm) 7%, var(--yg-surface));color:var(--yg-realm);flex-wrap:wrap;display:flex}.try__title{font-weight:700}.try__hint{color:var(--yg-ink-faint);font-size:var(--yg-text-sm);flex:1}.try__code{background:var(--yg-code-bg);max-height:32rem;color:var(--yg-code-ink);overflow:auto}.try__note{gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);border-top:1px solid var(--yg-border);color:var(--yg-ink-soft);font-size:var(--yg-text-sm);margin:0;display:flex}.try>.console{border:0;border-top:1px solid var(--yg-code-border);border-radius:0}.console{padding:var(--yg-space-3) var(--yg-space-4);border-radius:var(--yg-radius-sm);border:1px solid var(--yg-code-border);background:var(--yg-code-bg);color:var(--yg-code-ink);font-family:var(--yg-font-code);font-size:var(--yg-text-sm);white-space:pre-wrap;overflow-wrap:anywhere;max-height:22rem;margin:0;line-height:1.55;overflow:auto}.console--error,.console__err{color:var(--yg-danger)}.console__system{color:var(--yg-ink-faint)}.spinner{border:2px solid color-mix(in srgb, var(--yg-realm) 30%, transparent);border-top-color:var(--yg-realm);vertical-align:-3px;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite yg-spin;display:inline-block}@keyframes yg-spin{to{transform:rotate(360deg)}}.code-editor{background:var(--yg-code-bg);height:100%;color:var(--yg-code-ink)}.exercise{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}@media (width>=1000px){.workspace--exercise .workspace__main{height:var(--ws-h)}.exercise{grid-template-columns:minmax(340px,5fr) minmax(0,7fr)}.brief,.workshop{min-height:0;overflow-y:auto}}.brief{gap:var(--yg-space-4);padding:var(--yg-space-5) max(16px, env(safe-area-inset-right,0px)) var(--yg-space-7) max(16px, env(safe-area-inset-left,0px));flex-direction:column;display:flex}@media (width>=1000px){.brief{padding-inline:var(--yg-space-5);border-right:1px solid var(--yg-border)}}.brief>*{flex-shrink:0}.brief h1{font-size:var(--yg-text-2xl);text-wrap:balance}.brief__badges{align-items:center;gap:var(--yg-space-2);flex-wrap:wrap;display:flex}.stars{color:var(--yg-coin-fill);gap:1px;display:inline-flex}.star--off{fill:none;color:var(--yg-ink-faint)}.mission{border:1px solid color-mix(in srgb, var(--yg-realm) 40%, var(--yg-border));border-radius:var(--yg-radius);background:color-mix(in srgb, var(--yg-realm) 6%, var(--yg-surface));overflow:hidden}.mission__head{align-items:flex-start;gap:var(--yg-space-3);width:100%;padding:var(--yg-space-4);color:var(--yg-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.mission__icon{color:var(--yg-realm)}.mission__titles{gap:var(--yg-space-1);flex:1;display:grid}.mission__label{color:var(--yg-realm);font-size:var(--yg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.mission__objective{font-size:var(--yg-text-lg);font-weight:700;line-height:1.35}.mission__steps{gap:var(--yg-space-3);padding:0 var(--yg-space-4) var(--yg-space-4);margin:0;list-style:none;display:grid}.mission__steps li{gap:var(--yg-space-3);line-height:1.5;display:flex}.mission__steps code{background:var(--yg-surface-2);border-radius:4px;padding:.1em .35em}.mission__n{background:var(--yg-realm);width:1.4rem;height:1.4rem;color:var(--yg-surface);font-size:var(--yg-text-xs);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.mission__foot{gap:var(--yg-space-2);padding:var(--yg-space-3) var(--yg-space-4);border-top:1px solid color-mix(in srgb, var(--yg-realm) 25%, var(--yg-border));color:var(--yg-ink-soft);font-size:var(--yg-text-sm);margin:0;display:flex}.mission__foot .icon{color:var(--yg-success);margin-top:2px}.score-card{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);flex-wrap:wrap;display:flex}.score-card>.yg-progress,.score-card>[role=progressbar]{flex:6rem}.score-card__value{color:var(--yg-ink-soft)}.score-card__value b{color:var(--yg-ink);font-size:var(--yg-text-lg)}.score-card__xp{align-items:center;gap:var(--yg-space-1);padding:2px var(--yg-space-2);background:var(--yg-coin-soft);color:var(--yg-coin);font-size:var(--yg-text-sm);border-radius:999px;font-weight:700;display:inline-flex}.forbidden,.hint{gap:var(--yg-space-2);font-size:var(--yg-text-sm);margin:0;display:flex}.forbidden{color:var(--yg-danger)}.forbidden code{margin-left:var(--yg-space-1);background:var(--yg-danger-soft);border-radius:4px;padding:.1em .35em}.hints{justify-items:start;gap:var(--yg-space-2);display:grid}.hint{padding:var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-warning-soft)}.hint .icon{color:var(--yg-warning)}.workshop{--yg-surface:var(--yg-code-bg);--yg-surface-2:var(--yg-code-line);--yg-surface-sunk:var(--yg-code-line);--yg-border:var(--yg-code-border);--yg-ink:var(--yg-code-ink);--yg-ink-faint:var(--yg-code-gutter);background:var(--yg-surface);min-width:0;color:var(--yg-ink);flex-direction:column;display:flex}.workshop__tabs{align-items:flex-end;gap:var(--yg-space-1);padding:var(--yg-space-2) var(--yg-space-3) 0;border-bottom:1px solid var(--yg-border);background:var(--yg-surface-2);display:flex;overflow-x:auto}.file-tab{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm) var(--yg-radius-sm) 0 0;color:var(--yg-ink-soft);font-family:var(--yg-font-code);font-size:var(--yg-code-editor-size);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;display:inline-flex}.file-tab[aria-selected=true]{border-color:var(--yg-border);border-top:2px solid var(--yg-realm);background:var(--yg-surface);color:var(--yg-ink);margin-bottom:-1px}.workshop__save{padding:var(--yg-space-2) 0;color:var(--yg-ink-faint);font-size:var(--yg-text-xs);white-space:nowrap;margin-left:auto}.workshop__editors{flex:auto;min-height:18rem}@media (width>=1000px){.workshop{overflow:hidden}.workshop__editors{min-height:8rem;overflow:hidden}.workshop__file,.workshop__file .code-editor{height:100%}}@media (width<=999px){.workshop__file .cm-editor{height:auto}}.results{border-top:1px solid var(--yg-border);flex-direction:column;flex:0 auto;min-height:0;max-height:55%;display:flex}.results__head{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-4);background:var(--yg-surface-2);color:var(--yg-ink);font:inherit;text-align:left;cursor:pointer;border:0;flex-wrap:wrap;display:flex}.results--pass .results__head>.icon:first-child{color:var(--yg-success)}.results--fail .results__head>.icon:first-child,.results--fail .results__title{color:var(--yg-danger)}.results--pass .results__title{color:var(--yg-success)}.results__title{font-weight:700}.results__sub{color:var(--yg-ink-faint);font-size:var(--yg-text-sm)}.results__chev{margin-left:auto}.results__body{align-content:start;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-4) var(--yg-space-4);display:grid;overflow-y:auto}.all-passed{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-4);border-radius:var(--yg-radius-sm);background:var(--yg-success-soft);color:var(--yg-success);flex-wrap:wrap;font-weight:700;display:flex}.tests{margin:0;padding:0;list-style:none;display:grid}.test{gap:var(--yg-space-3);padding:var(--yg-space-3) 0;display:flex}.test+.test{border-top:1px solid var(--yg-border)}.test__icon{margin-top:2px}.test--pass .test__icon{color:var(--yg-success)}.test--fail .test__icon{color:var(--yg-danger)}.test__body{gap:var(--yg-space-2);flex:1;min-width:0;display:grid}.test__title{font-weight:700}.test--pass .test__title{font-weight:400}.test__hidden{margin-left:var(--yg-space-2);padding:1px var(--yg-space-2);background:var(--yg-surface-2);color:var(--yg-ink-soft);font-size:var(--yg-text-xs);border-radius:999px;font-weight:700}.test__message,.test__exception{color:var(--yg-ink-soft);font-size:var(--yg-text-sm);margin:0}.test__exception{color:var(--yg-danger);font-family:var(--yg-font-code)}.test__diff{gap:var(--yg-space-1) var(--yg-space-3);grid-template-columns:auto minmax(0,1fr);align-items:center;margin:0;display:grid}.test__diff dt{color:var(--yg-ink-faint);font-size:var(--yg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.test__diff dd{padding:var(--yg-space-1) var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-code-bg);color:var(--yg-code-ink);font-family:var(--yg-font-code);font-size:var(--yg-text-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.test__diff mark{background:var(--yg-warning-soft);color:var(--yg-warning);border-radius:3px;padding:0 1px;font-weight:700}.test__diff dd.test__prose{color:var(--yg-ink);background:0 0;padding-inline:0;font-family:inherit}.test__prose code,.test__message code{font-family:var(--yg-font-code);border-radius:var(--yg-radius-sm);background:var(--yg-surface-2);padding:0 4px;font-size:.95em}.test__soft{color:var(--yg-ink-faint);font-size:var(--yg-text-sm);margin:0}.value-empty{color:var(--yg-ink-faint);font-style:italic}.test__spots{align-items:center;gap:var(--yg-space-2);color:var(--yg-ink-faint);font-size:var(--yg-text-sm);flex-wrap:wrap;margin:0;display:flex}.spot{padding:1px var(--yg-space-2);border:1px solid color-mix(in srgb, var(--yg-realm) 45%, var(--yg-border));border-radius:var(--yg-radius-sm);background:color-mix(in srgb, var(--yg-realm) 8%, transparent);color:var(--yg-realm);font-family:var(--yg-font-code);font-size:var(--yg-text-sm);cursor:pointer}.spot:hover{background:color-mix(in srgb, var(--yg-realm) 18%, transparent)}.spot--crash{border-color:color-mix(in srgb, var(--yg-danger) 45%, var(--yg-border));background:var(--yg-danger-soft);color:var(--yg-danger)}.stdin{gap:var(--yg-space-1);font-size:var(--yg-text-sm);color:var(--yg-ink-soft);display:grid}.stdin textarea{padding:var(--yg-space-2);border:1px solid var(--yg-code-border);border-radius:var(--yg-radius-sm);background:var(--yg-code-bg);color:var(--yg-code-ink);font-family:var(--yg-font-code);resize:vertical}.workshop__actions{justify-content:space-between;align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-3) var(--yg-space-4);padding-bottom:max(var(--yg-space-3), env(safe-area-inset-bottom,0px));border-top:1px solid var(--yg-border);background:var(--yg-surface);flex-wrap:wrap;display:flex}.workshop__menus,.workshop__go{align-items:center;gap:var(--yg-space-2);flex-wrap:wrap;display:flex}.workshop__go .yg-button{align-items:center;gap:var(--yg-space-2);display:inline-flex}.menu-anchor{position:relative}.popover{bottom:calc(100% + var(--yg-space-2));z-index:5;gap:var(--yg-space-3);width:max-content;max-width:min(22rem,80vw);padding:var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);box-shadow:var(--yg-shadow-lift);display:grid;position:absolute;left:0}.popover p{margin:0}.popover--list{max-height:20rem;overflow-y:auto}.versions{gap:var(--yg-space-1);margin:0;padding:0;list-style:none;display:grid}.versions li{align-items:center;gap:var(--yg-space-3);font-size:var(--yg-text-sm);display:flex}.versions__score{margin-left:auto;font-weight:700}.preview-pill{align-items:center;gap:var(--yg-space-1);padding:2px var(--yg-space-3);background:var(--yg-xp-soft);color:var(--yg-xp);font-size:var(--yg-text-xs);border-radius:999px;font-weight:700;display:inline-flex}.user-menu{display:flex;position:relative}.user-menu>.me-link{cursor:pointer;background:0 0;border:0;padding:0}.user-menu>.me-link[aria-expanded=true]{outline:2px solid var(--yg-brand);outline-offset:2px}.user-menu__panel{z-index:40;min-width:240px;max-width:calc(100vw - 24px);padding:var(--yg-space-2);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);box-shadow:var(--yg-shadow-lift);font-size:var(--yg-text-base);animation:menu-in .14s var(--yg-ease,ease-out);display:grid;position:absolute;top:calc(100% + 10px);right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}}.user-menu__who{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3) var(--yg-space-3);margin-bottom:var(--yg-space-1);border-bottom:1px solid var(--yg-border);display:flex}.user-menu__who>span{min-width:0;display:grid}.user-menu__who strong,.user-menu__who small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-menu__who small{font-size:var(--yg-text-xs)}.user-menu__item{align-items:center;gap:var(--yg-space-3);width:100%;padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);color:var(--yg-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:500;text-decoration:none;display:flex}.user-menu__item .icon{color:var(--yg-ink-soft)}.user-menu__item:hover,.user-menu__item:focus-visible{background:var(--yg-surface-2);color:var(--yg-ink)}.user-menu__item--out{margin-top:var(--yg-space-1);border-top:1px solid var(--yg-border);border-radius:0 0 var(--yg-radius-sm) var(--yg-radius-sm)}.user-menu__item--out:hover,.user-menu__item--out:hover .icon{color:var(--yg-danger)}.admin{gap:var(--yg-space-6);grid-template-columns:232px minmax(0,1fr);align-items:start;display:grid}.admin-nav{top:calc(var(--yg-topbar-h,72px) + var(--yg-space-4));padding:var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);position:sticky}.admin-nav__label{margin:var(--yg-space-1) var(--yg-space-3) var(--yg-space-2)}.admin-nav ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.admin-nav__link{align-items:center;gap:var(--yg-space-3);padding:9px var(--yg-space-3);border-radius:var(--yg-radius-sm);color:var(--yg-ink-soft);white-space:nowrap;font-weight:500;text-decoration:none;display:flex}.admin-nav__link:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.admin-nav__link[aria-current=page]{background:var(--yg-brand-soft);color:var(--yg-brand-strong)}.admin-nav__count{font-size:var(--yg-text-xs);color:var(--yg-ink-faint);margin-left:auto}.admin-page{min-width:0}@media (width<=899px){.admin{gap:var(--yg-space-4);grid-template-columns:minmax(0,1fr)}.admin-nav{padding:var(--yg-space-1);position:static;overflow-x:auto}.admin-nav__label{display:none}.admin-nav ul{display:flex}.admin-nav__link{padding:var(--yg-space-2) var(--yg-space-3)}}.admin-head{justify-content:space-between;align-items:flex-end;gap:var(--yg-space-4);flex-wrap:wrap;display:flex}.admin-head h1{font-size:var(--yg-text-2xl)}.admin-head p{margin:var(--yg-space-1) 0 0}.admin-head__tools{align-items:center;gap:var(--yg-space-2);flex-wrap:wrap;display:flex}.admin-head__hint{font-size:var(--yg-text-sm)}.back-link{color:var(--yg-ink-soft);font-size:var(--yg-text-sm);align-self:flex-start;text-decoration:none}.back-link:hover{color:var(--yg-brand)}.kpis{gap:var(--yg-space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));display:grid}.kpi{gap:var(--yg-space-1);align-content:start;display:grid}.kpi__label{align-items:center;gap:var(--yg-space-2);font-size:var(--yg-text-sm);color:var(--yg-ink-soft);font-weight:500;display:flex}.kpi__label .icon{color:var(--yg-brand)}.kpi__value{letter-spacing:-.02em;font-size:1.875rem;font-weight:700;line-height:1.15}.kpi__value small{font-size:var(--yg-text-lg);color:var(--yg-ink-faint);font-weight:600}.kpi__note{font-size:var(--yg-text-sm);color:var(--yg-ink-faint)}.grid--admin{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}@media (width<=1099px){.grid--admin{grid-template-columns:minmax(0,1fr)}}.card--flush{padding:0;overflow:hidden}.card-head{justify-content:space-between;align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-4) var(--yg-space-5);border-bottom:1px solid var(--yg-border);flex-wrap:wrap;display:flex}.card-head h2{font-size:var(--yg-text-lg)}.card-head__link{font-size:var(--yg-text-sm);font-weight:600;text-decoration:none}.card-foot{padding:var(--yg-space-3);border-top:1px solid var(--yg-border);justify-content:center;display:flex}.empty{padding:var(--yg-space-5);margin:0}.filters{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-3) var(--yg-space-4);border-bottom:1px solid var(--yg-border);flex-wrap:wrap;display:flex}.filters__count{font-size:var(--yg-text-sm);margin-left:auto}.filter select{width:auto;min-width:160px;max-width:100%}.search{flex:220px;max-width:360px;position:relative}.search .icon{color:var(--yg-ink-faint);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.search input{width:100%;padding-left:34px}.table-wrap{overflow-x:auto}.data{border-collapse:collapse;width:100%;font-size:var(--yg-text-sm)}.data th{padding:var(--yg-space-2) var(--yg-space-4);border-bottom:1px solid var(--yg-border);background:var(--yg-surface-2);color:var(--yg-ink-soft);font-size:var(--yg-text-xs);letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap;font-weight:600}.data td{padding:var(--yg-space-3) var(--yg-space-4);border-bottom:1px solid var(--yg-border);vertical-align:middle}.data tbody tr:last-child td{border-bottom:0}.data .num{text-align:right;font-variant-numeric:tabular-nums}.data .nowrap{white-space:nowrap}.data a{color:var(--yg-ink);font-weight:600;text-decoration:none}.data a:hover{color:var(--yg-brand)}.data tr.is-link{cursor:pointer}.data tr.is-link:hover td{background:var(--yg-surface-2)}.who{align-items:center;gap:var(--yg-space-2);min-width:0;color:inherit;text-decoration:none;display:inline-flex}.who>span{display:grid}.who small{font-size:var(--yg-text-xs)}.solved{align-items:center;gap:var(--yg-space-2);white-space:nowrap;display:inline-flex}.mini-bar{background:var(--yg-surface-sunk);border-radius:6px;width:80px;height:6px;display:inline-block;overflow:hidden}.mini-bar i{border-radius:6px;height:100%;display:block}.mini-bar--good i{background:var(--yg-success)}.mini-bar--mid i{background:var(--yg-warning)}.mini-bar--low i{background:var(--yg-danger)}.attention--link{padding:var(--yg-space-2);margin:0 calc(-1 * var(--yg-space-2));border-radius:var(--yg-radius-sm);color:inherit;text-decoration:none}.attention--link:hover{background:var(--yg-surface-2)}.watch{margin:0;padding:0;list-style:none}.watch li+li{border-top:1px solid var(--yg-border)}.watch__row{align-items:center;gap:var(--yg-space-4);padding:var(--yg-space-3) var(--yg-space-5);color:inherit;text-decoration:none;display:flex}.watch__row:hover{background:var(--yg-surface-2)}.watch__main{flex:1;min-width:0;display:grid}.watch__main small{font-size:var(--yg-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.watch__score{font-size:var(--yg-text-sm);justify-items:end;gap:4px;font-weight:600;display:grid}.day-bars{gap:var(--yg-space-3);margin:0;display:grid}.day-bars__cols{align-items:stretch;gap:6px;height:180px;margin:0;padding:0;list-style:none;display:flex}.day-bars__cols--many{gap:3px}.day-bars__day{flex:1;grid-template-rows:1fr auto;gap:6px;min-width:0;display:grid}.day-bars__stack{background:var(--yg-surface-2);border-radius:4px;flex-direction:column-reverse;justify-content:flex-start;display:flex;overflow:hidden}.day-bars__stack i{flex:none;min-height:2px;display:block}.day-bars__stack i:last-child{border-radius:4px 4px 0 0}.day-bars__name{color:var(--yg-ink-faint);text-align:center;white-space:nowrap;font-size:.6875rem;overflow:visible}.day-bars__day.is-today .day-bars__name{color:var(--yg-ink);font-weight:700}.day-bars__day.is-today .day-bars__stack{box-shadow:inset 0 0 0 1px var(--yg-brand)}.legend__dot{border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.score-box{justify-items:end;gap:var(--yg-space-1);display:grid}.score-box__value{font-size:2rem;font-weight:700;line-height:1}.score-box__value small{font-size:var(--yg-text-lg);color:var(--yg-ink-faint)}.history{font-size:var(--yg-text-sm);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.history>span{margin-right:var(--yg-space-2)}.history__dot{border:1px solid var(--yg-border);background:var(--yg-surface);min-width:28px;height:28px;color:var(--yg-ink-soft);font-size:var(--yg-text-xs);border-radius:999px;place-items:center;padding:0 6px;font-weight:600;text-decoration:none;display:grid}.history__dot.is-ok{border-color:color-mix(in oklab, var(--yg-success) 50%, transparent);color:var(--yg-success)}.history__dot[aria-current=page]{background:var(--yg-brand);border-color:var(--yg-brand);color:var(--yg-brand-ink)}.grid--submission{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start}@media (width<=1099px){.grid--submission{grid-template-columns:minmax(0,1fr)}}.code-card{border-color:var(--yg-code-border);background:var(--yg-code-bg);padding:0;overflow:hidden}.code-card__head{border-bottom:1px solid var(--yg-code-border)}.file-tabs{display:flex;overflow-x:auto}.file-tab{padding:var(--yg-space-2) var(--yg-space-4);color:var(--yg-code-gutter);font-family:var(--yg-font-code);font-size:var(--yg-code-block-size);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000}.file-tab[aria-selected=true]{border-bottom-color:var(--yg-brand);color:var(--yg-code-ink)}.code-view{padding:var(--yg-space-3) 0;max-height:75vh;color:var(--yg-code-ink);font-family:var(--yg-font-code);font-size:var(--yg-code-editor-size);margin:0;line-height:1.6;overflow:auto}.code-view code{min-width:max-content;font:inherit;display:grid}.code-view__line{padding-right:var(--yg-space-4);white-space:pre;display:block}.code-view__no{width:3.5em;color:var(--yg-code-gutter);text-align:right;-webkit-user-select:none;user-select:none;padding-right:1.2em;display:inline-block}.group-title{align-items:baseline;gap:var(--yg-space-2);color:var(--yg-ink-soft);font-size:var(--yg-text-sm);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;display:flex}.group-title__count{color:var(--yg-ink-faint);letter-spacing:0;text-transform:none;font-weight:500}.ex-cell{gap:4px;display:grid}.ex-cell__meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.difficulty{color:var(--yg-coin);letter-spacing:1px;font-size:.625rem}.difficulty__off{color:var(--yg-surface-sunk)}.section-title{align-items:center;gap:var(--yg-space-2);font-size:var(--yg-text-lg);display:flex}.section-title .icon{color:var(--yg-brand)}.tips{border-color:color-mix(in oklab, var(--yg-coin) 40%, var(--yg-border));background:linear-gradient(135deg, color-mix(in oklab, var(--yg-coin) 12%, transparent), transparent 60%), var(--yg-surface)}.tips .section-title .icon{color:var(--yg-coin)}.tips ul{gap:var(--yg-space-2);margin:var(--yg-space-3) 0 0;padding-left:1.2em;display:grid}.grid--stats{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}@media (width<=999px){.grid--stats{grid-template-columns:minmax(0,1fr)}}.mistakes,.hard-tests{gap:var(--yg-space-2);margin:0;padding:0;list-style:none;display:grid}.mistake{gap:var(--yg-space-4);padding:var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);display:flex}.mistake__count{min-width:3.2rem;color:var(--yg-danger);font-size:var(--yg-text-xl);flex:none;font-weight:700;line-height:1.2}.mistake__body{gap:2px;min-width:0;display:grid}.mistake__body p{color:var(--yg-ink-soft);margin:0}.mistake__body small,.hard-test small{font-size:var(--yg-text-xs)}.hard-test{align-items:flex-start;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);display:flex}.hard-test>div{gap:2px;min-width:0;display:grid}.hard-test__icon{color:var(--yg-danger);flex:none;margin-top:2px}.hard-test.is-solved .hard-test__icon{color:var(--yg-success)}.stats-note{font-size:var(--yg-text-xs)}.sheets{gap:var(--yg-space-2);display:grid}.sheet{border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);overflow:hidden}.sheet summary{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-4);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto minmax(80px,160px);list-style:none;display:grid}.sheet summary::-webkit-details-marker{display:none}.sheet summary:hover{background:var(--yg-surface-2)}.sheet__arrow{color:var(--yg-ink-faint);transition:transform .15s;transform:rotate(-90deg)}.sheet[open] .sheet__arrow{transform:none}.sheet__title{min-width:0;display:grid}.sheet__title small{font-size:var(--yg-text-xs)}.sheet__count{font-size:var(--yg-text-sm);font-weight:600}.sheet[open] summary{border-bottom:1px solid var(--yg-border)}@media (width<=599px){.sheet summary{grid-template-columns:auto minmax(0,1fr) auto}.sheet summary .yg-progress{grid-column:2/-1}}.status-dot{width:9px;height:9px;margin-right:var(--yg-space-2);background:var(--yg-surface-sunk);vertical-align:1px;border-radius:50%;display:inline-block}.status-dot--pass{background:var(--yg-success)}.status-dot--partial{background:var(--yg-warning)}.first-try{color:var(--yg-coin);vertical-align:-1px;margin-left:6px}.profile-head__avatar{flex:none;position:relative}.profile-head__level{border:3px solid var(--yg-surface);background:var(--yg-brand);min-width:34px;height:34px;color:var(--yg-brand-ink);font-size:var(--yg-text-sm);border-radius:999px;place-items:center;padding:0 6px;font-weight:700;display:grid;position:absolute;bottom:-4px;right:-4px}.profile-head__text{flex:300px;min-width:0}.profile-head__meta{align-items:center;gap:var(--yg-space-2) var(--yg-space-3);flex-wrap:wrap;margin:0;display:flex}.profile-head__class{background:var(--yg-brand-soft);color:var(--yg-brand-strong);font-size:var(--yg-text-sm);border-radius:999px;padding:2px 10px;font-weight:600;text-decoration:none}.profile-head__xp{max-width:520px;margin-top:var(--yg-space-2);font-size:var(--yg-text-sm);gap:6px;display:grid}.profile-head__side{justify-items:end;gap:var(--yg-space-3);display:grid}.profile-settings-foot{padding-top:var(--yg-space-2)}.day-bars__name{justify-content:center;height:1.4em;line-height:1.4em;display:flex}.learner-stats a{color:var(--yg-brand);font-weight:600;text-decoration:none}.learner-stats a:hover{text-decoration:underline}.test__hidden{white-space:nowrap}.data--fixed{table-layout:fixed;min-width:760px}.data--fixed th:first-child{width:34%}.day-bars__name{justify-self:center;width:0}@media (width<=599px){.kpis{gap:var(--yg-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.kpi__value{font-size:1.5rem}}.workspace{grid-template-columns:2.75rem minmax(0,1fr)}.rail{top:var(--yg-topbar-h,64px);z-index:10;align-items:center;gap:var(--yg-space-1);height:var(--ws-h);padding-top:var(--yg-space-2);border-right:1px solid var(--yg-border);background:var(--yg-surface);flex-direction:column;display:flex;position:sticky}.rail__button{border-radius:var(--yg-radius-sm);width:2.25rem;height:2.25rem;color:var(--yg-ink-soft);cursor:pointer;background:0 0;border:0;place-items:center;transition:background .15s,color .15s;display:inline-grid}.rail__button:hover{background:var(--yg-surface-2);color:var(--yg-ink)}.rail__button[aria-expanded=true]{background:color-mix(in srgb, var(--yg-realm) 16%, transparent);color:var(--yg-realm)}.splitter{z-index:3;touch-action:none;background:0 0;display:none;position:relative}.splitter:before{content:"";background:var(--yg-border);transition:background .15s;position:absolute}.splitter--x{cursor:col-resize}.splitter--x:before{width:1px;top:0;bottom:0;left:2px}.splitter--y{cursor:row-resize;flex:none;height:5px;margin-bottom:-1px}.splitter--y:before{height:1px;top:2px;left:0;right:0}.splitter:hover:before,.splitter.is-active:before,.splitter:focus-visible:before{background:var(--yg-brand)}.splitter--x:hover:before,.splitter--x.is-active:before,.splitter--x:focus-visible:before{width:3px;left:1px}.splitter--y:hover:before,.splitter--y.is-active:before,.splitter--y:focus-visible:before{height:3px;top:1px}.splitter:focus-visible{outline:none}body.is-dragging-x{cursor:col-resize;-webkit-user-select:none;user-select:none}body.is-dragging-y{cursor:row-resize;-webkit-user-select:none;user-select:none}body.is-dragging-x iframe,body.is-dragging-y iframe{pointer-events:none}.results--open{height:var(--results-h,auto);max-height:var(--results-h,55%);flex:none}.results--open+.splitter--y,.workshop>.splitter--y+.results--open{border-top:0}@media (width>=1000px){.exercise{grid-template-columns:var(--brief-w,minmax(340px, 5fr)) 5px minmax(0, 7fr)}.exercise>.splitter--x{margin-inline:-2px;display:block}.workshop>.splitter--y{display:block}.brief{border-right:0}}.page-title{gap:var(--yg-space-1);display:grid}.see-all{color:var(--yg-brand);align-items:center;gap:var(--yg-space-1);font-weight:700;text-decoration:none;display:inline-flex}.see-all:hover{text-decoration:underline}.ring{flex:none;place-items:center;display:inline-grid;position:relative}.ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.ring__track{fill:none;stroke:color-mix(in srgb, var(--yg-realm) 14%, var(--yg-surface-2))}.ring__value{fill:none;stroke:var(--yg-realm);stroke-linecap:round;transition:stroke-dashoffset .8s var(--yg-ease)}.ring__text{font-weight:800;font-size:var(--yg-text-lg);color:var(--yg-ink);position:relative}.ring__text small{color:var(--yg-ink-soft);font-size:.6em;font-weight:700}.klass-hero .ring__text{font-size:var(--yg-text-2xl)}.grid--klasses{gap:var(--yg-space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr))}.klass{border:1px solid var(--yg-border);border-radius:var(--yg-radius-lg,var(--yg-radius));background:var(--yg-surface);min-width:0;box-shadow:var(--yg-shadow);transition:transform .18s var(--yg-ease), box-shadow .18s var(--yg-ease), border-color .18s var(--yg-ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.klass:hover{box-shadow:var(--yg-shadow-lift);border-color:color-mix(in srgb, var(--yg-realm) 45%, var(--yg-border));transform:translateY(-2px)}.klass__banner{justify-content:space-between;align-items:center;gap:var(--yg-space-4);padding:var(--yg-space-5);border-bottom:1px solid var(--yg-border);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--yg-realm) 26%, transparent), transparent 60%), linear-gradient(160deg, color-mix(in srgb, var(--yg-realm) 10%, var(--yg-surface)), var(--yg-surface));display:flex}.klass__who{gap:var(--yg-space-1);min-width:0;display:grid}.klass__name{font-size:var(--yg-text-xl)}.klass__open{color:var(--yg-ink);text-decoration:none}.klass__open:after{content:"";position:absolute;inset:0}.klass__open:focus-visible{outline:none}.klass:has(.klass__open:focus-visible){outline:3px solid var(--yg-focus);outline-offset:2px}.klass__teachers{color:var(--yg-ink-soft);font-size:var(--yg-text-sm)}.klass__figures{gap:var(--yg-space-2);padding:var(--yg-space-4) var(--yg-space-5) 0;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.klass__figures>div{padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-surface-2);gap:2px;display:grid}.klass__figures dt{font-size:var(--yg-text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--yg-ink-soft);font-weight:700}.klass__figures dd{font-size:var(--yg-text-lg);margin:0;font-weight:800}.klass__figures small{color:var(--yg-ink-faint);font-size:.7em;font-weight:600}.klass__courses{gap:var(--yg-space-1);padding:var(--yg-space-3) var(--yg-space-3) var(--yg-space-4);margin:0;list-style:none;display:grid}.klass__course,.klass__go{z-index:1;position:relative}.klass__course{align-items:center;column-gap:var(--yg-space-3);row-gap:var(--yg-space-1);padding:var(--yg-space-2);border-radius:var(--yg-radius-sm);color:var(--yg-ink);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none;display:grid}.klass__course:hover{background:var(--yg-surface-2)}.klass__course .yg-progress{--yg-progress-color:var(--yg-realm);grid-column:2/-1}.klass__course-title{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.klass__foot{justify-content:space-between;align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-3) var(--yg-space-5);border-top:1px solid var(--yg-border);background:var(--yg-surface-sunk);margin-top:auto;display:flex}.klass__next{min-width:0;display:grid}.klass__next-title{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.klass__done{align-items:center;gap:var(--yg-space-2);color:var(--yg-success);font-weight:700;display:inline-flex}.klass-hero{justify-content:space-between;align-items:center;gap:var(--yg-space-5);padding:var(--yg-space-6) var(--yg-space-5);border:1px solid var(--yg-border);border-radius:var(--yg-radius-lg,var(--yg-radius));background:radial-gradient(circle at 92% 10%, color-mix(in srgb, var(--yg-realm) 26%, transparent), transparent 55%), var(--yg-surface);flex-wrap:wrap;display:flex}.klass-hero__text{gap:var(--yg-space-2);flex:340px;min-width:0;display:grid}.klass-hero h1{font-size:var(--yg-text-3xl)}.klass-hero .klass__figures{max-width:520px;margin-top:var(--yg-space-2);padding:0}.klass-hero .klass__figures>div{background:color-mix(in srgb, var(--yg-surface-2) 80%, transparent)}.grid--class-top{grid-template-columns:minmax(0,1fr);align-items:start}@media (width>=900px){.grid--class-top{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.grid--course-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.course-tile{gap:var(--yg-space-3);padding:var(--yg-space-5);border:1px solid var(--yg-border);border-top:4px solid var(--yg-realm);border-radius:var(--yg-radius-lg,var(--yg-radius));background:var(--yg-surface);box-shadow:var(--yg-shadow);align-content:start;display:grid}.course-tile__head{justify-content:space-between;align-items:center;gap:var(--yg-space-2);font-size:var(--yg-text-sm);display:flex}.course-tile__title{font-size:var(--yg-text-lg)}.course-tile__title a{color:var(--yg-ink);text-decoration:none}.course-tile__title a:hover{color:var(--yg-realm)}.course-tile__desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course-tile__foot{justify-content:space-between;align-items:center;gap:var(--yg-space-3);font-size:var(--yg-text-sm);flex-wrap:wrap;display:flex}.steps-strip{gap:3px;margin:0;padding:0;list-style:none;display:flex}.steps-strip li{background:var(--yg-surface-2);border-radius:3px;flex:1;height:8px}.steps-strip li[data-state=done]{background:var(--yg-realm)}.steps-strip li[data-state=started]{background:color-mix(in srgb, var(--yg-realm) 40%, var(--yg-surface-2))}.finish{align-items:center;gap:var(--yg-space-4);margin-top:var(--yg-space-6);padding:var(--yg-space-4) var(--yg-space-5);border:1px solid color-mix(in srgb, var(--yg-realm) 30%, var(--yg-border));border-radius:var(--yg-radius-lg,var(--yg-radius));background:linear-gradient(120deg, color-mix(in srgb, var(--yg-realm) 9%, var(--yg-surface)), var(--yg-surface));flex-wrap:wrap;display:flex}.finish h2{font-size:var(--yg-text-md,var(--yg-text-base))}.finish__badge{background:color-mix(in srgb, var(--yg-realm) 16%, transparent);width:44px;height:44px;color:var(--yg-realm);border-radius:50%;flex:none;place-items:center;display:grid}.finish__text{gap:var(--yg-space-2);flex:260px;min-width:0;display:grid}.finish__bar{align-items:center;gap:var(--yg-space-3);display:flex}.finish__bar .yg-progress{--yg-progress-color:var(--yg-realm);flex:1}.finish__prize{align-items:center;gap:var(--yg-space-3);font-weight:700;display:inline-flex}.finish--done{border-color:color-mix(in srgb, var(--yg-success) 35%, var(--yg-border));background:linear-gradient(120deg, var(--yg-success-soft), var(--yg-surface))}.finish--done .finish__badge{background:var(--yg-success);color:var(--yg-surface)}.finish__earned{color:var(--yg-coin);font-weight:700}.preview-bar{top:var(--yg-topbar-h,64px);z-index:7;align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-4);background:var(--yg-warning-soft);border-bottom:1px solid color-mix(in srgb, var(--yg-warning) 35%, transparent);color:var(--yg-ink);font-size:var(--yg-text-sm);flex-wrap:wrap;display:flex;position:sticky}.preview-bar>.icon{color:var(--yg-warning)}.preview-bar__exit{color:var(--yg-ink);margin-left:auto;font-weight:700}.game-num{width:6.5rem}.game-quests tr.is-off td:not(:first-child){opacity:.5}.game-titles .yg-input{min-width:11rem}.game-level{background:var(--yg-brand-soft);width:2rem;height:2rem;color:var(--yg-brand-strong);border-radius:50%;place-items:center;font-weight:800;display:inline-grid}.switch{width:1.15rem;height:1.15rem;accent-color:var(--yg-brand)}.bulk-input{font-family:var(--yg-font-code);font-size:var(--yg-text-sm)}.bulk-preview td{vertical-align:top}.bulk-preview__bad td{background:var(--yg-danger-soft)}.bulk-preview__why{color:var(--yg-danger);font-weight:700;font-size:var(--yg-text-sm);margin-top:2px;display:block}.auth.auth--single{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--yg-brand) 16%, transparent), transparent 60%), var(--yg-bg);grid-template-columns:minmax(0,1fr);place-items:center}.cell--count{width:auto;min-width:calc(40px * var(--yg-density));height:calc(28px * var(--yg-density));font-size:var(--yg-text-xs);font-variant-numeric:tabular-nums;place-items:center;padding-inline:4px;font-weight:800;display:grid}.cell--count.cell--passed{color:#fff}.cell--count.cell--trying{opacity:1;color:var(--yg-ink);background:linear-gradient(to right, color-mix(in srgb, var(--yg-realm) 45%, transparent) var(--fill,0%), color-mix(in srgb, var(--yg-realm) 14%, var(--yg-surface-sunk)) var(--fill,0%))}.legend .cell--trying{background:color-mix(in srgb, var(--yg-realm) 45%, transparent);opacity:1}.matrix__table td,.matrix__table thead th:not(.matrix__student){width:auto}.matrix__table .matrix__info{padding-left:var(--yg-space-3);text-align:left;white-space:nowrap;font-size:var(--yg-text-sm)}.matrix__total{align-items:center;gap:var(--yg-space-2);grid-template-columns:3.2em 5rem;display:grid}.matrix__student a{color:var(--yg-ink);text-decoration:none}.matrix__student a:hover{text-decoration:underline}.who-online{flex:none;display:inline-flex;position:relative}.online-dot{background:var(--yg-success);width:10px;height:10px;box-shadow:0 0 0 2px var(--yg-surface);border-radius:50%;position:absolute;bottom:-1px;right:-1px}.online-text{color:var(--yg-success);font-weight:700}.live{align-items:center;gap:var(--yg-space-1);font-size:var(--yg-text-xs);color:var(--yg-ink-soft);display:inline-flex}.live__dot{background:var(--yg-success);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite live-pulse}@keyframes live-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.live__dot{animation:none}}.chapter-key{gap:var(--yg-space-1) var(--yg-space-4);padding:var(--yg-space-3) 0 0;border-top:1px solid var(--yg-border);font-size:var(--yg-text-xs);color:var(--yg-ink-soft);flex-wrap:wrap;margin:0;list-style:none;display:flex}.chapter-key .yg-num{color:var(--yg-ink);font-weight:800}.goals{gap:var(--yg-space-3);background:linear-gradient(160deg, var(--yg-brand-soft), var(--yg-surface) 70%);align-content:start;display:grid}.goals .row svg{color:var(--yg-brand)}.goals__list{gap:var(--yg-space-3);margin:0;padding:0;list-style:none;display:grid}.goal{gap:var(--yg-space-2);display:grid}.goal+.goal{padding-top:var(--yg-space-3);border-top:1px solid var(--yg-border)}.goal__head{justify-content:space-between;align-items:start;gap:var(--yg-space-2);display:flex}.goal__title{min-width:0}.goal__foot{justify-content:space-between;gap:var(--yg-space-1) var(--yg-space-3);font-size:var(--yg-text-sm);flex-wrap:wrap;display:flex}.goals--wide .goals__list{gap:var(--yg-space-3) var(--yg-space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.goals--wide .goal+.goal{border-top:0;padding-top:0}.goals--wide .goal{align-content:start}.goal[data-state=ended]{opacity:.7}.goal-rows{gap:var(--yg-space-2);margin:0;padding:0;list-style:none;display:grid}.goal-row{justify-content:space-between;align-items:center;gap:var(--yg-space-3) var(--yg-space-5);padding:var(--yg-space-3) var(--yg-space-4);border:1px solid var(--yg-border);border-left:4px solid var(--yg-brand);border-radius:var(--yg-radius-sm);background:var(--yg-surface);flex-wrap:wrap;display:flex}.goal-row[data-state=upcoming]{border-left-color:var(--yg-ink-faint)}.goal-row[data-state=ended]{border-left-color:var(--yg-border);opacity:.75}.goal-row__main{gap:var(--yg-space-2);flex:320px;min-width:0;display:grid}.goal-row__main .yg-muted{font-size:var(--yg-text-sm)}.goal-row__side{align-items:center;gap:var(--yg-space-3);flex-wrap:wrap;display:flex}.goal-row__confirm{align-items:center;gap:var(--yg-space-2);font-size:var(--yg-text-sm);flex-wrap:wrap;display:flex}.goal-form{gap:var(--yg-space-4);padding:var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface-2);display:grid}.goal-form h3{margin:0}.goal-form__grid{gap:var(--yg-space-3) var(--yg-space-4);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-items:start;display:grid}.goal-form__grid .yg-field:has(.goal-form__name){grid-column:1/-1}@media (width>=1000px){.goal-form__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.goal-form__grid .yg-field:has(.goal-form__chapter){grid-column:span 2}.goal-form__grid .yg-field:has(.goal-form__name){grid-column:auto}}.col-action{text-align:right;width:90px}.row-action{font-weight:700;text-decoration:none}.row-action:hover{text-decoration:underline}.ex-editor__title{flex:420px;min-width:0}.ex-editor__name{width:100%;padding:var(--yg-space-1) 0;color:var(--yg-ink);font:inherit;font-family:var(--yg-font-display,inherit);font-size:var(--yg-text-xl);background:0 0;border:0;border-bottom:2px solid #0000;font-weight:800}.ex-editor__name:hover:not([readonly]),.ex-editor__name:focus{border-bottom-color:var(--yg-border);outline:none}.ex-editor__name:focus{border-bottom-color:var(--yg-realm)}.ex-editor__grid{gap:var(--yg-space-4);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=1100px){.ex-editor__grid{grid-template-columns:minmax(340px,.8fr) minmax(0,1.4fr)}.ex-code{top:calc(var(--yg-topbar-h,72px) + var(--yg-space-3));position:sticky}}.ex-details fieldset{border:0;min-width:0;margin:0;padding:0}.ex-details__grid{gap:var(--yg-space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.ex-details__statement{font-family:var(--yg-font-code);font-size:var(--yg-code-block-size);min-height:220px}.ex-details__preview{min-height:220px;max-height:480px;padding:var(--yg-space-3) var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);overflow:auto}.check-row{align-items:center;gap:var(--yg-space-2);display:flex}.ex-code{grid-template-rows:auto auto auto 1fr;display:grid;overflow:hidden}.ex-code__head{gap:var(--yg-space-2);padding:var(--yg-space-4) var(--yg-space-4) var(--yg-space-3);display:grid}.ex-code__groups{gap:var(--yg-space-1);flex-wrap:wrap;display:flex}.ex-code__group{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);border:1px solid var(--yg-border);background:var(--yg-surface);color:var(--yg-ink-soft);font:inherit;cursor:pointer;border-radius:999px;font-weight:600;display:inline-flex}.ex-code__group[aria-selected=true]{border-color:var(--yg-realm);background:color-mix(in oklab, var(--yg-realm) 14%, var(--yg-surface));color:var(--yg-ink)}.ex-code__count{background:var(--yg-surface-2);min-width:1.4em;font-size:var(--yg-text-sm);text-align:center;border-radius:999px;padding:0 .4em}.ex-code__hint{font-size:var(--yg-text-sm);margin:0}.ex-code__files{align-items:end;gap:var(--yg-space-1);padding:0 var(--yg-space-3);border-bottom:1px solid var(--yg-code-border);display:flex;overflow-x:auto}.ex-code__spacer{flex:1}.ex-tab{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);color:var(--yg-ink-soft);font-family:var(--yg-font-code);font-size:var(--yg-code-editor-size);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;display:inline-flex}.ex-tab[aria-selected=true]{border-bottom-color:var(--yg-realm);color:var(--yg-ink)}.ex-tab--add{color:var(--yg-brand);font-family:inherit;font-weight:700}.ex-code__naming{align-items:end;gap:var(--yg-space-2);padding:var(--yg-space-3) var(--yg-space-4);border-bottom:1px solid var(--yg-border);flex-wrap:wrap;display:flex}.ex-code__editor{background:var(--yg-code-bg);height:min(70vh,640px);min-height:360px}.ex-code__empty{padding:var(--yg-space-5)}.ex-check .ok{color:var(--yg-success)}.ex-check .ko{color:var(--yg-danger)}.ex-check__grid{gap:var(--yg-space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));display:grid}.ex-check__compile{padding:var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-code-bg);color:var(--yg-code-ink);font-family:var(--yg-font-code);font-size:var(--yg-code-block-size);white-space:pre-wrap;margin:0;overflow-x:auto}.ex-details__statement-box .yg-field .yg-field__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ex-check__grid>div{align-content:start}.web-preview{--yg-surface:var(--yg-code-bg);--yg-surface-2:var(--yg-code-line);--yg-border:var(--yg-code-border);--yg-ink:var(--yg-code-ink);--yg-ink-faint:var(--yg-code-gutter);border-left:1px solid var(--yg-border);background:var(--yg-surface);min-width:0;min-height:32rem;color:var(--yg-ink);flex-direction:column;display:flex}.web-preview__bar{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border-bottom:1px solid var(--yg-border);background:var(--yg-surface-2);display:flex}.web-preview__dots{gap:5px;display:inline-flex}.web-preview__dots i{background:color-mix(in srgb, var(--yg-ink) 22%, transparent);border-radius:50%;width:10px;height:10px}.web-preview__address{min-width:0;padding:var(--yg-space-1) var(--yg-space-3);border:1px solid var(--yg-border);background:var(--yg-surface);color:var(--yg-ink-soft);font-family:var(--yg-font-code);font-size:var(--yg-text-xs);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;flex:1;overflow:hidden}.web-preview__page{background:#fff;flex:auto;min-height:12rem;position:relative}.web-preview__page iframe{border:0;width:100%;height:100%;display:block}.web-preview__waiting{place-content:center;justify-items:center;gap:var(--yg-space-3);padding:var(--yg-space-5);background:var(--yg-surface);color:var(--yg-ink-soft);text-align:center;display:grid;position:absolute;inset:0}.web-preview__waiting p{max-width:24rem;margin:0}.web-preview>.splitter--y{display:block}.web-bottom{height:var(--preview-bottom-h,42%);border-top:1px solid var(--yg-border);flex-direction:column;flex:none;min-height:0;display:flex}.web-bottom__tabs{gap:var(--yg-space-1);padding:var(--yg-space-1) var(--yg-space-2) 0;border-bottom:1px solid var(--yg-border);background:var(--yg-surface-2);display:flex;overflow-x:auto}.web-bottom__tab{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-3);color:var(--yg-ink-soft);font:inherit;font-size:var(--yg-text-sm);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;font-weight:600;display:inline-flex}.web-bottom__tab[aria-selected=true]{border-bottom-color:var(--yg-realm);color:var(--yg-ink)}.web-bottom__tab .count{background:color-mix(in srgb, var(--yg-ink) 12%, transparent);min-width:1.4em;font-size:var(--yg-text-xs);font-variant-numeric:tabular-nums;text-align:center;border-radius:999px;padding:0 6px}.web-bottom__tab .count--bad{background:var(--yg-danger);color:#fff}.web-bottom__body{min-height:0;padding:var(--yg-space-3) var(--yg-space-4);flex:1;overflow-y:auto}.web-bottom__empty{color:var(--yg-ink-soft);margin:0}.web-tests{gap:var(--yg-space-3);display:grid}.web-tests__verdict{align-items:center;gap:var(--yg-space-2) var(--yg-space-3);flex-wrap:wrap;margin:0;display:flex}.web-tests__verdict>span:last-child{color:var(--yg-ink-soft);font-size:var(--yg-text-sm)}.web-tests__verdict--pass>.icon{color:var(--yg-success)}.web-tests__verdict--fail>.icon,.web-tests__verdict--fail>b{color:var(--yg-danger)}.web-problems,.web-console{gap:2px;margin:0;padding:0;list-style:none;display:grid}.web-problem{align-items:flex-start;gap:var(--yg-space-2);display:flex}.web-problem>.icon{color:var(--yg-warning);flex:none;margin-top:3px}.web-problem--fehler>.icon{color:var(--yg-danger)}.web-problem button{padding:var(--yg-space-1) var(--yg-space-2);border-radius:var(--yg-radius-sm);color:var(--yg-ink);font:inherit;font-size:var(--yg-text-sm);text-align:left;cursor:pointer;background:0 0;border:0;gap:1px;display:grid}.web-problem button:hover{background:var(--yg-surface-2)}.web-problem__at{color:var(--yg-ink-soft);font-family:var(--yg-font-code);font-size:var(--yg-text-xs)}.web-console{font-family:var(--yg-font-code);font-size:var(--yg-code-block-size)}.web-console__line{padding:3px var(--yg-space-2);white-space:pre-wrap;overflow-wrap:anywhere;border-left:3px solid #0000;gap:2px;display:grid}.web-console__line--warn{border-left-color:var(--yg-warning);background:color-mix(in srgb, var(--yg-warning) 10%, transparent)}.web-console__line--error,.web-console__line--fehler{border-left-color:var(--yg-danger);background:color-mix(in srgb, var(--yg-danger) 10%, transparent);color:var(--yg-danger)}.web-console__line--info{color:var(--yg-ink-soft)}.web-console__line--dialog{border-left-color:var(--yg-realm);color:var(--yg-realm)}.web-console__explain{align-items:center;gap:var(--yg-space-2);color:var(--yg-ink);font-family:var(--yg-font-body);font-size:var(--yg-text-sm);white-space:normal;flex-wrap:wrap;display:flex}.live-switch{align-items:center;gap:var(--yg-space-2);color:var(--yg-ink-soft);font-size:var(--yg-text-xs);cursor:pointer;font-weight:600;display:inline-flex}.live-switch input{opacity:0;pointer-events:none;position:absolute}.live-switch__track{background:color-mix(in srgb, var(--yg-ink) 25%, transparent);width:2.1rem;height:1.2rem;transition:background .15s var(--yg-ease);border-radius:999px;position:relative}.live-switch__track:after{content:"";width:calc(1.2rem - 4px);height:calc(1.2rem - 4px);transition:transform .15s var(--yg-ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.live-switch input:checked+.live-switch__track{background:var(--yg-realm)}.live-switch input:checked+.live-switch__track:after{transform:translate(.9rem)}.live-switch input:focus-visible+.live-switch__track{outline:2px solid var(--yg-realm);outline-offset:2px}@media (width>=1000px){.exercise--web{grid-template-columns:var(--brief-w,minmax(280px, 3fr)) 5px minmax(0, 5fr) 5px var(--preview-w,minmax(320px, 4.5fr))}.exercise--web>.splitter--x{margin-inline:-2px;display:block}.web-preview{min-height:0;overflow:hidden}}.mission__steps pre{white-space:pre-wrap}.web-preview__address--input{align-items:center;margin:0;padding-block:0;display:flex}.web-preview__host{color:var(--yg-ink-faint)}.web-preview__address--input input{min-width:0;padding:var(--yg-space-1) 0;color:var(--yg-ink);font:inherit;background:0 0;border:0;outline:none;flex:1}.web-preview__address--input:focus-within{border-color:var(--yg-realm)}.php-error{align-content:start;justify-items:start;gap:var(--yg-space-3);padding:var(--yg-space-4);background:var(--yg-surface);color:var(--yg-ink);display:grid;position:absolute;inset:0;overflow:auto}.php-error__title{align-items:center;gap:var(--yg-space-2);color:var(--yg-danger);margin:0;font-weight:700;display:flex}.php-error pre{font-family:var(--yg-font-code);font-size:var(--yg-text-sm);white-space:pre-wrap;margin:0}.php-requests{font-family:var(--yg-font-code);font-size:var(--yg-text-xs);gap:2px;margin:0;padding:0;list-style:none;display:grid}.php-request{align-items:baseline;gap:var(--yg-space-3);padding:var(--yg-space-1) var(--yg-space-2);border-radius:var(--yg-radius-sm);grid-template-columns:3.5em minmax(0,1fr) 3em auto;display:grid}.php-request:first-child{background:color-mix(in srgb, var(--yg-realm) 10%, transparent)}.php-request__method{color:var(--yg-realm);font-weight:700}.php-request__method--POST{color:var(--yg-coin)}.php-request__url{overflow-wrap:anywhere;min-width:0;display:grid}.php-request__body{color:var(--yg-ink-soft)}.php-request__status{font-variant-numeric:tabular-nums;font-weight:700}.php-request__status--2{color:var(--yg-success)}.php-request__status--3{color:var(--yg-realm)}.php-request__status--4,.php-request__status--5{color:var(--yg-danger)}.php-request__status--off{color:var(--yg-ink-faint)}.php-request__note{color:var(--yg-ink-soft);white-space:nowrap}.php-session{gap:var(--yg-space-2);display:grid}.php-session__head{justify-content:space-between;align-items:center;gap:var(--yg-space-3);display:flex}.php-session code{font-family:var(--yg-font-code);font-weight:700}.php-session__dump{margin:0 0 var(--yg-space-2);font-family:var(--yg-font-code);font-size:var(--yg-text-xs);white-space:pre-wrap}.workshop__file:not([hidden]){flex-direction:column;display:flex}.workshop__file .code-editor{flex:auto;min-height:0}.file-banner,.workshop-notice{align-items:center;gap:var(--yg-space-2);padding:var(--yg-space-2) var(--yg-space-4);border-bottom:1px solid var(--yg-border);background:var(--yg-surface-2);color:var(--yg-ink-soft);font-size:var(--yg-text-sm);flex-wrap:wrap;margin:0;display:flex}.workshop-notice--passed{background:var(--yg-success-soft);color:var(--yg-ink)}.workshop-notice--passed>.icon:first-child{color:var(--yg-success)}.workshop-notice--passed>span{flex:14rem}.file-tab__modified{background:var(--yg-realm);border-radius:50%;width:7px;height:7px}.file-tab--old{font-style:italic}.forbidden__explain{margin-top:var(--yg-space-1);color:var(--yg-ink-soft);display:block}.can-submit{align-items:center;gap:var(--yg-space-2);color:var(--yg-success);margin:0;font-weight:700;display:flex}.yg-button.pulse{animation:1.1s 3 submit-pulse}@keyframes submit-pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--yg-coin) 30%, transparent), 0 0 18px color-mix(in srgb, var(--yg-coin) 50%, transparent)}}@media (prefers-reduced-motion:reduce){.yg-button.pulse{animation:none}}.compile-errors{gap:var(--yg-space-2);display:grid}.compile-errors__count{color:var(--yg-ink-faint);font-size:var(--yg-text-sm);margin:0}.compile-error{gap:var(--yg-space-1);padding:var(--yg-space-2) var(--yg-space-3);border-left:3px solid var(--yg-danger);border-radius:var(--yg-radius-sm);background:var(--yg-danger-soft);display:grid}.compile-error__where{align-items:center;gap:var(--yg-space-2);display:flex}.compile-error__kind{color:var(--yg-ink-faint);font-size:var(--yg-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.compile-error__text{color:var(--yg-ink);font-family:var(--yg-font-code);font-size:var(--yg-text-sm);white-space:pre-wrap}.compile-error__code{padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-code-bg);color:var(--yg-code-ink);font-family:var(--yg-font-code);font-size:var(--yg-text-sm);margin:0;overflow-x:auto}.console__link{color:var(--yg-realm);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.file-dot{background:var(--yg-ink-faint);border-radius:50%;width:8px;height:8px}.file-dot--html{background:#e86a3a}.file-dot--css{background:#4f86f7}.file-dot--js{background:#e8c547}.file-tab__readonly{color:var(--yg-ink-faint);font-family:var(--yg-font-body);font-size:var(--yg-text-xs)}.file-tab__errors{background:var(--yg-danger);color:#fff;font-family:var(--yg-font-body);font-size:var(--yg-text-xs);border-radius:9px;padding:0 6px;font-weight:700}.klass__goals{margin:var(--yg-space-4) var(--yg-space-5) 0;padding:var(--yg-space-3) var(--yg-space-4);border-radius:var(--yg-radius);background:var(--yg-surface-2);font-size:var(--yg-text-sm)}.twins{gap:var(--yg-space-2);padding:var(--yg-space-3) var(--yg-space-4);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface-2);display:grid}.twins--same{border-color:color-mix(in srgb, var(--yg-brand) 45%, var(--yg-border));background:color-mix(in srgb, var(--yg-brand) 7%, var(--yg-surface))}.twins__title{align-items:center;gap:var(--yg-space-2);margin:0;font-weight:700;display:flex}.twins--same .twins__title{color:var(--yg-brand)}.twins__list{gap:var(--yg-space-2);margin:0;padding:0;list-style:none;display:grid}.twin{align-items:center;gap:0 var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);background:var(--yg-surface);grid-template-columns:minmax(0,1fr) auto;display:grid}.twin__name{font-weight:700}.twin__who{color:var(--yg-ink-soft);font-size:var(--yg-text-sm);grid-column:1}.twin .yg-button{grid-area:1/2/span 2}.twins__note{color:var(--yg-ink-soft);font-size:var(--yg-text-sm);margin:0}.hints__title{align-items:center;gap:var(--yg-space-2);font-size:var(--yg-text-base);margin:0;display:flex}.hints__title .icon{color:var(--yg-warning)}.hints__count{color:var(--yg-ink-faint);font-size:var(--yg-text-sm);font-weight:500}.hints{justify-items:stretch}.hints .hint{padding-left:var(--yg-space-8,2.5rem);position:relative}.hints .hint:before{content:attr(data-n);left:var(--yg-space-3);top:var(--yg-space-3);background:var(--yg-warning);width:1.25rem;height:1.25rem;color:var(--yg-surface);border-radius:50%;place-items:center;font-size:.7rem;font-weight:700;display:grid;position:absolute}.hint-button{align-items:center;gap:var(--yg-space-2);width:100%;padding:var(--yg-space-2) var(--yg-space-3);border:1px dashed color-mix(in srgb, var(--yg-warning) 55%, var(--yg-border));border-radius:var(--yg-radius-sm);color:var(--yg-ink);font:inherit;font-size:var(--yg-text-sm);text-align:left;cursor:pointer;background:0 0;display:flex}.hint-button:hover:not(:disabled){background:var(--yg-warning-soft)}.hint-button:disabled{border-color:var(--yg-border);color:var(--yg-ink-faint);cursor:default}.hint-button .icon{color:var(--yg-warning);flex:none}.hint-button:disabled .icon{color:var(--yg-ink-faint)}.hint-button__cost{padding:1px var(--yg-space-2);background:var(--yg-warning-soft);color:var(--yg-warning);font-size:var(--yg-text-xs);white-space:nowrap;border-radius:999px;margin-left:auto;font-weight:700}.hints__error{color:var(--yg-danger);font-size:var(--yg-text-sm);margin:0}.matrix__table{border-spacing:6px 8px;width:100%}.matrix__table th,.matrix__table .matrix__info{font-size:var(--yg-text-sm)}.matrix__table thead th,.matrix__table thead th.matrix__info,.matrix__table thead th.matrix__student{vertical-align:bottom;padding-bottom:var(--yg-space-1);font-size:var(--yg-text-sm);color:var(--yg-ink-soft);font-weight:600}.matrix__table thead th.matrix__chapter{text-align:left;min-width:6.5rem;color:var(--yg-ink-soft);font-weight:600}.matrix__chapter .matrix__ex{width:1.5rem;height:1.5rem;margin-bottom:var(--yg-space-1);background:color-mix(in srgb, var(--yg-realm) 16%, transparent);color:var(--yg-realm);font-size:var(--yg-text-xs);border-radius:50%;place-items:center;font-weight:800;display:inline-grid}.matrix__chapter-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}tbody .matrix__student{min-width:12rem;font-size:var(--yg-text-base);font-weight:600}.matrix__table .cell--count{border-radius:var(--yg-radius-sm);width:100%;min-width:0;height:2.5rem;font-size:var(--yg-text-sm)}.matrix__table .matrix__info{font-size:var(--yg-text-base)}.matrix__total{grid-template-columns:3.2em minmax(6rem,1fr)}.matrix .legend{font-size:var(--yg-text-sm)}.matrix .legend .cell{width:16px;height:16px}.studio{gap:var(--yg-space-5);display:grid}.studio__head{gap:var(--yg-space-3);display:grid}.studio__body{gap:var(--yg-space-5);grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);align-items:start;display:grid}@media (width<=900px){.studio__body{grid-template-columns:minmax(0,1fr)}}.studio__main{min-width:0}.studio-outline{top:calc(var(--yg-topbar-h,64px) + var(--yg-space-4));gap:var(--yg-space-2);max-height:calc(100dvh - var(--yg-topbar-h,64px) - var(--yg-space-8,3rem));padding:var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface);display:grid;position:sticky;overflow-y:auto}@media (width<=900px){.studio-outline{max-height:none;position:static}}.studio-outline{grid-template-columns:minmax(0,1fr)}.studio-outline>*,.studio-outline li{min-width:0}.studio-outline ol{margin:0;padding:0;list-style:none}.studio-outline__chapters{gap:var(--yg-space-1);display:grid}.studio-outline__course,.studio-outline__chapter,.studio-outline__item{box-sizing:border-box;align-items:center;gap:var(--yg-space-2);border-radius:var(--yg-radius-sm);width:100%;min-width:0;color:var(--yg-ink-soft);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.studio-outline__course,.studio-outline__chapter{padding:var(--yg-space-2) var(--yg-space-3);color:var(--yg-ink);font-weight:700}.studio-outline__item{padding:.4rem var(--yg-space-3) .4rem 2.6rem;font-size:var(--yg-text-sm)}.studio-outline__item .icon{color:var(--yg-ink-faint);flex:none}.studio-outline :is(button):hover{background:var(--yg-surface-2)}.studio-outline [aria-current=true]{background:var(--yg-brand-soft);color:var(--yg-brand)}.studio-outline [aria-current=true] .icon{color:var(--yg-brand)}.studio-outline__text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.studio-outline__count{color:var(--yg-ink-faint);font-size:var(--yg-text-xs);font-weight:600}.studio-outline__add{margin-top:var(--yg-space-2);justify-content:center}.studio-num{background:color-mix(in srgb, var(--yg-realm) 16%, transparent);width:1.6rem;height:1.6rem;color:var(--yg-realm);font-size:var(--yg-text-xs);border-radius:50%;flex:none;place-items:center;font-weight:800;display:inline-grid}.studio-panel__head{justify-content:space-between;align-items:flex-start;gap:var(--yg-space-3);flex-wrap:wrap;display:flex}.studio-panel__grow{flex:1;min-width:min(100%,20rem)}.studio-panel__title{font-size:var(--yg-text-xl);text-wrap:balance;margin:0}.studio-tools{align-items:center;gap:var(--yg-space-1);flex-wrap:wrap;display:inline-flex}.studio-title-input{width:100%;padding:var(--yg-space-1) var(--yg-space-2);margin-left:calc(-1 * var(--yg-space-2));border-radius:var(--yg-radius-sm);color:var(--yg-ink);font-family:var(--yg-heading-font);font-size:var(--yg-text-xl);background:0 0;border:1px solid #0000;font-weight:700}.studio-title-input:hover{border-color:var(--yg-border)}.studio-title-input:focus{border-color:var(--yg-brand);background:var(--yg-surface);outline:none}.figures{gap:var(--yg-space-4);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.figure{gap:var(--yg-space-1);display:grid}.figure__value{font-family:var(--yg-font-display);font-size:var(--yg-text-2xl);color:var(--yg-ink);font-weight:700}.studio-empty{justify-items:center;gap:var(--yg-space-3);padding-block:var(--yg-space-6,2rem);text-align:center;color:var(--yg-ink-faint);display:grid}.studio-empty h2{color:var(--yg-ink);margin:0}.studio-empty p{max-width:34rem;margin:0}.studio-items{padding:var(--yg-space-2)}.studio-items ol{margin:0;padding:0;list-style:none;display:grid}.studio-item{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);display:flex}.studio-item+.studio-item{border-top:1px solid var(--yg-border)}.studio-item:hover{background:var(--yg-surface-2)}.studio-item__pos{width:1.5rem;color:var(--yg-ink-faint);font-size:var(--yg-text-sm);text-align:right}.studio-item__icon{border-radius:var(--yg-radius-sm);background:var(--yg-brand-soft);width:2.25rem;height:2.25rem;color:var(--yg-brand);flex:none;place-items:center;display:inline-grid}.studio-item__icon[data-kind=write],.studio-item__icon[data-kind=exercise]{background:color-mix(in srgb, var(--yg-realm) 14%, transparent);color:var(--yg-realm)}.studio-item__icon[data-kind=debug]{background:color-mix(in srgb, var(--yg-warning) 18%, transparent);color:var(--yg-warning)}.studio-item__main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:0;display:grid}.studio-item__title{color:var(--yg-ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.studio-item__main:hover .studio-item__title{color:var(--yg-brand)}.studio-item__kind{color:var(--yg-ink-faint);font-size:var(--yg-text-sm)}.studio-add{gap:var(--yg-space-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.studio-add__card{justify-items:start;gap:var(--yg-space-1);padding:var(--yg-space-4);border:1.5px dashed color-mix(in srgb, var(--yg-ink-faint) 45%, transparent);border-radius:var(--yg-radius);color:var(--yg-brand);font:inherit;text-align:left;cursor:pointer;transition:border-color .14s var(--yg-ease), background .14s var(--yg-ease);background:0 0;display:grid}.studio-add__card:hover{border-color:var(--yg-brand);background:var(--yg-brand-soft);border-style:solid}.studio-add__title{margin-top:var(--yg-space-1);color:var(--yg-ink);font-weight:700}.studio-add__text{color:var(--yg-ink-soft);font-size:var(--yg-text-sm)}.studio-savebar{top:var(--yg-topbar-h,64px);z-index:2;align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:color-mix(in srgb, var(--yg-surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;position:sticky}.studio-savebar__state{align-items:center;gap:var(--yg-space-1);font-weight:600;display:inline-flex}.studio-savebar__state[data-state=dirty]{color:var(--yg-warning)}.studio-savebar__state[data-state=saved],.studio-saved{align-items:center;gap:var(--yg-space-1);color:var(--yg-success);font-weight:600;display:inline-flex}.studio-savebar__hint{font-size:var(--yg-text-sm);margin-left:auto}.studio-split{gap:var(--yg-space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=1200px){.studio-split{grid-template-columns:minmax(0,1fr)}}.studio-split__pane{gap:var(--yg-space-2);min-width:0;display:grid}.studio-split__label{color:var(--yg-ink-faint);font-size:var(--yg-text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.studio-split__hint{color:var(--yg-ink-faint);font-size:var(--yg-text-sm)}.studio-source{min-height:70vh;padding:var(--yg-space-4);border:1px solid var(--yg-code-border,var(--yg-border));border-radius:var(--yg-radius);background:var(--yg-code-bg,var(--yg-surface));color:var(--yg-ink);font-family:var(--yg-font-code);font-size:var(--yg-code-block-size,13.5px);resize:vertical;line-height:1.65}.studio-source:focus{border-color:var(--yg-brand);outline:2px solid color-mix(in srgb, var(--yg-brand) 25%, transparent)}.studio-preview{min-height:70vh;padding:var(--yg-space-5);border:1px solid var(--yg-border);border-radius:var(--yg-radius);background:var(--yg-surface)}.studio-facts{color:var(--yg-ink-soft);font-size:var(--yg-text-sm);align-items:center}.studio-cta{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-4);border-radius:var(--yg-radius);background:var(--yg-brand-soft);flex-wrap:wrap;display:flex}.studio-cta .yg-muted{flex:1;min-width:16rem}.studio-statement{gap:var(--yg-space-3);display:grid}.studio-statement__goal{color:var(--yg-ink);margin:0;font-weight:600}.dialog-actions{justify-content:flex-end;gap:var(--yg-space-2);padding-top:var(--yg-space-2);flex-wrap:wrap;display:flex}.picks legend{margin-bottom:var(--yg-space-2);padding:0}.picks{gap:var(--yg-space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.picks__grid{gap:var(--yg-space-2);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.pick{align-items:center;column-gap:var(--yg-space-2);padding:var(--yg-space-3);border:1.5px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface);cursor:pointer;grid-template-columns:auto minmax(0,1fr);row-gap:2px;display:grid;position:relative}.pick:hover{border-color:color-mix(in srgb, var(--yg-brand) 50%, var(--yg-border))}.pick[data-checked]{border-color:var(--yg-brand);background:var(--yg-brand-soft);box-shadow:0 0 0 1px var(--yg-brand)}.pick:has(input:focus-visible){outline:2px solid var(--yg-brand);outline-offset:2px}.pick input{opacity:0;pointer-events:none;position:absolute}.pick__icon{color:var(--yg-brand);place-items:center;display:inline-grid}.pick__dot{background:var(--yg-realm);border-radius:50%;width:.7rem;height:.7rem}.pick__title{color:var(--yg-ink);font-weight:700}.pick__text{color:var(--yg-ink-soft);font-size:var(--yg-text-sm);grid-column:1/-1}.search-field{align-items:center;gap:var(--yg-space-2);padding:0 var(--yg-space-3);border:1px solid var(--yg-border);border-radius:var(--yg-radius-sm);background:var(--yg-surface);color:var(--yg-ink-faint);display:flex}.search-field:focus-within{border-color:var(--yg-brand)}.search-field input{min-width:0;padding:var(--yg-space-2) 0;color:var(--yg-ink);font:inherit;background:0 0;border:0;outline:none;flex:1}.library-list{gap:var(--yg-space-1);max-height:50vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.library-row{align-items:center;gap:var(--yg-space-3);padding:var(--yg-space-2) var(--yg-space-3);border-radius:var(--yg-radius-sm);cursor:pointer;border:1.5px solid #0000;display:flex}.library-row:hover{background:var(--yg-surface-2)}.library-row[data-checked]{border-color:var(--yg-brand);background:var(--yg-brand-soft)}.library-row input{width:1.1rem;height:1.1rem;accent-color:var(--yg-brand)}.library-row__main{flex:1;min-width:0;display:grid}.library-row__title{color:var(--yg-ink);font-weight:600}.library-row__meta{color:var(--yg-ink-faint);font-size:var(--yg-text-sm)}.studio-overview{gap:var(--yg-space-5);grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);align-items:start;display:grid}@media (width<=1200px){.studio-overview{grid-template-columns:minmax(0,1fr)}}.studio-contents{margin:0;padding:0;list-style:none;display:grid}.studio-contents li+li{border-top:1px solid var(--yg-border)}.studio-contents button{box-sizing:border-box;align-items:center;column-gap:var(--yg-space-3);width:100%;padding:var(--yg-space-2);border-radius:var(--yg-radius-sm);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);display:grid}.studio-contents button:hover{background:var(--yg-surface-2)}.studio-contents__title{color:var(--yg-ink);font-weight:600}.studio-contents__meta{color:var(--yg-ink-faint);font-size:var(--yg-text-sm);grid-column:2}.textarea--prose{font-family:var(--yg-font-body);font-size:var(--yg-text-md);line-height:1.55}.grid--courses{gap:var(--yg-space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr))}.tile__text{color:var(--yg-ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tile__foot{font-size:var(--yg-text-sm);margin-top:auto}.grid--courses .tile--course{flex-direction:column;min-height:11rem;display:flex}.tile-new{align-content:center;min-height:11rem}
