@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Variable;font-style:italic;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-italic-DUE6_iCb.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans Variable;font-style:italic;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-italic-Cz4n9dED.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAASUABAAAAAACRAAAAQ3AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3oLIAABNgIkAzoEIAWFHgeBFAwHG3AHKB4HzukrRjyF5Gb4kQ/B873d17mv8TWkoqUUGaHodJCtoqntw7m8tiPWyGkfWDU/IMpzVk4zAs9Czv3c7Os5NvKFG1Ht9vBVXySRZpJc4tTrbM3sTRFcLa3zVboKWRIoAksKSKgqUQWEwlSoqjp44V5J9/kjd0+Fi5xaFjwJArgBAIJgIAgCCAI4CdNMqGuYXYUKdADLAkAAJwl6iX0+bZqEm1AH0Hu9rvrJHwxQG1Q/gFYwWYbgTRWgwEESVzbmtjQAt3DXO7Tu/+9Q/KNKWhTCgZ8fQSWoL0CUUgTBjgL8iEAcce7YHBeA8ZvogieCnxI0BCVeACCAAhBD/oDcAdUPABSgAX4kBPBTwjCAjwYSCneiqF65LUo/qXdYFrRwTujtMrKm07plTbSqLQFAiHBN7E4DG5wkiGXhCYBNETh3K/AciHN69iFfQjFOr9EXQQAAQXRNszs8PR0OH4fDV/dwGe76CHdj1MQa11DXYGcfZ6+B1X0OfwjY+i7KpQ1w9d+1z3/HydCB1f3U8A0fRFv+0bXxPWrZu3d9Nn4UcbLs/QCXLH/j3PCKblKOiZxLOR78W9brPo7eGTLz/F27ZPmePQdCB1YP4nJU91o4gU9cy64L3c3SPu8GfDn6ZXD2cGmllVqSxtD5vCXHm5xaeHlnpffx7DcPvXog5NnjA//cPz2btsz3yf+0MI8ri33tuv7upNbYmW5STbosW8bYItV/SPzxvXC0KnpWnFdC91oojit5Lyo6WcJQ1YzwBYbi52ohJVpcxfcHBqsv0nFz8U74rzS6M7r0RVlXZ3jJC4G92O//7Lm78VOtnUx+aQxAzsqPnrRr1t9zDrezKePvZ027x+fGte4s4NXu7/jEp3G9cM1bICYgACbuETUUD5wmenGXA/IBpAKVrl0AEJ5cqr6Q89tGq+SpqkDfX2DtG+pZ9teuae0AX98c301CX179InyErnSG8WCiABB4HFbVrw/lpTdBIOk82nXbpHKoQGyBpUovAAD4XQA8ZTUCeBJHIpI0v0FRrgcnckV3ANckrwYJKXEihQfdSKPER6XeExmEeEMmSe6QBwWmkZdmSOSthhibgIkBlUYreBKd/0NeVAE9WAyEaQpH6KikDWlUVg43Jy2FOmaYlsZhDEGZXO3mWEyWHI6zuaJkMlcSQ9k4F+KidIiFyZItGDc7r1pUj6wP6zrWB0/fbeeFeHl4YOvETMNiM8Ny+7OO6Qh2wur20YVxFts5dlORdl5Kwd5utR7SRcxqX8RA5Ehacha76hg7c6yzNm/Xf6vOLNrv544lIEkWg7xWo/ItBAeIJEmt0XgBwgM8gTifoiiLJroYYooNTeziEKe4zOoR/wvIKp89hSr+6jFAqw/LaonjmZHSscMNg4iPlWpFrO1RN3zkMU+/xUP+JQ99TbvTl1Vg0gtirT6lbwYAAAA=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQAAAAQtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVDYAdBEICoRkg3gLIAABNgIkAzoEIAWFIgeBFAwHG1wHKI7DuPEacDIiFJ/g+f47+1/7dIcdXTlD8DKqmcw4eIC+AOCPf6+qiWq3h6+aSCLNJDnkqX9Xl+rv/6dSBcwSBCzEoVqxNbp5SqPMYdKBQhBq1dK9ggSsgYUoGnHOqttMECvWjIJfPA8cjQAuAEAQLAiClASc7M6OkfbO/nHs6ACmCYBxZXKP4s9uXIHECh4AdEhX0yIHC6jzgAb65sshStMMChwEfWVjZe8Anset/6H93x8jOyL5fuS67z4Dlam+BPyH/pV2FLCZAOnU0XPzCQGiJ7AkXgSFhqDEB4AAoAAN2ExDgM10joCNfDQUbvxaXM8LovT79D9MEyYU9+q/myT9p/m8uWi2mLJBPbzcih2wYIPzBDFNvABt315OXwy8BaRnbo5hXsOS5taknX4FguiaZnd4vQ7HxnBnm3SPYXHrQbclvOgyDhsHnZPO8f3G5I2fbr34Y7+hzRozVzyw5bKHdu03plXgvE9FO/Uz4/xPUKd8/PHk+R+JODnlg1lDTv3Qed77zDNqRszaqHUQT248kUPGzBXXXHGFnHrVVdft2m8c4PhpjB+/QEqMU54xruc6m3w8++XNXx4sya9rMvNq88m6X1zeOMlRuQ+/nvNw4+ZrCt58yDdSVOQdfoi/jc/ePfZY+1taYaH21FH2Y4fGG+RVNJkIN4SSiWj3ZKGG1oojoYr2SNWFVbHvY1XX1PR+H6y+oKrqgmryqj1UXnmk5cKWysPM3R4Uh5svYo6saAtU3V297+d91U/X/frzLvUdqiqfruKvhx5+OeOYxbHI7SenQum+PTw/fvRLGQ/jiufOn3/S+vlsfGn9h4Zb96fekZ7xRups68FhVCYCWHHvZVIPxjanr3NABSALqkR7FMBOulF9ScHvV3np+6pK/eEzRx877K3/z65pvwN89eGtV3Ly5ft/25ngaiSYDVYUAAKvIKimMdLO6YBQEY+aZpbXZ5WinTBQXwAA4LMAXuNUBPCSTmMfjd6jpNLNjbToDuBpaR9AoTBbUeERO2o0erNeR6KFne5HK/nOQA+VBtFnt1LtBj6pJQIutnLwipz/Ix9OYNSqZQEreiQELIkKmRIRNWdewpiIZVGtVi0J6xWR0ComIGpFnN+AVStWzUtIWBNXq0iRuJCYqDUJcYXiopYUWhUzp8iQTv20dtO84Agw6YrhuOijfqUKlSpRAruvTq9WdeQw2vs5SUsCYhdt7icIt1nNkseKPZzgV6q4FfYbH4ZIBcThYTEgLIgIkYRbJLl7/rks+ObZDxydE8W9LymoUMiqZUVbtVv0GNkcispQM0IpEG7sBdK9IYr6aKKLRaxiQxO7OMQphrUlGIscFbElV6LF5S0dQN5RbRoUdRbWWOYCy8sB83RxS7FqG/UEQslE5Nsd5v93uF3T0bLiypD/uJhn3q9fCAA=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--mq-paper: #ffffff;--mq-paper-2: #f6f6f9;--mq-ink: #15172e;--mq-ink-2: #41445f;--mq-ink-3: #6d7090;--mq-rule: #e7e7f0;--mq-rule-2: #d3d4e3;--mq-code: #0b6fc0;--mq-systems: #b8650a;--mq-ai: #0f9d63;--mq-code-soft: #e3f1fc;--mq-systems-soft: #fbefdc;--mq-ai-soft: #e3f6ed;--mq-good: #12805c;--mq-bad: #c43d3d;--mq-bad-soft: #fcebeb;--mq-good-soft: #e2f5ee;--mq-btn: #15172e;--mq-on-btn: #ffffff;--mq-sans: "DM Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--mq-display: "Space Grotesk Variable", "DM Sans Variable", system-ui, sans-serif;--mq-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mq-ease: cubic-bezier(.2, .7, .2, 1);--mq-measure: 640px;color-scheme:light}:root[data-theme=dark]{--mq-paper: #0a0a0c;--mq-paper-2: #121317;--mq-ink: #ededf0;--mq-ink-2: #b3b5bd;--mq-ink-3: #868892;--mq-rule: #1e2025;--mq-rule-2: #2c2f37;--mq-code: #6ea8ff;--mq-systems: #f2b04a;--mq-ai: #3ecf8e;--mq-code-soft: rgba(110, 168, 255, .13);--mq-systems-soft: rgba(242, 176, 74, .13);--mq-ai-soft: rgba(62, 207, 142, .12);--mq-good: #3ecf8e;--mq-bad: #ff7b72;--mq-bad-soft: rgba(255, 123, 114, .12);--mq-good-soft: rgba(62, 207, 142, .12);--mq-btn: #ededf0;--mq-on-btn: #0a0a0c;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--mq-paper);color:var(--mq-ink);font-family:var(--mq-sans);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:var(--mq-ai-soft)}.mq-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mq-skip{position:absolute;left:-999px;top:8px;z-index:100}.mq-skip:focus{left:8px;background:var(--mq-paper);color:var(--mq-ink);padding:8px 12px;border-radius:6px}[data-domain=code]{--mq-d: var(--mq-code);--mq-d-soft: var(--mq-code-soft)}[data-domain=systems]{--mq-d: var(--mq-systems);--mq-d-soft: var(--mq-systems-soft)}[data-domain=ai]{--mq-d: var(--mq-ai);--mq-d-soft: var(--mq-ai-soft)}.mq-bar{display:flex;align-items:center;gap:4px;padding:14px 24px;max-width:1180px;margin:0 auto}.mq-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--mq-display);font-weight:600;font-size:19px;letter-spacing:-.01em;color:var(--mq-ink);text-decoration:none;margin-right:auto}.mq-brand svg{display:block}.mq-nav{display:flex;align-items:center;gap:2px}.mq-nav a,.mq-icon-btn{font-size:14.5px;color:var(--mq-ink-2);text-decoration:none;padding:7px 11px;border-radius:999px;border:0;background:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:inherit;line-height:1.2;min-height:36px}.mq-nav a:hover,.mq-icon-btn:hover,.mq-nav a[aria-current=page]{color:var(--mq-ink);background:var(--mq-paper-2)}.mq-count{font-family:var(--mq-mono);font-size:11.5px;color:var(--mq-ink-3)}.mq-nav .mq-wide{display:inline-flex}.mq-courses{position:relative}.mq-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:50;background:var(--mq-paper);border:1px solid var(--mq-rule-2);border-radius:12px;padding:6px;min-width:260px;box-shadow:0 18px 40px -20px #00000073}.mq-menu a{display:flex;gap:12px;align-items:baseline;padding:10px 12px;border-radius:8px;color:var(--mq-ink)}.mq-menu a small{display:block;color:var(--mq-ink-3);font-size:13px}.mq-dot{width:8px;height:8px;border-radius:50%;background:var(--mq-d);flex:none;display:inline-block}.mq-main,.mq-main:focus,.mq-main:focus-visible{outline:none}.mq-page{max-width:1180px;margin:0 auto;padding:8px 24px 64px}.mq-center{min-height:calc(100vh - 130px);min-height:calc(100dvh - 130px);display:grid;place-items:center;padding:16px 24px 48px}.mq-col{width:100%;max-width:var(--mq-measure)}.mq-kicker{font-family:var(--mq-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--mq-ink-3);margin:0 0 14px;display:flex;gap:10px;align-items:center}.mq-h1{font-family:var(--mq-display);font-weight:600;font-size:clamp(30px,5vw,46px);line-height:1.08;letter-spacing:-.025em;margin:0 0 14px}.mq-h2{font-family:var(--mq-display);font-weight:600;font-size:24px;letter-spacing:-.015em;line-height:1.2;margin:0 0 10px}.mq-lede{color:var(--mq-ink-2);font-size:18px;margin:0 0 26px;max-width:34em}.mq-muted{color:var(--mq-ink-3)}.mq-small{font-size:14px}.mq-quiet{color:var(--mq-ink-3);font-size:14.5px;display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}.mq-quiet b{color:var(--mq-ink-2);font-weight:600}a{color:inherit}.mq-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 16px/1 var(--mq-sans);padding:15px 22px;border-radius:999px;border:1px solid transparent;background:var(--mq-btn);color:var(--mq-on-btn);cursor:pointer;text-decoration:none;transition:transform .15s var(--mq-ease),opacity .15s;min-height:48px}.mq-btn:hover{transform:translateY(-1px)}.mq-btn:active{transform:translateY(0)}.mq-btn.ghost{background:transparent;color:var(--mq-ink);border-color:var(--mq-rule-2)}.mq-btn.small{padding:9px 14px;font-size:14.5px;min-height:38px}.mq-btn[disabled]{opacity:.45;cursor:default;transform:none}.mq-link{background:none;border:0;padding:0;color:var(--mq-ink-2);font:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:var(--mq-rule-2);text-underline-offset:4px}.mq-link:hover{color:var(--mq-ink);text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--mq-ai);outline-offset:2px}.mq-chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--mq-mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--mq-d, var(--mq-ink-3))}.mq-input{font:16px var(--mq-sans);padding:12px 14px;border-radius:10px;border:1px solid var(--mq-rule-2);background:var(--mq-paper);color:var(--mq-ink);width:100%;min-height:46px}.mq-input:focus{outline:none;border-color:var(--mq-ink-3)}.mq-landing{position:relative;min-height:100vh;min-height:100dvh;overflow:hidden;display:flex;flex-direction:column}.mq-field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.mq-landing .mq-bar{position:relative;z-index:2;width:100%}.mq-hero{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:flex-end;width:100%;max-width:1180px;margin:0 auto;padding:24px 24px 36px;pointer-events:none}.mq-hero>*{pointer-events:auto}.mq-hero .mq-h1{font-size:clamp(34px,6.2vw,68px);max-width:13em}.mq-hero .mq-lede{max-width:30em}@media (min-width: 760px){.mq-hero .mq-h1{max-width:8.2em}.mq-hero .mq-lede{max-width:min(30em,46vw)}}.mq-hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:34px}.mq-stories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--mq-rule)}.mq-story{display:block;text-decoration:none;padding:18px 22px 4px 0;color:var(--mq-ink)}.mq-story+.mq-story{padding-left:22px;border-left:1px solid var(--mq-rule)}.mq-story b{display:block;font-family:var(--mq-display);font-weight:600;font-size:17.5px;line-height:1.3;margin:8px 0 4px}.mq-story span.q{color:var(--mq-ink-3);font-size:14.5px;line-height:1.45;display:block}.mq-story:hover b{text-decoration:underline;text-decoration-color:var(--mq-d);text-underline-offset:5px}.mq-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,var(--mq-paper) 0%,color-mix(in srgb,var(--mq-paper) 70%,transparent) 34%,transparent 52%),linear-gradient(180deg,transparent 0%,transparent 55%,var(--mq-paper) 84%)}.mq-pick{position:absolute;z-index:3;width:min(320px,calc(100% - 32px));padding:14px 16px;background:color-mix(in srgb,var(--mq-paper) 92%,transparent);border:1px solid var(--mq-rule);border-radius:12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;flex-direction:column;gap:4px;animation:mq-pick-in .22s ease-out}.mq-pick b{font-family:var(--mq-display);font-weight:600;font-size:17px;line-height:1.3}.mq-pick .q{color:var(--mq-ink-2);font-size:14px;line-height:1.45}.mq-pick-flow{color:var(--mq-ink-3);font-size:13px;line-height:1.45}.mq-pick .mq-link{font-size:14px;margin-top:4px;align-self:flex-start}.mq-pick-x{position:absolute;top:6px;right:8px;border:0;background:none;color:var(--mq-ink-3);font-size:18px;line-height:1;padding:6px;cursor:pointer;border-radius:6px}.mq-pick-x:hover{color:var(--mq-ink);background:var(--mq-paper-2)}@keyframes mq-pick-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion: reduce){.mq-pick{animation:none}}@media (max-width: 759px){.mq-pick{position:fixed;left:16px;right:16px!important;bottom:16px!important;width:auto}}.mq-step{padding:4px 0 0}.mq-step .mq-h1{margin-bottom:10px}.mq-step-q{font-size:19px;color:var(--mq-ink-2);margin:0 0 30px}.mq-step-actions{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center;margin-bottom:40px}.mq-divider{height:1px;background:var(--mq-rule);margin:28px 0 18px;border:0}.mq-alts{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:2px}.mq-alts a{display:flex;gap:12px;align-items:baseline;padding:10px 0;text-decoration:none;color:var(--mq-ink);border-bottom:1px solid var(--mq-rule)}.mq-alts a small{color:var(--mq-ink-3);margin-left:auto;font-size:13.5px;white-space:nowrap}.mq-flame{display:inline-flex;align-items:center;gap:6px}.mq-flame i{width:7px;height:7px;border-radius:50%;background:var(--mq-ai);display:inline-block}.mq-week{display:inline-flex;gap:4px;vertical-align:middle}.mq-week i{width:6px;height:6px;border-radius:50%;background:var(--mq-rule-2);display:inline-block}.mq-week i.on{background:var(--mq-ai)}.mq-course-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:28px 0 26px;border-bottom:1px solid var(--mq-rule)}.mq-meter{height:3px;background:var(--mq-rule);border-radius:3px;overflow:hidden;margin-top:16px;max-width:360px}.mq-meter span{display:block;height:100%;background:var(--mq-d, var(--mq-ai))}.mq-course-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;padding-top:26px}.mq-parts{list-style:none;margin:0;padding:0;display:grid;gap:1px;align-content:start}.mq-parts button{width:100%;text-align:left;display:flex;gap:12px;padding:9px 12px;border-radius:8px;border:0;background:none;color:var(--mq-ink-2);font:15px/1.35 var(--mq-sans);cursor:pointer}.mq-parts button span{font-family:var(--mq-mono);font-size:12px;color:var(--mq-ink-3);padding-top:2px;min-width:18px}.mq-parts button[aria-current=true]{background:var(--mq-paper-2);color:var(--mq-ink)}.mq-parts button:hover{color:var(--mq-ink)}.mq-part-title{font-family:var(--mq-display);font-size:26px;font-weight:600;letter-spacing:-.015em;margin:0 0 4px}.mq-lessons{list-style:none;margin:18px 0 0;padding:0}.mq-lessons li a,.mq-lessons li>div{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:14px;padding:14px 0;border-top:1px solid var(--mq-rule);text-decoration:none;color:var(--mq-ink);align-items:baseline}.mq-lessons li:last-child a,.mq-lessons li:last-child>div{border-bottom:1px solid var(--mq-rule)}.mq-lessons b{font-weight:600;display:block}.mq-lessons .q{color:var(--mq-ink-3);font-size:14.5px}.mq-lessons .min{font-family:var(--mq-mono);font-size:12px;color:var(--mq-ink-3);white-space:nowrap}.mq-lessons .soon{opacity:.55}.mq-tick{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--mq-rule-2);display:inline-grid;place-items:center;transform:translateY(2px)}.mq-tick.done{background:var(--mq-d);border-color:var(--mq-d)}.mq-tick.done:after{content:"";width:6px;height:3px;border:2px solid var(--mq-paper);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}.mq-checkpoint .mq-tick{border-radius:4px;transform:translateY(2px) rotate(45deg) scale(.85)}.mq-checkpoint .mq-tick.done:after{transform:rotate(-90deg) translate(1px,-1px)}.mq-lessons a:hover b{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--mq-d)}.mq-more{margin-top:30px}.mq-more summary{cursor:pointer;color:var(--mq-ink-2);font-size:15px;list-style:none}.mq-more summary::-webkit-details-marker{display:none}.mq-more summary:before{content:"+ ";font-family:var(--mq-mono);color:var(--mq-ink-3)}.mq-more[open] summary:before{content:"– "}.mq-extras{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:0}.mq-extras a{display:block;padding:10px 0;text-decoration:none;border-bottom:1px solid var(--mq-rule)}.mq-extras a small{display:block;color:var(--mq-ink-3)}.mq-lock{font-family:var(--mq-mono);font-size:11px;color:var(--mq-ink-3);border:1px solid var(--mq-rule-2);border-radius:999px;padding:1px 7px;margin-left:8px;vertical-align:2px}.mq-frame{min-height:60vh}.mq-journey-rail{display:none}@media (min-width: 1320px){.mq-with-journey{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,796px) minmax(0,1fr);align-items:start}.mq-with-journey>.page{grid-column:2;width:100%;box-sizing:border-box}.mq-journey-rail{display:block;grid-column:1;grid-row:1;justify-self:end;width:230px;position:sticky;top:24px;padding:56px 8px 24px 0;max-height:calc(100vh - 48px);overflow-y:auto}.mq-journey-toggle{display:none!important}}.mq-journey{font:14px/1.45 var(--mq-sans);color:var(--mq-ink-2)}.mq-journey-head{font:13px/1.4 var(--mq-sans);color:var(--mq-ink-3);margin:0 0 6px}.mq-journey-head span{color:var(--mq-d)}.mq-journey-part,.mq-frame .mq-journey-part{display:block;font-family:var(--mq-display);font-weight:600;font-size:16px;color:var(--mq-ink);text-decoration:none;margin-bottom:10px}.mq-journey-list{list-style:none;margin:0 0 20px;padding:0}.mq-journey-list li>a,.mq-journey-list li>span{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;align-items:baseline;padding:6px 0;color:var(--mq-ink-2);text-decoration:none}.mq-frame .mq-journey-list li>a{color:var(--mq-ink-2);text-decoration:none}.mq-journey-list li>a:hover{color:var(--mq-ink)}.mq-journey-list b{color:var(--mq-ink);font-weight:600}.mq-journey-list .soon{opacity:.5}.mq-journey .mq-tick{width:12px;height:12px;transform:translateY(1px)}.mq-journey .mq-tick.here{border-color:var(--mq-d);box-shadow:0 0 0 3px var(--mq-d-soft)}.mq-journey-skills{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:4px}.mq-journey-skills a,.mq-frame .mq-journey-skills a{display:inline-flex;gap:8px;align-items:center;color:var(--mq-ink-2);text-decoration:none}.mq-journey-skills a:hover{color:var(--mq-ink)}.mq-journey-next,.mq-frame .mq-journey-next{display:block;color:var(--mq-ink);font-weight:600;text-decoration:none;border-top:1px solid var(--mq-rule);padding-top:12px}.mq-journey-next:hover{text-decoration:underline;text-decoration-color:var(--mq-d);text-underline-offset:4px}.mq-journey-toggle{position:relative;margin-left:auto}.mq-journey-toggle button{font:13px/1 var(--mq-mono);color:var(--mq-ink-3);background:none;border:1px solid var(--mq-rule);border-radius:999px;padding:6px 10px;cursor:pointer}.mq-journey-toggle button:hover,.mq-journey-toggle button[aria-expanded=true]{color:var(--mq-ink);border-color:var(--mq-rule-2)}.mq-journey-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:min(300px,calc(100vw - 32px));max-height:70vh;overflow-y:auto;background:var(--mq-paper);border:1px solid var(--mq-rule);border-radius:12px;padding:16px;box-shadow:0 12px 32px #00000014}.mq-frame .page{padding-top:12px}.mq-crumb{font:14px/1.4 var(--mq-sans);color:var(--mq-ink-3);display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 18px}.mq-crumb-top{max-width:1180px;margin:0 auto;padding:0 24px}.mq-frame .crumbs{display:none!important}.mq-crumb a,.mq-frame .mq-crumb a{color:var(--mq-ink-3);text-decoration:none}.mq-crumb a:hover,.mq-frame .mq-crumb a:hover{color:var(--mq-ink)}.mq-frame .mq-gate p{margin:0 0 12px;font-size:16px;line-height:1.55;color:var(--mq-ink-2)}.mq-frame .mq-gate .mq-kicker{font-size:12px;margin-bottom:8px;color:var(--mq-ink-3)}.mq-frame .mq-gate .mq-note{font-size:14px;color:var(--mq-ink-3);margin:0}.mq-gate{border:1px solid var(--mq-rule-2);border-radius:14px;padding:22px 22px 18px;margin:18px 0 24px;background:var(--mq-paper);color:var(--mq-ink);font-family:var(--mq-sans)}.mq-gate p{margin:0 0 12px;font-size:16px;line-height:1.55;color:var(--mq-ink-2)}.mq-gate .mq-kicker{margin-bottom:8px}.mq-gate-form{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 10px}.mq-gate-form .mq-input{flex:1 1 200px;width:auto;font-family:var(--mq-mono);letter-spacing:.04em}.mq-gate .mq-note{font-size:14px;color:var(--mq-ink-3);margin:0}.mq-gate .mq-err{color:var(--mq-bad);font-size:14.5px;margin:0 0 10px}.mq-gated-marked [data-gate]{display:none!important}.mq-gated-tail>.mq-gate-slot~*{display:none!important}.mq-review{width:100%;max-width:660px}@media (min-width: 641px){.mq-center:has(>.mq-review){place-items:start center;padding-top:min(12vh,110px)}}.mq-pips{display:flex;gap:4px;margin:0 0 28px}.mq-pips i{height:3px;flex:1;border-radius:3px;background:var(--mq-rule)}.mq-pips i.done{background:var(--mq-ink-3)}.mq-pips i.now{background:var(--mq-ink)}.mq-context{font-size:15.5px;color:var(--mq-ink-2);background:var(--mq-paper-2);border-radius:10px;padding:14px 16px;margin:0 0 18px;white-space:pre-wrap}.mq-prompt{font-family:var(--mq-display);font-weight:600;font-size:clamp(21px,3.2vw,26px);line-height:1.3;letter-spacing:-.01em;margin:0 0 22px}.mq-options{display:grid;gap:8px;margin:0 0 22px}.mq-option{text-align:left;font:16px/1.45 var(--mq-sans);color:var(--mq-ink);padding:13px 16px;border-radius:12px;border:1px solid var(--mq-rule-2);background:var(--mq-paper);cursor:pointer;display:flex;gap:12px}.mq-option kbd{font-family:var(--mq-mono);font-size:12px;color:var(--mq-ink-3);padding-top:2px}.mq-option:hover:not([disabled]){border-color:var(--mq-ink-3)}.mq-option.right{border-color:var(--mq-good);background:var(--mq-good-soft)}.mq-option.wrong{border-color:var(--mq-bad);background:var(--mq-bad-soft)}.mq-option[disabled]{cursor:default}.mq-back{white-space:pre-wrap;border-left:2px solid var(--mq-ink-3);padding:2px 0 2px 16px;margin:0 0 18px;font-size:16.5px}.mq-explain{color:var(--mq-ink-2);font-size:15.5px;margin:0 0 22px}.mq-rates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.mq-rates button{padding:12px 6px;border-radius:12px;border:1px solid var(--mq-rule-2);background:var(--mq-paper);color:var(--mq-ink);font:600 15px var(--mq-sans);cursor:pointer;display:grid;gap:2px}.mq-rates button small{font:400 12px var(--mq-mono);color:var(--mq-ink-3)}.mq-rates button:hover{border-color:var(--mq-ink-3)}.mq-rates.mq-rates-3{grid-template-columns:repeat(3,minmax(0,1fr))}.mq-attempt{display:block;margin:0 0 18px;resize:vertical;font-size:15px}.mq-recurring{margin-top:40px}.mq-recurring p{margin:0 0 6px}.mq-from{margin-top:26px;font-size:14px;color:var(--mq-ink-3)}.mq-from a{color:var(--mq-ink-3)}.mq-map{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:36px;align-items:start;padding-top:10px}.mq-map-canvas{position:relative;border:1px solid var(--mq-rule);border-radius:16px;padding:10px;background:var(--mq-paper)}.mq-map-canvas svg{display:block;width:100%;height:auto}.mq-map-legend{display:flex;flex-wrap:wrap;gap:6px 16px;padding:8px 6px 2px}.mq-node{cursor:pointer}.mq-node circle{transition:r .2s var(--mq-ease)}.mq-tip{position:absolute;pointer-events:none;background:var(--mq-ink);color:var(--mq-paper);font-size:13px;padding:4px 8px;border-radius:6px;transform:translate(-50%,-130%);white-space:nowrap}.mq-focus .mq-h1{font-size:clamp(28px,4vw,38px)}.mq-level{display:flex;align-items:center;gap:12px;margin:4px 0 20px;font-size:14.5px;color:var(--mq-ink-2)}.mq-level .mq-meter{margin:0;flex:0 0 140px}.mq-rel{margin:18px 0 0}.mq-rel h3{font-family:var(--mq-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mq-ink-3);font-weight:500;margin:0 0 8px}.mq-pills{display:flex;flex-wrap:wrap;gap:6px}.mq-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;border:1px solid var(--mq-rule-2);font-size:14px;color:var(--mq-ink);text-decoration:none;background:none;cursor:pointer;font-family:inherit}.mq-pill:hover{border-color:var(--mq-ink-3)}.mq-why{margin:8px 0 0;padding-left:14px;border-left:2px solid var(--mq-d);color:var(--mq-ink-2);font-size:15px}.mq-taught{list-style:none;margin:0;padding:0}.mq-taught a{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--mq-rule);text-decoration:none}.mq-gloss{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:36px;padding-top:12px}.mq-results{list-style:none;margin:14px 0 0;padding:0;max-height:calc(100vh - 260px);overflow:auto}.mq-results button,.mq-results a{width:100%;text-align:left;display:block;padding:10px 6px;border:0;border-bottom:1px solid var(--mq-rule);background:none;color:var(--mq-ink);font:inherit;cursor:pointer;text-decoration:none}.mq-results button[aria-current=true]{background:var(--mq-paper-2)}.mq-results small{display:block;color:var(--mq-ink-3);font-size:14px}.mq-group{font-family:var(--mq-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mq-ink-3);margin:14px 0 2px}.mq-entry dl{margin:18px 0 0}.mq-entry dt{font-family:var(--mq-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mq-ink-3);margin-top:16px}.mq-entry dd{margin:4px 0 0;color:var(--mq-ink-2)}.mq-settings{max-width:640px}.mq-setting{padding:22px 0;border-bottom:1px solid var(--mq-rule)}.mq-setting h2{font-size:17px;font-family:var(--mq-display);margin:0 0 4px}.mq-setting p{margin:0 0 12px;color:var(--mq-ink-3);font-size:14.5px}.mq-seg{display:inline-flex;border:1px solid var(--mq-rule-2);border-radius:999px;padding:3px;gap:2px;flex-wrap:wrap}.mq-seg button{border:0;background:none;color:var(--mq-ink-2);padding:7px 14px;border-radius:999px;font:14.5px var(--mq-sans);cursor:pointer}.mq-seg button[aria-pressed=true]{background:var(--mq-ink);color:var(--mq-paper)}.mq-soon{max-width:640px}.mq-done-mark{font-family:var(--mq-mono);font-size:12px;color:var(--mq-good)}@media (max-width: 900px){.mq-course-body{grid-template-columns:1fr;gap:12px}.mq-parts{display:flex;overflow-x:auto;gap:6px;padding-bottom:6px;scrollbar-width:none}.mq-parts li{flex:none}.mq-parts button{border:1px solid var(--mq-rule-2);border-radius:999px;padding:7px 12px;white-space:nowrap}.mq-map,.mq-gloss{grid-template-columns:1fr;gap:24px}.mq-results{max-height:46vh}}@media (max-width: 640px){.mq-bar{padding:12px 16px}.mq-nav .mq-wide{display:none}.mq-nav a,.mq-icon-btn{padding:7px 8px;white-space:nowrap}.mq-landing .mq-nav a[href="#/review"]{display:none}.mq-page,.mq-crumb-top{padding-left:16px;padding-right:16px}.mq-center{padding:8px 16px 40px;place-items:start center}.mq-hero{padding:max(16px,calc(min(34vh,300px) - 40px)) 16px 24px;justify-content:flex-start}.mq-hero .mq-lede{font-size:16.5px}.mq-veil{background:linear-gradient(180deg,transparent 0%,transparent 26%,var(--mq-paper) 40%)}.mq-stories{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 16px;gap:0;margin:0 -16px;padding:0 16px;scrollbar-width:none}.mq-story{flex:0 0 78%;scroll-snap-align:start}.mq-course-head{grid-template-columns:1fr;gap:14px;padding-top:16px}.mq-lessons li a,.mq-lessons li>div{grid-template-columns:20px minmax(0,1fr)}.mq-lessons .min{display:none}.mq-rates{grid-template-columns:repeat(2,minmax(0,1fr))}.mq-rates.mq-rates-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion: reduce){.mq-btn,.mq-node circle{transition:none}}.mq-frame .mq-gate .mq-btn{background:var(--mq-btn);color:var(--mq-on-btn);border:1px solid transparent;font:600 14.5px/1 var(--mq-sans);padding:9px 16px;border-radius:999px;min-height:46px;box-shadow:none}.mq-frame .mq-gate .mq-btn[disabled]{opacity:.4}.mq-frame .mq-gate .mq-input{font:16px var(--mq-mono);padding:12px 14px;border-radius:10px;border:1px solid var(--mq-rule-2);background:var(--mq-paper);color:var(--mq-ink);min-height:46px}.mq-first{margin:0 0 24px;padding:18px 20px;border:1px solid var(--mq-rule-2);border-radius:12px}.mq-first h2{margin:0 0 6px;font-size:17px}.mq-first p{margin:0 0 14px;opacity:.8;font-size:14px}.mq-first-opts{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.mq-first-opts .mq-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;white-space:normal;border-radius:14px;line-height:1.3;padding:12px 18px}.mq-first-opts small{font-weight:400;font-size:12.5px;opacity:.85}.mq-kit-predict{margin:22px 0;padding:16px 18px;border:1px solid var(--mq-rule);border-radius:12px;font-family:var(--mq-sans)}.mq-kit-predict-q{margin:0 0 12px;font-size:16px;line-height:1.5;color:var(--mq-ink)}.mq-kit-tag{display:inline-block;margin-right:10px;font:600 14px/1 var(--mq-sans);color:var(--mq-d, var(--mq-ink-3))}.mq-kit-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.mq-kit-options.mq-kit-options button,.mq-kit-self.mq-kit-self button{font:15px/1.35 var(--mq-sans);text-align:left;color:var(--mq-ink);background:var(--mq-paper);border:1px solid var(--mq-rule);border-radius:10px;padding:10px 12px;cursor:pointer}.mq-kit-options button:hover:not(:disabled),.mq-kit-self button:hover{border-color:var(--mq-rule-2)}.mq-kit-options button:disabled{cursor:default}.mq-kit-options button[data-state=right]{border-color:var(--mq-d, var(--mq-ink));box-shadow:inset 0 0 0 1px var(--mq-d, var(--mq-ink))}.mq-kit-options button[data-state=wrong]{opacity:.6;text-decoration:line-through}.mq-kit-write{display:flex;gap:8px}.mq-kit-write:has(textarea){flex-direction:column;align-items:flex-start}.mq-kit-write.mq-kit-write textarea{width:100%;resize:vertical}.mq-kit-write.mq-kit-write input,.mq-kit-write.mq-kit-write textarea{flex:1;min-width:0;font:15px/1.4 var(--mq-sans);color:var(--mq-ink);background:var(--mq-paper);border:1px solid var(--mq-rule);border-radius:10px;padding:9px 12px}.mq-kit-yours{margin:0 0 8px;color:var(--mq-ink-3);font-size:14.5px}.mq-kit-reveal{margin-top:12px;padding-top:12px;border-top:1px solid var(--mq-rule);animation:mq-kit-in .2s ease-out}.mq-kit-reveal>:first-child{margin-top:0}.mq-kit-reveal>:last-child{margin-bottom:0}@keyframes mq-kit-in{0%{opacity:0;transform:translateY(3px)}}@media (prefers-reduced-motion: reduce){.mq-kit-reveal{animation:none}}.mq-kit-self{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0}.mq-kit-self-label{width:100%;font-size:13.5px;color:var(--mq-ink-3)}.mq-kit-self button{text-align:center;padding:8px 14px;border-radius:999px}.mq-kit-self button[aria-pressed=true]{border-color:var(--mq-ink);color:var(--mq-ink);background:var(--mq-paper-2)}.mq-kit-cross,.mq-frame .mq-kit-cross{display:inline-flex;align-items:center;gap:8px;font:14.5px/1.4 var(--mq-sans);color:var(--mq-ink-2);text-decoration:none;border-bottom:1px solid var(--mq-rule-2)}.mq-kit-cross:hover{color:var(--mq-ink);border-color:var(--mq-d)}.mq-kit-beat-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 6px;padding-top:14px;border-top:1px solid var(--mq-rule);font:13.5px/1 var(--mq-sans);color:var(--mq-ink-3)}.mq-kit-beat-nav.mq-kit-beat-nav button:first-child{font:14.5px/1 var(--mq-sans);color:var(--mq-ink-2);background:none;border:0;padding:8px 4px;cursor:pointer}.mq-kit-beat-nav button:disabled{visibility:hidden}.mq-aside{margin:18px 0 0;font-size:15px;line-height:1.5;color:var(--mq-ink-3)}.mq-aside a{color:var(--mq-ink-2);text-decoration:underline;text-decoration-color:var(--mq-rule-2);text-underline-offset:3px}.mq-aside a:hover{color:var(--mq-ink);text-decoration-color:var(--mq-d, var(--mq-ink-3))}.mq-gate .mq-gate-what,.mq-frame .mq-gate .mq-gate-what{margin:0 0 6px;font:600 16px/1.4 var(--mq-sans);color:var(--mq-ink)}.mq-first h2,.mq-frame .mq-first h2{color:var(--mq-ink);font-family:var(--mq-display)}.mq-first p,.mq-frame .mq-first p{color:var(--mq-ink-2);opacity:1}.mq-first-opts .mq-btn,.mq-frame .mq-first-opts .mq-btn{background:var(--mq-btn);color:var(--mq-on-btn);border:1px solid transparent;font-family:var(--mq-sans)}.mq-first-opts .mq-btn.ghost,.mq-frame .mq-first-opts .mq-btn.ghost{background:transparent;color:var(--mq-ink);border-color:var(--mq-rule-2)}.mq-first-opts .mq-btn small,.mq-frame .mq-first-opts .mq-btn small{color:inherit}.mq-kit-write.mq-kit-write .mq-btn,.mq-kit-beat-nav.mq-kit-beat-nav .mq-btn{background:var(--mq-btn);color:var(--mq-on-btn);border:1px solid transparent;font:600 14.5px/1 var(--mq-sans);padding:9px 16px;border-radius:999px;min-height:38px}.mq-tutor{margin:10px 0 0;font:14.5px/1.5 var(--mq-sans);color:var(--mq-ink-2)}.mq-tutor:empty{display:none}.mq-tutor .mq-tutor-ask,.mq-tutor.mq-tutor .mq-tutor-ask{font:14px/1.4 var(--mq-sans);color:var(--mq-ink-2);background:none;border:0;padding:4px 0;cursor:pointer;text-decoration:underline;text-decoration-color:var(--mq-rule-2);text-underline-offset:3px}.mq-tutor .mq-tutor-ask:hover:not(:disabled){color:var(--mq-ink);text-decoration-color:var(--mq-ink-3)}.mq-tutor .mq-tutor-ask:disabled{cursor:default;color:var(--mq-ink-3);text-decoration:none}.mq-tutor-hint{margin:0 0 6px;padding:10px 12px;border-left:2px solid var(--mq-rule-2);background:var(--mq-paper-2);border-radius:0 8px 8px 0;animation:mq-kit-in .2s ease-out}.mq-tutor-hint p,.mq-tutor.mq-tutor .mq-tutor-hint p{margin:4px 0;white-space:pre-wrap;color:var(--mq-ink);font-size:14.5px}.mq-tutor-label,.mq-tutor-left{display:block;font-size:12.5px;color:var(--mq-ink-3)}.mq-tutor-note,.mq-tutor.mq-tutor .mq-tutor-note{margin:4px 0 0;font-size:13.5px;color:var(--mq-ink-3)}.mq-scenario-line{margin:14px 0 0;font-size:15px;line-height:1.5;color:var(--mq-ink-3)}.mq-scenario-line a{color:var(--mq-ink-2);text-decoration:underline;text-decoration-color:var(--mq-rule-2);text-underline-offset:3px}.mq-scenario-line a:hover{color:var(--mq-ink);text-decoration-color:currentColor}.c-llm{--paper: #ffffff;--paper-2: #f5f5fa;--card: #ffffff;--ink: #15172e;--ink-2: #41445f;--ink-3: #6d7090;--rule: #e7e7f0;--rule-strong: #d3d4e3;--accent: #0f9d63;--accent-soft: #e3f6ed;--accent-ink: #0a7a4c;--on-accent: #ffffff;--q: #0b74c9;--q-soft: #e3f1fc;--k: #a86200;--k-soft: #fdf0d9;--v: #a032c2;--v-soft: #f6e6fb;--good: #12805c;--good-soft: #e2f5ee;--bad: #c43d3d;--bad-soft: #fcebeb;--research: #0b7785;--research-soft: #e1f4f6;--tok-1: #dfe2ff;--tok-2: #cff3e2;--tok-3: #ffe5c6;--tok-4: #ffd9e0;--tok-5: #fff3b8;--code-bg: #15172e;--code-ink: #e9eaf8;--code-rule: #15172e;--frame: #15172e;--il-line: #1e1b4b;--shadow: none;--il-panel: #eef0ff;--il-soft: #d6dafd;--il-ink: #1e1b4b;--il-text: #1e1b4b;--il-chip-text: #1e1b4b;--il-w: #ffffff;--il-a: #6366f1;--il-b: #34d399;--il-c: #fbbf24;--il-d: #fb7185;--il-e: #38bdf8;--sans: "DM Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Space Grotesk Variable", "DM Sans Variable", system-ui, sans-serif;--serif: var(--display);--math: "STIX Two Text", "Cambria Math", Georgia, "Times New Roman", serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius: 6px;--sidebar: 272px;--measure: 700px;--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:light}[data-theme=dark] .c-llm{--paper: #0a0a0c;--paper-2: #121317;--card: #111215;--ink: #ededf0;--ink-2: #b3b5bd;--ink-3: #868892;--rule: #1e2025;--rule-strong: #2c2f37;--accent: #3ecf8e;--accent-soft: rgba(62, 207, 142, .12);--accent-ink: #5be0a4;--on-accent: #04130c;--q: #6ea8ff;--q-soft: rgba(110, 168, 255, .14);--k: #f5b942;--k-soft: rgba(245, 185, 66, .13);--v: #d48cff;--v-soft: rgba(212, 140, 255, .14);--good: #3ecf8e;--good-soft: rgba(62, 207, 142, .12);--bad: #ff7b72;--bad-soft: rgba(255, 123, 114, .12);--research: #38cfe0;--research-soft: rgba(56, 207, 224, .12);--frame: #3a3d47;--tok-1: #2a2d52;--tok-2: #173c30;--tok-3: #4a3518;--tok-4: #4a2430;--tok-5: #45401a;--il-line: #d9dae3;--code-bg: #0d0e11;--code-ink: #e4e5ea;--code-rule: #1e2025;--il-panel: #14151b;--il-soft: #1f2129;--il-ink: #05060a;--il-text: #e6e7ee;--il-a: #7c7ff2;--il-b: #4fd8a5;--il-c: #fcc84a;--il-d: #ff8496;--il-e: #5cc6f7;color-scheme:dark}.c-llm,.c-llm *{box-sizing:border-box}.c-llm{-webkit-text-size-adjust:100%}.c-llm{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@media (prefers-reduced-motion: reduce){.c-llm,.c-llm *,.c-llm:before,.c-llm *:before,.c-llm:after,.c-llm *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.c-llm h1,.c-llm h2,.c-llm h3,.c-llm h4{font-family:var(--display);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin:0}.c-llm p{margin:0 0 1em}.c-llm a{color:var(--accent-ink);text-underline-offset:3px;text-decoration-thickness:1px}.c-llm a:hover{color:var(--accent)}.c-llm strong,.c-llm b{font-weight:650}.c-llm code,.c-llm kbd,.c-llm .mono{font-family:var(--mono);font-size:.9em}.c-llm :not(pre)>code{background:var(--paper-2);border-radius:4px;padding:.1em .35em}.c-llm hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}.c-llm ul,.c-llm ol{padding-left:1.25em;margin:0 0 1em}.c-llm li{margin-bottom:.35em}.c-llm button,.c-llm input,.c-llm select,.c-llm textarea{font:inherit;color:inherit}.c-llm button,.c-llm a,.c-llm summary,.c-llm label.quiz-opt,.c-llm input[type=range],.c-llm input[type=checkbox],.c-llm input[type=radio]{cursor:pointer}.c-llm button:disabled{cursor:not-allowed}.c-llm :focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:4px}.c-llm ::selection{background:var(--tok-1)}.c-llm .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.c-llm .skip-link{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:6px;z-index:100}.c-llm .skip-link:focus{left:8px}.c-llm .muted{color:var(--ink-3)}.c-llm .center{text-align:center}.c-llm .q{color:var(--q)}.c-llm .k{color:var(--k)}.c-llm .v{color:var(--v)}.c-llm .acc{color:var(--accent-ink)}.c-llm .shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.c-llm .sidebar{position:sticky;top:0;height:100vh;overflow:hidden;border-right:1px solid var(--rule);background:var(--paper);display:flex;flex-direction:column}.c-llm .brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px;text-decoration:none;color:var(--ink)}.c-llm .brand:hover{color:var(--ink)}.c-llm .brand-name{font-family:var(--display);font-size:15.5px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.c-llm .side-search{margin:0 14px 10px}.c-llm .input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:14.5px}.c-llm .input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.c-llm .side-tools{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:0 16px 12px;font-size:13px}.c-llm .side-tools a{color:var(--ink-2);text-decoration:none;white-space:nowrap}.c-llm .side-tools a:hover,.c-llm .side-tools a[aria-current=page]{color:var(--accent-ink);text-decoration:underline}.c-llm .side-foot-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.c-llm .side-foot-count{margin-top:2px;color:var(--ink-3)}.c-llm .theme-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;min-height:28px;border:1px solid var(--rule-strong);border-radius:99px;background:var(--paper);color:var(--ink-2);font-size:12.5px;font-weight:500;transition:border-color .15s,color .15s}.c-llm .theme-toggle:hover{border-color:var(--ink-3);color:var(--ink)}.c-llm .theme-toggle svg{flex:none}.c-llm .nav{flex:1;min-height:0;overflow-y:auto;padding:2px 8px 16px}.c-llm .nav-part{margin-top:14px}.c-llm .nav-part-title{font-size:12.5px;font-weight:650;color:var(--ink-3);padding:4px 10px}.c-llm .nav-part-title span{display:none}.c-llm .nav-part-title b{font-weight:650}.c-llm .nav-link{display:grid;grid-template-columns:16px 1fr;gap:9px;align-items:start;padding:5px 10px;border-radius:6px;text-decoration:none;color:var(--ink-2);font-size:14px;line-height:1.35}.c-llm .nav-link:hover{background:var(--paper-2);color:var(--ink)}.c-llm .nav-link[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);font-weight:650}.c-llm .nav-tick{width:13px;height:13px;margin-top:3px;border-radius:50%;border:1.5px solid var(--rule-strong);display:grid;place-items:center;font-size:9px;color:transparent}.c-llm .nav-link[aria-current=page] .nav-tick{border-color:var(--accent)}.c-llm .nav-tick.done{background:var(--good);border-color:var(--good);color:var(--paper)}.c-llm .side-foot{flex:none;border-top:1px solid var(--rule);padding:12px 16px 14px;font-size:13px;color:var(--ink-2);background:var(--paper)}.c-llm .meter{height:4px;border-radius:99px;background:var(--rule);overflow:hidden;margin-top:6px}.c-llm .meter>span{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .4s var(--ease)}.c-llm .topbar{display:none}.c-llm .main{min-width:0}.c-llm .page{max-width:calc(var(--measure) + 96px);margin:0 auto;padding:44px 48px 110px}.c-llm .page.wide,.c-llm .page:has(.hero-split){max-width:1080px}@media (max-width: 960px){.c-llm .shell{grid-template-columns:1fr}.c-llm .sidebar{position:fixed;z-index:50;left:0;top:0;width:min(88vw,330px);transform:translate(-102%);transition:transform .25s var(--ease)}.c-llm .sidebar.open{transform:none;box-shadow:0 0 60px #0a0a284d}.c-llm .scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a2873;z-index:40;border:0}.c-llm .topbar{display:flex;position:sticky;top:0;z-index:30;align-items:center;gap:12px;padding:8px 14px;background:var(--paper);border-bottom:1px solid var(--rule)}.c-llm .topbar-title{font-family:var(--display);font-weight:700;font-size:15px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-llm .page{padding:24px 18px 80px}.c-llm{font-size:16px}}.c-llm .btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:14.5px;font-weight:600;text-decoration:none;color:var(--ink);transition:background .15s,border-color .15s}.c-llm .btn:hover{border-color:var(--ink-3);color:var(--ink)}.c-llm .btn:disabled{opacity:.4}.c-llm .btn.primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.c-llm .btn.primary:hover{opacity:.88;color:var(--paper);border-color:var(--ink)}.c-llm .btn.small{padding:5px 12px;font-size:13.5px;border-radius:7px}.c-llm .btn.ghost{background:transparent;border-color:transparent}.c-llm .btn.ghost:hover{background:var(--paper-2)}.c-llm .btn-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.c-llm .crumbs{font-size:13px;color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}.c-llm .crumbs a{color:var(--ink-3);text-decoration:none}.c-llm .crumbs a:hover{color:var(--accent-ink);text-decoration:underline}.c-llm .lesson-title{font-size:clamp(32px,4.2vw,46px);font-weight:700;letter-spacing:-.035em;line-height:1.08;margin:6px 0 14px}.c-llm .lesson-question{font-size:19px;color:var(--ink-2);line-height:1.45;margin-bottom:12px;max-width:36em}.c-llm .lesson-meta{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:13.5px;color:var(--ink-3);margin-bottom:18px}.c-llm .where{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px;font-size:13.5px;color:var(--ink-3);padding:12px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-llm .where-label{margin-right:2px}.c-llm .where-step{color:var(--ink-2)}.c-llm .where-step.here{color:var(--accent-ink);font-weight:650}.c-llm .where-sep{color:var(--rule-strong)}.c-llm .where-toggle{margin-left:auto;background:none;border:0;color:var(--ink-3);font-size:13px;text-decoration:underline;text-underline-offset:3px;padding:0}.c-llm .where-toggle:hover{color:var(--accent-ink)}.c-llm .where-map{padding:14px 0 6px;border-bottom:1px solid var(--rule)}.c-llm .tree{font-family:var(--mono);font-size:12.5px;line-height:1.6;margin:0;white-space:pre;overflow-x:auto;color:var(--ink-3)}.c-llm .tree .here{color:var(--accent-ink);font-weight:600;background:var(--accent-soft);border-radius:4px;padding:1px 6px}.c-llm .tree .on-path{color:var(--ink)}.c-llm .section{position:relative;margin-top:68px;scroll-margin-top:70px}.c-llm .section-head{display:flex;align-items:baseline;gap:8px;font-size:13.5px;color:var(--ink-3);margin-bottom:6px}.c-llm .section-kicker{font-size:13.5px;font-weight:600;color:var(--ink-3)}.c-llm .section h2{font-size:30px;letter-spacing:-.025em;margin-bottom:18px}.c-llm .section h3{font-size:19px;margin:32px 0 10px}.c-llm .lede{font-size:19px;line-height:1.55;color:var(--ink-2)}.c-llm .card{background:var(--paper-2);border-radius:var(--radius);padding:18px 20px;margin:20px 0}.c-llm .card h4{font-size:16px}.c-llm .card>:last-child,.c-llm .callout>:last-child,.c-llm .details-body>:last-child{margin-bottom:0}.c-llm .grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.c-llm .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.c-llm .grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media (max-width: 720px){.c-llm .grid-2,.c-llm .grid-3,.c-llm .grid-4{grid-template-columns:minmax(0,1fr)}}.c-llm .grid-2,.c-llm .grid-3,.c-llm .grid-4{margin:20px 0}.c-llm .grid-2>.card,.c-llm .grid-3>.card,.c-llm .grid-4>.card{margin:0}.c-llm .grid-2>.card p,.c-llm .grid-3>.card p,.c-llm .grid-4>.card p{font-size:15px;line-height:1.55;color:var(--ink-2)}.c-llm .callout{margin:26px 0;padding:1px 0 1px 18px;border-left:3px solid var(--rule-strong);color:var(--ink-2)}.c-llm .callout b,.c-llm .callout strong{color:var(--ink)}.c-llm .callout-label{display:block;font-size:13.5px;font-weight:700;margin-bottom:3px;color:var(--ink-3)}.c-llm .callout.idea{border-left-color:var(--accent)}.c-llm .callout.idea .callout-label{color:var(--accent-ink)}.c-llm .callout.analogy,.c-llm .callout.model{border-left-color:var(--k)}.c-llm .callout.analogy .callout-label,.c-llm .callout.model .callout-label{color:var(--k)}.c-llm .callout.established{border-left-color:var(--good)}.c-llm .callout.established .callout-label{color:var(--good)}.c-llm .callout.research{border-left-color:var(--research)}.c-llm .callout.research .callout-label{color:var(--research)}.c-llm .callout.warn{border-left-color:var(--bad)}.c-llm .callout.warn .callout-label{color:var(--bad)}.c-llm .callout.dev{border-left-color:var(--q)}.c-llm .callout.dev .callout-label{color:var(--q)}.c-llm .term{margin:24px 0;border-top:2px solid var(--frame)}.c-llm .term-name{font-family:var(--display);font-size:18px;font-weight:700;padding:12px 0 8px}.c-llm .term-row{display:grid;grid-template-columns:116px 1fr;gap:12px;padding:9px 0;border-top:1px solid var(--rule);font-size:15.5px}.c-llm .term-row>span:first-child{font-size:13.5px;font-weight:600;color:var(--ink-3);padding-top:2px}@media (max-width: 560px){.c-llm .term-row{grid-template-columns:1fr;gap:2px}}.c-llm .gloss{border-bottom:1.5px dotted var(--accent);cursor:help;text-decoration:none;color:inherit}.c-llm details.deep{margin:20px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-llm details.deep+details.deep{margin-top:-21px}.c-llm details.deep>summary{padding:12px 0;font-weight:650;font-size:15.5px;list-style:none;display:flex;gap:10px;align-items:baseline}.c-llm details.deep>summary::-webkit-details-marker{display:none}.c-llm details.deep>summary:before{content:"+";font-family:var(--mono);color:var(--accent-ink);width:12px}.c-llm details.deep[open]>summary:before{content:"−"}.c-llm details.deep .deep-tag{font-size:13.5px;font-weight:600;color:var(--research)}.c-llm .details-body{padding:0 0 16px 22px;font-size:15.5px}.c-llm .code{margin:20px 0;border-radius:8px;overflow:hidden;background:var(--code-bg);color:var(--code-ink);border:1px solid var(--code-rule)}.c-llm .code-bar{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 16px;font-size:12.5px;color:#9a9dc0;border-bottom:1px solid rgba(255,255,255,.08)}.c-llm .code-bar a{color:#b3b5ff}.c-llm .code-bar .spacer{flex:1}.c-llm .code-bar button{background:transparent;border:1px solid rgba(255,255,255,.18);color:#d5d6ee;border-radius:6px;padding:2px 10px;font-size:12.5px}.c-llm .code-bar button:hover{border-color:#ffffff73}.c-llm .code pre{margin:0;padding:16px 18px;overflow-x:auto;font-family:var(--mono);font-size:13.5px;line-height:1.65;-moz-tab-size:4;tab-size:4}.c-llm .tok-c{color:#8689ad;font-style:italic}.c-llm .tok-s{color:#8fe3bd}.c-llm .tok-k{color:#f3a6c8}.c-llm .tok-n{color:#ffc98a}.c-llm .tok-f{color:#a9abff}.c-llm .eq{margin:24px 0;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-llm .eq-formula{font-family:var(--math);font-size:24px;text-align:center;padding:24px 8px;overflow-x:auto;white-space:nowrap}.c-llm .eq-formula i,.c-llm .eq-formula var{font-style:italic}.c-llm .eq-formula[data-more]{text-align:left;-webkit-mask-image:var(--eq-mask);mask-image:var(--eq-mask)}.c-llm .eq-formula[data-more=right]{--eq-mask: linear-gradient(to right, #000 calc(100% - 44px) , transparent)}.c-llm .eq-formula[data-more=left]{--eq-mask: linear-gradient(to left, #000 calc(100% - 44px) , transparent)}.c-llm .eq-formula[data-more=both]{--eq-mask: linear-gradient(to right, transparent, #000 44px, #000 calc(100% - 44px) , transparent)}.c-llm .eq-formula[data-more]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.c-llm .eq-legend{border-top:1px solid var(--rule);padding:12px 0;display:grid;gap:6px;font-size:15px}.c-llm .eq-legend div{display:grid;grid-template-columns:minmax(64px,max-content) 1fr;gap:14px}.c-llm .eq-legend div>b{font-family:var(--math);font-weight:600;font-style:italic}.c-llm .chip{display:inline-block;font-family:var(--mono);font-size:12.5px;padding:1px 8px;border-radius:4px;background:var(--paper);border:1px solid var(--rule-strong);white-space:nowrap}.c-llm .chip.q{background:var(--q-soft);border-color:transparent}.c-llm .chip.k{background:var(--k-soft);border-color:transparent}.c-llm .chip.v{background:var(--v-soft);border-color:transparent}.c-llm .chip.acc{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink)}.c-llm .token{display:inline-block;font-family:var(--mono);font-size:14px;padding:1px 6px;margin:2px;border-radius:4px;background:var(--tok-1);color:var(--ink);white-space:pre}.c-llm .lab{margin:28px -24px;border:1.5px solid var(--frame);border-radius:14px;background:var(--paper);overflow:hidden}@media (max-width: 960px){.c-llm .lab{margin:28px 0}}.c-llm .lab-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:13px 22px;border-bottom:1px solid var(--rule-strong)}.c-llm .lab-tag{font-size:13.5px;font-weight:700;color:var(--accent-ink)}.c-llm .lab-title{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.015em}.c-llm .lab-goal{font-size:15px;color:var(--ink-2);padding:12px 22px;background:var(--paper-2)}.c-llm .lab-body{padding:22px}.c-llm .lab-note{font-size:14.5px;color:var(--ink-2)}.c-llm .controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px 24px;margin:8px 0 16px}.c-llm .control label{display:flex;justify-content:space-between;gap:8px;font-size:14px;color:var(--ink-2)}.c-llm .control output{font-family:var(--mono);color:var(--ink);font-size:13.5px}.c-llm input[type=range]{width:100%;accent-color:var(--accent);height:24px}.c-llm input[type=checkbox],.c-llm input[type=radio]{accent-color:var(--accent)}.c-llm .readout{font-family:var(--mono);font-size:13.5px;display:flex;flex-wrap:wrap;gap:8px 20px;padding:10px 14px;background:var(--paper-2);border-radius:6px}.c-llm .readout b{color:var(--accent-ink);font-weight:600}.c-llm .steps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.c-llm .step-btn{font-size:13.5px;font-weight:500;padding:5px 12px;border-radius:7px;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink-2);transition:border-color .15s,background .15s}.c-llm .step-btn:hover{border-color:var(--ink-3);color:var(--ink)}.c-llm .step-btn[aria-pressed=true],.c-llm .step-btn[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:650}.c-llm svg text{font-family:var(--sans);fill:var(--ink)}.c-llm svg .axis{stroke:var(--rule-strong);stroke-width:1}.c-llm svg .gridline{stroke:var(--rule);stroke-width:1}.c-llm .matrix-wrap{display:inline-block;vertical-align:middle;max-width:100%;overflow-x:auto}.c-llm .matrix-cap{font-family:var(--mono);font-size:12px;color:var(--ink-3);margin-bottom:4px}.c-llm table.matrix{border-collapse:separate;border-spacing:3px;font-family:var(--mono);font-size:13.5px}.c-llm table.matrix td{min-width:50px;text-align:right;padding:4px 8px;border-radius:4px;background:var(--paper-2);transition:background .2s}.c-llm table.matrix th{font-weight:500;font-size:12px;color:var(--ink-3);padding:2px 6px;text-align:right;white-space:nowrap}.c-llm table.matrix thead th{text-align:center}.c-llm table.matrix td.hot{outline:2px solid var(--accent)}.c-llm table.matrix td input{width:52px;border:0;background:transparent;text-align:right;font-family:var(--mono);font-size:13.5px;padding:0;cursor:text}.c-llm .matrix-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:12px 0}.c-llm .op{font-family:var(--math);font-size:22px;color:var(--ink-3)}.c-llm .bars{display:grid;gap:6px;margin:8px 0}.c-llm .bar{display:grid;grid-template-columns:minmax(64px,150px) minmax(60px,1fr) 58px;gap:10px;align-items:center;font-size:14px}.c-llm .bar-label{font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-llm .bar-track{height:12px;background:var(--paper-2);border-radius:3px;overflow:hidden}.c-llm .bar-fill{display:block;height:100%;background:var(--accent);border-radius:3px;transition:width .25s var(--ease)}.c-llm .bar-val{font-family:var(--mono);font-size:13px;text-align:right;color:var(--ink-2)}.c-llm .bar.dim .bar-fill{background:var(--rule-strong)}.c-llm .bar.dim{color:var(--ink-3)}.c-llm .flow{display:flex;flex-direction:column;margin:22px 0;max-width:460px}.c-llm .flow-arrow{display:none}.c-llm .flow-node{position:relative;display:block;width:100%;text-align:left;background:none;border:0;padding:0 0 16px 26px;font-size:15px;font-weight:600;color:var(--ink);line-height:1.35}.c-llm .flow-node small{display:block;font-weight:400;color:var(--ink-3);font-size:13.5px;margin-top:1px}.c-llm .flow-node:before{content:"";position:absolute;left:0;top:5px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--ink-3);z-index:1}.c-llm .flow-node:after{content:"";position:absolute;left:5px;top:8px;bottom:-8px;width:1.5px;background:var(--rule-strong)}.c-llm .flow>div:last-child>.flow-node:after,.c-llm .flow>.flow-node:last-child:after{display:none}.c-llm .flow>div:last-child>.flow-node,.c-llm .flow>.flow-node:last-child{padding-bottom:0}.c-llm .flow-node.active{color:var(--accent-ink)}.c-llm .flow-node.active:before{background:var(--accent);border-color:var(--accent)}.c-llm button.flow-node:hover{color:var(--accent-ink)}.c-llm .flow.horizontal{flex-direction:row;max-width:none;align-items:flex-start}.c-llm .flow.horizontal>div{flex:1 1 0;min-width:0}.c-llm .flow.horizontal .flow-node{padding:22px 14px 0 0;font-size:14.5px}.c-llm .flow.horizontal .flow-node:before{top:0}.c-llm .flow.horizontal .flow-node:after{left:11px;right:0;top:5px;bottom:auto;width:auto;height:1.5px}@media (max-width: 640px){.c-llm .flow.horizontal{flex-direction:column}.c-llm .flow.horizontal .flow-node{padding:0 0 16px 26px}.c-llm .flow.horizontal .flow-node:before{top:5px}.c-llm .flow.horizontal .flow-node:after{left:5px;right:auto;top:8px;bottom:-8px;width:1.5px;height:auto}}.c-llm .ladder{margin:12px 0 0;border-left:2px solid var(--rule-strong);padding-left:0;list-style:none}.c-llm .ladder li{position:relative;padding:0 0 14px 24px;margin:0;font-size:15.5px}.c-llm .ladder li:before{content:"";position:absolute;left:-6px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--paper-2);border:2px solid var(--ink-3)}.c-llm .ladder li:last-child:before{border-color:var(--accent);background:var(--accent)}.c-llm .ladder li:last-child{padding-bottom:0}.c-llm .ladder b{display:block;font-size:13.5px;font-weight:700;color:var(--ink-3)}.c-llm .tabs{margin:20px 0}.c-llm .tablist{display:flex;gap:2px;border-bottom:1px solid var(--rule-strong);overflow-x:auto}.c-llm .tab{background:transparent;border:0;padding:8px 16px;font-size:15px;color:var(--ink-3);border-bottom:2.5px solid transparent;margin-bottom:-1px;white-space:nowrap}.c-llm .tab:hover{color:var(--ink)}.c-llm .tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:650}.c-llm .tabpanel{padding-top:16px}.c-llm .exercise{margin:22px 0;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-llm .exercise-head{display:flex;align-items:baseline;gap:10px;padding:12px 0 0}.c-llm .ex-type{font-size:13.5px;font-weight:700;color:var(--accent-ink);text-transform:capitalize}.c-llm .ex-type:after{content:":"}.c-llm .ex-title{font-family:var(--display);font-weight:700;font-size:16.5px;flex:1}.c-llm .ex-done{color:var(--good);font-size:13.5px;font-weight:600}.c-llm .mq-btn{font:600 16px/1 var(--mq-sans);color:var(--mq-on-btn)}.c-llm .mq-btn.small{font-size:14.5px}.c-llm .quiz-steps .mq-kit-options{grid-template-columns:1fr}.c-llm .quiz-steps .mq-kit-reveal p{margin:0 0 6px}.c-llm .quiz-steps-score{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 0;font-size:14.5px}.c-llm .exercise-body{padding:10px 0 18px}.c-llm .hint,.c-llm .solution{padding:1px 0 1px 14px;margin:14px 0;font-size:15.5px;border-left:3px solid var(--k)}.c-llm .solution{border-left-color:var(--good)}.c-llm .hint b,.c-llm .solution>b:first-child{display:block;font-size:13.5px;font-weight:700;color:var(--k)}.c-llm .solution>b:first-child{color:var(--good)}.c-llm .answer-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.c-llm .answer-row .input{width:170px;font-family:var(--mono)}.c-llm .verdict{font-size:14.5px;font-weight:600}.c-llm .verdict.ok{color:var(--good)}.c-llm .verdict.no{color:var(--bad)}.c-llm textarea.input{min-height:96px;resize:vertical;font-size:15.5px;line-height:1.5}.c-llm .quiz-q{margin:0 0 24px;padding:0;border:0}.c-llm .quiz-q legend{font-weight:650;padding:0;margin-bottom:10px}.c-llm .quiz-opt{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid var(--rule-strong);border-radius:8px;margin-bottom:6px;font-size:15.5px;background:var(--paper)}.c-llm .quiz-opt:hover{border-color:var(--ink-3)}.c-llm .quiz-opt input{margin-top:5px}.c-llm .quiz-opt.right{border-color:var(--good);background:var(--good-soft)}.c-llm .quiz-opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.c-llm .quiz-explain{font-size:15px;color:var(--ink-2);padding:6px 2px 0}.c-llm .card:has(.quiz-q){background:transparent;padding:0}.c-llm .remember{list-style:none;padding:0;counter-reset:rem;border-top:2px solid var(--frame)}.c-llm .remember li{counter-increment:rem;display:grid;grid-template-columns:30px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid var(--rule);margin:0}.c-llm .remember li:before{content:counter(rem);font-family:var(--display);font-size:17px;font-weight:700;color:var(--accent-ink)}.c-llm .toyreal{display:grid;grid-template-columns:1fr 1fr;margin:22px 0;font-size:15.5px;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-llm .toyreal>div{padding:14px 18px 14px 0}.c-llm .toyreal>div+div{padding-left:18px;border-left:1px solid var(--rule)}.c-llm .toyreal h4{font-size:13.5px;font-weight:700;color:var(--ink-3);margin-bottom:6px;font-family:var(--sans);letter-spacing:0}@media (max-width: 640px){.c-llm .toyreal{grid-template-columns:1fr}.c-llm .toyreal>div+div{border-left:0;border-top:1px solid var(--rule);padding-left:0}}.c-llm .source-list{display:grid;margin:16px 0;border-top:1px solid var(--rule)}.c-llm .source{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.c-llm .source:hover code{text-decoration:underline}.c-llm .source code{color:var(--accent-ink);background:transparent;padding:0}.c-llm .source span{color:var(--ink-2);font-size:14.5px;grid-column:2}.c-llm .source svg{grid-row:span 2;margin-top:5px;color:var(--ink-3)}.c-llm table.plain{width:100%;border-collapse:collapse;font-size:15px;margin:16px 0}.c-llm table.plain th{text-align:left;font-size:13.5px;color:var(--ink-3);font-weight:650;border-bottom:1.5px solid var(--frame);padding:6px 10px 6px 0}.c-llm table.plain td{border-bottom:1px solid var(--rule);padding:8px 10px 8px 0;vertical-align:top}.c-llm .table-scroll{overflow-x:auto}.c-llm .lesson-foot{margin-top:40px;display:grid;gap:22px}.c-llm .complete-box{display:flex;flex-wrap:wrap;align-items:center;gap:14px;justify-content:space-between;padding:18px 20px;border-radius:8px;background:var(--paper-2)}.c-llm .prevnext{display:grid;grid-template-columns:1fr 1fr;gap:12px}.c-llm .prevnext a{display:block;padding:12px 0;border-top:2px solid var(--frame);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}.c-llm .prevnext a:hover{color:var(--accent-ink);border-top-color:var(--accent)}.c-llm .prevnext small{display:block;font-family:var(--sans);font-size:13.5px;font-weight:500;color:var(--ink-3)}.c-llm .prevnext .next{text-align:right}@media (max-width: 560px){.c-llm .prevnext{grid-template-columns:1fr}}.c-llm .hero-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;align-items:center;padding:20px 0 8px}.c-llm .hero-split h1{font-size:clamp(40px,5.2vw,64px);font-weight:700;letter-spacing:-.04em;line-height:1.04}.c-llm .hero-caption{font-size:13.5px;color:var(--ink-3);margin:12px 0 0}.c-llm .hero-split .hero-lede{font-size:19px;line-height:1.55;color:var(--ink-2);max-width:30em;margin:22px 0 0}.c-llm .hero-meta{font-size:14px;color:var(--ink-3);margin:16px 0 0}@media (max-width: 860px){.c-llm .hero-split{grid-template-columns:minmax(0,1fr);gap:24px}.c-llm .hero-art{max-width:460px}}.c-llm .il-scene{display:block;width:100%;height:auto;border-radius:20px}.c-llm .il-scene text{fill:var(--il-chip-text)}.c-llm .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:44px 0 8px;border-top:2px solid var(--frame)}.c-llm .facts>div{padding:16px 22px 0 0;display:grid;gap:4px;align-content:start}.c-llm .facts b{font-family:var(--display);font-size:16px;font-weight:700}.c-llm .facts span{font-size:15px;color:var(--ink-2);line-height:1.55}@media (max-width: 720px){.c-llm .facts{grid-template-columns:minmax(0,1fr)}}.c-llm .home-section{margin-top:72px}.c-llm .home-section h2{font-size:30px;letter-spacing:-.025em;margin-bottom:8px}.c-llm .home-section>p{color:var(--ink-2);max-width:38em}.c-llm .pipe{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}@media (max-width: 860px){.c-llm .pipe{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.c-llm .pipe{grid-template-columns:minmax(0,1fr)}}.c-llm .pipe li{margin:0;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-llm .pipe-tile{display:grid;grid-template-columns:22px 48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;height:100%;padding:16px;text-decoration:none;color:var(--ink)}.c-llm .pipe-tile:hover{background:var(--paper-2);color:var(--ink)}.c-llm .pipe-tile svg{grid-row:1 / span 2;width:48px;height:48px}.c-llm .pipe-n{grid-row:1 / span 2;font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent-ink)}.c-llm .pipe-label{font-family:var(--display);font-weight:700;font-size:15.5px;align-self:end}.c-llm .pipe-note{font-size:13px;color:var(--ink-2);line-height:1.4;align-self:start}.c-llm .parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px;margin-top:24px}@media (max-width: 860px){.c-llm .parts{grid-template-columns:minmax(0,1fr)}}.c-llm .part-art{display:block}.c-llm .part-body{padding:14px 0 0}.c-llm .part-kicker{display:flex;justify-content:space-between;font-size:13.5px;color:var(--ink-3)}.c-llm .part-kicker b{color:var(--accent-ink);font-weight:700}.c-llm .part-body h3{font-size:21px;margin:2px 0 4px}.c-llm .part-body p{color:var(--ink-2);font-size:15px;margin:0 0 10px}.c-llm .part-lessons{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.c-llm .part-lessons li{margin:0;border-bottom:1px solid var(--rule)}.c-llm .part-lessons a{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:14.5px;text-decoration:none;color:var(--ink)}.c-llm .part-lessons a:hover{color:var(--accent-ink)}.c-llm .part-lessons a span{color:var(--ink-3);font-size:13px;white-space:nowrap}.c-llm .part-lessons a.done span{color:var(--good);font-weight:600}.c-llm .py-cell{margin:18px 0;border-radius:8px;overflow:hidden;background:var(--code-bg);color:var(--code-ink);border:1px solid var(--code-rule)}.c-llm .py-badge{font-size:11.5px;color:#8fe3bd;border:1px solid rgba(143,227,189,.35);border-radius:99px;padding:1px 8px}.c-llm .py-editor{position:relative;font-family:var(--mono);font-size:13.5px;line-height:1.65}.c-llm .py-editor-view,.c-llm .py-editor-input{margin:0;padding:14px 18px;font:inherit;-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto;border:0;width:100%;display:block}.c-llm .py-editor-view{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;color:var(--code-ink)}.c-llm .py-editor-view code{font:inherit}.c-llm .py-editor-input{position:relative;background:transparent;color:transparent;caret-color:#fff;resize:vertical;outline:none;cursor:text}.c-llm .py-editor-input::selection{background:#8e90ff59;color:transparent}.c-llm .py-editor:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}.c-llm .py-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 14px;border-top:1px solid rgba(255,255,255,.08)}.c-llm .py-actions .btn{background:transparent;color:#e9eaf8;border-color:#ffffff40}.c-llm .py-actions .btn.primary{background:#fff;color:#111215;border-color:#fff}.c-llm .py-actions .btn:disabled{opacity:.5}.c-llm .py-actions .verdict.ok{color:#6fe0ae}.c-llm .py-actions .verdict.no{color:#ffa7a0}.c-llm .py-status{font-size:13px;color:#b9bbd6}.c-llm .py-output{border-top:1px solid rgba(255,255,255,.08);padding:12px 18px;display:grid;gap:10px}.c-llm .py-stdout,.c-llm .py-traceback,.c-llm .py-solution{margin:0;font-family:var(--mono);font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-x:auto}.c-llm .py-stdout{color:#e9eaf8}.c-llm .py-traceback{color:#ffa7a0}.c-llm .py-error-note{margin:0;color:#ffa7a0;font-size:14px}.c-llm .py-tests{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14px}.c-llm .py-tests li{display:grid;grid-template-columns:18px 1fr;gap:6px;margin:0}.c-llm .py-tests li.ok{color:#6fe0ae}.c-llm .py-tests li.no{color:#ffa7a0}.c-llm .py-test-msg{display:block;font-family:var(--mono);font-size:12.5px;opacity:.9;white-space:pre-wrap}.c-llm .py-solution{background:var(--code-bg);color:var(--code-ink);border-radius:8px;padding:12px 16px;margin:8px 0 10px}.c-llm .crash{border:1px solid var(--bad);border-radius:10px;padding:16px 18px;margin:16px 0;background:var(--bad-soft);display:grid;gap:10px}.c-llm .crash p{margin:0}.c-llm .lesson-anchor{scroll-margin-top:0}@media (max-width: 960px){.c-llm .lesson-anchor{scroll-margin-top:57px}}.c-llm .lesson-phase-tight{display:none}@media (max-width: 560px){.c-llm .lesson-phase-wide{display:none}.c-llm .lesson-phase-tight{display:inline}}.c-llm .lesson-rail{position:sticky;top:0;z-index:20;display:flex;align-items:flex-end;justify-content:space-between;gap:6px 18px;padding:14px 0 10px;margin-top:2px;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.c-llm .lesson-rail::-webkit-scrollbar{display:none}@media (max-width: 960px){.c-llm .lesson-rail{top:57px;gap:6px 14px}}.c-llm .lesson-phase{display:flex;flex-direction:column;gap:5px;flex:none;min-width:0}.c-llm .lesson-phase-name{padding:0;border:0;background:none;text-align:left;white-space:nowrap;font-size:13px;font-weight:600;color:var(--ink-3)}.c-llm .lesson-phase-name:hover,.c-llm .lesson-phase.is-here .lesson-phase-name{color:var(--ink)}.c-llm .lesson-dots{position:relative;display:flex;align-self:flex-start;align-items:center;gap:4px;margin-left:-6px}.c-llm .lesson-dots:before{content:"";position:absolute;left:11px;right:11px;top:50%;height:2px;margin-top:-1px;border-radius:2px;background:var(--rule)}.c-llm .lesson-dot{position:relative;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;background:none;border-radius:50%}.c-llm .lesson-dot:before{content:"";width:10px;height:10px;border-radius:50%;box-sizing:border-box;border:2px solid var(--rule-strong);background:var(--paper);transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.c-llm .lesson-dot:hover:before{border-color:var(--ink-3)}.c-llm .lesson-dot.is-seen:before{background:var(--accent);border-color:var(--accent)}.c-llm .lesson-dot.is-here:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);transform:scale(1.15)}.c-llm .lesson-dot:focus-visible{outline-offset:0;border-radius:50%}.c-llm .lesson-body>.section{margin-top:44px}.c-llm .section[hidden]{margin:0!important;padding:0!important}.c-llm .section>h2:focus{outline:none}.c-llm .lesson-feedback{margin:48px 0 0;font-size:13.5px;color:var(--ink-3)}.c-llm .lesson-feedback a{color:var(--ink-2)}.c-llm .lesson-pager{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:20px;border-top:1px solid var(--rule)}.c-llm .lesson-pager-back{display:inline-flex;align-items:center;gap:6px;padding:8px 10px 8px 4px;border:0;border-radius:8px;background:none;color:var(--ink-2);font-size:14.5px;font-weight:600}.c-llm .lesson-pager-back:hover{color:var(--ink);background:var(--paper-2)}.c-llm .lesson-pager-next{display:inline-flex;align-items:center;gap:14px;margin-left:auto;max-width:min(100%,420px);padding:11px 16px 11px 20px;border:1px solid var(--ink);border-radius:12px;background:var(--ink);color:var(--paper);text-align:left;transition:opacity .15s}.c-llm .lesson-pager-next:hover{opacity:.9}.c-llm .lesson-pager-next span{display:grid;min-width:0;font-family:var(--display);font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.25}.c-llm .lesson-pager-next small{font-family:var(--sans);font-size:12.5px;font-weight:500;opacity:.7;letter-spacing:0}.c-llm .lesson-pager-next svg{flex:none}.c-llm .resume{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;margin-top:14px;border-radius:10px;background:var(--accent-soft);font-size:14.5px}.c-llm kbd{font-family:var(--mono);font-size:.85em;border:1px solid var(--rule-strong);border-bottom-width:2px;border-radius:4px;padding:0 5px;background:var(--paper-2)}.c-llm .diagnostic{margin:24px 0}.c-llm .diagnostic.is-open{border:1px dashed var(--rule-strong);border-radius:10px;padding:14px 18px}.c-llm .diag-line{margin:0;font-size:14.5px;color:var(--ink-3)}.c-llm .linkish{padding:0;border:0;background:none;font:inherit;color:var(--ink-2);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.c-llm .linkish:hover{color:var(--accent-ink)}.c-llm .diag-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-size:15px}.c-llm .diag-result ul{margin:8px 0 12px}.c-llm .sidebar>.brand{flex:1}.c-llm .brand-row{display:flex;align-items:flex-start}.c-llm .side-collapse{display:grid;place-items:center;width:28px;height:28px;margin:18px 12px 0 0;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink-3)}.c-llm .side-collapse:hover{border-color:var(--rule-strong);color:var(--ink);background:var(--paper-2)}@media (max-width: 960px){.c-llm .side-collapse{display:none}}.c-llm .shell.collapsed{grid-template-columns:minmax(0,1fr)}.c-llm .shell.collapsed>.sidebar{display:none}.c-llm .sidebar-reopen{position:fixed;top:14px;left:14px;z-index:35;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--rule-strong);border-radius:9px;background:var(--paper-2);color:var(--ink-2)}.c-llm .sidebar-reopen:hover{border-color:var(--ink-3);color:var(--ink)}@media (max-width: 960px){.c-llm .sidebar-reopen{display:none}}.c-llm .shell.collapsed .page{padding-top:60px}.c-llm .py-editor-wrap{position:relative}.c-llm .py-cm .cm-editor{max-height:70vh}.c-llm .py-cm .cm-editor .cm-scroller{overflow:auto}.c-llm .py-cell:focus-within{box-shadow:0 0 0 2px var(--accent)}.c-llm .code-bar .code-run{border-color:#8fe3bd80;color:#8fe3bd}.c-llm .code-bar .code-run:hover{border-color:#8fe3bd}.c-llm .playground-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 4px;font-size:14.5px}.c-llm .playground-bar .input{width:auto;max-width:100%}.c-llm .py-prelude{margin:12px 0 8px;font-size:14px}.c-llm .py-prelude>summary{cursor:pointer;color:var(--ink-2);font-weight:600}.c-llm .py-prelude .py-solution{max-height:320px;overflow:auto}.c-llm .project-progress{display:flex;align-items:center;gap:14px;margin:18px 0 8px;font-size:14px;color:var(--ink-2)}.c-llm .project-progress .meter{flex:1;max-width:320px;height:6px;margin:0}.c-llm .project-pieces{list-style:none;padding:0;margin:20px 0;border-top:1px solid var(--rule);counter-reset:piece}.c-llm .project-pieces li{counter-increment:piece;display:grid;grid-template-columns:26px 1fr;gap:12px;margin:0;padding:12px 0;border-bottom:1px solid var(--rule)}.c-llm .project-mark{width:20px;height:20px;margin-top:2px;border-radius:50%;border:2px solid var(--rule-strong);display:grid;place-items:center;font-size:11px;color:var(--paper)}.c-llm .project-pieces li.is-built .project-mark{background:var(--good);border-color:var(--good)}.c-llm .project-pieces a{text-decoration:none}.c-llm .project-pieces a b:before{content:counter(piece) ". ";color:var(--ink-3);font-weight:600}.c-llm .project-does{display:block;font-size:14.5px;color:var(--ink-2)}.c-llm .project-lesson{display:block;font-size:13px;color:var(--ink-3)}.c-llm .fast-track{padding:22px 24px;border-radius:14px;background:var(--accent-soft)}.c-llm .fast-track h2{margin-top:0}.c-llm .fast-track>p{color:var(--ink-2);max-width:44em}.c-llm .fast-track-list{columns:2;column-gap:32px;margin:14px 0 18px;padding-left:1.4em}@media (max-width: 640px){.c-llm .fast-track-list{columns:1}}.c-llm .fast-track-list li{break-inside:avoid;margin:0 0 6px}.c-llm .fast-track-list a{color:var(--ink);text-decoration:none;font-weight:600}.c-llm .fast-track-list a:hover{color:var(--accent-ink);text-decoration:underline}.c-llm .fast-track-list a.done{color:var(--good)}.c-llm .fast-track-list span{margin-left:8px;font-size:13px;color:var(--ink-3)}.c-llm .nav-fast{display:inline-block;width:6px;height:6px;margin:0 0 2px 6px;border-radius:50%;background:var(--accent);vertical-align:middle}.c-llm .lesson-fast{color:var(--accent-ink);font-weight:600}.c-llm .fast-skipped{margin:0 0 6px;font-size:14px;color:var(--ink-3)}.c-llm .fast-skipped summary{cursor:pointer;list-style:none;text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:3px}.c-llm .fast-skipped summary::-webkit-details-marker{display:none}.c-llm .fast-skipped summary:hover{color:var(--ink-2)}.c-llm .fast-skipped p{margin:8px 0 0;color:var(--ink-2)}.c-llm .fast-next{display:block;padding:14px 18px;border-radius:12px;background:var(--accent-soft);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}.c-llm .fast-next small{display:block;font-family:var(--sans);font-size:13px;font-weight:500;color:var(--accent-ink)}.c-llm .fast-done{padding:14px 18px;border-radius:12px;background:var(--accent-soft);margin:0}.c-llm .landing{--l-ink: #eef0f5;--l-ink-2: rgba(226, 230, 240, .66);--l-ink-3: rgba(226, 230, 240, .42);--l-line: rgba(255, 255, 255, .1);--l-accent: #3ecf8e;--l-bad: #ff8a80;position:relative;min-height:100vh;min-height:100svh;overflow:hidden;isolation:isolate;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);color:var(--l-ink);color-scheme:dark;background:radial-gradient(60% 55% at 72% 45%,rgba(62,207,142,.1),transparent 70%),radial-gradient(50% 60% at 10% 100%,rgba(110,120,255,.07),transparent 70%),#05060a;padding:28px clamp(20px,5vw,64px)}.c-llm .hero-field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-2;opacity:0;transition:opacity 1.2s ease}.c-llm .hero-field.is-ready{opacity:1}.c-llm .landing-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(5,6,10,.78) 0%,rgba(5,6,10,.35) 42%,transparent 62%)}@media (max-aspect-ratio: 23/20){.c-llm .landing-scrim{background:linear-gradient(180deg,transparent 18%,rgba(5,6,10,.7) 48%,rgba(5,6,10,.55) 100%)}}.c-llm .landing-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.c-llm .landing-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em}.c-llm .landing-mark{width:10px;height:10px;border-radius:50%;background:var(--l-accent);box-shadow:0 0 16px 2px #3ecf8e8c}.c-llm .landing-beta{font-size:12.5px;font-weight:500;letter-spacing:.02em;color:var(--l-ink-2);border:1px solid var(--l-line);padding:5px 12px;border-radius:99px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.c-llm .landing-hero{align-self:center;max-width:780px;padding:48px 0}.c-llm .landing-hero>:not(h1){max-width:560px}.c-llm .landing-eyebrow{margin:0 0 18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--l-accent)}.c-llm .landing-hero h1{margin:0;font-family:var(--display);font-weight:600;font-size:clamp(44px,7.4vw,92px);line-height:.98;letter-spacing:-.045em;color:var(--l-ink)}.c-llm .landing-lede{margin:26px 0 0;max-width:31em;font-size:clamp(16.5px,1.6vw,19px);line-height:1.6;color:var(--l-ink-2)}.c-llm .landing-code{margin-top:40px;max-width:460px}.c-llm .landing-code-row{display:flex;align-items:center;gap:6px;padding:6px;border-radius:14px;background:#ffffff0b;border:1px solid var(--l-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:border-color .2s,box-shadow .2s}.c-llm .landing-code-row:focus-within{border-color:#3ecf8e8c;box-shadow:0 0 0 4px #3ecf8e1f}.c-llm .landing-code-row:has(input[aria-invalid=true]){border-color:#ff8a8099}.c-llm .landing-code-row input{flex:1;min-width:0;padding:10px 12px;border:0;background:transparent;outline:none;font-family:var(--mono);font-size:15px;letter-spacing:.06em;color:var(--l-ink)}.c-llm .landing-code-row input::placeholder{color:var(--l-ink-3)}.c-llm .landing-code-row button{flex:none;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:0;border-radius:10px;background:var(--l-ink);color:#05060a;font-weight:600;font-size:14.5px;cursor:pointer;transition:opacity .15s,transform .15s}.c-llm .landing-code-row button:hover:not(:disabled){transform:translate(1px)}.c-llm .landing-code-row button:disabled{opacity:.35;cursor:default}.c-llm .landing-note{margin:12px 2px 0;font-size:13.5px;line-height:1.5;color:var(--l-ink-3)}.c-llm .landing-note a{color:var(--l-ink-2);text-underline-offset:3px}.c-llm .landing-note.is-wrong,.c-llm .landing-note.is-wrong a{color:var(--l-bad)}.c-llm .landing-foot{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:var(--l-ink-3)}@media (max-width: 560px){.c-llm .landing{padding:20px 18px}.c-llm .landing-hero{padding:32px 0}.c-llm .landing-code-row button span{display:none}}.c-llm .landing-nowrap{white-space:nowrap}.c-design{--paper: #ffffff;--paper-2: #f5f5fa;--card: #ffffff;--ink: #15172e;--ink-2: #41445f;--ink-3: #6d7090;--rule: #e7e7f0;--rule-strong: #d3d4e3;--accent: #b8650a;--accent-soft: #fbefdc;--accent-ink: #9a5200;--on-accent: #ffffff;--q: #0b74c9;--q-soft: #e3f1fc;--k: #a86200;--k-soft: #fdf0d9;--v: #a032c2;--v-soft: #f6e6fb;--good: #12805c;--good-soft: #e2f5ee;--bad: #c43d3d;--bad-soft: #fcebeb;--research: #0b7785;--research-soft: #e1f4f6;--tok-1: #dfe2ff;--tok-2: #cff3e2;--tok-3: #ffe5c6;--tok-4: #ffd9e0;--tok-5: #fff3b8;--code-bg: #15172e;--code-ink: #e9eaf8;--code-rule: #15172e;--frame: #15172e;--il-line: #1e1b4b;--shadow: none;--il-panel: #eef0ff;--il-soft: #d6dafd;--il-ink: #1e1b4b;--il-text: #1e1b4b;--il-chip-text: #1e1b4b;--il-w: #ffffff;--il-a: #6366f1;--il-b: #34d399;--il-c: #fbbf24;--il-d: #fb7185;--il-e: #38bdf8;--sans: "DM Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Space Grotesk Variable", "DM Sans Variable", system-ui, sans-serif;--serif: var(--display);--math: "STIX Two Text", "Cambria Math", Georgia, "Times New Roman", serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius: 6px;--sidebar: 272px;--measure: 700px;--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:light}[data-theme=dark] .c-design{--paper: #0a0a0c;--paper-2: #121317;--card: #111215;--ink: #ededf0;--ink-2: #b3b5bd;--ink-3: #868892;--rule: #1e2025;--rule-strong: #2c2f37;--accent: #f2b04a;--accent-soft: rgba(242, 176, 74, .13);--accent-ink: #f6c36d;--on-accent: #1a1204;--q: #6ea8ff;--q-soft: rgba(110, 168, 255, .14);--k: #f5b942;--k-soft: rgba(245, 185, 66, .13);--v: #d48cff;--v-soft: rgba(212, 140, 255, .14);--good: #3ecf8e;--good-soft: rgba(242, 176, 74, .12);--bad: #ff7b72;--bad-soft: rgba(255, 123, 114, .12);--research: #38cfe0;--research-soft: rgba(56, 207, 224, .12);--frame: #3a3d47;--tok-1: #2a2d52;--tok-2: #173c30;--tok-3: #4a3518;--tok-4: #4a2430;--tok-5: #45401a;--il-line: #d9dae3;--code-bg: #0d0e11;--code-ink: #e4e5ea;--code-rule: #1e2025;--il-panel: #14151b;--il-soft: #1f2129;--il-ink: #05060a;--il-text: #e6e7ee;--il-a: #7c7ff2;--il-b: #4fd8a5;--il-c: #fcc84a;--il-d: #ff8496;--il-e: #5cc6f7;color-scheme:dark}.c-design,.c-design *{box-sizing:border-box}.c-design{-webkit-text-size-adjust:100%}.c-design{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@media (prefers-reduced-motion: reduce){.c-design,.c-design *,.c-design:before,.c-design *:before,.c-design:after,.c-design *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.c-design h1,.c-design h2,.c-design h3,.c-design h4{font-family:var(--display);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin:0}.c-design p{margin:0 0 1em}.c-design a{color:var(--accent-ink);text-underline-offset:3px;text-decoration-thickness:1px}.c-design a:hover{color:var(--accent)}.c-design strong,.c-design b{font-weight:650}.c-design code,.c-design kbd,.c-design .mono{font-family:var(--mono);font-size:.9em}.c-design :not(pre)>code{background:var(--paper-2);border-radius:4px;padding:.1em .35em}.c-design hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}.c-design ul,.c-design ol{padding-left:1.25em;margin:0 0 1em}.c-design li{margin-bottom:.35em}.c-design button,.c-design input,.c-design select,.c-design textarea{font:inherit;color:inherit}.c-design button,.c-design a,.c-design summary,.c-design label.quiz-opt,.c-design input[type=range],.c-design input[type=checkbox],.c-design input[type=radio]{cursor:pointer}.c-design button:disabled{cursor:not-allowed}.c-design :focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:4px}.c-design ::selection{background:var(--tok-1)}.c-design .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.c-design .skip-link{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:6px;z-index:100}.c-design .skip-link:focus{left:8px}.c-design .muted{color:var(--ink-3)}.c-design .center{text-align:center}.c-design .q{color:var(--q)}.c-design .k{color:var(--k)}.c-design .v{color:var(--v)}.c-design .acc{color:var(--accent-ink)}.c-design .shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.c-design .sidebar{position:sticky;top:0;height:100vh;overflow:hidden;border-right:1px solid var(--rule);background:var(--paper);display:flex;flex-direction:column}.c-design .brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px;text-decoration:none;color:var(--ink)}.c-design .brand:hover{color:var(--ink)}.c-design .brand-name{font-family:var(--display);font-size:15.5px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.c-design .side-search{margin:0 14px 10px}.c-design .input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:14.5px}.c-design .input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.c-design .side-tools{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:0 16px 12px;font-size:13px}.c-design .side-tools a{color:var(--ink-2);text-decoration:none;white-space:nowrap}.c-design .side-tools a:hover,.c-design .side-tools a[aria-current=page]{color:var(--accent-ink);text-decoration:underline}.c-design .side-foot-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.c-design .side-foot-count{margin-top:2px;color:var(--ink-3)}.c-design .theme-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;min-height:28px;border:1px solid var(--rule-strong);border-radius:99px;background:var(--paper);color:var(--ink-2);font-size:12.5px;font-weight:500;transition:border-color .15s,color .15s}.c-design .theme-toggle:hover{border-color:var(--ink-3);color:var(--ink)}.c-design .theme-toggle svg{flex:none}.c-design .nav{flex:1;min-height:0;overflow-y:auto;padding:2px 8px 16px}.c-design .nav-part{margin-top:14px}.c-design .nav-part-title{font-size:12.5px;font-weight:650;color:var(--ink-3);padding:4px 10px}.c-design .nav-part-title span{display:none}.c-design .nav-part-title b{font-weight:650}.c-design .nav-link{display:grid;grid-template-columns:16px 1fr;gap:9px;align-items:start;padding:5px 10px;border-radius:6px;text-decoration:none;color:var(--ink-2);font-size:14px;line-height:1.35}.c-design .nav-link:hover{background:var(--paper-2);color:var(--ink)}.c-design .nav-link[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);font-weight:650}.c-design .nav-tick{width:13px;height:13px;margin-top:3px;border-radius:50%;border:1.5px solid var(--rule-strong);display:grid;place-items:center;font-size:9px;color:transparent}.c-design .nav-link[aria-current=page] .nav-tick{border-color:var(--accent)}.c-design .nav-tick.done{background:var(--good);border-color:var(--good);color:var(--paper)}.c-design .side-foot{flex:none;border-top:1px solid var(--rule);padding:12px 16px 14px;font-size:13px;color:var(--ink-2);background:var(--paper)}.c-design .meter{height:4px;border-radius:99px;background:var(--rule);overflow:hidden;margin-top:6px}.c-design .meter>span{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .4s var(--ease)}.c-design .topbar{display:none}.c-design .main{min-width:0}.c-design .page{max-width:calc(var(--measure) + 96px);margin:0 auto;padding:44px 48px 110px}.c-design .page.wide,.c-design .page:has(.hero-split){max-width:1080px}@media (max-width: 960px){.c-design .shell{grid-template-columns:1fr}.c-design .sidebar{position:fixed;z-index:50;left:0;top:0;width:min(88vw,330px);transform:translate(-102%);transition:transform .25s var(--ease)}.c-design .sidebar.open{transform:none;box-shadow:0 0 60px #0a0a284d}.c-design .scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a2873;z-index:40;border:0}.c-design .topbar{display:flex;position:sticky;top:0;z-index:30;align-items:center;gap:12px;padding:8px 14px;background:var(--paper);border-bottom:1px solid var(--rule)}.c-design .topbar-title{font-family:var(--display);font-weight:700;font-size:15px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-design .page{padding:24px 18px 80px}.c-design{font-size:16px}}.c-design .btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:14.5px;font-weight:600;text-decoration:none;color:var(--ink);transition:background .15s,border-color .15s}.c-design .btn:hover{border-color:var(--ink-3);color:var(--ink)}.c-design .btn:disabled{opacity:.4}.c-design .btn.primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.c-design .btn.primary:hover{opacity:.88;color:var(--paper);border-color:var(--ink)}.c-design .btn.small{padding:5px 12px;font-size:13.5px;border-radius:7px}.c-design .btn.ghost{background:transparent;border-color:transparent}.c-design .btn.ghost:hover{background:var(--paper-2)}.c-design .btn-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.c-design .crumbs{font-size:13px;color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}.c-design .crumbs a{color:var(--ink-3);text-decoration:none}.c-design .crumbs a:hover{color:var(--accent-ink);text-decoration:underline}.c-design .lesson-title{font-size:clamp(32px,4.2vw,46px);font-weight:700;letter-spacing:-.035em;line-height:1.08;margin:6px 0 14px}.c-design .lesson-question{font-size:19px;color:var(--ink-2);line-height:1.45;margin-bottom:12px;max-width:36em}.c-design .lesson-meta{font-size:13.5px;color:var(--ink-3);margin:0 0 12px}.c-design .lesson-meta a{color:var(--ink-2)}.c-design .lesson-head .lesson-title{margin-bottom:10px}.c-design .lesson-head .lesson-question{margin-bottom:6px}.c-design .where{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px;font-size:13.5px;color:var(--ink-3);padding:12px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-design .where-label{margin-right:2px}.c-design .where-step{color:var(--ink-2)}.c-design .where-step.here{color:var(--accent-ink);font-weight:650}.c-design .where-sep{color:var(--rule-strong)}.c-design .where-toggle{margin-left:auto;background:none;border:0;color:var(--ink-3);font-size:13px;text-decoration:underline;text-underline-offset:3px;padding:0}.c-design .where-toggle:hover{color:var(--accent-ink)}.c-design .where-map{padding:14px 0 6px;border-bottom:1px solid var(--rule)}.c-design .tree{font-family:var(--mono);font-size:12.5px;line-height:1.6;margin:0;white-space:pre;overflow-x:auto;color:var(--ink-3)}.c-design .tree .here{color:var(--accent-ink);font-weight:600;background:var(--accent-soft);border-radius:4px;padding:1px 6px}.c-design .tree .on-path{color:var(--ink)}.c-design .section{position:relative;margin-top:68px;scroll-margin-top:70px}.c-design .section-head{display:flex;align-items:baseline;gap:8px;font-size:13.5px;color:var(--ink-3);margin-bottom:6px}.c-design .section-kicker{font-size:13.5px;font-weight:600;color:var(--ink-3)}.c-design .section h2{font-size:30px;letter-spacing:-.025em;margin-bottom:18px}.c-design .section h3{font-size:19px;margin:32px 0 10px}.c-design .lede{font-size:19px;line-height:1.55;color:var(--ink-2)}.c-design .card{background:var(--paper-2);border-radius:var(--radius);padding:18px 20px;margin:20px 0}.c-design .card h4{font-size:16px}.c-design .card>:last-child,.c-design .callout>:last-child,.c-design .details-body>:last-child{margin-bottom:0}.c-design .grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.c-design .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.c-design .grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media (max-width: 720px){.c-design .grid-2,.c-design .grid-3,.c-design .grid-4{grid-template-columns:minmax(0,1fr)}}.c-design .grid-2,.c-design .grid-3,.c-design .grid-4{margin:20px 0}.c-design .grid-2>.card,.c-design .grid-3>.card,.c-design .grid-4>.card{margin:0}.c-design .grid-2>.card p,.c-design .grid-3>.card p,.c-design .grid-4>.card p{font-size:15px;line-height:1.55;color:var(--ink-2)}.c-design .callout{margin:26px 0;padding:1px 0 1px 18px;border-left:3px solid var(--rule-strong);color:var(--ink-2)}.c-design .callout b,.c-design .callout strong{color:var(--ink)}.c-design .callout-label{display:block;font-size:13.5px;font-weight:700;margin-bottom:3px;color:var(--ink-3)}.c-design .callout.idea{border-left-color:var(--accent)}.c-design .callout.idea .callout-label{color:var(--accent-ink)}.c-design .callout.analogy,.c-design .callout.model{border-left-color:var(--v)}.c-design .callout.analogy .callout-label,.c-design .callout.model .callout-label{color:var(--v)}.c-design .callout.established{border-left-color:var(--good)}.c-design .callout.established .callout-label{color:var(--good)}.c-design .callout.research{border-left-color:var(--research)}.c-design .callout.research .callout-label{color:var(--research)}.c-design .callout.warn{border-left-color:var(--bad)}.c-design .callout.warn .callout-label{color:var(--bad)}.c-design .callout.dev{border-left-color:var(--q)}.c-design .callout.dev .callout-label{color:var(--q)}.c-design .term{margin:24px 0;border-top:2px solid var(--frame)}.c-design .term-name{font-family:var(--display);font-size:18px;font-weight:700;padding:12px 0 8px}.c-design .term-row{display:grid;grid-template-columns:116px 1fr;gap:12px;padding:9px 0;border-top:1px solid var(--rule);font-size:15.5px}.c-design .term-row>span:first-child{font-size:13.5px;font-weight:600;color:var(--ink-3);padding-top:2px}@media (max-width: 560px){.c-design .term-row{grid-template-columns:1fr;gap:2px}}.c-design .gloss{border-bottom:1.5px dotted var(--accent);cursor:help;text-decoration:none;color:inherit}.c-design details.deep{margin:20px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-design details.deep+details.deep{margin-top:-21px}.c-design details.deep>summary{padding:12px 0;font-weight:650;font-size:15.5px;list-style:none;display:flex;gap:10px;align-items:baseline}.c-design details.deep>summary::-webkit-details-marker{display:none}.c-design details.deep>summary:before{content:"+";font-family:var(--mono);color:var(--accent-ink);width:12px}.c-design details.deep[open]>summary:before{content:"−"}.c-design details.deep .deep-tag{font-size:13.5px;font-weight:600;color:var(--research)}.c-design .details-body{padding:0 0 16px 22px;font-size:15.5px}.c-design .code{margin:20px 0;border-radius:8px;overflow:hidden;background:var(--code-bg);color:var(--code-ink);border:1px solid var(--code-rule)}.c-design .code-bar{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 16px;font-size:12.5px;color:#9a9dc0;border-bottom:1px solid rgba(255,255,255,.08)}.c-design .code-bar a{color:#b3b5ff}.c-design .code-bar .spacer{flex:1}.c-design .code-bar button{background:transparent;border:1px solid rgba(255,255,255,.18);color:#d5d6ee;border-radius:6px;padding:2px 10px;font-size:12.5px}.c-design .code-bar button:hover{border-color:#ffffff73}.c-design .code pre{margin:0;padding:16px 18px;overflow-x:auto;font-family:var(--mono);font-size:13.5px;line-height:1.65;-moz-tab-size:4;tab-size:4}.c-design .tok-c{color:#8689ad;font-style:italic}.c-design .tok-s{color:#8fe3bd}.c-design .tok-k{color:#f3a6c8}.c-design .tok-n{color:#ffc98a}.c-design .tok-f{color:#a9abff}.c-design .eq{margin:24px 0;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-design .eq-formula{font-family:var(--math);font-size:24px;text-align:center;padding:24px 8px;overflow-x:auto;white-space:nowrap}.c-design .eq-formula i,.c-design .eq-formula var{font-style:italic}.c-design .eq-legend{border-top:1px solid var(--rule);padding:12px 0;display:grid;gap:6px;font-size:15px}.c-design .eq-legend div{display:grid;grid-template-columns:minmax(64px,max-content) 1fr;gap:14px}.c-design .eq-legend div>b{font-family:var(--math);font-weight:600;font-style:italic}.c-design .chip{display:inline-block;font-family:var(--mono);font-size:12.5px;padding:1px 8px;border-radius:4px;background:var(--paper);border:1px solid var(--rule-strong);white-space:nowrap}.c-design .chip.q{background:var(--q-soft);border-color:transparent}.c-design .chip.k{background:var(--k-soft);border-color:transparent}.c-design .chip.v{background:var(--v-soft);border-color:transparent}.c-design .chip.acc{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink)}.c-design .token{display:inline-block;font-family:var(--mono);font-size:14px;padding:1px 6px;margin:2px;border-radius:4px;background:var(--tok-1);color:var(--ink);white-space:pre}.c-design .lab{margin:28px -24px;border:1.5px solid var(--frame);border-radius:14px;background:var(--paper);overflow:hidden}@media (max-width: 960px){.c-design .lab{margin:28px 0}}.c-design .lab-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:13px 22px;border-bottom:1px solid var(--rule-strong)}.c-design .lab-title{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.015em}.c-design .lab-goal{font-size:15px;color:var(--ink-2);padding:12px 22px;background:var(--paper-2)}.c-design .lab-body{padding:22px}.c-design .lab-note{font-size:14.5px;color:var(--ink-2)}.c-design .controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px 24px;margin:8px 0 16px}.c-design .control label{display:flex;justify-content:space-between;gap:8px;font-size:14px;color:var(--ink-2)}.c-design .control output{font-family:var(--mono);color:var(--ink);font-size:13.5px;white-space:nowrap}.c-design input[type=range]{width:100%;accent-color:var(--accent);height:24px}.c-design input[type=checkbox],.c-design input[type=radio]{accent-color:var(--accent)}.c-design .readout{font-family:var(--mono);font-size:13.5px;display:flex;flex-wrap:wrap;gap:8px 20px;padding:10px 14px;background:var(--paper-2);border-radius:6px}.c-design .readout b{color:var(--accent-ink);font-weight:600}.c-design .steps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.c-design .step-btn{font-size:13.5px;font-weight:500;padding:5px 12px;border-radius:7px;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink-2);transition:border-color .15s,background .15s}.c-design .step-btn:hover{border-color:var(--ink-3);color:var(--ink)}.c-design .step-btn[aria-pressed=true],.c-design .step-btn[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:650}.c-design svg text{font-family:var(--sans);fill:var(--ink)}.c-design svg .axis{stroke:var(--rule-strong);stroke-width:1}.c-design svg .gridline{stroke:var(--rule);stroke-width:1}.c-design .matrix-wrap{display:inline-block;vertical-align:middle;max-width:100%;overflow-x:auto}.c-design .matrix-cap{font-family:var(--mono);font-size:12px;color:var(--ink-3);margin-bottom:4px}.c-design table.matrix{border-collapse:separate;border-spacing:3px;font-family:var(--mono);font-size:13.5px}.c-design table.matrix td{min-width:50px;text-align:right;padding:4px 8px;border-radius:4px;background:var(--paper-2);transition:background .2s}.c-design table.matrix th{font-weight:500;font-size:12px;color:var(--ink-3);padding:2px 6px;text-align:right;white-space:nowrap}.c-design table.matrix thead th{text-align:center}.c-design table.matrix td.hot{outline:2px solid var(--accent)}.c-design table.matrix td input{width:52px;border:0;background:transparent;text-align:right;font-family:var(--mono);font-size:13.5px;padding:0;cursor:text}.c-design .matrix-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:12px 0}.c-design .op{font-family:var(--math);font-size:22px;color:var(--ink-3)}.c-design .bars{display:grid;gap:6px;margin:8px 0}.c-design .bar{display:grid;grid-template-columns:minmax(64px,150px) minmax(60px,1fr) minmax(58px,auto);gap:10px;align-items:center;font-size:14px}.c-design .bar-label{font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-design .bar-track{height:12px;background:var(--paper-2);border-radius:3px;overflow:hidden}.c-design .bar-fill{display:block;height:100%;background:var(--accent);border-radius:3px;transition:width .25s var(--ease)}.c-design .bar-val{font-family:var(--mono);font-size:13px;text-align:right;color:var(--ink-2);white-space:nowrap}.c-design .bar.dim .bar-fill{background:var(--rule-strong)}.c-design .bar.dim{color:var(--ink-3)}.c-design .flow{display:flex;flex-direction:column;margin:22px 0;max-width:460px}.c-design .flow-arrow{display:none}.c-design .flow-node{position:relative;display:block;width:100%;text-align:left;background:none;border:0;padding:0 0 16px 26px;font-size:15px;font-weight:600;color:var(--ink);line-height:1.35}.c-design .flow-node small{display:block;font-weight:400;color:var(--ink-3);font-size:13.5px;margin-top:1px}.c-design .flow-node:before{content:"";position:absolute;left:0;top:5px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--ink-3);z-index:1}.c-design .flow-node:after{content:"";position:absolute;left:5px;top:8px;bottom:-8px;width:1.5px;background:var(--rule-strong)}.c-design .flow>div:last-child>.flow-node:after,.c-design .flow>.flow-node:last-child:after{display:none}.c-design .flow>div:last-child>.flow-node,.c-design .flow>.flow-node:last-child{padding-bottom:0}.c-design .flow-node.active{color:var(--accent-ink)}.c-design .flow-node.active:before{background:var(--accent);border-color:var(--accent)}.c-design button.flow-node:hover{color:var(--accent-ink)}.c-design .flow.horizontal{flex-direction:row;max-width:none;align-items:flex-start}.c-design .flow.horizontal>div{flex:1 1 0;min-width:0}.c-design .flow.horizontal .flow-node{padding:22px 14px 0 0;font-size:14.5px}.c-design .flow.horizontal .flow-node:before{top:0}.c-design .flow.horizontal .flow-node:after{left:11px;right:0;top:5px;bottom:auto;width:auto;height:1.5px}@media (max-width: 640px){.c-design .flow.horizontal{flex-direction:column}.c-design .flow.horizontal .flow-node{padding:0 0 16px 26px}.c-design .flow.horizontal .flow-node:before{top:5px}.c-design .flow.horizontal .flow-node:after{left:5px;right:auto;top:8px;bottom:-8px;width:1.5px;height:auto}}.c-design .ladder{margin:12px 0 0;border-left:2px solid var(--rule-strong);padding-left:0;list-style:none}.c-design .ladder li{position:relative;padding:0 0 14px 24px;margin:0;font-size:15.5px}.c-design .ladder li:before{content:"";position:absolute;left:-6px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--paper-2);border:2px solid var(--ink-3)}.c-design .ladder li:last-child:before{border-color:var(--accent);background:var(--accent)}.c-design .ladder li:last-child{padding-bottom:0}.c-design .ladder b{display:block;font-size:13.5px;font-weight:700;color:var(--ink-3)}.c-design .tabs{margin:20px 0}.c-design .tablist{display:flex;gap:2px;border-bottom:1px solid var(--rule-strong);overflow-x:auto}.c-design .tab{background:transparent;border:0;padding:8px 16px;font-size:15px;color:var(--ink-3);border-bottom:2.5px solid transparent;margin-bottom:-1px;white-space:nowrap}.c-design .tab:hover{color:var(--ink)}.c-design .tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:650}.c-design .tabpanel{padding-top:16px}.c-design .exercise{margin:22px 0;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-design .exercise-head{display:flex;align-items:baseline;gap:10px;padding:12px 0 0}.c-design .ex-type{font-size:13.5px;font-weight:700;color:var(--accent-ink);text-transform:capitalize}.c-design .ex-type:after{content:":"}.c-design .ex-title{font-family:var(--display);font-weight:700;font-size:16.5px;flex:1}.c-design .ex-done{color:var(--good);font-size:13.5px;font-weight:600}.c-design .exercise-body{padding:10px 0 18px}.c-design .hint,.c-design .solution{padding:1px 0 1px 14px;margin:14px 0;font-size:15.5px;border-left:3px solid var(--k)}.c-design .solution{border-left-color:var(--good)}.c-design .hint b,.c-design .solution>b:first-child{display:block;font-size:13.5px;font-weight:700;color:var(--k)}.c-design .solution>b:first-child{color:var(--good)}.c-design .answer-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.c-design .answer-row .input{width:170px;font-family:var(--mono)}.c-design .verdict{font-size:14.5px;font-weight:600}.c-design .verdict.ok{color:var(--good)}.c-design .verdict.no{color:var(--bad)}.c-design textarea.input{min-height:96px;resize:vertical;font-size:15.5px;line-height:1.5}.c-design .quiz-q{margin:0 0 24px;padding:0;border:0}.c-design .quiz-q legend{font-weight:650;padding:0;margin-bottom:10px}.c-design .quiz-opt{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid var(--rule-strong);border-radius:8px;margin-bottom:6px;font-size:15.5px;background:var(--paper)}.c-design .quiz-opt:hover{border-color:var(--ink-3)}.c-design .quiz-opt input{margin-top:5px}.c-design .quiz-opt.right{border-color:var(--good);background:var(--good-soft)}.c-design .quiz-opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.c-design .quiz-explain{font-size:15px;color:var(--ink-2);padding:6px 2px 0}.c-design .card:has(.quiz-q){background:transparent;padding:0}.c-design .remember{list-style:none;padding:0;counter-reset:rem;border-top:2px solid var(--frame)}.c-design .remember li{counter-increment:rem;display:grid;grid-template-columns:30px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid var(--rule);margin:0}.c-design .remember li:before{content:counter(rem);font-family:var(--display);font-size:17px;font-weight:700;color:var(--accent-ink)}.c-design .toyreal{display:grid;grid-template-columns:1fr 1fr;margin:22px 0;font-size:15.5px;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-design .toyreal>div{padding:14px 18px 14px 0}.c-design .toyreal>div+div{padding-left:18px;border-left:1px solid var(--rule)}.c-design .toyreal h4{font-size:13.5px;font-weight:700;color:var(--ink-3);margin-bottom:6px;font-family:var(--sans);letter-spacing:0}@media (max-width: 640px){.c-design .toyreal{grid-template-columns:1fr}.c-design .toyreal>div+div{border-left:0;border-top:1px solid var(--rule);padding-left:0}}.c-design .source-list{display:grid;margin:16px 0;border-top:1px solid var(--rule)}.c-design .source{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.c-design .source:hover code{text-decoration:underline}.c-design .source code{color:var(--accent-ink);background:transparent;padding:0}.c-design .source span{color:var(--ink-2);font-size:14.5px;grid-column:2}.c-design .source svg{grid-row:span 2;margin-top:5px;color:var(--ink-3)}.c-design table.plain{width:100%;border-collapse:collapse;font-size:15px;margin:16px 0}.c-design table.plain th{text-align:left;font-size:13.5px;color:var(--ink-3);font-weight:650;border-bottom:1.5px solid var(--frame);padding:6px 10px 6px 0}.c-design table.plain td{border-bottom:1px solid var(--rule);padding:8px 10px 8px 0;vertical-align:top}.c-design .table-scroll{overflow-x:auto}.c-design .lesson-foot{margin-top:40px;display:grid;gap:22px}.c-design .complete-box{display:flex;flex-wrap:wrap;align-items:center;gap:14px;justify-content:space-between;padding:18px 20px;border-radius:8px;background:var(--paper-2)}.c-design .prevnext{display:grid;grid-template-columns:1fr 1fr;gap:12px}.c-design .prevnext a{display:block;padding:12px 0;border-top:2px solid var(--frame);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}.c-design .prevnext a:hover{color:var(--accent-ink);border-top-color:var(--accent)}.c-design .prevnext small{display:block;font-family:var(--sans);font-size:13.5px;font-weight:500;color:var(--ink-3)}.c-design .prevnext .next{text-align:right}@media (max-width: 560px){.c-design .prevnext{grid-template-columns:1fr}}.c-design .hero-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;align-items:center;padding:20px 0 8px}.c-design .hero-split h1{font-size:clamp(40px,5.2vw,64px);font-weight:700;letter-spacing:-.04em;line-height:1.04}.c-design .hero-caption{font-size:13.5px;color:var(--ink-3);margin:12px 0 0}.c-design .hero-split .hero-lede{font-size:19px;line-height:1.55;color:var(--ink-2);max-width:30em;margin:22px 0 0}.c-design .hero-meta{font-size:14px;color:var(--ink-3);margin:16px 0 0}@media (max-width: 860px){.c-design .hero-split{grid-template-columns:minmax(0,1fr);gap:24px}.c-design .hero-art{max-width:460px}}.c-design .il-scene{display:block;width:100%;height:auto;border-radius:20px}.c-design .il-scene text{fill:var(--il-chip-text)}.c-design .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:44px 0 8px;border-top:2px solid var(--frame)}.c-design .facts>div{padding:16px 22px 0 0;display:grid;gap:4px;align-content:start}.c-design .facts b{font-family:var(--display);font-size:16px;font-weight:700}.c-design .facts span{font-size:15px;color:var(--ink-2);line-height:1.55}@media (max-width: 720px){.c-design .facts{grid-template-columns:minmax(0,1fr)}}.c-design .home-section{margin-top:72px}.c-design .home-section h2{font-size:30px;letter-spacing:-.025em;margin-bottom:8px}.c-design .home-section>p{color:var(--ink-2);max-width:38em}.c-design .pipe{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}@media (max-width: 860px){.c-design .pipe{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.c-design .pipe{grid-template-columns:minmax(0,1fr)}}.c-design .pipe li{margin:0;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-design .pipe-tile{display:grid;grid-template-columns:22px 48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;height:100%;padding:16px;text-decoration:none;color:var(--ink)}.c-design .pipe-tile:hover{background:var(--paper-2);color:var(--ink)}.c-design .pipe-tile svg{grid-row:1 / span 2;width:48px;height:48px}.c-design .pipe-n{grid-row:1 / span 2;font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent-ink)}.c-design .pipe-label{font-family:var(--display);font-weight:700;font-size:15.5px;align-self:end}.c-design .pipe-note{font-size:13px;color:var(--ink-2);line-height:1.4;align-self:start}.c-design .parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px;margin-top:24px}@media (max-width: 860px){.c-design .parts{grid-template-columns:minmax(0,1fr)}}.c-design .part-art{display:block}.c-design .part-body{padding:14px 0 0}.c-design .part-kicker{display:flex;justify-content:space-between;font-size:13.5px;color:var(--ink-3)}.c-design .part-kicker b{color:var(--accent-ink);font-weight:700}.c-design .part-body h3{font-size:21px;margin:2px 0 4px}.c-design .part-body p{color:var(--ink-2);font-size:15px;margin:0 0 10px}.c-design .part-lessons{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.c-design .part-lessons li{margin:0;border-bottom:1px solid var(--rule)}.c-design .part-lessons a{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:14.5px;text-decoration:none;color:var(--ink)}.c-design .part-lessons a:hover{color:var(--accent-ink)}.c-design .part-lessons a span{color:var(--ink-3);font-size:13px;white-space:nowrap}.c-design .part-lessons a.done span{color:var(--good);font-weight:600}.c-design .error-crash{border:1px solid var(--bad);border-radius:10px;padding:16px 18px;margin:16px 0;background:var(--bad-soft);display:grid;gap:10px}.c-design .error-crash p{margin:0}.c-design .lesson-anchor{scroll-margin-top:0}@media (max-width: 960px){.c-design .lesson-anchor{scroll-margin-top:57px}}.c-design .lesson-phase-tight{display:none}@media (max-width: 560px){.c-design .lesson-phase-wide{display:none}.c-design .lesson-phase-tight{display:inline}}.c-design .lesson-rail{position:sticky;top:0;z-index:20;display:flex;align-items:flex-end;justify-content:space-between;gap:6px 18px;padding:14px 0 10px;margin-top:2px;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.c-design .lesson-rail::-webkit-scrollbar{display:none}@media (max-width: 960px){.c-design .lesson-rail{top:57px;gap:6px 14px}}.c-design .lesson-phase{display:flex;flex-direction:column;gap:5px;flex:none;min-width:0}.c-design .lesson-phase-name{padding:0;border:0;background:none;text-align:left;white-space:nowrap;font-size:13px;font-weight:600;color:var(--ink-3)}.c-design .lesson-phase-name:hover,.c-design .lesson-phase.is-here .lesson-phase-name{color:var(--ink)}.c-design .lesson-dots{position:relative;display:flex;align-self:flex-start;align-items:center;gap:4px;margin-left:-6px}.c-design .lesson-dots:before{content:"";position:absolute;left:11px;right:11px;top:50%;height:2px;margin-top:-1px;border-radius:2px;background:var(--rule)}.c-design .lesson-dot{position:relative;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;background:none;border-radius:50%}.c-design .lesson-dot:before{content:"";width:10px;height:10px;border-radius:50%;box-sizing:border-box;border:2px solid var(--rule-strong);background:var(--paper);transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.c-design .lesson-dot:hover:before{border-color:var(--ink-3)}.c-design .lesson-dot.is-seen:before{background:var(--accent);border-color:var(--accent)}.c-design .lesson-dot.is-here:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);transform:scale(1.15)}.c-design .lesson-dot:focus-visible{outline-offset:0;border-radius:50%}.c-design .lesson-body>.section{margin-top:34px}.c-design .section[hidden]{margin:0!important;padding:0!important}.c-design .section>h2:focus{outline:none}.c-design .lesson-feedback{margin:48px 0 0;font-size:13.5px;color:var(--ink-3)}.c-design .lesson-feedback a{color:var(--ink-2)}.c-design .lesson-pager{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:20px;border-top:1px solid var(--rule)}.c-design .lesson-pager-back{display:inline-flex;align-items:center;gap:6px;padding:8px 10px 8px 4px;border:0;border-radius:8px;background:none;color:var(--ink-2);font-size:14.5px;font-weight:600}.c-design .lesson-pager-back:hover{color:var(--ink);background:var(--paper-2)}.c-design .lesson-pager-next{display:inline-flex;align-items:center;gap:14px;margin-left:auto;max-width:min(100%,420px);padding:11px 16px 11px 20px;border:1px solid var(--ink);border-radius:12px;background:var(--ink);color:var(--paper);text-align:left;transition:opacity .15s}.c-design .lesson-pager-next:hover{opacity:.9}.c-design .lesson-pager-next span{display:grid;min-width:0;font-family:var(--display);font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.25}.c-design .lesson-pager-next small{font-family:var(--sans);font-size:12.5px;font-weight:500;opacity:.7;letter-spacing:0}.c-design .lesson-pager-next svg{flex:none}.c-design .resume{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;margin-top:14px;border-radius:10px;background:var(--accent-soft);font-size:14.5px}.c-design kbd{font-family:var(--mono);font-size:.85em;border:1px solid var(--rule-strong);border-bottom-width:2px;border-radius:4px;padding:0 5px;background:var(--paper-2)}.c-design .diagnostic{border:1px dashed var(--rule-strong);border-radius:10px;padding:14px 18px;margin:20px 0}.c-design .diag-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-size:15px}.c-design .diag-result ul{margin:8px 0 12px}.c-design .sidebar>.brand{flex:1}.c-design .brand-row{display:flex;align-items:flex-start}.c-design .side-collapse{display:grid;place-items:center;width:28px;height:28px;margin:18px 12px 0 0;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink-3)}.c-design .side-collapse:hover{border-color:var(--rule-strong);color:var(--ink);background:var(--paper-2)}@media (max-width: 960px){.c-design .side-collapse{display:none}}.c-design .shell.collapsed{grid-template-columns:minmax(0,1fr)}.c-design .shell.collapsed>.sidebar{display:none}.c-design .sidebar-reopen{position:fixed;top:14px;left:14px;z-index:35;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--rule-strong);border-radius:9px;background:var(--paper-2);color:var(--ink-2)}.c-design .sidebar-reopen:hover{border-color:var(--ink-3);color:var(--ink)}@media (max-width: 960px){.c-design .sidebar-reopen{display:none}}.c-design .shell.collapsed .page{padding-top:60px}.c-design .fast-track{padding:22px 24px;border-radius:14px;background:var(--accent-soft)}.c-design .fast-track h2{margin-top:0}.c-design .fast-track>p{color:var(--ink-2);max-width:44em}.c-design .fast-track-list{columns:2;column-gap:32px;margin:14px 0 18px;padding-left:1.4em}@media (max-width: 640px){.c-design .fast-track-list{columns:1}}.c-design .fast-track-list li{break-inside:avoid;margin:0 0 6px}.c-design .fast-track-list a{color:var(--ink);text-decoration:none;font-weight:600}.c-design .fast-track-list a:hover{color:var(--accent-ink);text-decoration:underline}.c-design .fast-track-list a.done{color:var(--good)}.c-design .fast-track-list span{margin-left:8px;font-size:13px;color:var(--ink-3)}.c-design .nav-fast{display:inline-block;width:6px;height:6px;margin:0 0 2px 6px;border-radius:50%;background:var(--accent);vertical-align:middle}.c-design .lesson-fast{color:var(--accent-ink);font-weight:600}.c-design .fast-skipped{margin:14px 0 0;padding:10px 14px;border-radius:10px;background:var(--paper-2);font-size:14px;color:var(--ink-2)}.c-design .fast-next{display:block;padding:14px 18px;border-radius:12px;background:var(--accent-soft);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}.c-design .fast-next small{display:block;font-family:var(--sans);font-size:13px;font-weight:500;color:var(--accent-ink)}.c-design .fast-done{padding:14px 18px;border-radius:12px;background:var(--accent-soft);margin:0}.c-design .landing{--l-ink: #eef0f5;--l-ink-2: rgba(226, 230, 240, .66);--l-ink-3: rgba(226, 230, 240, .42);--l-line: rgba(255, 255, 255, .1);--l-accent: #f2b04a;--l-bad: #ff8a80;position:relative;min-height:100vh;min-height:100svh;overflow:hidden;isolation:isolate;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);color:var(--l-ink);color-scheme:dark;background:radial-gradient(60% 55% at 72% 45%,rgba(242,176,74,.1),transparent 70%),radial-gradient(50% 60% at 10% 100%,rgba(110,120,255,.07),transparent 70%),#05060a;padding:28px clamp(20px,5vw,64px)}.c-design .hero-field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-2;opacity:0;transition:opacity 1.2s ease}.c-design .hero-field.is-ready{opacity:1}.c-design .landing-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(5,6,10,.78) 0%,rgba(5,6,10,.35) 42%,transparent 62%)}@media (max-aspect-ratio: 23/20){.c-design .landing-scrim{background:linear-gradient(180deg,transparent 18%,rgba(5,6,10,.7) 48%,rgba(5,6,10,.55) 100%)}}.c-design .landing-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.c-design .landing-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em}.c-design .landing-mark{width:10px;height:10px;border-radius:50%;background:var(--l-accent);box-shadow:0 0 16px 2px #f2b04a8c}.c-design .landing-beta{font-size:12.5px;font-weight:500;letter-spacing:.02em;color:var(--l-ink-2);border:1px solid var(--l-line);padding:5px 12px;border-radius:99px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.c-design .landing-hero{align-self:center;max-width:780px;padding:48px 0}.c-design .landing-hero>:not(h1){max-width:560px}.c-design .landing-eyebrow{margin:0 0 18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--l-accent)}.c-design .landing-hero h1{margin:0;font-family:var(--display);font-weight:600;font-size:clamp(44px,7.4vw,92px);line-height:.98;letter-spacing:-.045em;color:var(--l-ink)}.c-design .landing-lede{margin:26px 0 0;max-width:31em;font-size:clamp(16.5px,1.6vw,19px);line-height:1.6;color:var(--l-ink-2)}.c-design .landing-code{margin-top:40px;max-width:460px}.c-design .landing-code-row{display:flex;align-items:center;gap:6px;padding:6px;border-radius:14px;background:#ffffff0b;border:1px solid var(--l-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:border-color .2s,box-shadow .2s}.c-design .landing-code-row:focus-within{border-color:#f2b04a8c;box-shadow:0 0 0 4px #f2b04a1f}.c-design .landing-code-row:has(input[aria-invalid=true]){border-color:#ff8a8099}.c-design .landing-code-row input{flex:1;min-width:0;padding:10px 12px;border:0;background:transparent;outline:none;font-family:var(--mono);font-size:15px;letter-spacing:.06em;color:var(--l-ink)}.c-design .landing-code-row input::placeholder{color:var(--l-ink-3)}.c-design .landing-code-row button{flex:none;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:0;border-radius:10px;background:var(--l-ink);color:#05060a;font-weight:600;font-size:14.5px;cursor:pointer;transition:opacity .15s,transform .15s}.c-design .landing-code-row button:hover:not(:disabled){transform:translate(1px)}.c-design .landing-code-row button:disabled{opacity:.35;cursor:default}.c-design .landing-note{margin:12px 2px 0;font-size:13.5px;line-height:1.5;color:var(--l-ink-3)}.c-design .landing-note a{color:var(--l-ink-2);text-underline-offset:3px}.c-design .landing-note.is-wrong,.c-design .landing-note.is-wrong a{color:var(--l-bad)}.c-design .landing-foot{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:var(--l-ink-3)}@media (max-width: 560px){.c-design .landing{padding:20px 18px}.c-design .landing-hero{padding:32px 0}.c-design .landing-code-row button span{display:none}}.c-design .landing-nowrap{white-space:nowrap}.c-design{--n1: #b8650a;--n2: #1f6fd1;--n3: #0f8a5f;--n4: #a336b8;--n5: #c43d3d;--n6: #0b7785;--n7: #6b5bd6;--n8: #7a6a12}[data-theme=dark] .c-design{--n1: #f2b04a;--n2: #6ea8ff;--n3: #3ecf8e;--n4: #d48cff;--n5: #ff7b72;--n6: #38cfe0;--n7: #a99bff;--n8: #d9c95a}.c-design .nav-part-toggle{display:flex;width:100%;justify-content:space-between;align-items:baseline;gap:8px;background:none;border:0;text-align:left;border-radius:6px}.c-design .nav-part-toggle:hover{background:var(--paper-2);color:var(--ink)}.c-design .nav-part-toggle b{font-weight:650}.c-design .nav-part-count{font-family:var(--mono);font-size:11.5px;font-weight:500;color:var(--ink-3);display:inline!important}.c-design .nav-link.soon{color:var(--ink-3)}.c-design .nav-link.soon .nav-tick{border-style:dashed}.c-design .kind-tag{font-weight:600;color:var(--ink-2)}.c-design .kind-tag.design,.c-design .kind-tag.quest{color:var(--accent-ink)}.c-design .say{margin:0 0 .7em}.c-design .say b{font-weight:650;color:var(--ink)}.c-design .analogy-breaks{margin:10px 0 0;font-size:15px}.c-design .analogy-breaks b{color:var(--v)}.c-design table.mapping td:first-child{color:var(--ink-2);width:46%}.c-design .whynot .deep-tag{color:var(--accent-ink)}.c-design .moral{margin:34px 0 8px;padding:22px 0 0;border-top:1px solid var(--rule);font-family:var(--display);font-size:clamp(21px,2.6vw,26px);line-height:1.3;letter-spacing:-.02em;color:var(--ink)}.c-design .moral-label{display:block;font-family:var(--sans, inherit);font-size:14px;letter-spacing:0;color:var(--ink-3);margin-bottom:6px}.c-design .reading{list-style:none;padding:0;border-top:1px solid var(--rule)}.c-design .reading li{display:grid;gap:2px;padding:9px 0;border-bottom:1px solid var(--rule);margin:0;align-content:start}.c-design .reading li span{font-size:14px;line-height:1.45;color:var(--ink-2)}@media (min-width: 760px){.c-design .reading{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}}.c-design .seg{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:10px;background:var(--paper-2);border:1px solid var(--rule);max-width:100%}.c-design .seg-btn{border:0;background:transparent;padding:6px 12px;border-radius:7px;font-size:13.5px;font-weight:550;color:var(--ink-2);white-space:nowrap}.c-design .seg-btn:hover{color:var(--ink)}.c-design .seg-btn[aria-checked=true]{background:var(--paper);color:var(--ink);box-shadow:0 0 0 1px var(--rule-strong)}[data-theme=dark] .c-design .seg-btn[aria-checked=true]{background:var(--rule-strong);box-shadow:none}.c-design .toggles{display:flex;flex-wrap:wrap;gap:10px 22px;margin:6px 0 16px}.c-design .toggle{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:var(--ink-2)}.c-design .toggle input{position:absolute;opacity:0;width:1px;height:1px}.c-design .toggle-track{width:32px;height:18px;border-radius:99px;background:var(--rule-strong);position:relative;transition:background .2s;flex:none}.c-design .toggle-track span{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--paper);transition:transform .2s var(--ease)}.c-design .toggle input:checked+.toggle-track{background:var(--accent)}.c-design .toggle input:checked+.toggle-track span{transform:translate(14px)}.c-design .toggle input:focus-visible+.toggle-track{outline:2.5px solid var(--accent);outline-offset:2px}.c-design .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;margin:16px 0;background:var(--rule);border:1px solid var(--rule);border-radius:10px;overflow:hidden}.c-design .stats.two{grid-template-columns:repeat(2,minmax(0,1fr))}.c-design .stat{display:grid;gap:2px;align-content:start;padding:12px 14px;background:var(--paper)}.c-design .stat-label{font-size:12.5px;color:var(--ink-3);font-weight:550}.c-design .stat-value{font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2;overflow-wrap:anywhere}.c-design .stat-value code{font-size:15px;background:none;padding:0}.c-design .stat-sub{font-size:12.5px;color:var(--ink-3);line-height:1.35}.c-design .stat.accent .stat-value{color:var(--accent-ink)}.c-design .stat.good .stat-value{color:var(--good)}.c-design .stat.bad .stat-value{color:var(--bad)}.c-design .bar-fill.good{background:var(--good)}.c-design .bar-fill.bad{background:var(--bad)}.c-design .bar-fill.accent{background:var(--accent)}.c-design .mini-head{font-size:13px;font-weight:650;color:var(--ink-3);margin:6px 0}.c-design .mini-head code{font-weight:500;font-size:12px}.c-design .grid-2.tight{margin:4px 0 10px;gap:22px}.c-design .bad-note,.c-design .bad-text{color:var(--bad)}.c-design .lab-body>.seg{margin-bottom:4px}.c-design .chart-tick{font-size:11px;fill:var(--ink-3)}.c-design .chart-axis-label{font-size:11.5px;fill:var(--ink-3)}.c-design .chart-line{fill:none;stroke-width:2.4;stroke-linejoin:round}.c-design .chart-line.accent{stroke:var(--accent)}.c-design .chart-line.ink{stroke:var(--ink-3)}.c-design .chart-line.bad{stroke:var(--bad)}.c-design .chart-vline{stroke:var(--bad);stroke-width:1.2;stroke-dasharray:4 4}.c-design .chart-marker{fill:var(--paper);stroke:var(--accent);stroke-width:3}.c-design .chart-note{font-size:12px;font-weight:600;fill:var(--ink-2)}.c-design .decisions{display:grid;gap:8px;margin:12px 0}.c-design .decision{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:10px 14px;border-radius:10px;border:1px solid var(--rule);transition:border-color .2s,background .2s}.c-design .decision b{display:block;font-size:15px}.c-design .decision span{font-size:13.5px;color:var(--ink-3)}.c-design .decision-mark{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-weight:800;font-size:12px;color:var(--ink-3);border:1.5px solid var(--rule-strong);margin-top:1px}.c-design .decision.on{border-color:var(--accent);background:var(--accent-soft)}.c-design .decision.on .decision-mark{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.c-design .ring-layout{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:24px;align-items:start}@media (max-width: 720px){.c-design .ring-layout{grid-template-columns:minmax(0,1fr)}.c-design .ring-svg{max-width:320px;margin:0 auto}}.c-design .ring-svg{width:100%;display:block}.c-design .ring-track{fill:none;stroke:var(--rule-strong);stroke-width:1.5}.c-design .ring-key{opacity:.85}.c-design .ring-key.moved{stroke:var(--ink);stroke-width:1.2;opacity:1}.c-design .ring-big{font-family:var(--display);font-size:30px;font-weight:700}.c-design .ring-small{font-size:12px;fill:var(--ink-3)}.c-design .node-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;align-items:center}.c-design .node-chip{display:inline-flex;align-items:center;gap:7px;padding:4px 10px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-weight:650;font-size:13.5px}.c-design .node-chip i{width:10px;height:10px;border-radius:50%;background:var(--c)}.c-design .node-chip span{color:var(--ink-3);font-weight:500}.c-design .node-chip:hover:not(:disabled){border-color:var(--bad)}.c-design .rl-name{font-size:12.5px;font-weight:650}.c-design .rl-ok{fill:var(--good)}.c-design .rl-no{stroke:var(--bad);stroke-width:1.6;fill:none}.c-design .rl-level{fill:none;stroke:var(--accent);stroke-width:1.4;opacity:.7}.c-design .rl-table td,.c-design .rl-table th{white-space:nowrap}.c-design .path-bar{display:flex;gap:2px;height:38px;margin:16px 0 8px;border-radius:8px;overflow:hidden}.c-design .path-seg span{display:block;overflow:hidden;text-overflow:ellipsis}.c-design .path-seg{flex-basis:0;min-width:6px;border:0;padding:0 8px;color:var(--paper);font-size:12px;font-weight:650;text-align:left;overflow:hidden;white-space:nowrap;transition:flex-grow .3s var(--ease),opacity .2s;opacity:.82}.c-design .path-seg.open,.c-design .path-seg:hover{opacity:1}.c-design .seg-dns{background:var(--n6)}.c-design .seg-tcp{background:var(--n2)}.c-design .seg-tls{background:var(--n7)}.c-design .seg-http{background:var(--n4)}.c-design .seg-app{background:var(--n3)}.c-design .seg-db{background:var(--n1)}[data-theme=dark] .c-design .path-seg{color:#0a0a0c}.c-design .path-steps{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.c-design .path-steps li{margin:0;border-bottom:1px solid var(--rule)}.c-design .path-steps button{width:100%;display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center;padding:8px 2px;background:none;border:0;text-align:left;font-size:14.5px}.c-design .path-steps .dot{width:10px;height:10px;border-radius:3px}.c-design .path-steps li.skipped b,.c-design .path-steps li.skipped .mono{color:var(--ink-3);text-decoration:line-through}.c-design .path-steps p{margin:0 0 10px 24px;font-size:14px;color:var(--ink-2)}.c-design .path-total{display:flex;justify-content:space-between;padding:10px 2px;font-weight:700;font-size:16px}.c-design .hist-bar{fill:var(--rule-strong)}.c-design .pm-line{stroke-width:1.6}.c-design .pm-text{font-size:11.5px;font-weight:650}.c-design .pm-50 .pm-line{stroke:var(--ink-3)}.c-design .pm-50 .pm-text{fill:var(--ink-2)}.c-design .pm-avg .pm-line{stroke:var(--n2);stroke-dasharray:3 3}.c-design .pm-avg .pm-text{fill:var(--n2)}.c-design .pm-90 .pm-line{stroke:var(--n7)}.c-design .pm-90 .pm-text{fill:var(--n7)}.c-design .pm-99 .pm-line{stroke:var(--accent)}.c-design .pm-99 .pm-text{fill:var(--accent-ink)}.c-design .budget{padding:12px 14px;border-radius:10px;background:var(--paper-2);margin:8px 0}.c-design .budget p{margin:6px 0 0;font-size:14.5px}.c-design .pages{display:grid;gap:14px;margin:12px 0}.c-design .page-ids{display:flex;flex-wrap:wrap;gap:5px}.c-design .chip.dup{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.c-design .snowflake{display:flex;gap:2px;margin:16px 0 8px;font-family:var(--mono);font-size:10.5px;overflow:hidden}.c-design .sf{padding:7px 4px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink)}.c-design .sf.sign{background:var(--rule)}.c-design .sf.time,.c-design .sf-sw.time{background:var(--accent-soft)}.c-design .sf.machine,.c-design .sf-sw.machine{background:var(--q-soft)}.c-design .sf.seq,.c-design .sf-sw.seq{background:var(--v-soft)}.c-design .sf-legend{display:grid;gap:4px;font-size:13.5px;color:var(--ink-2)}.c-design .sf-sw{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px;vertical-align:-1px}.c-design .naive-servers{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin:14px 0}.c-design .naive-server{display:grid;gap:2px;padding:10px 12px;border-radius:8px;border:1px solid var(--rule-strong);font-size:12.5px;color:var(--ink-3)}.c-design .naive-server b{font-size:15px;color:var(--ink)}.c-design .kill-effects{margin:10px 0}.c-design .kill-effects p{margin:0 0 6px;font-size:15px}.c-design .kill-effects b{color:var(--bad)}.c-design .c4,.c-design .figure{margin:24px 0;border:1px solid var(--rule-strong);border-radius:12px;background:var(--paper);overflow:hidden}.c-design .figure{padding:12px}.c-design .figure figcaption{font-size:13.5px;color:var(--ink-3);margin-top:8px}.c-design .c4-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 16px;border-bottom:1px solid var(--rule)}.c-design .c4-level{font-size:12px;font-weight:700;color:var(--accent-ink);letter-spacing:.01em}.c-design .c4-level.deployment{color:var(--n6)}.c-design .c4-level.dynamic{color:var(--n4)}.c-design .c4-level.data{color:var(--n2)}.c-design .c4-title{font-family:var(--display);font-weight:700;font-size:15.5px;flex:1;min-width:180px}.c-design .c4-head .seg{margin-left:auto}.c-design .c4-scroll{overflow-x:auto;padding:10px 10px 4px}.c-design .c4-scroll svg{display:block;margin:0 auto}.c-design .c4-el .c4-fill{fill:var(--paper-2);stroke:var(--rule-strong);stroke-width:1.5}.c-design .c4-el .c4-line{fill:none;stroke:var(--rule-strong);stroke-width:1.5}.c-design .c4-el.k-person .c4-fill{fill:var(--paper-2);stroke:var(--ink-3)}.c-design .c4-el.k-system .c4-fill,.c-design .c4-el.k-container .c4-fill,.c-design .c4-el.k-client .c4-fill{stroke:var(--ink-3)}.c-design .c4-el.k-external .c4-fill{fill:transparent;stroke:var(--ink-3);stroke-dasharray:5 4}.c-design .c4-el.k-store .c4-fill,.c-design .c4-el.k-cache .c4-fill{fill:var(--q-soft);stroke:var(--n2)}.c-design .c4-el.k-queue .c4-fill{fill:var(--v-soft);stroke:var(--n4)}.c-design .c4-el.k-edge .c4-fill{fill:var(--paper);stroke:var(--n6)}.c-design .c4-el.focus .c4-fill{stroke:var(--accent);stroke-width:2.6;fill:var(--accent-soft)}.c-design .c4-el.flawed .c4-fill{stroke:var(--bad);stroke-dasharray:6 4}.c-design .c4-el.down .c4-fill{fill:var(--bad-soft);stroke:var(--bad);stroke-dasharray:3 3}.c-design .c4-el.down text{opacity:.55}.c-design .c4-name{font-size:14.5px;font-weight:700}.c-design .c4-tech{font-size:12px;fill:var(--ink-3)}.c-design .c4-desc{font-size:12px;fill:var(--ink-2)}.c-design .c4-count{font-family:var(--mono);font-size:11px;font-weight:600;fill:var(--accent-ink)}.c-design .c4-down-label{font-size:10.5px;font-weight:800;fill:var(--bad);letter-spacing:.06em}.c-design .c4-kill{cursor:pointer;outline:none}.c-design .c4-kill:hover .c4-fill{stroke:var(--bad)}.c-design .c4-kill:focus-visible .c4-fill{stroke:var(--accent);stroke-width:3}.c-design .c4-boundary rect{fill:none;stroke:var(--ink-3);stroke-width:1.2;stroke-dasharray:7 5}.c-design .c4-boundary text{font-size:12px;font-weight:650;fill:var(--ink-3)}.c-design .c4-boundary.k-zone rect{stroke:var(--n6)}.c-design .c4-boundary.k-zone text{fill:var(--n6)}.c-design .c4-boundary.k-node rect{stroke:var(--rule-strong);stroke-dasharray:none}.c-design .c4-rel line{stroke:var(--ink-3);stroke-width:1.5}.c-design .c4-rel.async line{stroke-dasharray:6 4}.c-design .c4-rel.dead line{stroke:var(--bad);opacity:.4}.c-design .c4-arrowhead{fill:var(--ink-3)}.c-design .c4-rel-bg{fill:var(--paper);opacity:.92}.c-design .c4-rel-label{font-size:12px;fill:var(--ink-2)}.c-design .c4-rel-tech{font-size:11px;fill:var(--ink-3);font-family:var(--mono)}.c-design .c4-key{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;padding:8px 16px 12px;font-size:12.5px;color:var(--ink-3);border-top:1px solid var(--rule)}.c-design .c4-caption{color:var(--ink-2);font-size:13.5px;flex-basis:100%}.c-design .c4-legend{display:flex;flex-wrap:wrap;gap:4px 14px}.c-design .c4-legend .lg{display:inline-block;width:14px;height:10px;margin-right:5px;vertical-align:-1px;border-radius:2px;border:1.5px solid var(--ink-3)}.c-design .lg.person{border-radius:6px}.c-design .lg.store{background:var(--q-soft);border-color:var(--n2);border-radius:5px/3px}.c-design .lg.ext{border-style:dashed}.c-design .lg.async{border:0;border-top:2px dashed var(--ink-3);height:0;vertical-align:3px;border-radius:0}.c-design .lg.flawed{border-color:var(--bad);border-style:dashed}.c-design .lg.focus{border-color:var(--accent);background:var(--accent-soft)}.c-design .seq-part rect{fill:var(--paper-2);stroke:var(--ink-3);stroke-width:1.3}.c-design .seq-part.k-store rect{fill:var(--q-soft);stroke:var(--n2)}.c-design .seq-part.k-external rect{fill:transparent;stroke-dasharray:5 4}.c-design .seq-part text{font-size:12.5px;font-weight:700}.c-design .seq-life{stroke:var(--rule-strong);stroke-width:1.2;stroke-dasharray:3 4}.c-design .seq-msg line,.c-design .seq-msg path{stroke:var(--ink-3);stroke-width:1.5}.c-design .seq-msg.k-reply line{stroke-dasharray:5 4}.c-design .seq-msg.k-async line{stroke-dasharray:2 3}.c-design .seq-msg.k-fail line{stroke:var(--bad)}.c-design .seq-msg.current line,.c-design .seq-msg.current path{stroke:var(--accent);stroke-width:2.4}.c-design .seq-label{font-size:11.5px;fill:var(--ink-2)}.c-design .seq-msg.current .seq-label{fill:var(--ink);font-weight:650}.c-design .seq-n{fill:var(--ink-3);font-family:var(--mono);font-size:10.5px}.c-design .seq-x{fill:var(--bad);font-weight:800;font-size:13px}.c-design .seq-fail-head{fill:var(--bad)}.c-design .seq-controls{padding:10px 16px 14px;border-top:1px solid var(--rule)}.c-design .seq-note{margin:10px 0 0;font-size:14.5px;color:var(--ink-2);min-height:2.6em}.c-design .seq-note b{color:var(--ink)}.c-design .er-box{fill:var(--paper);stroke:var(--ink-3);stroke-width:1.3}.c-design .er-headbg{fill:var(--paper-2);stroke:var(--ink-3);stroke-width:1.3}.c-design .er-name{font-size:13.5px;font-weight:700}.c-design .er-field{font-size:12px;font-family:var(--mono);fill:var(--ink-2)}.c-design .er-field.pk{fill:var(--accent-ink);font-weight:600}.c-design .er-type{font-size:11px;font-family:var(--mono);fill:var(--ink-3)}.c-design .er-rel line{stroke:var(--ink-3);stroke-width:1.4}.c-design .er-card{font-size:12px;font-weight:700;fill:var(--accent-ink)}.c-design .er-label{font-size:11px;fill:var(--ink-3)}.c-design .artifact{margin:22px 0;border-top:2px solid var(--frame)}.c-design .artifact-head{font-size:12.5px;font-weight:700;color:var(--ink-3);padding:10px 0 2px;letter-spacing:.01em}.c-design .artifact table.plain{margin-top:6px;font-size:14.5px}.c-design .artifact-foot{font-size:14.5px;color:var(--ink-2);margin:8px 0 0}.c-design .cell-note{display:block;font-size:12.5px;color:var(--ink-3);font-weight:400}.c-design .reqs{margin:8px 0 6px}.c-design .reqs li{margin-bottom:4px}.c-design .reqs-out{font-size:14px;color:var(--ink-3)}.c-design .endpoints{display:grid;gap:10px;margin-top:10px}.c-design .endpoint{border:1px solid var(--rule);border-radius:10px;padding:12px 14px}.c-design .endpoint-line{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.c-design .endpoint-line code{font-size:14px;background:none;padding:0}.c-design .http-method{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--n3)}.c-design .http-method.m-post{color:var(--n1)}.c-design .http-method.m-delete{color:var(--n5)}.c-design .http-method.m-put,.c-design .http-method.m-patch{color:var(--n2)}.c-design .endpoint dl{display:grid;gap:3px;margin:8px 0 0;font-size:14px}.c-design .endpoint dl div{display:grid;grid-template-columns:96px 1fr;gap:10px}.c-design .endpoint dt{color:var(--ink-3);font-size:13px}.c-design .endpoint dd{margin:0;color:var(--ink-2);overflow-wrap:anywhere}.c-design table.capacity td:first-child{width:34%}.c-design .fork{margin:20px 0}.c-design .fork-q{font-weight:650}.c-design .fork-path{margin-top:12px;padding:14px 16px;border-radius:10px;background:var(--paper-2)}.c-design .fork-who{margin:0 0 12px;font-size:15px}.c-design .fork-scores{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.c-design .fork-score{display:grid;gap:2px;padding:8px 10px;border-radius:8px;background:var(--paper);font-size:12.5px;color:var(--ink-3)}.c-design .fork-score b{font-size:14.5px;color:var(--ink)}.c-design .fork-score.good b{color:var(--good)}.c-design .fork-score.bad b{color:var(--bad)}.c-design .adr{margin:22px 0;padding:16px 18px;border-radius:10px;border:1px solid var(--accent);background:var(--accent-soft)}.c-design .adr-head{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin-bottom:8px}.c-design .adr-head span{font-size:12.5px;font-weight:700;color:var(--accent-ink)}.c-design .adr-head b{font-family:var(--display);font-size:16px}.c-design .adr p{margin:0;font-size:15.5px;line-height:1.6;color:var(--ink-2)}.c-design .adr p b{color:var(--ink);font-weight:600}.c-design .adr-chose{color:var(--accent-ink)!important}.c-design .practice{margin:16px 0}.c-design .practice-nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px}.c-design .practice-pip{width:32px;height:32px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-family:var(--mono);font-size:13px;color:var(--ink-2)}.c-design .practice-pip[aria-selected=true]{border-color:var(--ink);color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.c-design .practice-pip.right,.c-design .practice-pip.done{background:var(--good-soft);border-color:var(--good);color:var(--good)}.c-design .practice-pip.wrong{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.c-design .practice-count{margin-left:auto;font-size:13px;color:var(--ink-3)}.c-design .practice-card{padding:18px 20px;border-radius:12px;border:1px solid var(--rule-strong);background:var(--paper)}.c-design .practice-kind{font-size:12.5px;font-weight:700;color:var(--accent-ink);margin-bottom:6px}.c-design .practice-kind.bottleneck{color:var(--bad)}.c-design .practice-kind.estimate{color:var(--n2)}.c-design .practice-kind.tradeoff{color:var(--n4)}.c-design .practice-kind.design{color:var(--n3)}.c-design .practice-q{font-weight:650;font-size:16.5px;margin-bottom:12px}.c-design .practice-scenario{margin:6px 0 12px;padding:10px 12px;border-radius:8px;background:var(--paper-2);font-family:var(--mono);font-size:12.5px;line-height:1.55;white-space:pre-wrap;color:var(--ink-2)}.c-design .practice-foot{display:flex;justify-content:space-between;margin-top:12px}.c-design .quiz-explain b.ok{color:var(--good)}.c-design .quiz-explain b.no{color:var(--bad)}.c-design .quiz-explain .btn{margin-top:8px}.c-design .model-answer{margin-top:14px;padding:12px 0 0 14px;border-left:3px solid var(--good);font-size:15px}.c-design .model-answer>b{display:block;font-size:13px;color:var(--good);margin-top:6px}.c-design .model-answer ul{margin:6px 0 10px}.c-design .rubric li::marker{content:"□  ";color:var(--ink-3)}.c-design .canvas{border:1.5px solid var(--frame);border-radius:14px;overflow:hidden;margin:18px 0}.c-design .canvas-brief{margin:0;padding:12px 18px;background:var(--paper-2);font-size:15px;color:var(--ink-2)}.c-design .canvas-steps{display:flex;overflow-x:auto;border-bottom:1px solid var(--rule-strong);scrollbar-width:none}.c-design .canvas-steps::-webkit-scrollbar{display:none}.c-design .canvas-step{flex:1 0 auto;display:flex;align-items:center;gap:7px;padding:10px 14px;background:none;border:0;border-bottom:2.5px solid transparent;margin-bottom:-1px;font-size:13.5px;font-weight:550;color:var(--ink-3);white-space:nowrap}.c-design .canvas-step:hover{color:var(--ink)}.c-design .canvas-step[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent)}.c-design .canvas-step.written{color:var(--ink-2)}.c-design .canvas-body{padding:16px 18px}.c-design .canvas-prompt{display:block;font-size:15px;font-weight:600;margin-bottom:8px}.c-design .canvas-input{min-height:150px;font-family:var(--mono);font-size:13.5px}.c-design .canvas-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0 0;font-size:13.5px}.c-design .canvas-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:16px;padding-top:14px;border-top:1px solid var(--rule);font-size:14.5px}@media (max-width: 720px){.c-design .canvas-compare{grid-template-columns:1fr}}.c-design .canvas-compare h4{font-size:13px;color:var(--ink-3);font-family:var(--sans);letter-spacing:0;margin-bottom:6px}.c-design .canvas-points{list-style:none;padding:0}.c-design .canvas-points li{padding:4px 0}.c-design .canvas-auto{color:var(--ink-3);font-weight:500}.c-design .canvas-hint{font-size:13px;margin:8px 0 4px}.c-design .canvas-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 18px;border-top:1px solid var(--rule);font-size:13.5px;color:var(--ink-3)}.c-design .dash-head{margin:8px 0 22px}.c-design .dash-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 10px}.c-design .dash-title{font-size:clamp(30px,4vw,44px);letter-spacing:-.035em;line-height:1.08;max-width:17em}.c-design .next-card{display:grid;gap:6px;padding:22px 24px;border-radius:16px;text-decoration:none;color:var(--ink);background:linear-gradient(135deg,var(--accent-soft),transparent 70%),var(--paper-2);border:1px solid var(--rule-strong);transition:border-color .2s,transform .2s var(--ease)}.c-design a.next-card:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-1px)}.c-design .next-kicker{font-size:13px;font-weight:650;color:var(--accent-ink);text-transform:none}.c-design .next-title{font-family:var(--display);font-size:clamp(22px,2.6vw,28px);font-weight:700;letter-spacing:-.025em;line-height:1.15}.c-design .next-q{color:var(--ink-2);font-size:16px;max-width:40em}.c-design .next-go{margin-top:6px;font-weight:650;font-size:14.5px}.c-design .dash-views{margin:28px 0 18px}.c-design .dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width: 720px){.c-design .dash-grid{grid-template-columns:minmax(0,1fr)}}.c-design .tile{display:grid;gap:6px;align-content:start;padding:16px 18px;border-radius:12px;border:1px solid var(--rule);background:var(--paper)}.c-design .tile.wide{grid-column:1 / -1}.c-design .tile .btn{justify-self:start;margin-top:4px}.c-design .tile-label{font-size:13px;font-weight:650;color:var(--ink-3)}.c-design .tile-value{font-family:var(--display);font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.c-design .tile-sub{font-size:14px;color:var(--ink-2);line-height:1.5}.c-design .tile-list{list-style:none;padding:0;margin:2px 0 0;font-size:14px}.c-design .tile-list li{display:flex;justify-content:space-between;gap:8px;margin:0;padding:4px 0;border-top:1px solid var(--rule)}.c-design .tile-list span{color:var(--ink-3);font-size:13px}.c-design .strip{display:grid;grid-template-columns:repeat(14,1fr);gap:3px;max-width:260px}.c-design .strip i{height:12px;border-radius:3px;background:var(--rule)}.c-design .strip i.on{background:color-mix(in srgb,var(--accent) 55%,var(--rule))}.c-design .strip i.hi{background:var(--accent)}.c-design .ft-row{display:flex;flex-wrap:wrap;gap:4px 6px;margin-top:4px}.c-design .ft-item{font-size:13.5px;padding:3px 0;margin-right:10px;color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--accent)}.c-design .ft-item.done{color:var(--good);border-bottom-color:var(--good)}.c-design .ft-item.soon{color:var(--ink-3);border-bottom:1.5px dashed var(--rule-strong)}.c-design .dash-progress{display:grid;gap:2px}.c-design .part-row{display:grid;grid-template-columns:60px minmax(0,1.2fr) minmax(80px,1fr) 96px;gap:14px;align-items:center;padding:11px 4px;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.c-design .part-row:hover{background:var(--paper-2);color:var(--ink)}.c-design .part-row-n{font-size:12.5px;color:var(--ink-3);font-weight:600}.c-design .part-row-title{font-weight:650;font-size:15px}.c-design .part-row-bar{position:relative;height:8px;border-radius:99px;background:var(--rule);overflow:hidden}.c-design .part-row-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:99px}.c-design .part-row-bar i.written{background:color-mix(in srgb,var(--accent) 30%,var(--rule))}.c-design .part-row-bar i.done{background:var(--accent)}.c-design .part-row-count{font-family:var(--mono);font-size:13px;text-align:right}.c-design .part-row-count small{display:block;font-family:var(--sans);color:var(--ink-3);font-size:11.5px}@media (max-width: 600px){.c-design .part-row{grid-template-columns:minmax(0,1fr) 80px}.c-design .part-row-n{display:none}.c-design .part-row-bar{grid-column:1 / -1;grid-row:2}}.c-design .legend-line{font-size:13px;color:var(--ink-3);margin-top:10px;display:flex;gap:6px 14px;flex-wrap:wrap;align-items:center}.c-design .legend-line i{display:inline-block;width:18px;height:8px;border-radius:99px;margin-right:-8px}.c-design .lg-done{background:var(--accent)}.c-design .lg-written{background:color-mix(in srgb,var(--accent) 30%,var(--rule))}.c-design .lg-soon{background:var(--rule)}.c-design .dash-foot{font-size:13px;margin-top:48px}.c-design .course-view{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start}@media (max-width: 860px){.c-design .course-view{grid-template-columns:minmax(0,1fr);gap:14px}}.c-design .part-tabs{display:grid;gap:2px}@media (max-width: 860px){.c-design .part-tabs{display:flex;overflow-x:auto;gap:4px;padding-bottom:4px;scrollbar-width:none}.c-design .part-tabs::-webkit-scrollbar{display:none}}.c-design .part-tab{display:grid;grid-template-columns:20px 1fr;gap:6px;text-align:left;padding:8px 10px;border:0;border-radius:8px;background:none;font-size:14px;color:var(--ink-2)}.c-design .part-tab span{font-family:var(--mono);font-size:12px;color:var(--ink-3);padding-top:2px}.c-design .part-tab b{font-weight:550}.c-design .part-tab:hover{background:var(--paper-2);color:var(--ink)}.c-design .part-tab[aria-selected=true]{background:var(--accent-soft);color:var(--ink)}.c-design .part-tab[aria-selected=true] b{font-weight:700}@media (max-width: 860px){.c-design .part-tab{flex:none;white-space:nowrap;border:1px solid var(--rule)}}.c-design .part-panel-head h2{font-size:24px;margin-bottom:6px}.c-design .part-panel-head p{color:var(--ink-2);margin:0 0 4px;font-size:15.5px}.c-design .part-stage{font-size:13.5px!important;color:var(--ink-3)!important}.c-design .lesson-list{list-style:none;padding:0;margin:16px 0 0;border-top:1px solid var(--rule)}.c-design .lesson-list li{margin:0;border-bottom:1px solid var(--rule)}.c-design .lesson-list a,.c-design .ll-static{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;padding:13px 4px;text-decoration:none;color:var(--ink)}.c-design .lesson-list a:hover{background:var(--paper-2);color:var(--ink)}.c-design .ll-code{font-family:var(--mono);font-size:12.5px;color:var(--ink-3);padding-top:3px}.c-design .ll-main{display:grid;gap:2px}.c-design .ll-main b{font-size:15.5px;font-weight:650}.c-design .ll-main span{font-size:14px;color:var(--ink-2)}.c-design .ll-meta{display:grid;gap:2px;justify-items:end;font-size:12.5px;color:var(--ink-3);text-align:right}.c-design .lesson-list li.soon .ll-main b{color:var(--ink-2)}.c-design .lesson-list li.done .ll-meta>span:last-child{color:var(--good);font-weight:600}@media (max-width: 560px){.c-design .lesson-list a,.c-design .ll-static{grid-template-columns:30px minmax(0,1fr)}.c-design .ll-meta{grid-column:2;justify-items:start;grid-auto-flow:column;gap:10px}}.c-design .soon-kicker{font-size:13px;font-weight:650;color:var(--accent-ink);margin:0}.c-design .soon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:26px 0;border-top:2px solid var(--frame)}@media (max-width: 720px){.c-design .soon-grid{grid-template-columns:minmax(0,1fr)}}.c-design .soon-grid>div{padding:14px 0;border-bottom:1px solid var(--rule)}.c-design .soon-grid h2{font-size:13px;font-family:var(--sans);letter-spacing:0;color:var(--ink-3);margin-bottom:6px}.c-design .soon-grid p{margin:0;font-size:15.5px}.c-design .soon-list{list-style:none;padding:0;margin:0;font-size:14.5px}.c-design .soon-list li{margin:0 0 3px}.c-design .soon-list li.here a{font-weight:700;color:var(--ink)}.c-design .soon-list small{color:var(--ink-3)}.c-design .soon-actions{display:flex;flex-wrap:wrap;gap:8px}.c-design .map-wrap{border:1px solid var(--rule);border-radius:12px}.c-design .map-part{font-size:12px;font-weight:700;fill:var(--ink-3)}.c-design .map-edge{fill:none;stroke:var(--rule-strong);stroke-width:1.3;transition:opacity .15s}.c-design .map-edge.revisit{stroke-dasharray:4 4}.c-design .map-edge.on{stroke:var(--accent);stroke-width:2.2}.c-design .map-edge.off{opacity:.15}.c-design .map-node rect{fill:var(--paper);stroke:var(--rule-strong);stroke-width:1.4}.c-design .map-node.design rect{fill:var(--paper-2)}.c-design .map-node.done rect{stroke:var(--good);fill:var(--good-soft)}.c-design .map-node.soon text{fill:var(--ink-3)}.c-design .map-node.focus rect{stroke:var(--accent);stroke-width:2.4}.c-design .map-node.dim{opacity:.3}.c-design .map-node text{font-size:11.5px;font-weight:600}.c-design .map-node{transition:opacity .15s}.c-design .map-key{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--ink-3)}.c-design .mk{display:inline-block;width:16px;height:10px;margin-right:6px;vertical-align:-1px;border:1.4px solid var(--rule-strong)}.c-design .mk.concept{border-radius:6px}.c-design .mk.design{border-radius:2px;background:var(--paper-2)}.c-design .mk.used{border:0;border-top:2px solid var(--rule-strong);height:0;vertical-align:3px}.c-design .mk.revisit{border:0;border-top:2px dashed var(--rule-strong);height:0;vertical-align:3px}.c-design .mk.done{border-color:var(--good);background:var(--good-soft);border-radius:2px}.c-design .labs-switch{margin-bottom:4px}.c-design .lesson.design .lesson-title{max-width:18em}.c-design .c4-swipe{display:none;flex-basis:100%;font-size:12.5px;color:var(--accent-ink)}@media (max-width: 720px){.c-design .c4-swipe{display:block}}@media (max-width: 560px){.c-design .lesson-rail{gap:4px 10px}.c-design .lesson-dots{gap:0;margin-left:-4px}.c-design .lesson-dot{width:15px;height:18px}.c-design .lesson-dot:before{width:8px;height:8px}.c-design .lesson-dots:before{left:7px;right:7px}.c-design .lesson-phase-name{font-size:12px}}.c-design .pr-switch{margin:6px 0 22px}.c-design .pr-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;align-items:start}.c-design .pr-index{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;display:grid;gap:14px;padding-right:4px}.c-design .pr-group-name{font-size:12px;font-weight:700;color:var(--ink-3);padding:0 8px 4px}.c-design .pr-item{display:flex;align-items:center;gap:7px;width:100%;text-align:left;padding:5px 8px;border:0;border-radius:7px;background:none;font-size:14px;color:var(--ink-2);line-height:1.3}.c-design .pr-item:hover{background:var(--paper-2);color:var(--ink)}.c-design .pr-item.on{background:var(--accent-soft);color:var(--ink);font-weight:650}.c-design .pr-item.locked{color:var(--ink-3)}.c-design .pr-item svg{flex:none;opacity:.7}.c-design .pr-card{padding:28px 30px;border-radius:16px;border:1px solid var(--rule-strong);background:linear-gradient(160deg,var(--accent-soft),transparent 45%),var(--paper);min-height:420px;display:flex;flex-direction:column}.c-design .pr-card.locked{background:var(--paper-2)}.c-design .pr-kicker{font-size:12.5px;font-weight:650;color:var(--accent-ink)}.c-design .pr-name{font-size:clamp(28px,3.4vw,38px);letter-spacing:-.03em;margin:6px 0 14px}.c-design .pr-rule{font-family:var(--display);font-size:clamp(19px,2vw,22px);line-height:1.35;letter-spacing:-.015em;color:var(--ink);margin-bottom:14px}.c-design .pr-image{font-size:15.5px;color:var(--ink-2);font-style:italic;padding-left:14px;border-left:3px solid var(--accent);margin-bottom:18px}.c-design .pr-facts{display:grid;gap:0;margin:0 0 16px;border-top:1px solid var(--rule)}.c-design .pr-facts div{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:10px 0;border-bottom:1px solid var(--rule);font-size:15px}.c-design .pr-facts dt{font-size:13px;font-weight:650;color:var(--ink-3);padding-top:1px}.c-design .pr-facts dd{margin:0;color:var(--ink-2)}.c-design .pr-meta{font-size:13.5px;color:var(--ink-3);margin:0 0 14px}.c-design .pr-locked{display:flex;gap:12px;align-items:flex-start;color:var(--ink-3);font-size:15px;margin:6px 0 16px}.c-design .pr-locked svg{width:18px;height:18px;margin-top:3px;flex:none}.c-design .pr-locked p{margin:0}.c-design .pr-nav{margin-top:auto;display:flex;justify-content:space-between;gap:8px}@media (max-width: 860px){.c-design .pr-layout{grid-template-columns:minmax(0,1fr);gap:18px}.c-design .pr-card{order:-1;padding:20px 18px;min-height:0}.c-design .pr-index{position:static;max-height:none;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.c-design .pr-facts div{grid-template-columns:1fr;gap:2px}}.c-design .drill-scenario{font-size:16.5px;line-height:1.55;margin-bottom:16px}.c-design .drill-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (max-width: 640px){.c-design .drill-choices{grid-template-columns:minmax(0,1fr)}}.c-design .drill-choice{display:grid;gap:3px;text-align:left;padding:12px 14px;border-radius:10px;border:1px solid var(--rule-strong);background:var(--paper);transition:border-color .15s,background .15s,opacity .15s}.c-design .drill-choice:hover:not(:disabled){border-color:var(--accent)}.c-design .drill-choice b{font-size:15px}.c-design .drill-choice span{font-size:13px;color:var(--ink-3);line-height:1.4}.c-design .drill-choice:disabled{cursor:default}.c-design .drill-choice.right{border-color:var(--good);background:var(--good-soft)}.c-design .drill-choice.wrong{border-color:var(--bad);background:var(--bad-soft)}.c-design .drill-choice.dim{opacity:.5}.c-design .practice-kind.principle{color:var(--n7)}.c-design .earned{display:grid;gap:8px;padding:16px 18px;border-radius:12px;border:1px solid var(--rule)}.c-design .earned-label{font-size:13px;font-weight:650;color:var(--ink-3)}.c-design .earned-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}.c-design .principle-chip{display:inline-flex;align-items:center;padding:4px 11px;border-radius:99px;border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);font-size:13.5px;font-weight:600;text-decoration:none}.c-design a.principle-chip:hover{color:var(--ink);border-color:var(--ink-3)}.c-design .principle-chip.locked{border-style:dashed;border-color:var(--rule-strong);background:transparent;color:var(--ink-3);font-weight:500}.c-design .mock{max-width:760px;margin:0 auto}.c-design .mock-story{font-size:17px;line-height:1.6;color:var(--ink);max-width:36em;margin:0 0 14px}.c-design .mock-choose{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:22px 0 8px}.c-design .mock-select{width:auto;min-width:240px;max-width:100%}.c-design .mock-note{font-size:14px;margin-bottom:16px}.c-design .mock-bar{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin:4px 0 10px}.c-design .mock-phase{font-size:22px;font-weight:650;letter-spacing:-.01em;margin:0}.c-design .mock-time{font-size:14.5px;color:var(--ink-2)}.c-design .mock-time.low{color:var(--bad)}.c-design .mock-track{position:relative;display:flex;gap:3px;height:3px;margin-bottom:16px}.c-design .mock-seg{flex-basis:0;border-radius:2px;background:var(--rule)}.c-design .mock-seg.done{background:var(--ink-3)}.c-design .mock-seg.on{background:var(--accent)}.c-design .mock-now{position:absolute;top:-3px;width:2px;height:9px;margin-left:-1px;background:var(--ink);border-radius:1px}.c-design .mock-brief{margin:0 0 14px;font-size:14.5px;color:var(--ink-2);line-height:1.5}.c-design .mock-card{border:1.5px solid var(--frame);border-radius:14px;padding:18px 20px}.c-design .mock-prompt,.c-design .mock-ask{display:block;font-size:17px;line-height:1.5;margin-bottom:12px}.c-design .mock-ask{font-family:var(--display);font-size:21px;font-weight:600;letter-spacing:-.01em}.c-design .mock-input{min-height:180px;resize:vertical;line-height:1.55}.c-design .mock-interrupt{border-color:var(--accent);background:var(--accent-soft)}.c-design .mock-interrupt .mock-input{background:var(--paper)}.c-design .mock-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:13.5px}.c-design .mock-confirm{padding:10px 12px;border-radius:10px;background:var(--paper-2);font-size:14.5px}.c-design .mock-formative{font-size:13.5px;color:var(--ink-2);margin-bottom:14px}.c-design .mock-compare{display:grid;grid-template-columns:1fr 1fr;gap:22px;font-size:14.5px}@media (max-width: 720px){.c-design .mock-compare{grid-template-columns:1fr}}.c-design .mock-compare h4{font-size:13px;color:var(--ink-3);font-family:var(--sans);letter-spacing:0;margin-bottom:6px}.c-design .mock-said{white-space:pre-wrap;margin:0 0 12px}.c-design .mock-said-int{border-left:2px solid var(--accent);padding-left:10px;margin-top:10px}.c-design .mock-said-ask{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--accent-ink)}.c-design .mock-points{list-style:none;padding:0;margin:0 0 12px}.c-design .mock-points li{display:flex;flex-direction:column;gap:6px;padding:8px 0;border-bottom:1px solid var(--rule)}.c-design .mock-flag{align-self:flex-start}.c-design .mock-hint{color:var(--ink-3);font-weight:500}.c-design .mock-phases{list-style:none;padding:0;margin:18px 0;max-width:520px}.c-design .mock-phases li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--rule);font-size:15px}.c-design .mock-mark.got{color:var(--good)}.c-design .mock-mark.partly{color:var(--ink-2)}.c-design .mock-mark.missed{color:var(--bad)}.c-design .mock-revisit{margin:0 0 20px;font-size:14.5px}.c-design .mock-revisit h4{font-size:14px;font-family:var(--sans);letter-spacing:0;margin-bottom:6px}.c-design .mock-history{margin-top:34px}.c-design .mock-history h4{font-size:14px;font-family:var(--sans);letter-spacing:0;margin-bottom:6px}.c-design .mock-history table{width:100%;border-collapse:collapse;font-size:14px}.c-design .mock-history td{padding:6px 8px 6px 0;border-bottom:1px solid var(--rule)}.c-design .mock-next{margin-top:18px;font-size:15px}.c-design .decide{margin:20px 0}.c-design .decide-step{margin-top:14px;display:grid;gap:8px}.c-design .decide-step[hidden]{display:none}.c-design .decide-choices{display:flex;flex-wrap:wrap;gap:8px}.c-design .decide-choice{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--rule-strong, var(--rule));border-radius:999px;cursor:pointer}.c-design .decide-choice.on{border-color:var(--accent)}.c-design .decide-label{font-weight:600;font-size:15px}.c-design .decide-hint{margin:0;font-size:14px;color:var(--ink-3)}.c-design .decide-yours{margin:0;color:var(--ink-2);font-style:italic}.c-design .decide-paths{display:grid;gap:12px}.c-design .decide-paths .fork-path{margin-top:0}@media (min-width: 720px){.c-design .decide-paths{grid-template-columns:1fr 1fr}}.c-design .critique{margin:20px 0}.c-design .critique-items{list-style:none;padding:0;margin:12px 0;display:grid;gap:8px}.c-design .critique-item{padding:10px 14px;border-radius:10px;background:var(--paper-2)}.c-design .critique-item label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.c-design .critique-item label input{margin-top:4px}.c-design .critique-item.found{box-shadow:inset 3px 0 0 var(--good)}.c-design .critique-item.missed{box-shadow:inset 3px 0 0 var(--bad)}.c-design .critique-item.noise{box-shadow:inset 3px 0 0 var(--ink-3)}.c-design .critique-note{margin:8px 0 0 26px;font-size:15px;color:var(--ink-2)}.c-design .critique-score p{margin:0 0 8px}.c-design .cite{text-decoration:underline;text-decoration-color:var(--rule-strong, var(--rule));text-underline-offset:3px}.c-design .transfer{margin:20px 0;padding:16px;border-radius:12px;border:1px solid var(--rule)}.c-design .transfer-label{margin:0 0 6px;font-weight:650}.c-design .transfer-q{font-weight:600}.c-code{--paper: #ffffff;--paper-2: #f5f5fa;--card: #ffffff;--ink: #15172e;--ink-2: #41445f;--ink-3: #6d7090;--rule: #e7e7f0;--rule-strong: #d3d4e3;--accent: #0f9d63;--accent-soft: #e3f6ed;--accent-ink: #0a7a4c;--on-accent: #ffffff;--q: #0b74c9;--q-soft: #e3f1fc;--k: #a86200;--k-soft: #fdf0d9;--v: #a032c2;--v-soft: #f6e6fb;--good: #12805c;--good-soft: #e2f5ee;--bad: #c43d3d;--bad-soft: #fcebeb;--research: #0b7785;--research-soft: #e1f4f6;--tok-1: #dfe2ff;--tok-2: #cff3e2;--tok-3: #ffe5c6;--tok-4: #ffd9e0;--tok-5: #fff3b8;--code-bg: #15172e;--code-ink: #e9eaf8;--code-rule: #15172e;--frame: #15172e;--il-line: #1e1b4b;--shadow: none;--il-panel: #eef0ff;--il-soft: #d6dafd;--il-ink: #1e1b4b;--il-text: #1e1b4b;--il-chip-text: #1e1b4b;--il-w: #ffffff;--il-a: #6366f1;--il-b: #34d399;--il-c: #fbbf24;--il-d: #fb7185;--il-e: #38bdf8;--sans: "DM Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Space Grotesk Variable", "DM Sans Variable", system-ui, sans-serif;--serif: var(--display);--math: "STIX Two Text", "Cambria Math", Georgia, "Times New Roman", serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius: 6px;--sidebar: 272px;--measure: 700px;--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:light}[data-theme=dark] .c-code{--paper: #0a0a0c;--paper-2: #121317;--card: #111215;--ink: #ededf0;--ink-2: #b3b5bd;--ink-3: #868892;--rule: #1e2025;--rule-strong: #2c2f37;--accent: #3ecf8e;--accent-soft: rgba(62, 207, 142, .12);--accent-ink: #5be0a4;--on-accent: #04130c;--q: #6ea8ff;--q-soft: rgba(110, 168, 255, .14);--k: #f5b942;--k-soft: rgba(245, 185, 66, .13);--v: #d48cff;--v-soft: rgba(212, 140, 255, .14);--good: #3ecf8e;--good-soft: rgba(62, 207, 142, .12);--bad: #ff7b72;--bad-soft: rgba(255, 123, 114, .12);--research: #38cfe0;--research-soft: rgba(56, 207, 224, .12);--frame: #3a3d47;--tok-1: #2a2d52;--tok-2: #173c30;--tok-3: #4a3518;--tok-4: #4a2430;--tok-5: #45401a;--il-line: #d9dae3;--code-bg: #0d0e11;--code-ink: #e4e5ea;--code-rule: #1e2025;--il-panel: #14151b;--il-soft: #1f2129;--il-ink: #05060a;--il-text: #e6e7ee;--il-a: #7c7ff2;--il-b: #4fd8a5;--il-c: #fcc84a;--il-d: #ff8496;--il-e: #5cc6f7;color-scheme:dark}.c-code,.c-code *{box-sizing:border-box}.c-code{-webkit-text-size-adjust:100%}.c-code{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@media (prefers-reduced-motion: reduce){.c-code,.c-code *,.c-code:before,.c-code *:before,.c-code:after,.c-code *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.c-code h1,.c-code h2,.c-code h3,.c-code h4{font-family:var(--display);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin:0}.c-code p{margin:0 0 1em}.c-code a{color:var(--accent-ink);text-underline-offset:3px;text-decoration-thickness:1px}.c-code a:hover{color:var(--accent)}.c-code strong,.c-code b{font-weight:650}.c-code code,.c-code kbd,.c-code .mono{font-family:var(--mono);font-size:.9em}.c-code :not(pre)>code{background:var(--paper-2);border-radius:4px;padding:.1em .35em;white-space:nowrap}.c-code hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}.c-code ul,.c-code ol{padding-left:1.25em;margin:0 0 1em}.c-code li{margin-bottom:.35em}.c-code :where(button,input,select,textarea):not([class*=mq-],[class*=mq-kit] *){font:inherit;color:inherit}.c-code button,.c-code a,.c-code summary,.c-code label.quiz-opt,.c-code input[type=range],.c-code input[type=checkbox],.c-code input[type=radio]{cursor:pointer}.c-code button:disabled{cursor:not-allowed}.c-code :focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:4px}.c-code ::selection{background:var(--tok-1)}.c-code .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.c-code .skip-link{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:6px;z-index:100}.c-code .skip-link:focus{left:8px}.c-code .muted{color:var(--ink-3)}.c-code .center{text-align:center}.c-code .q{color:var(--q)}.c-code .k{color:var(--k)}.c-code .v{color:var(--v)}.c-code .acc{color:var(--accent-ink)}.c-code .shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.c-code .sidebar{position:sticky;top:0;height:100vh;overflow:hidden;border-right:1px solid var(--rule);background:var(--paper);display:flex;flex-direction:column}.c-code .brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px;text-decoration:none;color:var(--ink)}.c-code .brand:hover{color:var(--ink)}.c-code .brand-name{font-family:var(--display);font-size:15.5px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.c-code .side-search{margin:0 14px 10px}.c-code .input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:14.5px}.c-code .input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.c-code .side-tools{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:0 16px 12px;font-size:13px}.c-code .side-tools a{color:var(--ink-2);text-decoration:none;white-space:nowrap}.c-code .side-tools a:hover,.c-code .side-tools a[aria-current=page]{color:var(--accent-ink);text-decoration:underline}.c-code .side-foot-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.c-code .side-foot-count{margin-top:2px;color:var(--ink-3)}.c-code .theme-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;min-height:28px;border:1px solid var(--rule-strong);border-radius:99px;background:var(--paper);color:var(--ink-2);font-size:12.5px;font-weight:500;transition:border-color .15s,color .15s}.c-code .theme-toggle:hover{border-color:var(--ink-3);color:var(--ink)}.c-code .theme-toggle svg{flex:none}.c-code .nav{flex:1;min-height:0;overflow-y:auto;padding:2px 8px 16px}.c-code .nav-part{margin-top:14px}.c-code .nav-part-title{font-size:12.5px;font-weight:650;color:var(--ink-3);padding:4px 10px}.c-code .nav-part-title span{display:none}.c-code .nav-part-title b{font-weight:650}.c-code .nav-link{display:grid;grid-template-columns:16px 1fr;gap:9px;align-items:start;padding:5px 10px;border-radius:6px;text-decoration:none;color:var(--ink-2);font-size:14px;line-height:1.35}.c-code .nav-link:hover{background:var(--paper-2);color:var(--ink)}.c-code .nav-link[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);font-weight:650}.c-code .nav-tick{width:13px;height:13px;margin-top:3px;border-radius:50%;border:1.5px solid var(--rule-strong);display:grid;place-items:center;font-size:9px;color:transparent}.c-code .nav-link[aria-current=page] .nav-tick{border-color:var(--accent)}.c-code .nav-tick.done{background:var(--good);border-color:var(--good);color:var(--paper)}.c-code .side-foot{flex:none;border-top:1px solid var(--rule);padding:12px 16px 14px;font-size:13px;color:var(--ink-2);background:var(--paper)}.c-code .meter{height:4px;border-radius:99px;background:var(--rule);overflow:hidden;margin-top:6px}.c-code .meter>span{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .4s var(--ease)}.c-code .topbar{display:none}.c-code .main{min-width:0}.c-code .page{max-width:calc(var(--measure) + 96px);margin:0 auto;padding:44px 48px 110px}.c-code .page.wide,.c-code .page:has(.hero-split){max-width:1080px}@media (max-width: 960px){.c-code .shell{grid-template-columns:1fr}.c-code .sidebar{position:fixed;z-index:50;left:0;top:0;width:min(88vw,330px);transform:translate(-102%);transition:transform .25s var(--ease)}.c-code .sidebar.open{transform:none;box-shadow:0 0 60px #0a0a284d}.c-code .scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a2873;z-index:40;border:0}.c-code .topbar{display:flex;position:sticky;top:0;z-index:30;align-items:center;gap:12px;padding:8px 14px;background:var(--paper);border-bottom:1px solid var(--rule)}.c-code .topbar-title{font-family:var(--display);font-weight:700;font-size:15px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-code .page{padding:24px 18px 80px}.c-code{font-size:16px}}.c-code .btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:14.5px;font-weight:600;text-decoration:none;color:var(--ink);transition:background .15s,border-color .15s}.c-code .btn:hover{border-color:var(--ink-3);color:var(--ink)}.c-code .btn:disabled{opacity:.4}.c-code .btn.primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.c-code .btn.primary:hover{opacity:.88;color:var(--paper);border-color:var(--ink)}.c-code .btn.small{padding:5px 12px;font-size:13.5px;border-radius:7px}.c-code .btn.ghost{background:transparent;border-color:transparent}.c-code .btn.ghost:hover{background:var(--paper-2)}.c-code .btn-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.c-code .crumbs{font-size:13px;color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}.c-code .crumbs a{color:var(--ink-3);text-decoration:none}.c-code .crumbs a:hover{color:var(--accent-ink);text-decoration:underline}.c-code .lesson-title{font-size:clamp(28px,3.4vw,38px);font-weight:700;letter-spacing:-.03em;line-height:1.1;margin:0 0 8px}.c-code .lesson-question{font-size:17.5px;color:var(--ink-2);line-height:1.45;margin-bottom:4px;max-width:36em}.c-code .lesson-meta{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:13.5px;color:var(--ink-3);margin-bottom:18px}.c-code .where{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px;font-size:13.5px;color:var(--ink-3);padding:12px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-code .where-label{margin-right:2px}.c-code .where-step{color:var(--ink-2)}.c-code .where-step.here{color:var(--accent-ink);font-weight:650}.c-code .where-sep{color:var(--rule-strong)}.c-code .where-toggle{margin-left:auto;background:none;border:0;color:var(--ink-3);font-size:13px;text-decoration:underline;text-underline-offset:3px;padding:0}.c-code .where-toggle:hover{color:var(--accent-ink)}.c-code .where-map{padding:14px 0 6px;border-bottom:1px solid var(--rule)}.c-code .tree{font-family:var(--mono);font-size:12.5px;line-height:1.6;margin:0;white-space:pre;overflow-x:auto;color:var(--ink-3)}.c-code .tree .here{color:var(--accent-ink);font-weight:600;background:var(--accent-soft);border-radius:4px;padding:1px 6px}.c-code .tree .on-path{color:var(--ink)}.c-code .section{position:relative;margin-top:68px;scroll-margin-top:70px}.c-code .section-head{display:flex;align-items:baseline;gap:8px;font-size:13.5px;color:var(--ink-3);margin-bottom:6px}.c-code .section-kicker{font-size:13.5px;font-weight:600;color:var(--ink-3)}.c-code .section h2{font-size:30px;letter-spacing:-.025em;margin-bottom:18px}.c-code .section h3{font-size:19px;margin:32px 0 10px}.c-code .lede{font-size:19px;line-height:1.55;color:var(--ink-2)}.c-code .card{background:var(--paper-2);border-radius:var(--radius);padding:18px 20px;margin:20px 0}.c-code .card h4{font-size:16px}.c-code .card>:last-child,.c-code .callout>:last-child,.c-code .details-body>:last-child{margin-bottom:0}.c-code .grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.c-code .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.c-code .grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media (max-width: 720px){.c-code .grid-2,.c-code .grid-3,.c-code .grid-4{grid-template-columns:minmax(0,1fr)}}.c-code .grid-2,.c-code .grid-3,.c-code .grid-4{margin:20px 0}.c-code .grid-2>.card,.c-code .grid-3>.card,.c-code .grid-4>.card{margin:0}.c-code .grid-2>.card p,.c-code .grid-3>.card p,.c-code .grid-4>.card p{font-size:15px;line-height:1.55;color:var(--ink-2)}.c-code .callout{margin:26px 0;padding:1px 0 1px 18px;border-left:3px solid var(--rule-strong);color:var(--ink-2)}.c-code .callout b,.c-code .callout strong{color:var(--ink)}.c-code .callout-label{display:block;font-size:13.5px;font-weight:700;margin-bottom:3px;color:var(--ink-3)}.c-code .callout.idea{border-left-color:var(--accent)}.c-code .callout.idea .callout-label{color:var(--accent-ink)}.c-code .callout.analogy,.c-code .callout.model{border-left-color:var(--k)}.c-code .callout.analogy .callout-label,.c-code .callout.model .callout-label{color:var(--k)}.c-code .callout.established{border-left-color:var(--good)}.c-code .callout.established .callout-label{color:var(--good)}.c-code .callout.research{border-left-color:var(--research)}.c-code .callout.research .callout-label{color:var(--research)}.c-code .callout.warn{border-left-color:var(--bad)}.c-code .callout.warn .callout-label{color:var(--bad)}.c-code .callout.dev{border-left-color:var(--q)}.c-code .callout.dev .callout-label{color:var(--q)}.c-code .term{margin:24px 0;border-top:2px solid var(--frame)}.c-code .term-name{font-family:var(--display);font-size:18px;font-weight:700;padding:12px 0 8px}.c-code .term-row{display:grid;grid-template-columns:116px 1fr;gap:12px;padding:9px 0;border-top:1px solid var(--rule);font-size:15.5px}.c-code .term-row>span:first-child{font-size:13.5px;font-weight:600;color:var(--ink-3);padding-top:2px}@media (max-width: 560px){.c-code .term-row{grid-template-columns:1fr;gap:2px}}.c-code .gloss{border-bottom:1.5px dotted var(--accent);cursor:help;text-decoration:none;color:inherit}.c-code details.deep{margin:20px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-code details.deep+details.deep{margin-top:-21px}.c-code details.deep>summary{padding:12px 0;font-weight:650;font-size:15.5px;list-style:none;display:flex;gap:10px;align-items:baseline}.c-code details.deep>summary::-webkit-details-marker{display:none}.c-code details.deep>summary:before{content:"+";font-family:var(--mono);color:var(--accent-ink);width:12px}.c-code details.deep[open]>summary:before{content:"−"}.c-code details.deep .deep-tag{font-size:13.5px;font-weight:600;color:var(--research)}.c-code .details-body{padding:0 0 16px 22px;font-size:15.5px}.c-code .code{margin:20px 0;border-radius:8px;overflow:hidden;background:var(--code-bg);color:var(--code-ink);border:1px solid var(--code-rule)}.c-code .code-bar{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 16px;font-size:12.5px;color:#9a9dc0;border-bottom:1px solid rgba(255,255,255,.08)}.c-code .code-bar a{color:#b3b5ff}.c-code .code-bar .spacer{flex:1}.c-code .code-bar button{background:transparent;border:1px solid rgba(255,255,255,.18);color:#d5d6ee;border-radius:6px;padding:2px 10px;font-size:12.5px}.c-code .code-bar button:hover{border-color:#ffffff73}.c-code .code pre{margin:0;padding:16px 18px;overflow-x:auto;font-family:var(--mono);font-size:13.5px;line-height:1.65;-moz-tab-size:4;tab-size:4}.c-code .tok-c{color:#8689ad;font-style:italic}.c-code .tok-s{color:#8fe3bd}.c-code .tok-k{color:#f3a6c8}.c-code .tok-n{color:#ffc98a}.c-code .tok-f{color:#a9abff}.c-code .eq{margin:24px 0;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-code .eq-formula{font-family:var(--math);font-size:24px;text-align:center;padding:24px 8px;overflow-x:auto;white-space:nowrap}.c-code .eq-formula i,.c-code .eq-formula var{font-style:italic}.c-code .eq-legend{border-top:1px solid var(--rule);padding:12px 0;display:grid;gap:6px;font-size:15px}.c-code .eq-legend div{display:grid;grid-template-columns:minmax(64px,max-content) 1fr;gap:14px}.c-code .eq-legend div>b{font-family:var(--math);font-weight:600;font-style:italic}.c-code .chip{display:inline-block;font-family:var(--mono);font-size:12.5px;padding:1px 8px;border-radius:4px;background:var(--paper);border:1px solid var(--rule-strong);white-space:nowrap}.c-code .chip.q{background:var(--q-soft);border-color:transparent}.c-code .chip.k{background:var(--k-soft);border-color:transparent}.c-code .chip.v{background:var(--v-soft);border-color:transparent}.c-code .chip.acc{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink)}.c-code .token{display:inline-block;font-family:var(--mono);font-size:14px;padding:1px 6px;margin:2px;border-radius:4px;background:var(--tok-1);color:var(--ink);white-space:pre}.c-code .lab{margin:28px -24px;border:1.5px solid var(--frame);border-radius:14px;background:var(--paper);overflow:hidden}@media (max-width: 960px){.c-code .lab{margin:28px 0}}.c-code .lab-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:13px 22px;border-bottom:1px solid var(--rule-strong)}.c-code .lab-tag{font-size:13.5px;font-weight:700;color:var(--accent-ink)}.c-code .lab-title{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.015em}.c-code .lab-goal{font-size:15px;color:var(--ink-2);padding:12px 22px;background:var(--paper-2)}.c-code .lab-body{padding:22px}.c-code .lab-note{font-size:14.5px;color:var(--ink-2)}.c-code .controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px 24px;margin:8px 0 16px}.c-code .control label{display:flex;justify-content:space-between;gap:8px;font-size:14px;color:var(--ink-2)}.c-code .control output{font-family:var(--mono);color:var(--ink);font-size:13.5px}.c-code input[type=range]{width:100%;accent-color:var(--accent);height:24px}.c-code input[type=checkbox],.c-code input[type=radio]{accent-color:var(--accent)}.c-code .readout{font-family:var(--mono);font-size:13.5px;display:flex;flex-wrap:wrap;gap:8px 20px;padding:10px 14px;background:var(--paper-2);border-radius:6px}.c-code .readout b{color:var(--accent-ink);font-weight:600}.c-code .steps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.c-code .step-btn{font-size:13.5px;font-weight:500;padding:5px 12px;border-radius:7px;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink-2);transition:border-color .15s,background .15s}.c-code .step-btn:hover{border-color:var(--ink-3);color:var(--ink)}.c-code .step-btn[aria-pressed=true],.c-code .step-btn[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:650}.c-code svg text{font-family:var(--sans);fill:var(--ink)}.c-code svg .axis{stroke:var(--rule-strong);stroke-width:1}.c-code svg .gridline{stroke:var(--rule);stroke-width:1}.c-code .matrix-wrap{display:inline-block;vertical-align:middle;max-width:100%;overflow-x:auto}.c-code .matrix-cap{font-family:var(--mono);font-size:12px;color:var(--ink-3);margin-bottom:4px}.c-code table.matrix{border-collapse:separate;border-spacing:3px;font-family:var(--mono);font-size:13.5px}.c-code table.matrix td{min-width:50px;text-align:right;padding:4px 8px;border-radius:4px;background:var(--paper-2);transition:background .2s}.c-code table.matrix th{font-weight:500;font-size:12px;color:var(--ink-3);padding:2px 6px;text-align:right;white-space:nowrap}.c-code table.matrix thead th{text-align:center}.c-code table.matrix td.hot{outline:2px solid var(--accent)}.c-code table.matrix td input{width:52px;border:0;background:transparent;text-align:right;font-family:var(--mono);font-size:13.5px;padding:0;cursor:text}.c-code .matrix-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:12px 0}.c-code .op{font-family:var(--math);font-size:22px;color:var(--ink-3)}.c-code .bars{display:grid;gap:6px;margin:8px 0}.c-code .bar{display:grid;grid-template-columns:minmax(64px,150px) minmax(60px,1fr) 58px;gap:10px;align-items:center;font-size:14px}.c-code .bar-label{font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-code .bar-track{height:12px;background:var(--paper-2);border-radius:3px;overflow:hidden}.c-code .bar-fill{display:block;height:100%;background:var(--accent);border-radius:3px;transition:width .25s var(--ease)}.c-code .bar-val{font-family:var(--mono);font-size:13px;text-align:right;color:var(--ink-2)}.c-code .bar.dim .bar-fill{background:var(--rule-strong)}.c-code .bar.dim{color:var(--ink-3)}.c-code .flow{display:flex;flex-direction:column;margin:22px 0;max-width:460px}.c-code .flow-arrow{display:none}.c-code .flow-node{position:relative;display:block;width:100%;text-align:left;background:none;border:0;padding:0 0 16px 26px;font-size:15px;font-weight:600;color:var(--ink);line-height:1.35}.c-code .flow-node small{display:block;font-weight:400;color:var(--ink-3);font-size:13.5px;margin-top:1px}.c-code .flow-node:before{content:"";position:absolute;left:0;top:5px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--ink-3);z-index:1}.c-code .flow-node:after{content:"";position:absolute;left:5px;top:8px;bottom:-8px;width:1.5px;background:var(--rule-strong)}.c-code .flow>div:last-child>.flow-node:after,.c-code .flow>.flow-node:last-child:after{display:none}.c-code .flow>div:last-child>.flow-node,.c-code .flow>.flow-node:last-child{padding-bottom:0}.c-code .flow-node.active{color:var(--accent-ink)}.c-code .flow-node.active:before{background:var(--accent);border-color:var(--accent)}.c-code button.flow-node:hover{color:var(--accent-ink)}.c-code .flow.horizontal{flex-direction:row;max-width:none;align-items:flex-start}.c-code .flow.horizontal>div{flex:1 1 0;min-width:0}.c-code .flow.horizontal .flow-node{padding:22px 14px 0 0;font-size:14.5px}.c-code .flow.horizontal .flow-node:before{top:0}.c-code .flow.horizontal .flow-node:after{left:11px;right:0;top:5px;bottom:auto;width:auto;height:1.5px}@media (max-width: 640px){.c-code .flow.horizontal{flex-direction:column}.c-code .flow.horizontal .flow-node{padding:0 0 16px 26px}.c-code .flow.horizontal .flow-node:before{top:5px}.c-code .flow.horizontal .flow-node:after{left:5px;right:auto;top:8px;bottom:-8px;width:1.5px;height:auto}}.c-code .ladder{margin:12px 0 0;border-left:2px solid var(--rule-strong);padding-left:0;list-style:none}.c-code .ladder li{position:relative;padding:0 0 14px 24px;margin:0;font-size:15.5px}.c-code .ladder li:before{content:"";position:absolute;left:-6px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--paper-2);border:2px solid var(--ink-3)}.c-code .ladder li:last-child:before{border-color:var(--accent);background:var(--accent)}.c-code .ladder li:last-child{padding-bottom:0}.c-code .ladder b{display:block;font-size:13.5px;font-weight:700;color:var(--ink-3)}.c-code .tabs{margin:20px 0}.c-code .tablist{display:flex;gap:2px;border-bottom:1px solid var(--rule-strong);overflow-x:auto}.c-code .tab{background:transparent;border:0;padding:8px 16px;font-size:15px;color:var(--ink-3);border-bottom:2.5px solid transparent;margin-bottom:-1px;white-space:nowrap}.c-code .tab:hover{color:var(--ink)}.c-code .tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:650}.c-code .tabpanel{padding-top:16px}.c-code .exercise{margin:22px 0;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-code .exercise-head{display:flex;align-items:baseline;gap:10px;padding:12px 0 0}.c-code .ex-type{font-size:13.5px;font-weight:700;color:var(--accent-ink);text-transform:capitalize}.c-code .ex-type:after{content:":"}.c-code .ex-title{font-family:var(--display);font-weight:700;font-size:16.5px;flex:1}.c-code .ex-done{color:var(--good);font-size:13.5px;font-weight:600}.c-code .exercise-body{padding:10px 0 18px}.c-code .hint,.c-code .solution{padding:1px 0 1px 14px;margin:14px 0;font-size:15.5px;border-left:3px solid var(--k)}.c-code .solution{border-left-color:var(--good)}.c-code .hint b,.c-code .solution>b:first-child{display:block;font-size:13.5px;font-weight:700;color:var(--k)}.c-code .solution>b:first-child{color:var(--good)}.c-code .answer-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.c-code .answer-row .input{width:170px;font-family:var(--mono)}.c-code .verdict{font-size:14.5px;font-weight:600}.c-code .verdict.ok{color:var(--good)}.c-code .verdict.no{color:var(--bad)}.c-code textarea.input{min-height:96px;resize:vertical;font-size:15.5px;line-height:1.5}.c-code .quiz-q{margin:0 0 24px;padding:0;border:0}.c-code .quiz-q legend{font-weight:650;padding:0;margin-bottom:10px}.c-code .quiz-opt{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid var(--rule-strong);border-radius:8px;margin-bottom:6px;font-size:15.5px;background:var(--paper)}.c-code .quiz-opt:hover{border-color:var(--ink-3)}.c-code .quiz-opt input{margin-top:5px}.c-code .quiz-opt.right{border-color:var(--good);background:var(--good-soft)}.c-code .quiz-opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.c-code .quiz-explain{font-size:15px;color:var(--ink-2);padding:6px 2px 0}.c-code .card:has(.quiz-q){background:transparent;padding:0}.c-code .remember{list-style:none;padding:0;counter-reset:rem;border-top:2px solid var(--frame)}.c-code .remember li{counter-increment:rem;display:grid;grid-template-columns:30px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid var(--rule);margin:0}.c-code .remember li:before{content:counter(rem);font-family:var(--display);font-size:17px;font-weight:700;color:var(--accent-ink)}.c-code .toyreal{display:grid;grid-template-columns:1fr 1fr;margin:22px 0;font-size:15.5px;border-top:2px solid var(--frame);border-bottom:1px solid var(--rule)}.c-code .toyreal>div{padding:14px 18px 14px 0}.c-code .toyreal>div+div{padding-left:18px;border-left:1px solid var(--rule)}.c-code .toyreal h4{font-size:13.5px;font-weight:700;color:var(--ink-3);margin-bottom:6px;font-family:var(--sans);letter-spacing:0}@media (max-width: 640px){.c-code .toyreal{grid-template-columns:1fr}.c-code .toyreal>div+div{border-left:0;border-top:1px solid var(--rule);padding-left:0}}.c-code .source-list{display:grid;margin:16px 0;border-top:1px solid var(--rule)}.c-code .source{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.c-code .source:hover code{text-decoration:underline}.c-code .source code{color:var(--accent-ink);background:transparent;padding:0}.c-code .source span{color:var(--ink-2);font-size:14.5px;grid-column:2}.c-code .source svg{grid-row:span 2;margin-top:5px;color:var(--ink-3)}.c-code table.plain{width:100%;border-collapse:collapse;font-size:15px;margin:16px 0}.c-code table.plain th{text-align:left;font-size:13.5px;color:var(--ink-3);font-weight:650;border-bottom:1.5px solid var(--frame);padding:6px 10px 6px 0}.c-code table.plain td{border-bottom:1px solid var(--rule);padding:8px 10px 8px 0;vertical-align:top}.c-code .table-scroll{overflow-x:auto}.c-code .lesson-foot{margin-top:40px;display:grid;gap:22px}.c-code .complete-box{display:flex;flex-wrap:wrap;align-items:center;gap:14px;justify-content:space-between;padding:18px 20px;border-radius:8px;background:var(--paper-2)}.c-code .prevnext{display:grid;grid-template-columns:1fr 1fr;gap:12px}.c-code .prevnext a{display:block;padding:12px 0;border-top:2px solid var(--frame);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}.c-code .prevnext a:hover{color:var(--accent-ink);border-top-color:var(--accent)}.c-code .prevnext small{display:block;font-family:var(--sans);font-size:13.5px;font-weight:500;color:var(--ink-3)}.c-code .prevnext .next{text-align:right}@media (max-width: 560px){.c-code .prevnext{grid-template-columns:1fr}}.c-code .hero-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;align-items:center;padding:20px 0 8px}.c-code .hero-split h1{font-size:clamp(40px,5.2vw,64px);font-weight:700;letter-spacing:-.04em;line-height:1.04}.c-code .hero-caption{font-size:13.5px;color:var(--ink-3);margin:12px 0 0}.c-code .hero-split .hero-lede{font-size:19px;line-height:1.55;color:var(--ink-2);max-width:30em;margin:22px 0 0}.c-code .hero-meta{font-size:14px;color:var(--ink-3);margin:16px 0 0}@media (max-width: 860px){.c-code .hero-split{grid-template-columns:minmax(0,1fr);gap:24px}.c-code .hero-art{max-width:460px}}.c-code .il-scene{display:block;width:100%;height:auto;border-radius:20px}.c-code .il-scene text{fill:var(--il-chip-text)}.c-code .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:44px 0 8px;border-top:2px solid var(--frame)}.c-code .facts>div{padding:16px 22px 0 0;display:grid;gap:4px;align-content:start}.c-code .facts b{font-family:var(--display);font-size:16px;font-weight:700}.c-code .facts span{font-size:15px;color:var(--ink-2);line-height:1.55}@media (max-width: 720px){.c-code .facts{grid-template-columns:minmax(0,1fr)}}.c-code .home-section{margin-top:72px}.c-code .home-section h2{font-size:30px;letter-spacing:-.025em;margin-bottom:8px}.c-code .home-section>p{color:var(--ink-2);max-width:38em}.c-code .pipe{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}@media (max-width: 860px){.c-code .pipe{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.c-code .pipe{grid-template-columns:minmax(0,1fr)}}.c-code .pipe li{margin:0;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.c-code .pipe-tile{display:grid;grid-template-columns:22px 48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;height:100%;padding:16px;text-decoration:none;color:var(--ink)}.c-code .pipe-tile:hover{background:var(--paper-2);color:var(--ink)}.c-code .pipe-tile svg{grid-row:1 / span 2;width:48px;height:48px}.c-code .pipe-n{grid-row:1 / span 2;font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent-ink)}.c-code .pipe-label{font-family:var(--display);font-weight:700;font-size:15.5px;align-self:end}.c-code .pipe-note{font-size:13px;color:var(--ink-2);line-height:1.4;align-self:start}.c-code .parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px;margin-top:24px}@media (max-width: 860px){.c-code .parts{grid-template-columns:minmax(0,1fr)}}.c-code .part-art{display:block}.c-code .part-body{padding:14px 0 0}.c-code .part-kicker{display:flex;justify-content:space-between;font-size:13.5px;color:var(--ink-3)}.c-code .part-kicker b{color:var(--accent-ink);font-weight:700}.c-code .part-body h3{font-size:21px;margin:2px 0 4px}.c-code .part-body p{color:var(--ink-2);font-size:15px;margin:0 0 10px}.c-code .part-lessons{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.c-code .part-lessons li{margin:0;border-bottom:1px solid var(--rule)}.c-code .part-lessons a{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:14.5px;text-decoration:none;color:var(--ink)}.c-code .part-lessons a:hover{color:var(--accent-ink)}.c-code .part-lessons a span{color:var(--ink-3);font-size:13px;white-space:nowrap}.c-code .part-lessons a.done span{color:var(--good);font-weight:600}.c-code .py-cell{margin:18px 0;border-radius:8px;overflow:hidden;background:var(--code-bg);color:var(--code-ink);border:1px solid var(--code-rule)}.c-code .py-badge{font-size:11.5px;color:#8fe3bd;border:1px solid rgba(143,227,189,.35);border-radius:99px;padding:1px 8px}.c-code .py-editor{position:relative;font-family:var(--mono);font-size:13.5px;line-height:1.65}.c-code .py-editor-view,.c-code .py-editor-input{margin:0;padding:14px 18px;font:inherit;-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto;border:0;width:100%;display:block}.c-code .py-editor-view{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;color:var(--code-ink)}.c-code .py-editor-view code{font:inherit}.c-code .py-editor-input{position:relative;background:transparent;color:transparent;caret-color:#fff;resize:vertical;outline:none;cursor:text}.c-code .py-editor-input::selection{background:#8e90ff59;color:transparent}.c-code .py-editor:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}.c-code .py-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 14px;border-top:1px solid rgba(255,255,255,.08)}.c-code .py-actions .btn{background:transparent;color:#e9eaf8;border-color:#ffffff40}.c-code .py-actions .btn.primary{background:#fff;color:#111215;border-color:#fff}.c-code .py-actions .btn:disabled{opacity:.5}.c-code .py-actions .verdict.ok{color:#6fe0ae}.c-code .py-actions .verdict.no{color:#ffa7a0}.c-code .py-status{font-size:13px;color:#b9bbd6}.c-code .py-output{border-top:1px solid rgba(255,255,255,.08);padding:12px 18px;display:grid;gap:10px}.c-code .py-stdout,.c-code .py-traceback,.c-code .py-solution{margin:0;font-family:var(--mono);font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-x:auto}.c-code .py-stdout{color:#e9eaf8}.c-code .py-traceback{color:#ffa7a0}.c-code .py-error-note{margin:0;color:#ffa7a0;font-size:14px}.c-code .py-tests{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14px}.c-code .py-tests li{display:grid;grid-template-columns:18px 1fr;gap:6px;margin:0}.c-code .py-tests li.ok{color:#6fe0ae}.c-code .py-tests li.no{color:#ffa7a0}.c-code .py-test-msg{display:block;font-family:var(--mono);font-size:12.5px;opacity:.9;white-space:pre-wrap}.c-code .py-solution{background:var(--code-bg);color:var(--code-ink);border-radius:8px;padding:12px 16px;margin:8px 0 10px}.c-code .crash{border:1px solid var(--bad);border-radius:10px;padding:16px 18px;margin:16px 0;background:var(--bad-soft);display:grid;gap:10px}.c-code .crash p{margin:0}.c-code .lesson-anchor{scroll-margin-top:0}@media (max-width: 960px){.c-code .lesson-anchor{scroll-margin-top:57px}}.c-code .lesson-rail{position:sticky;top:0;z-index:20;display:flex;align-items:flex-end;justify-content:space-between;gap:6px 18px;padding:14px 0 10px;margin-top:2px;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.c-code .lesson-rail::-webkit-scrollbar{display:none}@media (max-width: 960px){.c-code .lesson-rail{top:57px;gap:6px 14px}}.c-code .lesson-phase{display:flex;flex-direction:column;gap:5px;flex:none;min-width:0}.c-code .lesson-phase-name{padding:0;border:0;background:none;text-align:left;white-space:nowrap;font-size:13px;font-weight:600;color:var(--ink-3)}.c-code .lesson-phase-name:hover,.c-code .lesson-phase.is-here .lesson-phase-name{color:var(--ink)}.c-code .lesson-dots{position:relative;display:flex;align-self:flex-start;align-items:center;gap:4px;margin-left:-6px}.c-code .lesson-dots:before{content:"";position:absolute;left:11px;right:11px;top:50%;height:2px;margin-top:-1px;border-radius:2px;background:var(--rule)}.c-code .lesson-dot{position:relative;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;background:none;border-radius:50%}.c-code .lesson-dot:before{content:"";width:10px;height:10px;border-radius:50%;box-sizing:border-box;border:2px solid var(--rule-strong);background:var(--paper);transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.c-code .lesson-dot:hover:before{border-color:var(--ink-3)}.c-code .lesson-dot.is-seen:before{background:var(--accent);border-color:var(--accent)}.c-code .lesson-dot.is-here:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);transform:scale(1.15)}.c-code .lesson-dot:focus-visible{outline-offset:0;border-radius:50%}@media (max-width: 560px){.c-code .lesson-rail{gap:6px 8px;padding-top:12px;overflow-x:visible}.c-code .lesson-phase-name{font-size:12.5px}.c-code .lesson-phase:not(.is-here) .lesson-dots{gap:0;margin-left:-3px}.c-code .lesson-phase:not(.is-here) .lesson-dot{width:12px;height:22px}.c-code .lesson-phase:not(.is-here) .lesson-dot:before{width:7px;height:7px;border-width:1.5px}.c-code .lesson-phase:not(.is-here) .lesson-dots:before{left:6px;right:6px}}.c-code .lesson-body>.section{margin-top:28px}.c-code .lesson-body>.section>h2:first-child{margin-top:0}.c-code .section[hidden]{margin:0!important;padding:0!important}.c-code .section>h2:focus{outline:none}.c-code .lesson-feedback{margin:48px 0 0;font-size:13.5px;color:var(--ink-3)}.c-code .lesson-feedback a{color:var(--ink-2)}.c-code .lesson-pager{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:20px;border-top:1px solid var(--rule)}.c-code .lesson-pager-back{display:inline-flex;align-items:center;gap:6px;padding:8px 10px 8px 4px;border:0;border-radius:8px;background:none;color:var(--ink-2);font-size:14.5px;font-weight:600}.c-code .lesson-pager-back:hover{color:var(--ink);background:var(--paper-2)}.c-code .lesson-pager-next{display:inline-flex;align-items:center;gap:14px;margin-left:auto;max-width:min(100%,420px);padding:11px 16px 11px 20px;border:1px solid var(--ink);border-radius:12px;background:var(--ink);color:var(--paper);text-align:left;transition:opacity .15s}.c-code .lesson-pager-next:hover{opacity:.9}.c-code .lesson-pager-next span{display:grid;min-width:0;font-family:var(--display);font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.25}.c-code .lesson-pager-next small{font-family:var(--sans);font-size:12.5px;font-weight:500;opacity:.7;letter-spacing:0}.c-code .lesson-pager-next svg{flex:none}.c-code .resume{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;margin-top:14px;border-radius:10px;background:var(--accent-soft);font-size:14.5px}.c-code kbd{font-family:var(--mono);font-size:.85em;border:1px solid var(--rule-strong);border-bottom-width:2px;border-radius:4px;padding:0 5px;background:var(--paper-2)}.c-code .diagnostic{border:1px dashed var(--rule-strong);border-radius:10px;padding:14px 18px;margin:20px 0}.c-code .diag-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-size:15px}.c-code .diag-result ul{margin:8px 0 12px}.c-code .sidebar>.brand{flex:1}.c-code .brand-row{display:flex;align-items:flex-start}.c-code .side-collapse{display:grid;place-items:center;width:28px;height:28px;margin:18px 12px 0 0;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink-3)}.c-code .side-collapse:hover{border-color:var(--rule-strong);color:var(--ink);background:var(--paper-2)}@media (max-width: 960px){.c-code .side-collapse{display:none}}.c-code .shell.collapsed{grid-template-columns:minmax(0,1fr)}.c-code .shell.collapsed>.sidebar{display:none}.c-code .sidebar-reopen{position:fixed;top:14px;left:14px;z-index:35;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--rule-strong);border-radius:9px;background:var(--paper-2);color:var(--ink-2)}.c-code .sidebar-reopen:hover{border-color:var(--ink-3);color:var(--ink)}@media (max-width: 960px){.c-code .sidebar-reopen{display:none}}.c-code .shell.collapsed .page{padding-top:60px}.c-code .py-editor-wrap{position:relative}.c-code .py-cm .cm-editor{max-height:70vh}.c-code .py-cm .cm-editor .cm-scroller{overflow:auto}.c-code .py-cell:focus-within{box-shadow:0 0 0 2px var(--accent)}.c-code .code-bar .code-run{border-color:#8fe3bd80;color:#8fe3bd}.c-code .code-bar .code-run:hover{border-color:#8fe3bd}.c-code .playground-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 4px;font-size:14.5px}.c-code .playground-bar .input{width:auto;max-width:100%}.c-code .py-prelude{margin:12px 0 8px;font-size:14px}.c-code .py-prelude>summary{cursor:pointer;color:var(--ink-2);font-weight:600}.c-code .py-prelude .py-solution{max-height:320px;overflow:auto}.c-code .project-progress{display:flex;align-items:center;gap:14px;margin:18px 0 8px;font-size:14px;color:var(--ink-2)}.c-code .project-progress .meter{flex:1;max-width:320px;height:6px;margin:0}.c-code .project-pieces{list-style:none;padding:0;margin:20px 0;border-top:1px solid var(--rule);counter-reset:piece}.c-code .project-pieces li{counter-increment:piece;display:grid;grid-template-columns:26px 1fr;gap:12px;margin:0;padding:12px 0;border-bottom:1px solid var(--rule)}.c-code .project-mark{width:20px;height:20px;margin-top:2px;border-radius:50%;border:2px solid var(--rule-strong);display:grid;place-items:center;font-size:11px;color:var(--paper)}.c-code .project-pieces li.is-built .project-mark{background:var(--good);border-color:var(--good)}.c-code .project-pieces a{text-decoration:none}.c-code .project-pieces a b:before{content:counter(piece) ". ";color:var(--ink-3);font-weight:600}.c-code .project-does{display:block;font-size:14.5px;color:var(--ink-2)}.c-code .project-lesson{display:block;font-size:13px;color:var(--ink-3)}.c-code .fast-track{padding:22px 24px;border-radius:14px;background:var(--accent-soft)}.c-code .fast-track h2{margin-top:0}.c-code .fast-track>p{color:var(--ink-2);max-width:44em}.c-code .fast-track-list{columns:2;column-gap:32px;margin:14px 0 18px;padding-left:1.4em}@media (max-width: 640px){.c-code .fast-track-list{columns:1}}.c-code .fast-track-list li{break-inside:avoid;margin:0 0 6px}.c-code .fast-track-list a{color:var(--ink);text-decoration:none;font-weight:600}.c-code .fast-track-list a:hover{color:var(--accent-ink);text-decoration:underline}.c-code .fast-track-list a.done{color:var(--good)}.c-code .fast-track-list span{margin-left:8px;font-size:13px;color:var(--ink-3)}.c-code .nav-fast{display:inline-block;width:6px;height:6px;margin:0 0 2px 6px;border-radius:50%;background:var(--accent);vertical-align:middle}.c-code .lesson-fast{color:var(--accent-ink);font-weight:600}.c-code .fast-skipped{margin:14px 0 0;padding:10px 14px;border-radius:10px;background:var(--paper-2);font-size:14px;color:var(--ink-2)}.c-code .fast-next{display:block;padding:14px 18px;border-radius:12px;background:var(--accent-soft);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}.c-code .fast-next small{display:block;font-family:var(--sans);font-size:13px;font-weight:500;color:var(--accent-ink)}.c-code .fast-done{padding:14px 18px;border-radius:12px;background:var(--accent-soft);margin:0}.c-code .landing{--l-ink: #eef0f5;--l-ink-2: rgba(226, 230, 240, .66);--l-ink-3: rgba(226, 230, 240, .42);--l-line: rgba(255, 255, 255, .1);--l-accent: #3ecf8e;--l-bad: #ff8a80;position:relative;min-height:100vh;min-height:100svh;overflow:hidden;isolation:isolate;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);color:var(--l-ink);color-scheme:dark;background:radial-gradient(60% 55% at 72% 45%,rgba(62,207,142,.1),transparent 70%),radial-gradient(50% 60% at 10% 100%,rgba(110,120,255,.07),transparent 70%),#05060a;padding:28px clamp(20px,5vw,64px)}.c-code .hero-field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-2;opacity:0;transition:opacity 1.2s ease}.c-code .hero-field.is-ready{opacity:1}.c-code .landing-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(5,6,10,.78) 0%,rgba(5,6,10,.35) 42%,transparent 62%)}@media (max-aspect-ratio: 23/20){.c-code .landing-scrim{background:linear-gradient(180deg,transparent 18%,rgba(5,6,10,.7) 48%,rgba(5,6,10,.55) 100%)}}.c-code .landing-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.c-code .landing-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em}.c-code .landing-mark{width:10px;height:10px;border-radius:50%;background:var(--l-accent);box-shadow:0 0 16px 2px #3ecf8e8c}.c-code .landing-beta{font-size:12.5px;font-weight:500;letter-spacing:.02em;color:var(--l-ink-2);border:1px solid var(--l-line);padding:5px 12px;border-radius:99px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.c-code .landing-hero{align-self:center;max-width:780px;padding:48px 0}.c-code .landing-hero>:not(h1){max-width:560px}.c-code .landing-eyebrow{margin:0 0 18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--l-accent)}.c-code .landing-hero h1{margin:0;font-family:var(--display);font-weight:600;font-size:clamp(44px,7.4vw,92px);line-height:.98;letter-spacing:-.045em;color:var(--l-ink)}.c-code .landing-lede{margin:26px 0 0;max-width:31em;font-size:clamp(16.5px,1.6vw,19px);line-height:1.6;color:var(--l-ink-2)}.c-code .landing-code{margin-top:40px;max-width:460px}.c-code .landing-code-row{display:flex;align-items:center;gap:6px;padding:6px;border-radius:14px;background:#ffffff0b;border:1px solid var(--l-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:border-color .2s,box-shadow .2s}.c-code .landing-code-row:focus-within{border-color:#3ecf8e8c;box-shadow:0 0 0 4px #3ecf8e1f}.c-code .landing-code-row:has(input[aria-invalid=true]){border-color:#ff8a8099}.c-code .landing-code-row input{flex:1;min-width:0;padding:10px 12px;border:0;background:transparent;outline:none;font-family:var(--mono);font-size:15px;letter-spacing:.06em;color:var(--l-ink)}.c-code .landing-code-row input::placeholder{color:var(--l-ink-3)}.c-code .landing-code-row button{flex:none;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:0;border-radius:10px;background:var(--l-ink);color:#05060a;font-weight:600;font-size:14.5px;cursor:pointer;transition:opacity .15s,transform .15s}.c-code .landing-code-row button:hover:not(:disabled){transform:translate(1px)}.c-code .landing-code-row button:disabled{opacity:.35;cursor:default}.c-code .landing-note{margin:12px 2px 0;font-size:13.5px;line-height:1.5;color:var(--l-ink-3)}.c-code .landing-note a{color:var(--l-ink-2);text-underline-offset:3px}.c-code .landing-note.is-wrong,.c-code .landing-note.is-wrong a{color:var(--l-bad)}.c-code .landing-foot{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:var(--l-ink-3)}@media (max-width: 560px){.c-code .landing{padding:20px 18px}.c-code .landing-hero{padding:32px 0}.c-code .landing-code-row button span{display:none}}.c-code .landing-nowrap{white-space:nowrap}.c-code .ok{color:var(--good)}.c-code .no{color:var(--bad)}.c-code .tok-t{color:#ffd89a}.c-code .page.wide{max-width:1120px}.c-code .page-title{font-size:clamp(30px,3.6vw,40px);letter-spacing:-.03em;margin:4px 0 10px}.c-code .page-lede{font-size:17.5px;color:var(--ink-2);max-width:40em}.c-code .brand{padding:18px 18px 12px}.c-code .brand-mark{display:inline-flex;align-items:flex-end;gap:3px;width:26px;height:26px;padding:4px;border-radius:7px;background:var(--paper-2);border:1px solid var(--rule-strong)}.c-code .brand-mark i{display:block;width:4px;border-radius:1.5px;background:var(--ink-3)}.c-code .brand-mark i:nth-child(1){height:8px}.c-code .brand-mark i:nth-child(2){height:16px;background:var(--accent)}.c-code .brand-mark i:nth-child(3){height:11px}.c-code .brand-name{display:grid;line-height:1.15}.c-code .brand-name small{font-family:var(--sans);font-weight:500;font-size:12px;color:var(--ink-3);letter-spacing:0}.c-code .side-tools{display:grid;gap:1px;padding:0 8px 10px;border-bottom:1px solid var(--rule)}.c-code .side-tools .tool{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:7px;color:var(--ink-2);font-size:14px;text-decoration:none}.c-code .side-tools .tool:hover{background:var(--paper-2);color:var(--ink);text-decoration:none}.c-code .side-tools .tool[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);text-decoration:none;font-weight:600}.c-code .side-tools .tool svg{flex:none;opacity:.8}.c-code .tool-badge{margin-left:auto;font-size:11.5px;font-weight:650;min-width:20px;text-align:center;padding:0 6px;border-radius:99px;background:var(--accent);color:var(--on-accent)}.c-code .nav-link{grid-template-columns:22px 1fr auto;align-items:center}.c-code .nav-n{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);text-align:right}.c-code .nav-link.is-soon{color:var(--ink-3)}.c-code .nav-link.is-soon .nav-label{opacity:.75}.c-code .nav-done{color:var(--good);font-size:12px;font-weight:700}.c-code .nav-ring{width:12px;height:12px;border-radius:50%;background:conic-gradient(var(--accent) var(--p),var(--rule-strong) 0);-webkit-mask:radial-gradient(circle,transparent 3px,#000 3.5px);mask:radial-gradient(circle,transparent 3px,#000 3.5px)}.c-code .side-foot{display:flex;align-items:center;justify-content:space-between}.c-code .seg{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:10px;background:var(--paper-2);border:1px solid var(--rule);max-width:100%}.c-code .seg-opt{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--ink-3);padding:6px 14px;border-radius:7px;font-size:14px;font-weight:600;white-space:nowrap;transition:background .15s,color .15s}.c-code .seg-opt:hover{color:var(--ink)}.c-code .seg-opt[aria-selected=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 2px #0000001f,0 0 0 1px var(--rule-strong)}.c-code .seg-small .seg-opt{padding:4px 10px;font-size:13px}.c-code .seg-badge{font-size:11px;font-weight:700;padding:0 6px;border-radius:99px;background:var(--rule-strong);color:var(--ink-2)}.c-code .seg-opt[aria-selected=true] .seg-badge{background:var(--accent-soft);color:var(--accent-ink)}.c-code .lang-switch{display:inline-flex;gap:2px;padding:2px;border-radius:7px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.c-code .lang-switch button{border:0;background:transparent;color:#9a9db3;font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:5px}.c-code .lang-switch button[aria-selected=true]{background:#ffffff21;color:#fff}.c-code .ws-bar .lang-switch,.c-code .pz-head .lang-switch,.c-code .recall-bar .lang-switch{background:var(--paper-2);border-color:var(--rule)}.c-code .ws-bar .lang-switch button,.c-code .pz-head .lang-switch button,.c-code .recall-bar .lang-switch button{color:var(--ink-3)}.c-code .ws-bar .lang-switch button[aria-selected=true],.c-code .pz-head .lang-switch button[aria-selected=true],.c-code .recall-bar .lang-switch button[aria-selected=true]{background:var(--paper);color:var(--ink);box-shadow:0 0 0 1px var(--rule-strong)}.c-code .code-bar .lang-switch button{padding:1px 9px}.c-code .diff{font-size:12px;font-weight:650}.c-code .diff-E{color:var(--good)}.c-code .diff-M{color:var(--k)}.c-code .diff-H{color:var(--bad)}.c-code .unit-kicker{font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}.c-code .unit-head{margin:0 0 6px}.c-code .signals-lead{margin-bottom:8px}.c-code .signals{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.c-code .signals li{margin:0;padding:6px 12px;border-radius:8px;background:var(--paper-2);border:1px solid var(--rule);font-size:14.5px}.c-code .pitfalls{padding-left:1.1em}.c-code .pitfalls li{margin-bottom:10px}.c-code .warm-due{padding:10px 14px;border-radius:10px;background:var(--accent-soft);font-size:14.5px}.c-code .skip-note{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:14px;padding:10px 14px;border-radius:10px;background:var(--paper-2);font-size:14.5px}.c-code .next-unit{display:block;margin-top:20px;padding:14px 18px;border-radius:12px;border:1px solid var(--rule-strong);text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700;font-size:18px}.c-code .next-unit:hover{border-color:var(--accent);color:var(--ink)}.c-code .next-unit small{display:block;font-family:var(--sans);font-size:13px;font-weight:500;color:var(--accent-ink)}.c-code .keychoice{margin:14px 0 22px}.c-code .keychoice-key{margin:14px 0 4px;font-size:14px;color:var(--ink-2)}.c-code .template{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:18px;margin:18px 0;align-items:start}@media (max-width: 900px){.c-code .template{grid-template-columns:minmax(0,1fr)}}.c-code .template-steps{list-style:none;padding:0;margin:0;display:grid;gap:4px}.c-code .template-steps li{margin:0}.c-code .template-steps button{display:grid;grid-template-columns:26px 1fr;gap:8px;width:100%;text-align:left;border:1px solid transparent;background:none;padding:7px 10px;border-radius:9px;color:var(--ink-2);font-size:14.5px;line-height:1.4}.c-code .template-steps li.is-hot button,.c-code .template-steps button:hover{background:var(--paper-2);border-color:var(--rule-strong);color:var(--ink)}.c-code .template-n{font-family:var(--mono);font-weight:600;color:var(--accent-ink)}.c-code .template-code{margin:0}.c-code .template-line{display:block;transition:opacity .15s,background .15s;border-radius:3px}.c-code .template-line.is-hot{background:#3ecf8e21}.c-code .template-line.is-dim{opacity:.38}.c-code .template-gutter{display:inline-block;width:2ch;margin-right:1.4ch;color:#6fe0ae;text-align:right;-webkit-user-select:none;user-select:none}.c-code .tracer{margin:22px 0;border:1.5px solid var(--frame);border-radius:14px;background:var(--paper);padding:16px 18px 14px}@media (min-width: 961px){.c-code .tracer{margin-left:-18px;margin-right:-18px}}.c-code .tr-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.c-code .tr-title{font-family:var(--display);font-weight:700;font-size:16.5px;letter-spacing:-.01em}.c-code .tr-input{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px;font-size:13px;color:var(--ink-3)}.c-code .tr-input .input{flex:1;min-width:180px;font-size:13.5px;padding:6px 10px}.c-code .tr-input .input[aria-invalid=true]{border-color:var(--bad)}.c-code .tr-error{color:var(--bad);font-size:13.5px;margin:4px 0}.c-code .tr-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;margin-top:16px;align-items:start}@media (max-width: 640px){.c-code .tr-stage{grid-template-columns:minmax(0,1fr)}}.c-code .tr-array-wrap{overflow-x:auto;padding-bottom:2px}.c-code .tr-array{display:grid;gap:0 4px;min-width:min-content}.c-code .tr-cell{display:grid;justify-items:center;gap:3px;padding:4px 0 0;position:relative}.c-code .tr-val{display:grid;place-items:center;width:100%;min-width:34px;height:40px;border-radius:8px;background:var(--paper-2);border:1.5px solid var(--rule-strong);font-family:var(--mono);font-size:15px;font-weight:600;transition:background .25s,border-color .25s,opacity .25s,transform .25s}.c-code .tr-idx{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.c-code .tr-cell.in-window .tr-val{background:var(--accent-soft);border-color:var(--accent)}.c-code .tr-cell.is-dim .tr-val{opacity:.32}.c-code .tr-cell.is-out .tr-val{opacity:.45;border-style:dashed}.c-code .tr-cell.is-hit .tr-val{background:var(--k-soft);border-color:var(--k);transform:translateY(-2px)}.c-code .tr-cell.is-done .tr-val{background:var(--good-soft);border-color:transparent;color:var(--good)}.c-code .tr-past .tr-val{visibility:hidden}.c-code .tr-ptrs{display:flex;flex-direction:column;align-items:center;gap:1px;min-height:22px}.c-code .tr-ptr{display:inline-flex;flex-direction:column;align-items:center;font-family:var(--mono);font-size:12px;font-weight:700;line-height:1.05}.c-code .tr-ptr span{font-size:9px}.c-code .tone-q{color:var(--q)}.c-code .tone-k{color:var(--k)}.c-code .tone-v{color:var(--v)}.c-code .tr-vars{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-family:var(--mono);font-size:13px}.c-code .tr-vars span span{color:var(--ink-3);margin-right:6px}.c-code .tr-vars b{font-weight:600;color:var(--ink)}.c-code .tr-side{min-width:150px;font-size:13px}.c-code .tr-side-title{font-size:12px;color:var(--ink-3);margin-bottom:6px}.c-code .tr-stack{list-style:none;padding:0;margin:0;display:grid;gap:3px;font-family:var(--mono)}.c-code .tr-stack li{margin:0;display:flex;justify-content:space-between;gap:12px;padding:4px 10px;border-radius:6px;background:var(--v-soft)}.c-code .tr-stack li:first-child{outline:1.5px solid var(--v)}.c-code .tr-table{border-collapse:separate;border-spacing:0 3px;font-family:var(--mono);font-size:13px;width:100%}.c-code .tr-table td{padding:3px 10px;background:var(--paper-2)}.c-code .tr-table td:first-child{border-radius:6px 0 0 6px;color:var(--ink);font-weight:600}.c-code .tr-table td:last-child{border-radius:0 6px 6px 0;color:var(--ink-2);text-align:right}.c-code .tr-invariant{display:grid;grid-template-columns:22px 1fr;gap:8px;margin-top:14px;padding:10px 12px;border-radius:10px;font-size:14.5px;line-height:1.45}.c-code .tr-invariant.holds{background:var(--good-soft)}.c-code .tr-invariant.broken{background:var(--bad-soft)}.c-code .tr-inv-mark{font-weight:800}.c-code .tr-invariant.holds .tr-inv-mark{color:var(--good)}.c-code .tr-invariant.broken .tr-inv-mark{color:var(--bad)}.c-code .tr-inv-label{display:block;font-size:12px;font-weight:700;color:var(--ink-3)}.c-code .tr-note{display:grid;gap:4px;margin-top:10px;font-size:15px;min-height:48px}.c-code .tr-action{justify-self:start;font-family:var(--mono);font-size:12px;font-weight:600;color:var(--accent-ink)}.c-code .tr-answer{color:var(--accent-ink)}.c-code .tr-controls{display:flex;align-items:center;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--rule)}.c-code .tr-controls input[type=range]{flex:1;min-width:60px}.c-code .tr-count{font-size:12.5px;color:var(--ink-3);min-width:44px;text-align:right}.c-code .icon-btn{display:grid;place-items:center;min-width:34px;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink-2);font-size:12px}.c-code .icon-btn:hover:not(:disabled){border-color:var(--ink-3);color:var(--ink)}.c-code .icon-btn:disabled{opacity:.35}.c-code .icon-btn.play{background:var(--ink);border-color:var(--ink);color:var(--paper)}.c-code .tr-predict{margin-top:12px;padding:12px;border-radius:10px;border:1px dashed var(--rule-strong)}.c-code .tr-predict-q{font-weight:650;font-size:14.5px;margin-bottom:8px}.c-code .tr-predict-opts{display:flex;flex-wrap:wrap;gap:6px}.c-code .tr-predict-foot{display:flex;align-items:center;gap:12px;margin-top:10px;font-weight:600;font-size:14.5px}.c-code .tr-score{margin:10px 0 0;font-size:14.5px}@media (max-width: 640px){.c-code .tracer{padding:12px 12px 10px;margin:16px 0}.c-code .tr-input{margin-top:8px}.c-code .tr-stage{gap:10px;margin-top:10px}.c-code .tr-val{height:34px;min-width:30px;font-size:14px}.c-code .tr-vars{margin-top:8px}.c-code .tr-invariant{margin-top:10px;padding:8px 10px;font-size:13.5px}.c-code .tr-note{font-size:14.5px;min-height:0;margin-top:8px}.c-code .tr-predict{margin-top:10px;padding:10px}.c-code .tr-predict-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.c-code .tr-predict-opts .opt{padding:7px 10px;font-size:13.5px;line-height:1.3}.c-code .tr-controls{margin-top:10px;padding-top:10px}}.c-code .opt{padding:9px 14px;border-radius:9px;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink);font-size:14.5px;text-align:left;transition:border-color .15s,background .15s,opacity .15s}.c-code .opt:hover:not(:disabled){border-color:var(--ink-3)}.c-code .opt:disabled{cursor:default}.c-code .opt.right{border-color:var(--good);background:var(--good-soft)}.c-code .opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.c-code .opt.dim{opacity:.45}.c-code .opt b{font-weight:600}.c-code .drill{max-width:640px;padding:20px 22px;border-radius:14px;border:1.5px solid var(--frame);background:var(--paper);margin:18px 0}.c-code .drill-top{display:flex;justify-content:space-between;align-items:baseline}.c-code .drill-kicker{font-size:14px;font-weight:600;color:var(--ink-2)}.c-code .drill-count{font-size:12.5px;color:var(--ink-3)}.c-code .drill-bar{height:3px;border-radius:99px;background:var(--rule);margin:10px 0 16px;overflow:hidden}.c-code .drill-bar span{display:block;height:100%;background:var(--accent);transition:width .3s var(--ease)}.c-code .drill-text{font-size:18px;line-height:1.5;font-family:var(--display);font-weight:500;letter-spacing:-.01em;min-height:3em}.c-code .drill-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0 4px}@media (max-width: 520px){.c-code .drill-opts{grid-template-columns:minmax(0,1fr)}}.c-code .drill-why{margin-top:14px;padding-top:14px;border-top:1px solid var(--rule);font-size:15px}.c-code .drill-done{max-width:640px;padding:22px;border-radius:14px;background:var(--paper-2);margin:18px 0}.c-code .drill-score{font-family:var(--display);font-weight:700;font-size:48px;letter-spacing:-.04em;line-height:1;margin-bottom:10px}.c-code .drill-score span{font-size:22px;color:var(--ink-3)}.c-code .drill-setup{margin-top:8px}.c-code .parsons{margin:18px 0}.c-code .pz-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.c-code .pz-title{font-family:var(--display);font-weight:700;font-size:17px}.c-code .pz-prompt{font-size:14.5px;color:var(--ink-2);margin:4px 0 0}.c-code .pz-zones{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}@media (max-width: 760px){.c-code .pz-zones{grid-template-columns:minmax(0,1fr)}}.c-code .pz-zone{padding:10px;border-radius:12px;background:var(--paper-2);min-width:0}.c-code .pz-answer{background:var(--code-bg)}.c-code .pz-answer .pz-zone-title{color:#c9cbd8}.c-code .pz-zone-title{font-size:12.5px;font-weight:650;color:var(--ink-2);margin:0 4px 8px;display:flex;justify-content:space-between;gap:8px}.c-code .pz-zone-title .muted{font-weight:400}.c-code .pz-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:5px;min-height:60px}.c-code .pz-list li{margin:0;display:flex;gap:4px;align-items:stretch;min-width:0}.c-code .pz-line{flex:1;min-width:0;text-align:left;padding:7px 10px;border-radius:7px;border:1px solid var(--rule-strong);background:var(--paper);overflow-x:auto}.c-code .pz-line:hover{border-color:var(--accent)}.c-code .pz-answer .pz-line{background:#15161b;border-color:#2b2e38;color:var(--code-ink)}.c-code .pz-code{background:none!important;padding:0!important;white-space:pre;font-size:13px}.c-code .pz-list li.is-bad .pz-line{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.c-code .pz-list li.is-good .pz-line{border-color:var(--good)}.c-code .pz-nudge{display:flex;flex-direction:column;gap:2px}.c-code .pz-nudge button{flex:1;width:26px;border:1px solid #2b2e38;background:#15161b;color:#b9bccc;border-radius:5px;font-size:11px;padding:0}.c-code .pz-nudge button:disabled{opacity:.3}.c-code .pz-empty{padding:10px;font-size:13.5px}.c-code .pz-answer .pz-empty{color:#8c8fa3}.c-code .pz-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.c-code .workspace{margin:18px 0;border:1.5px solid var(--frame);border-radius:14px;overflow:hidden;background:var(--paper)}@media (min-width: 961px){.c-code .lesson .workspace{margin-left:-18px;margin-right:-18px}}.c-code .ws-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px;padding:13px 18px;border-bottom:1px solid var(--rule-strong)}.c-code .ws-title{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.01em}.c-code .ws-solved{font-size:12.5px;font-weight:650;color:var(--good)}.c-code .ws-body{display:grid}.c-code .workspace.split .ws-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr)}@media (max-width: 960px){.c-code .workspace.split .ws-body{grid-template-columns:minmax(0,1fr)}}.c-code .ws-left{padding:14px 18px 18px;min-width:0}@media (min-width: 961px){.c-code .workspace.split .ws-left{border-right:1px solid var(--rule);max-height:calc(100vh - 160px);overflow-y:auto}}@media (min-width: 761px){.c-code .workspace.stacked .ws-left{border-bottom:1px solid var(--rule)}}.c-code .ws-right{padding:14px 18px 18px;min-width:0;display:grid;gap:10px;align-content:start}.c-code .ws-statement{margin-top:14px;font-size:15.5px}.c-code .ws-example{margin:10px 0;padding:10px 12px;border-radius:9px;background:var(--paper-2);display:grid;gap:3px;font-size:14px}.c-code .ws-example span{display:inline-block;min-width:60px;color:var(--ink-3);font-size:12.5px}.c-code .ws-example code{background:none!important;padding:0!important}.c-code .ws-constraints{font-size:13.5px;color:var(--ink-2);margin:10px 0}.c-code .ws-lc{font-size:13px;color:var(--ink-3)}.c-code .ws-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.c-code .ws-bar .spacer{flex:1}.c-code .ws-timed{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--ink-2)}.c-code .ws-clock{font-size:13px;color:var(--ink-2);padding:2px 8px;border-radius:6px;background:var(--paper-2)}.c-code .ws-clock.over{color:var(--bad);background:var(--bad-soft)}.c-code .editor{border-radius:10px;overflow:hidden;background:var(--code-bg);border:1px solid var(--code-rule)}.c-code .editor:focus-within{box-shadow:0 0 0 2px var(--accent)}.c-code .editor-cm .cm-editor{max-height:62vh}.c-code .editor-plain{display:block;width:100%;border:0;resize:vertical;background:var(--code-bg);color:var(--code-ink);font-family:var(--mono);font-size:13.5px;line-height:1.65;padding:12px 16px;outline:none;-moz-tab-size:4;tab-size:4}.c-code .ws-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.c-code .ws-status{font-size:13px;color:var(--ink-3)}.c-code .ws-output{border-radius:10px;background:var(--code-bg);color:var(--code-ink);padding:12px 14px;display:grid;gap:8px}.c-code .ws-label{font-size:12px;color:#8c8fa3}.c-code .ws-stdout,.c-code .ws-trace{margin:0;font-family:var(--mono);font-size:12.5px;white-space:pre-wrap;overflow-x:auto}.c-code .ws-trace,.c-code .ws-err{color:#ffa7a0;margin:0;font-size:13.5px}.c-code .ws-tests{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:13.5px}.c-code .ws-tests li{display:grid;grid-template-columns:18px 1fr;gap:6px;margin:0}.c-code .ws-tests li.ok{color:#6fe0ae}.c-code .ws-tests li.no{color:#ffa7a0}.c-code .ws-msg{display:block;font-family:var(--mono);font-size:12px;opacity:.85;white-space:pre-wrap;word-break:break-word}.c-code .ws-time{font-size:12px;color:#8c8fa3}.c-code .ws-fallback{padding:12px 14px;border-radius:10px;background:var(--k-soft);font-size:14.5px}.c-code .ws-fallback p{margin:0 0 6px}.c-code .ws-fallback .ws-tests li.ok{color:var(--good)}.c-code .ws-fallback summary{cursor:pointer;font-weight:600;font-size:14px}.c-code .ws-verdict{display:grid;gap:2px;padding:12px 14px;border-radius:10px;background:var(--k-soft);font-size:14.5px}.c-code .ws-verdict.ok{background:var(--good-soft)}.c-code .ws-ask{display:grid;gap:8px;padding:12px 14px;border-radius:10px;border:1px dashed var(--rule-strong);font-size:14px}.c-code .chips{display:flex;flex-wrap:wrap;gap:6px}.c-code .chip-btn{padding:5px 11px;border-radius:99px;border:1px solid var(--rule-strong);background:var(--paper);font-size:13px;font-weight:600;color:var(--ink-2)}.c-code .chip-btn:hover{border-color:var(--accent);color:var(--ink)}.c-code .chip-btn.ghost{border-color:transparent;color:var(--ink-3)}.c-code .ws-note{font-size:13.5px;margin:6px 0 0}.c-code .ws-complex{font-size:14px}.c-code .ladder-hints{margin-top:14px;display:grid;gap:4px}.c-code .ladder-hints .hint,.c-code .ladder-hints .solution{margin:6px 0}.c-code .ladder-hints .code{margin:8px 0}.c-code .problem-page .crumbs{margin-bottom:14px}.c-code .problem-page .workspace{margin-top:0}.c-code .plan-only{margin:18px 0;padding:16px 18px;border-radius:14px;border:1.5px solid var(--frame)}.c-code .plan-only .ws-head{padding:0 0 10px;margin-bottom:10px}.c-code .plan-label{display:block;font-weight:600;font-size:14.5px;margin:10px 0 6px}.c-code .plan-only textarea{margin-bottom:10px}.c-code .twist{max-width:640px;padding:18px 20px;border-radius:14px;border:1.5px solid var(--frame);margin:18px 0}.c-code .twist-change{font-family:var(--display);font-size:18px;font-weight:600;letter-spacing:-.01em;margin:10px 0 6px}.c-code .twist-q{color:var(--ink-2);font-size:14.5px}.c-code .twist-why{font-size:15px}.c-code .twist .mq-kit-predict{margin:0;padding:0;border:0}.c-code .twist-next{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:13.5px}.c-code .recall-bar{display:flex;justify-content:flex-end;margin-bottom:8px}.c-code .recall-compare{margin-top:14px}.c-code .recall-goals{font-size:14px;color:var(--ink-2)}.c-code .rate-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:14px}.c-code .rate{display:grid;justify-items:center;min-width:72px;padding:6px 12px;border-radius:9px;border:1px solid var(--rule-strong);background:var(--paper)}.c-code .rate b{font-size:14px}.c-code .rate small{font-size:11.5px;color:var(--ink-3);font-family:var(--mono)}.c-code .rate.r1:hover{border-color:var(--bad)}.c-code .rate.r2:hover{border-color:var(--k)}.c-code .rate.r3:hover{border-color:var(--good)}.c-code .rate.r4:hover{border-color:var(--q)}.c-code .dash{display:grid;gap:22px}.c-code .dash-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px 28px}.c-code .dash-date{margin:0 0 4px;font-size:13.5px;color:var(--ink-3)}.c-code .dash-hello{font-size:clamp(34px,4.4vw,48px);letter-spacing:-.04em}.c-code .dash-stats{display:flex;gap:0;margin:0;border:1px solid var(--rule);border-radius:12px;overflow:hidden}.c-code .dash-stats>div{padding:10px 18px;border-left:1px solid var(--rule);min-width:92px}.c-code .dash-stats>div:first-child{border-left:0}.c-code .dash-stats dt{font-size:12px;color:var(--ink-3)}.c-code .dash-stats dd{margin:2px 0 0;font-family:var(--display);font-weight:700;font-size:24px;letter-spacing:-.03em;line-height:1.1}.c-code .dash-stats dd small{font-family:var(--sans);font-size:12.5px;font-weight:500;color:var(--ink-3);margin-left:4px;letter-spacing:0}.c-code .dash-stats dd.dash-small{font-size:16px;padding-top:5px}@media (max-width: 640px){.c-code .dash-stats{width:100%}.c-code .dash-stats>div{flex:1;min-width:0;padding:8px 10px}.c-code .dash-stats dd{font-size:20px}.c-code .dash-stats dd.dash-small{font-size:13px}}.c-code .dash-next{position:relative;display:grid;gap:4px;padding:24px 26px;border-radius:18px;text-decoration:none;color:var(--ink);background:radial-gradient(120% 140% at 100% 0%,var(--accent-soft),transparent 60%),var(--paper-2);border:1px solid var(--rule-strong);transition:border-color .2s,transform .2s}.c-code .dash-next:hover{border-color:var(--accent);color:var(--ink)}.c-code .dash-next-kicker{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}.c-code .dash-next-title{font-family:var(--display);font-weight:700;font-size:clamp(24px,3vw,32px);letter-spacing:-.03em;line-height:1.15}.c-code .dash-next-detail{color:var(--ink-2);font-size:15.5px;max-width:46em}.c-code .dash-next-go{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-weight:650;font-size:14.5px}.c-code .dash-also{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:-10px}.c-code .dash-also a{display:flex;justify-content:space-between;gap:10px;padding:11px 14px;border-radius:11px;border:1px solid var(--rule);text-decoration:none;color:var(--ink-2);font-size:14.5px}.c-code .dash-also a:hover{border-color:var(--rule-strong);color:var(--ink)}.c-code .dash-also small{color:var(--ink-3);white-space:nowrap}.c-code .dash-panel{margin-top:6px}.c-code .dash-panel-body{margin-top:16px}.c-code .panel-note{font-size:14px;color:var(--ink-3);max-width:52em}.c-code .panel-h{font-size:17px;margin:14px 0 8px}.c-code .panel-link{font-size:14px}.c-code .mmap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}@media (max-width: 1100px){.c-code .mmap{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 640px){.c-code .mmap{grid-template-columns:repeat(2,minmax(0,1fr))}}.c-code .mtile{display:grid;grid-template-rows:auto 1fr auto;gap:4px;min-height:96px;padding:10px 12px;border-radius:12px;border:1px solid var(--rule);text-decoration:none;color:var(--ink);background:var(--paper);transition:border-color .15s,background .15s}.c-code .mtile:hover{border-color:var(--ink-3);color:var(--ink)}.c-code .mtile-n{font-family:var(--mono);font-size:11.5px;color:var(--ink-3)}.c-code .mtile-title{font-family:var(--display);font-weight:650;font-size:14.5px;line-height:1.2;letter-spacing:-.01em}.c-code .mtile-foot{display:flex;align-items:center;gap:8px}.c-code .mtile-bar{flex:1;height:4px;border-radius:99px;background:var(--rule);overflow:hidden}.c-code .mtile-bar span{display:block;height:100%;background:var(--accent);border-radius:99px}.c-code .mtile-score{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);min-width:2ch;text-align:right}.c-code .mtile-soon{font-size:11.5px;color:var(--ink-3)}.c-code .mtile.is-soon{background:transparent;border-style:dashed}.c-code .mtile.is-soon .mtile-title{color:var(--ink-3)}.c-code .mtile.is-done{border-color:color-mix(in srgb,var(--good) 45%,var(--rule))}.c-code .plan-pitch p{color:var(--ink-2)}.c-code .plan-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media (max-width: 760px){.c-code .plan-pick{grid-template-columns:minmax(0,1fr)}}.c-code .plan-card{display:grid;gap:4px;padding:14px 16px;border-radius:12px;border:1px solid var(--rule-strong);text-decoration:none;color:var(--ink)}.c-code .plan-card:hover{border-color:var(--accent);color:var(--ink)}.c-code .plan-card b{font-family:var(--display);font-size:19px}.c-code .plan-card span{font-size:14px;color:var(--ink-2)}.c-code .plan-card small{font-size:12.5px;color:var(--ink-3)}.c-code .week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.c-code .wday{display:grid;justify-items:center;gap:2px;padding:8px 0;border-radius:10px;border:1px solid var(--rule);text-decoration:none;color:var(--ink-2);font-size:12px}.c-code .wday b{font-family:var(--display);font-size:18px;color:var(--ink)}.c-code .wday i{width:6px;height:6px;border-radius:50%;background:var(--rule-strong)}.c-code .wday.is-done i{background:var(--good)}.c-code .wday.is-today{border-color:var(--accent);background:var(--accent-soft)}.c-code .wday.is-off{opacity:.45}.c-code .insights{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}@media (max-width: 760px){.c-code .insights{grid-template-columns:minmax(0,1fr)}}.c-code .mbars{display:grid;gap:6px}.c-code .mbar{display:grid;grid-template-columns:130px 1fr 24px;gap:10px;align-items:center;font-size:13.5px}.c-code .mbar-track{height:8px;border-radius:99px;background:var(--paper-2);overflow:hidden}.c-code .mbar-track span{display:block;height:100%;background:var(--k);border-radius:99px}.c-code .mbar b{font-family:var(--mono);font-size:12.5px;text-align:right}.c-code .soon-list{list-style:none;padding:0;margin:0}.c-code .soon-list li{display:grid;grid-template-columns:80px 1fr auto;gap:10px;padding:7px 0;border-bottom:1px solid var(--rule);margin:0;font-size:14px}.c-code .soon-list span{color:var(--accent-ink);font-size:12.5px;font-weight:650}.c-code .soon-list b{font-weight:550;text-transform:capitalize}.c-code .soon-list small{color:var(--ink-3)}.c-code .tasks ul{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:6px}.c-code .tasks li{margin:0}.c-code .tasks li>a,.c-code .tasks li>div{display:grid;gap:2px;padding:11px 14px;border-radius:11px;border:1px solid var(--rule);text-decoration:none;color:var(--ink)}.c-code .tasks li>a:hover{border-color:var(--accent);color:var(--ink)}.c-code .tasks li b{font-weight:600;font-size:15px}.c-code .tasks li small{color:var(--ink-3);font-size:13.5px}.c-code .tasks li.is-ok b:after{content:"  ✓";color:var(--good)}.c-code .plan-setup{display:grid;gap:14px;justify-items:start}.c-code .plan-info{display:grid;gap:2px;font-size:15px}.c-code .plan-start{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:14.5px}.c-code .plan-start .input{width:auto}.c-code .plan-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;font-weight:600}.c-code .plan-cal{display:grid;gap:8px;margin:22px 0}.c-code .plan-week{display:grid;grid-template-columns:70px repeat(7,minmax(0,1fr));gap:6px;align-items:stretch}.c-code .plan-week-n{font-size:12.5px;color:var(--ink-3);padding-top:8px}.c-code .plan-day{display:grid;gap:2px;align-content:start;text-align:left;padding:7px 9px;border-radius:9px;border:1px solid var(--rule);background:var(--paper);min-height:62px;min-width:0}.c-code .plan-day span{font-size:11.5px;color:var(--ink-3)}.c-code .plan-day b{font-size:12.5px;font-weight:600;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.c-code .plan-day:hover{border-color:var(--ink-3)}.c-code .plan-day[aria-selected=true]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.c-code .plan-day.is-today{background:var(--accent-soft)}.c-code .plan-day.is-done b:before{content:"✓ ";color:var(--good)}.c-code .plan-day.is-rest{background:transparent;border-style:dashed}@media (max-width: 760px){.c-code .plan-week{grid-template-columns:repeat(7,minmax(0,1fr))}.c-code .plan-week-n{grid-column:1 / -1;padding:0}.c-code .plan-day b{display:none}.c-code .plan-day{min-height:0;text-align:center;padding:8px 2px}}.c-code .plan-detail{padding:18px 20px;border-radius:14px;border:1.5px solid var(--frame)}.c-code .plan-detail-head{display:grid;gap:2px;margin-bottom:14px}.c-code .plan-detail-head>span:first-child{font-size:12.5px;font-weight:700;color:var(--accent-ink);text-transform:uppercase;letter-spacing:.06em}.c-code .plan-detail-head h2{font-size:24px}.c-code .review-page .seg{margin-bottom:18px}.c-code .review-progress{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-3);max-width:640px;margin-bottom:8px}.c-code .rcard{max-width:640px;padding:22px;border-radius:16px;border:1.5px solid var(--frame)}.c-code .rcard-kind{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:10px}.c-code .rcard-front{font-family:var(--display);font-size:19px;font-weight:550;line-height:1.45;letter-spacing:-.01em}.c-code .rcard-back{padding:12px 14px;border-radius:10px;background:var(--paper-2);font-size:15.5px}.c-code .review-empty{max-width:560px;padding:22px;border-radius:14px;background:var(--paper-2);display:grid;gap:6px;justify-items:start}.c-code .ladder-list{list-style:none;padding:0;margin:0;display:grid;gap:8px;max-width:640px}.c-code .ladder-list li{margin:0}.c-code .ladder-list a{display:grid;gap:2px;padding:12px 16px;border-radius:12px;border:1px solid var(--rule-strong);text-decoration:none;color:var(--ink)}.c-code .ladder-list a:hover{border-color:var(--accent);color:var(--ink)}.c-code .ladder-step{font-size:12px;font-weight:700;color:var(--accent-ink);text-transform:uppercase;letter-spacing:.06em}.c-code .ladder-list small{color:var(--ink-3)}.c-code .mistake-form{display:grid;gap:10px;max-width:560px;margin:16px 0;padding:16px;border-radius:12px;background:var(--paper-2)}.c-code .mistake-form label{display:grid;gap:4px;font-size:13.5px;font-weight:600;color:var(--ink-2)}.c-code .mistake-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.c-code .mistake-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;max-width:720px}.c-code .mistake-list li{margin:0;padding:14px 16px;border-radius:12px;border:1px solid var(--rule);display:grid;gap:4px}.c-code .mistake-list p{margin:0;font-size:14.5px;color:var(--ink-2)}.c-code .mistake-top{display:flex;align-items:center;gap:10px;font-size:13px}.c-code .mistake-top .btn{margin-left:auto}.c-code .mistake-fix{padding-left:10px;border-left:3px solid var(--good)}.c-code .mtype{font-weight:700;font-size:12.5px}.c-code .t-pattern{color:var(--v)}.c-code .t-invariant{color:var(--k)}.c-code .t-bug{color:var(--bad)}.c-code .t-edge{color:var(--q)}.c-code .t-complexity,.c-code .t-cost{color:var(--research)}.c-code .glossary{display:grid;gap:0;margin:20px 0;border-top:1px solid var(--rule)}.c-code .glossary>div{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule)}.c-code .glossary>div.is-focus{background:var(--accent-soft);margin:0 -12px;padding:12px;border-radius:10px}.c-code .glossary dt{font-family:var(--display);font-weight:700}.c-code .glossary dd{margin:0;color:var(--ink-2);font-size:15px}.c-code .glossary dd b{color:var(--ink);font-weight:600}@media (max-width: 640px){.c-code .glossary>div{grid-template-columns:1fr;gap:2px}}.c-code .cm-part{margin-top:18px}.c-code .cm-part h2{font-size:24px;margin-bottom:2px}.c-code .cm-units{display:grid;gap:8px;margin-top:14px}.c-code .cm-unit{border:1px solid var(--rule);border-radius:12px;overflow:hidden}.c-code .cm-unit.is-open{border-color:var(--rule-strong)}.c-code .cm-unit-head{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;width:100%;padding:12px 16px;background:none;border:0;text-align:left}.c-code .cm-unit-head:hover{background:var(--paper-2)}.c-code .cm-n{font-family:var(--mono);font-size:13px;color:var(--accent-ink);font-weight:600}.c-code .cm-title{display:grid;gap:1px}.c-code .cm-title b{font-family:var(--display);font-size:16.5px}.c-code .cm-title small{color:var(--ink-3);font-size:13.5px}.c-code .cm-state{font-size:12.5px;color:var(--ink-3);white-space:nowrap}.c-code .cm-unit-body{padding:4px 16px 16px 62px}@media (max-width: 640px){.c-code .cm-unit-body{padding-left:16px}}.c-code .cm-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:14.5px}@media (max-width: 760px){.c-code .cm-cols{grid-template-columns:1fr}}.c-code .cm-cols h4{font-size:13px;color:var(--ink-3);margin:6px 0 4px;font-family:var(--sans)}.c-code .cm-cols p{margin:0 0 8px}.c-code .cm-probs{font-size:14px}.c-code .soon .unit-kicker{margin-bottom:6px}.c-code .soon-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;margin-top:26px}@media (max-width: 860px){.c-code .soon-grid{grid-template-columns:minmax(0,1fr)}}.c-code .soon-h{font-size:15px;font-family:var(--sans);font-weight:700;color:var(--ink-3);margin:20px 0 8px}.c-code .soon-grid>div>.soon-h:first-child{margin-top:0}.c-code .soon-probs{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.c-code .soon-probs li{display:grid;grid-template-columns:42px 1fr auto auto;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--rule);margin:0;font-size:14.5px}.c-code .soon-probs li>span:nth-child(3){font-size:12.5px}.c-code .ws-beta{font-size:12.5px;color:var(--ink-3)}.c-code .ws-tabs{padding:12px 18px 0}.c-code .ws-left .ws-statement{margin-top:4px}.c-code .ws-tocode{padding:0 18px 18px}.c-code .ws-example>div:not(.muted){display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px;align-items:baseline}.c-code .ws-example code{white-space:normal;word-break:break-word}.c-code code,.c-code pre,.c-code .cm-content,.c-code .pz-code,.c-code .mono{font-variant-ligatures:none;font-feature-settings:"calt" 0,"liga" 0}@media (max-width: 560px){.c-code .landing-hero h1{font-size:40px}}@media (max-width: 640px){.c-code .mmap{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.c-code .mtile{min-height:74px;padding:8px 9px;border-radius:10px}.c-code .mtile-title{font-size:12.5px}.c-code .mtile-soon{display:none}}.c-code .viz-scroll{overflow-x:auto;margin:4px 0 8px}.c-code .viz{display:block;height:auto}.c-code .viz text{font-family:var(--mono);font-size:13px;fill:var(--ink)}.c-code .viz-edge,.c-code .viz-gedge line{stroke:var(--rule-strong);stroke-width:1.6}.c-code .viz-arrowhead{fill:var(--ink-3)}.c-code .viz-node circle,.c-code .viz-node rect{fill:var(--paper-2);stroke:var(--rule-strong);stroke-width:1.5;transition:fill .25s,stroke .25s}.c-code .viz-node.m-cur circle,.c-code .viz-node.m-cur rect{fill:var(--paper);stroke:var(--ink);stroke-width:2.6}.c-code .viz-node.m-hit circle,.c-code .viz-node.m-hit rect{fill:var(--k-soft);stroke:var(--k);stroke-width:2.2}.c-code .viz-node.m-done circle,.c-code .viz-node.m-done rect{fill:var(--good-soft);stroke:transparent}.c-code .viz-node.m-done text{fill:var(--good)}.c-code .viz-node.m-dep circle,.c-code .viz-node.m-dep rect{fill:var(--q-soft);stroke:var(--q)}.c-code .viz-node.m-dim,.c-code .viz-node.m-out{opacity:.35}.c-code .viz-gedge.m-hit line,.c-code .viz-gedge.m-cur line{stroke:var(--k);stroke-width:2.6}.c-code .viz-gedge.m-done line{stroke:var(--good);stroke-width:2.6}.c-code .viz-gedge.m-dim line{opacity:.3}.c-code .viz-elabel{font-size:11.5px!important;fill:var(--ink-3)!important}.c-code .viz-note{font-size:11px!important;fill:var(--accent-ink)!important;font-weight:600}.c-code .viz-ptr{font-size:11.5px!important;font-weight:700;fill:var(--v)!important}.c-code .viz-null{fill:var(--ink-3)!important}.c-code .viz-title{font-size:12px;color:var(--ink-3);margin:6px 0 4px}.c-code .viz-caption{font-size:12px;color:var(--v);font-family:var(--mono)}.c-code .viz-empty{font-size:13px;color:var(--ink-3)}.c-code .viz-grid{border-collapse:separate;border-spacing:3px;font-family:var(--mono);font-size:13px}.c-code .viz-grid td{position:relative;min-width:34px;height:32px;text-align:center;padding:2px 6px;border-radius:6px;background:var(--paper-2);border:1.5px solid var(--rule);transition:background .25s,border-color .25s}.c-code .viz-grid th{font-weight:500;font-size:11.5px;color:var(--ink-3);padding:0 4px}.c-code .viz-grid td.m-cur{background:var(--paper);border-color:var(--ink);border-width:2px}.c-code .viz-grid td.m-hit{background:var(--k-soft);border-color:var(--k)}.c-code .viz-grid td.m-done{background:var(--good-soft);border-color:transparent;color:var(--good)}.c-code .viz-grid td.m-dep{background:var(--q-soft);border-color:var(--q)}.c-code .viz-grid td.m-dim,.c-code .viz-grid td.m-out{opacity:.35}@media (max-width: 480px){.c-code .viz-grid{border-spacing:2px;font-size:12px}.c-code .viz-grid td{min-width:27px;height:28px;padding:1px 3px}.c-code .viz-grid th{font-size:10.5px;padding:0 2px}}.c-code .viz-cellptr{position:absolute;top:-2px;right:2px;font-size:9.5px;color:var(--v);font-weight:700}.c-code .viz-heap-row,.c-code .viz-queue-row{display:flex;flex-wrap:wrap;gap:4px;font-family:var(--mono);font-size:13px}.c-code .viz-heap-row span{display:grid;justify-items:center;min-width:34px;padding:5px 6px 2px;border-radius:7px;background:var(--paper-2);border:1.5px solid var(--rule)}.c-code .viz-heap-row span small{font-size:10px;color:var(--ink-3)}.c-code .viz-heap-row span.m-hit{border-color:var(--k);background:var(--k-soft)}.c-code .viz-heap-row span.m-cur{border-color:var(--accent);background:var(--accent-soft)}.c-code .viz-queue-row span{padding:4px 9px;border-radius:6px;background:var(--v-soft)}.c-code .viz-heaps{display:flex;flex-wrap:wrap;gap:8px 28px}.c-code .viz-heaps>.viz-heap{min-width:0}.c-code .mock-setup{display:grid;gap:14px;margin:18px 0 20px}.c-code .mock-label{display:block;font-size:13px;font-weight:650;color:var(--ink-3);margin-bottom:6px}.c-code .mock-tip{font-size:14px;margin-top:14px;max-width:40em}.c-code .mock-history ul{list-style:none;padding:0;margin:0;max-width:720px}.c-code .mock-history li{display:grid;grid-template-columns:64px 1fr auto auto;gap:12px;padding:8px 0;border-bottom:1px solid var(--rule);margin:0;font-size:14px}.c-code .mock-history li span:first-child{color:var(--ink-3)}.c-code .mock-bar{position:sticky;top:0;z-index:25;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:10px 14px;margin-bottom:12px;border-radius:12px;background:color-mix(in srgb,var(--paper-2) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--rule-strong)}@media (max-width: 960px){.c-code .mock-bar{top:57px}}.c-code .mock-clock{font-size:26px;font-weight:600;letter-spacing:-.02em}.c-code .mock-clock.low{color:var(--bad)}.c-code .mock-prompt{display:grid;gap:1px;font-size:14px;color:var(--ink-2)}.c-code .mock-prompt b{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-ink)}@media (max-width: 640px){.c-code .mock-bar{grid-template-columns:auto 1fr}.c-code .mock-bar .btn{grid-column:1 / -1;justify-self:start}}.c-code .mock-rate{display:grid;gap:4px;max-width:760px;margin:18px 0}.c-code .mock-dim{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 18px;align-items:center;padding:12px 0;border-bottom:1px solid var(--rule)}.c-code .mock-dim>div:first-child{display:grid;gap:2px}.c-code .mock-dim span{font-size:14px;color:var(--ink-3)}.c-code .mock-dim .rate-row{margin:0}@media (max-width: 760px){.c-code .mock-dim{grid-template-columns:minmax(0,1fr)}}.c-code .rate.is-on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink);background:var(--paper-2)}.c-code .chip-btn.is-on{border-color:var(--ink);color:var(--ink)}.c-code .settings-block{max-width:640px;padding:18px 0;border-bottom:1px solid var(--rule)}.c-code .settings-block h2{font-size:19px;margin-bottom:6px}.c-code .settings-retention{display:flex;align-items:center;gap:14px;max-width:420px}.c-code .side-foot a{color:var(--ink-2)}.c-code .recall-score{margin:0 0 6px;font-size:15px}.c-code .recall-check li{margin:4px 0}.c-code .recall-tag{font-size:12px;font-family:var(--mono);color:var(--good);margin-left:6px}.c-code .recall-check li.is-order .recall-tag{color:var(--k)}.c-code .recall-check li.is-missing .recall-tag{color:var(--bad)}.c-code .recall-lines{display:block;white-space:pre-wrap;font-size:12.5px;color:var(--ink-3);margin-top:2px}.c-code .rate.is-suggested{border-color:var(--ink-2);box-shadow:0 0 0 1px var(--ink-2)}.c-code .explain{display:grid;gap:6px;max-width:640px;margin:12px 0 4px}.c-code .explain-note{font-size:13px;min-height:1em}.c-code .rcard-said{margin:4px 0 0;white-space:pre-wrap}.c-code .ws-perf{display:grid;gap:2px;padding:10px 14px;border-radius:10px;border:1px solid var(--rule-strong);font-size:14px}.c-code .ws-perf.ok{border-color:transparent;background:var(--good-soft)}.c-code .ws-perf.no{border-color:transparent;background:var(--bad-soft)}.c-code .ws-perf.ok b span{color:var(--good)}.c-code .ws-perf.no b span{color:var(--bad)}.c-code .ws-cx{display:grid;gap:8px;margin:6px 0;padding:12px 14px;border-radius:10px;border:1px dashed var(--rule-strong);font-size:14px}.c-code .ws-cx-row{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:8px}.c-code .ws-cx-kind{font-size:13px;color:var(--ink-3)}.c-code .ws-cx .chip-btn:disabled{cursor:default;opacity:1}.c-code .ws-cx .chip-btn.is-right{border-color:var(--good);color:var(--good);background:var(--good-soft)}.c-code .ws-cx .chip-btn.is-wrong{border-color:var(--bad);color:var(--bad);background:var(--bad-soft)}.c-code .ws-cx .chip-btn.is-dim{opacity:.45}.c-code .compare-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:16px 0 18px}.c-code .analog{padding:14px 16px;border:1px solid var(--rule);border-radius:12px;font-size:15px;color:var(--ink-2)}.c-code .analog b{display:block;margin-bottom:6px;color:var(--ink)}.c-code .analog p{margin:0}.c-code .compare-wait{font-size:14px;margin-top:8px}.c-code .cold-offer{margin-top:20px;padding-top:14px;border-top:1px solid var(--rule)}.c-code .cold-offer p{margin:0 0 10px;color:var(--ink-2);font-size:15px;max-width:40em}.c-code .cold-try{margin-top:20px}.c-code .cold-try>.btn{margin-top:10px}.c-code .skip-teach{font-size:14px;color:var(--ink-3);margin:-4px 0 14px}.c-code .link-btn{background:none;border:0;padding:0;font:inherit;color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.c-code .cm-checkpoint .cm-unit-head{text-decoration:none;color:inherit}.c-code .mix-how{max-width:40em;color:var(--ink-2)}.c-code .mix-name{display:grid;gap:18px;max-width:760px}.c-code .mix-brief{padding-bottom:14px;border-bottom:1px solid var(--rule)}.c-code .mix-q{display:grid;gap:10px}.c-code .mix-ask{font-weight:650;margin:0}.c-code .mix-verdict{max-width:760px}.c-code .mix-verdict ul{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}.c-code .mix-sum ul{list-style:none;padding:0;margin:18px 0;max-width:820px}.c-code .mix-sum li{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:14px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--rule);font-size:14px}.c-code .mix-sum-title{display:grid;gap:2px}.c-code .mix-sum-title small{color:var(--ink-3)}@media (max-width: 640px){.c-code .mix-sum li{grid-template-columns:minmax(0,1fr) auto}.c-code .mix-sum-title{grid-column:1 / -1}}.c-code .lang-choice{margin:0;background:var(--paper)}.c-code .lang-choice>b{display:block;font-size:16px;margin-bottom:6px}.c-code .retention-line{margin:10px 0 0;font-size:14px;color:var(--ink-3)}.c-code .retention-line a{margin-left:6px}.c-code .perform-intro{display:grid;gap:8px;justify-items:start;max-width:520px;padding:36px 0}.c-code .perform-h{font-family:var(--display);font-size:24px;font-weight:600;letter-spacing:-.01em;margin:0}.c-code .perform-box{display:grid;gap:8px;max-width:640px}.c-code .perform-box textarea{resize:vertical}.c-code .perform-box+.perform-note,.c-code .perform-box{margin-bottom:12px}.c-code .perform-note{font-size:14px;margin:0 0 10px}.c-code .perform-follow{display:grid;gap:10px;max-width:640px;padding:12px 0}.c-code .perform-follow .twist-change{margin:0}.c-code .perform-say{margin:0;color:var(--ink-2)}.c-code .perform-card{max-width:680px}.c-code .perform-sub{margin:26px 0 6px;font-size:13.5px;font-weight:600;color:var(--ink-3)}.c-code .perform-problem{margin:0 0 14px}.c-code .perform-problem .perform-h{font-size:19px;margin:0 0 6px}.c-code .perform-problem .perform-h small{font-family:var(--sans);font-size:14.5px;font-weight:400;color:var(--ink-3);letter-spacing:0}.c-code .perform-lines{list-style:none;padding:0;margin:0}.c-code .perform-lines li{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--rule);font-size:15px}.c-code .perform-lines li b{font-weight:600;color:var(--ink-2)}.c-code .perform-lines li.ok b{color:var(--good)}.c-code .perform-lines li.no b{color:var(--bad)}.c-code .perform-self .mq-kit-self{margin-top:18px}.c-code .perform-test{display:grid;gap:4px;justify-items:start}.c-code .perform-test .perform-box{width:100%}.c-code .perform-past{display:grid;gap:10px;justify-items:start;margin-top:28px}@media (max-width: 640px){.c-code .perform-lines li{grid-template-columns:1fr;gap:0}}@media (max-width: 560px){.c-code .section h2{font-size:24px;margin-bottom:14px}.c-code .lesson-title{font-size:26px}.c-code .lesson-question{font-size:16px}}.c-code .ws-result{display:grid;gap:10px}.c-code .pick-first .mq-kit-options button[aria-pressed=true]{border-color:var(--ink-3)}.c-code .pick-first .mq-kit-options button[data-state=wrong]{text-decoration:none}.c-code .pick-first-more{font-size:13px;margin:8px 0 0}.c-code .mock-count{font-size:14px;color:var(--ink-3);white-space:nowrap}.c-code .name-first{max-width:760px;margin:8px 0 18px}.c-code .name-first-said{font-size:14px;margin:0 0 10px}.c-code .mix-reflect{max-width:680px;padding:8px 0}.c-code .mix-compare{display:grid;gap:4px 0;margin:14px 0 6px}.c-code .mix-compare dt{font-size:13.5px;font-weight:600;color:var(--ink-3);margin-top:10px}.c-code .mix-compare dd{margin:0;font-size:16px;line-height:1.5}.c-code .perform-lines li span{color:var(--ink)}.c-code .perform-card>.btn-row{margin-top:22px}.c-code .ws-wait{min-height:160px;padding:16px 0;margin:0}html.mq-snap{scroll-snap-type:y proximity}.mq-land{--mq-paper: #07080a;--mq-paper-2: #111317;--mq-ink: #f1f2f4;--mq-ink-2: #b7bac3;--mq-ink-3: #7f828d;--mq-rule: #1b1d22;--mq-rule-2: #2a2d35;--mq-ai: #3ecf8e;--mq-ai-soft: rgba(62, 207, 142, .12);--mq-bad: #ff7b72;--mq-bad-soft: rgba(255, 123, 114, .12);--mq-good: #3ecf8e;--mq-good-soft: rgba(62, 207, 142, .12);--mq-btn: #f1f2f4;--mq-on-btn: #07080a;position:relative;background:var(--mq-paper);color:var(--mq-ink);color-scheme:dark;overflow-x:hidden;isolation:isolate}.mq-land-glow{position:absolute;inset:-12vh -12vw auto -12vw;height:140vh;z-index:-1;pointer-events:none;background:radial-gradient(60vw 50vh at 78% 18%,rgba(62,207,142,.16),transparent 70%),radial-gradient(40vw 40vh at 12% 90%,rgba(110,168,255,.07),transparent 70%);animation:mq-drift 18s ease-in-out infinite alternate;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}.mq-land-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(70% 60% at 60% 30%,#000 30%,transparent 75%);mask-image:radial-gradient(70% 60% at 60% 30%,#000 30%,transparent 75%)}@keyframes mq-drift{0%{transform:translateZ(0)}to{transform:translate3d(-3vw,2vh,0)}}.mq-land .mq-bar{position:relative;z-index:3}.mq-bar-cta{background:var(--mq-btn)!important;color:var(--mq-on-btn)!important;font-weight:600;padding:7px 16px!important;margin:0 4px}.mq-land-screen{min-height:100vh;min-height:100dvh;scroll-snap-align:start;display:flex;flex-direction:column;justify-content:center;max-width:1180px;margin:0 auto;padding:56px 24px}.mq-land-hero{min-height:calc(100dvh - 64px);justify-content:center;padding-top:24px}.mq-live-dot{width:8px;height:8px;border-radius:50%;background:var(--mq-ai);box-shadow:0 0 #3ecf8e99;animation:mq-pulse 2s infinite}@keyframes mq-pulse{70%{box-shadow:0 0 0 9px #3ecf8e00}to{box-shadow:0 0 #3ecf8e00}}.mq-land-h1{font-family:var(--mq-display);font-weight:600;font-size:clamp(36px,6vw,74px);line-height:1.04;letter-spacing:-.035em;margin:0 0 22px;max-width:15em;position:relative}.mq-land-h2{font-family:var(--mq-display);font-weight:600;font-size:clamp(30px,4.4vw,54px);line-height:1.06;letter-spacing:-.03em;margin:0 0 36px;max-width:18em}.mq-land-lede{font-size:clamp(18px,1.6vw,21px);color:var(--mq-ink-2);max-width:32em;margin:0 0 30px;line-height:1.55}.mq-land-caption{font-size:14.5px;color:var(--mq-ink-3);margin:0 0 30px;max-width:46em;min-height:3em;opacity:.75;transition:opacity .6s var(--mq-ease)}.mq-land-caption.is-on{opacity:1}.mq-gen{position:relative;color:var(--mq-ai);outline:none;border-radius:6px;animation:mq-in .45s var(--mq-ease)}.mq-gen:focus-visible{box-shadow:0 0 0 2px var(--mq-ai-soft)}.mq-gen.is-next{color:transparent;animation:none}@keyframes mq-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:none}}.mq-caret{display:inline-block;width:.08em;height:.82em;margin-left:.12em;background:var(--mq-ai);vertical-align:-.06em;animation:mq-blink 1s steps(1) infinite}@keyframes mq-blink{50%{opacity:0}}.mq-cands{position:absolute;left:0;top:calc(100% + 10px);z-index:4;width:250px;padding:12px 14px 10px;background:#111317eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--mq-rule-2);border-radius:14px;font:500 13px/1.3 var(--mq-mono);letter-spacing:0;color:var(--mq-ink-2);box-shadow:0 18px 48px #00000073;animation:mq-pop .25s var(--mq-ease)}@keyframes mq-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.mq-cand{display:grid;grid-template-columns:84px 1fr 46px;align-items:center;gap:10px;padding:3px 0;transition:color .3s}.mq-cand-word{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mq-cand-bar{height:6px;border-radius:3px;background:var(--mq-rule);overflow:hidden}.mq-cand-bar i{display:block;height:100%;border-radius:3px;background:var(--mq-ink-3);transform-origin:left;animation:mq-grow .6s var(--mq-ease)}@keyframes mq-grow{0%{transform:scaleX(0)}}.mq-cand-p{text-align:right;font-variant-numeric:tabular-nums}.mq-cands.is-pick .mq-cand.is-picked{color:var(--mq-ai)}.mq-cands.is-pick .mq-cand.is-picked .mq-cand-bar i{background:var(--mq-ai)}.mq-cands.is-pick .mq-cand:not(.is-picked){opacity:.55}.mq-cand-note{margin:6px 0 0;font:12px/1.4 var(--mq-sans);color:var(--mq-ink-3)}.mq-promises{list-style:none;margin:0;padding:0;border-top:1px solid var(--mq-rule)}.mq-promises li{display:grid;grid-template-columns:56px 1fr auto;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--mq-rule)}.mq-promise-n{font:500 13px var(--mq-mono);color:var(--mq-ink-3)}.mq-promises h3{font-family:var(--mq-display);font-weight:600;font-size:clamp(20px,2.1vw,26px);letter-spacing:-.02em;margin:0 0 4px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.mq-promises p{margin:0;color:var(--mq-ink-2);max-width:40em}.mq-promise-go{font:500 14.5px var(--mq-sans);color:var(--mq-ink);background:none;border:1px solid var(--mq-rule-2);border-radius:999px;padding:9px 16px;cursor:pointer;text-decoration:none;white-space:nowrap;transition:border-color .2s,background .2s}.mq-promise-go:hover{border-color:var(--mq-ai);background:var(--mq-ai-soft)}.mq-tag{font:500 11px var(--mq-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--mq-ai);border:1px solid rgba(62,207,142,.35);border-radius:999px;padding:3px 8px}.mq-bot{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}.mq-bot-setup,.mq-bot-chat{border:1px solid var(--mq-rule-2);border-radius:18px;padding:22px;background:#11131799}.mq-bot-system{margin:0 0 18px;color:var(--mq-ink-2);font-size:15.5px}.mq-bot-system code,.mq-bot code{font-family:var(--mq-mono);font-size:.92em;color:var(--mq-ink);background:var(--mq-paper-2);padding:1px 6px;border-radius:5px}.mq-bot-choices{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.mq-chip-btn{font:500 14.5px var(--mq-sans);color:var(--mq-ink);background:var(--mq-paper-2);border:1px solid var(--mq-rule-2);border-radius:999px;padding:9px 14px;cursor:pointer}.mq-chip-btn.is-on,.mq-chip-btn:hover{border-color:var(--mq-ai)}.mq-bot-defences{display:grid;gap:10px;font-size:15px;color:var(--mq-ink-2)}.mq-bot-defences input{accent-color:var(--mq-ai);margin-right:8px}.mq-bot-chat{min-height:340px;display:flex;flex-direction:column;gap:12px}.mq-bot-empty{color:var(--mq-ink-3);margin:auto 0}.mq-msg{border-radius:14px;padding:12px 14px;max-width:92%;animation:mq-pop .3s var(--mq-ease)}.mq-msg small{display:block;font:500 11.5px var(--mq-mono);color:var(--mq-ink-3);margin-bottom:4px}.mq-msg p{margin:0}.mq-msg.is-in{background:var(--mq-paper-2);align-self:flex-start}.mq-msg.is-out{background:var(--mq-ai-soft);align-self:flex-end}.mq-msg.is-out.is-bad{background:var(--mq-bad-soft)}.mq-hidden-text{background:#ffd66629;color:#ffd666;border-radius:4px}.mq-hidden-note{margin-top:6px;color:#d9b85a!important;font-family:var(--mq-sans)!important;font-size:12.5px!important}.mq-bot-verdict{margin:4px 0 0;font-size:15px;color:var(--mq-ink-2)}.mq-bot-verdict.is-bad b{color:var(--mq-bad)}.mq-bot-verdict.is-good b{color:var(--mq-good)}.mq-bot-fine{margin:auto 0 0;padding-top:10px;font-size:13px;color:var(--mq-ink-3)}.mq-path{list-style:none;margin:0 0 40px;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;position:relative}.mq-path:before{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:linear-gradient(90deg,var(--mq-ai),rgba(62,207,142,.15))}.mq-path li{position:relative;padding:24px 14px 0 0;display:flex;flex-direction:column;gap:6px}.mq-path-dot{position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;background:var(--mq-ai);box-shadow:0 0 14px #3ecf8e8c}.mq-path li.is-soon .mq-path-dot{background:var(--mq-paper);border:1px solid var(--mq-ai);box-shadow:none}.mq-path b{font-family:var(--mq-display);font-weight:600;font-size:17px;letter-spacing:-.01em}.mq-path span{font-size:14px;color:var(--mq-ink-2);line-height:1.45}.mq-path small{font:500 12px var(--mq-mono);color:var(--mq-ink-3)}.mq-path li.is-soon small{color:var(--mq-ai)}.mq-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 28px;padding:26px 0;border-top:1px solid var(--mq-rule);border-bottom:1px solid var(--mq-rule)}.mq-facts div{margin:0}.mq-facts dt{font-family:var(--mq-display);font-weight:600;font-size:clamp(30px,3.6vw,46px);letter-spacing:-.03em;line-height:1}.mq-facts dd{margin:6px 0 0;color:var(--mq-ink-3);font-size:14.5px}.mq-also{color:var(--mq-ink-3);margin:0}.mq-also a,.mq-land .mq-link{color:var(--mq-ink-2)}.mq-land-end .mq-land-h2{max-width:14em}.mq-faq{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px;padding-top:28px;border-top:1px solid var(--mq-rule)}.mq-faq h3{font-size:16px;margin:0 0 6px;font-weight:600}.mq-faq p{margin:0;color:var(--mq-ink-2);font-size:15px}.mq-enrol-code{max-width:440px;margin:0 0 20px}@media (max-width: 900px){.mq-bot{grid-template-columns:1fr}.mq-path{grid-template-columns:1fr;gap:0;padding-left:26px}.mq-path:before{left:5px;right:auto;top:6px;bottom:6px;width:1px;height:auto;background:linear-gradient(180deg,var(--mq-ai),rgba(62,207,142,.15))}.mq-path li{padding:0 0 18px}.mq-path-dot{left:-26px;top:6px}.mq-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.mq-faq{grid-template-columns:1fr}}@media (max-width: 640px){.mq-land-screen{padding:40px 16px;min-height:auto}.mq-land-hero{min-height:calc(100dvh - 64px)}.mq-promises li{grid-template-columns:1fr;gap:8px}.mq-promise-n{display:none}.mq-promise-go{justify-self:start}.mq-gen{position:static}.mq-cands{left:0;right:0;width:auto;max-width:340px}.mq-nav .mq-wide{display:none}}@media (prefers-reduced-motion: reduce){.mq-land-glow,.mq-live-dot,.mq-caret,.mq-gen,.mq-cands,.mq-msg,.mq-cand-bar i{animation:none}html.mq-snap{scroll-snap-type:none}}.mq-enrol{max-width:760px;padding-top:32px}.mq-enrol-price{display:flex;flex-direction:column;gap:6px;margin:8px 0 26px;padding:22px 0;border-top:1px solid var(--mq-rule);border-bottom:1px solid var(--mq-rule)}.mq-enrol-amount{font-family:var(--mq-display);font-weight:600;font-size:48px;letter-spacing:-.03em;line-height:1}.mq-enrol-terms{color:var(--mq-ink-2)}.mq-enrol-list{margin:0 0 28px;padding:0;list-style:none;display:grid;gap:10px}.mq-enrol-list li{padding-left:26px;position:relative;color:var(--mq-ink-2)}.mq-enrol-list li:before{content:"";position:absolute;left:4px;top:.55em;width:10px;height:6px;border-left:2px solid var(--mq-ai);border-bottom:2px solid var(--mq-ai);transform:rotate(-45deg)}.mq-enrol-soon{color:var(--mq-ink-2);font-size:15.5px}.mq-enrol-free{margin-top:26px}
