@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/caveat-cyrillic-ext-600-normal-DDEJyoof.woff2)format("woff2"),url(/assets/caveat-cyrillic-ext-600-normal-BLVNc-Ct.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/caveat-cyrillic-600-normal-Ba_MyzgW.woff2)format("woff2"),url(/assets/caveat-cyrillic-600-normal-CqH0c_uj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/caveat-latin-ext-600-normal-DDJRD6ps.woff2)format("woff2"),url(/assets/caveat-latin-ext-600-normal-shBvSnoU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/caveat-latin-600-normal-zlTlWIYU.woff2)format("woff2"),url(/assets/caveat-latin-600-normal-DUjB8dgm.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:"Inter", system-ui, sans-serif;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-hand:"Caveat", "Comic Sans MS", cursive;--font-mono:"JetBrains Mono", ui-monospace, monospace;--board:#0b1411;--board-2:#102019;--board-3:#16291f;--grid:#8cc8a00f;--fg:#e9efe9;--muted:#a3b5aa;--rule:#24402f;--copper:#e8935a;--copper-hi:#ffc08f;--copper-lo:#8a4f2a;--copper-soft:#e8935a24;--solder:#cfd8d2;--led:#6ff2a8;--led-soft:#6ff2a829;--trace:#6cc3ff;--warn:#ffd166;--focus:#ffd166;--code-bg:#0e1a15;--radius:14px;--shadow:0 0 0 1px var(--rule), 0 18px 40px #00000059;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4.5rem;--measure:70ch;--wide:1120px;--ease:cubic-bezier(.2, .8, .2, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--board);scroll-padding-top:5rem}body{color:var(--fg);font:17px/1.7 var(--font-sans);background:radial-gradient(1200px 600px at 85% -10%, #e8935a1a, transparent 60%), linear-gradient(var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, var(--board);margin:0;overflow-x:hidden}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.1}h1{margin:0 0 var(--space-3);font-size:clamp(2.3rem,6vw,4rem);font-weight:700}h2{margin:var(--space-6) 0 var(--space-3);font-size:clamp(1.45rem,3.2vw,2rem);font-weight:700;position:relative}h2:before{content:"";background:linear-gradient(90deg, var(--copper), var(--copper-hi));border-radius:2px;width:42px;height:4px;margin-bottom:.7rem;display:block;box-shadow:0 0 12px #e8935a80}h3{font-size:1.15rem;font-weight:700}a{color:var(--copper-hi);text-underline-offset:.2em;text-decoration-thickness:1px;transition:color .15s}a:hover{color:#fff;text-decoration-thickness:2px}strong{color:#fff}code,pre,kbd{font-family:var(--font-mono);font-size:.86em}:not(pre)>code{background:var(--board-3);color:var(--copper-hi);border:1px solid var(--rule);border-radius:6px;padding:.12em .4em}pre{background:var(--code-bg);padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid var(--rule);line-height:1.6;overflow-x:auto;box-shadow:inset 0 0 0 1px #ffffff05}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}main:focus{outline:none}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--rule);vertical-align:top}th{font-family:var(--font-display);color:var(--copper-hi)}img,svg{max-width:100%}::selection{background:var(--copper);color:var(--board)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.hand{font-family:var(--font-hand);color:var(--copper-hi);font-size:1.45em;line-height:1}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.skip-link{left:var(--space-3);z-index:100;background:var(--copper);color:var(--board);padding:var(--space-2) var(--space-3);border-radius:8px;font-weight:600;position:absolute;top:-4rem}.skip-link:focus{top:var(--space-2)}.site-header{z-index:10;align-items:center;gap:var(--space-3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);background:#0b1411d1;padding:.7rem clamp(1rem,4vw,2.5rem);display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);color:var(--fg);align-items:center;gap:.55rem;margin-right:auto;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--board-3);border:1px solid var(--copper-lo);width:30px;height:30px;color:var(--copper);transition:transform .3s var(--ease);border-radius:8px;place-items:center;font-size:1.1rem;display:inline-grid;box-shadow:0 0 14px #e8935a40}.brand:hover .brand-mark{transform:rotate(-8deg)scale(1.08)}.brand-tld{color:var(--copper)}#site-nav ul{gap:2px;margin:0;padding:0;list-style:none;display:flex}#site-nav a{color:var(--muted);border-radius:8px;padding:.45rem .75rem;font-size:.95rem;font-weight:600;text-decoration:none;display:block;position:relative}#site-nav a:hover{color:var(--fg);background:var(--board-3)}#site-nav a[aria-current=page]{color:var(--copper-hi)}#site-nav a[aria-current=page]:after{content:"";background:var(--copper);height:2px;box-shadow:0 0 8px var(--copper);border-radius:2px;position:absolute;bottom:.15rem;left:.75rem;right:.75rem}.nav-toggle{font:600 .95rem var(--font-sans);border:1px solid var(--copper-lo);background:var(--board-3);min-height:44px;color:var(--fg);cursor:pointer;border-radius:10px;padding:.45rem .9rem;display:none}@media (width<=860px){.nav-toggle{display:inline-block}#site-nav{background:var(--board-2);border-bottom:1px solid var(--rule);padding:var(--space-2) var(--space-3) var(--space-3);display:none;position:absolute;top:100%;left:0;right:0}#site-nav.open{animation:drop .2s var(--ease);display:block}#site-nav ul{flex-direction:column}#site-nav a{padding:.8rem;font-size:1.05rem}}@keyframes drop{0%{opacity:0;transform:translateY(-6px)}}.page{max-width:var(--measure);padding:var(--space-5) clamp(1rem, 4vw, 2rem) var(--space-6);margin:0 auto}.page.home{max-width:var(--wide);padding-top:0}.page.home article>:not(.hero):not(.card-grid){max-width:var(--measure);margin-left:auto;margin-right:auto}.page.home .card-grid{max-width:var(--wide)}.page.demo-page{max-width:1020px}.page.demo-page article>:not(.demo){max-width:var(--measure)}.site-footer{border-top:1px solid var(--rule);color:var(--muted);padding:var(--space-5) clamp(1rem, 4vw, 2.5rem);text-align:center;background:#0003;font-size:.9rem}.site-footer p{max-width:70ch;margin:.35rem auto}.breadcrumbs ol{margin:0 0 var(--space-3);font:500 .85rem var(--font-mono);color:var(--muted);flex-wrap:wrap;gap:.4rem;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"→";color:var(--copper-lo);margin-right:.4rem}.breadcrumbs a{color:var(--muted)}.site-banner{background:var(--copper-soft);border-bottom:1px solid var(--copper-lo);min-height:44px;color:var(--fg);justify-content:center;align-items:center;gap:.75rem;padding:.35rem clamp(.75rem,4vw,2.5rem);font-size:.9rem;display:flex}.site-banner p{text-align:center;margin:0}.site-banner a{color:var(--copper-hi);font-weight:600}.banner-close{border:1px solid var(--copper-lo);width:36px;height:36px;color:var(--fg);cursor:pointer;background:0 0;border-radius:50%;flex:none;font-size:1.2rem;line-height:1}.banner-close:hover{border-color:var(--copper)}.banner-close:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.banner-dismissed .site-banner{display:none}@media (width<=480px){.site-banner{justify-content:space-between;font-size:.8rem}.site-banner p{text-align:left}}.lede{color:var(--muted);font-size:clamp(1.12rem,2.4vw,1.32rem);line-height:1.6}.button{font:700 .95rem var(--font-display);letter-spacing:.01em;background:linear-gradient(180deg, var(--copper-hi), var(--copper));color:#1a0d05;cursor:pointer;min-height:44px;box-shadow:0 0 0 1px var(--copper-lo), 0 6px 18px #e8935a40;transition:transform .15s var(--ease), box-shadow .15s var(--ease);border:0;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.6rem 1.15rem;text-decoration:none;display:inline-flex}.button:hover{box-shadow:0 0 0 1px var(--copper), 0 10px 26px #e8935a66;color:#1a0d05;transform:translateY(-2px)}.button:active{transform:translateY(0)scale(.98)}.button.secondary{background:var(--board-3);color:var(--fg);box-shadow:0 0 0 1px var(--rule)}.button.secondary:hover{box-shadow:0 0 0 1px var(--copper-lo);color:#fff}.card-grid{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));display:grid}.card{padding:var(--space-4);background:linear-gradient(180deg, var(--board-3), var(--board-2));border:1px solid var(--rule);border-radius:var(--radius);color:var(--fg);transition:transform .25s var(--ease), border-color .25s, box-shadow .25s;padding-top:3.2rem;text-decoration:none;display:block;position:relative;overflow:hidden}.card:before{content:"";background:var(--board);border:3px solid var(--copper);width:12px;height:12px;box-shadow:0 0 0 4px var(--copper-soft);border-radius:50%;transition:background .25s,box-shadow .25s;position:absolute;top:1.4rem;left:1.5rem}.card:after{content:"";background:linear-gradient(90deg, var(--copper), transparent);transform-origin:0;height:2px;transition:transform .4s var(--ease);position:absolute;top:calc(1.4rem + 5px);left:calc(1.5rem + 12px);right:1.5rem;transform:scaleX(.25)}.card:hover,.card:focus-visible{border-color:var(--copper-lo);color:var(--fg);transform:translateY(-4px);box-shadow:0 18px 40px #0006}.card:hover:before,.card:focus-visible:before{background:var(--led);box-shadow:0 0 14px var(--led)}.card:hover:after,.card:focus-visible:after{transform:scaleX(1)}.card h3{color:#fff;margin:0 0 .4rem;font-size:1.2rem}.card p{color:var(--muted);margin:0;font-size:.95rem}.card.ext h3:after{content:" ↗";color:var(--copper)}.status,.hint{color:var(--muted);font-family:var(--font-mono);font-size:.85rem}.table-scroll{overflow-x:auto}.related{margin-top:var(--space-6)}.related ul{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.related a{border:1px solid var(--rule);color:var(--fg);background:var(--board-2);border-radius:999px;padding:.45rem .9rem;text-decoration:none;display:inline-block}.related a:hover{border-color:var(--copper)}article ul li::marker{color:var(--copper)}.hero{padding:clamp(2rem, 7vw, 5rem) 0 var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:center;gap:clamp(1rem,4vw,3rem);display:grid}@media (width<=900px){.hero{grid-template-columns:1fr}}.hero h1{letter-spacing:-.035em;margin:.4rem 0 var(--space-3);font-size:clamp(2.6rem,7.2vw,5rem);line-height:.98}.hero h1 .copper{background:linear-gradient(100deg, var(--copper-hi), var(--copper) 60%, #c86a35);color:#0000;-webkit-background-clip:text;background-clip:text}.hero .kicker{font:700 .8rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--led);align-items:center;gap:.5rem;display:inline-flex}.hero .kicker:before{content:"";background:var(--led);width:8px;height:8px;box-shadow:0 0 10px var(--led);border-radius:50%;animation:2.4s infinite blink}@keyframes blink{50%{opacity:.35}}.hero .sub{color:var(--muted);max-width:36ch;font-size:clamp(1.1rem,2.3vw,1.3rem)}.hero .ctas{margin-top:var(--space-4);flex-wrap:wrap;gap:.7rem;display:flex}.hero .scribble{margin-top:var(--space-3);display:block;transform:rotate(-2deg)}.hero-art{background:radial-gradient(closest-side,#e8935a1a,#0000);border-radius:24px;position:relative}.hw-hero-svg{width:100%;height:auto;display:block;overflow:visible}.hw-tok{font:500 26px var(--font-mono);fill:var(--fg);transition:transform 1.1s var(--ease), opacity .8s, fill .3s;transform-box:fill-box}.hw-tok.tok-kw{fill:var(--muted)}.hw-tok.tok-hi,.hw-tok.tok-lo{fill:var(--copper-hi)}.hw-tok.on{fill:var(--led)}.hw-tok.off{opacity:.35}.rewiring .hw-tok:not(.tok-kw){transform:translate(var(--dx), var(--dy));opacity:0}.rewiring .hw-tok.tok-kw{opacity:0}.hw-net{opacity:0;transition:opacity .6s .5s}.wired .hw-net{opacity:1}.hw-wire{fill:none;stroke:var(--copper-lo);stroke-width:3px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1.2s var(--ease), stroke .3s, stroke-width .3s}.wired .hw-wire{stroke-dashoffset:0}.hw-wire.hot{stroke:var(--copper);stroke-width:4px;filter:drop-shadow(0 0 6px #e8935a99)}.hw-wire.neg{stroke-dasharray:1}.hw-flow{fill:none;stroke:var(--led);stroke-width:3px;stroke-linecap:round;stroke-dasharray:2 18;opacity:0}.hw-flow.hot{opacity:.9;animation:1s linear infinite flow}@keyframes flow{to{stroke-dashoffset:-40px}}.hw-node{transform-box:fill-box;transform-origin:50%;opacity:0;transition:transform .6s var(--ease), opacity .5s;transform:scale(.6)}.wired .hw-node{opacity:1;transform:scale(1)}.wired .hw-node:nth-of-type(2){transition-delay:.15s}.wired .hw-node:nth-of-type(3){transition-delay:.25s}.hw-body{fill:var(--board-3);stroke:var(--copper);stroke-width:2.5px;transition:fill .35s,stroke .35s}.hw-halo{fill:var(--led);opacity:0;transition:opacity .35s}.hw-node.lit .hw-halo{opacity:calc(var(--act,1) * .22)}.hw-node.lit .hw-body{stroke:var(--led)}.hw-label{font:600 14px var(--font-mono);fill:var(--muted)}.hw-val{font:700 19px var(--font-display);fill:#fff}.hw-note{font:600 24px var(--font-hand);fill:var(--copper-hi);opacity:0;transition:opacity .6s 1.2s}.wired .hw-note{opacity:.9}@media (prefers-reduced-motion:reduce){.hw-net,.hw-node,.hw-note{opacity:1;transform:none}.hw-wire{stroke-dashoffset:0}}.hw-hero-svg .hw-label{fill:var(--fg);font-size:16px}.hw-hero-svg .hw-val{font-size:22px}.demo{border:1px solid var(--rule);margin:var(--space-4) 0;box-shadow:var(--shadow);background:linear-gradient(#16291fd9,#102019e6);border-radius:22px;padding:clamp(1rem,3vw,2rem);position:relative}.demo:before,.demo:after{content:"";background:var(--board);border:2px solid var(--copper-lo);border-radius:50%;width:10px;height:10px;position:absolute;top:12px}.demo:before{left:12px}.demo:after{right:12px}.card-kicker{font:700 .72rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem}.demo-top{gap:var(--space-4);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch;display:grid}@media (width<=780px){.demo-top{grid-template-columns:1fr}}.code-card,.circuit-card{background:var(--board);border:1px solid var(--rule);padding:var(--space-3) var(--space-4);border-radius:16px;min-width:0}.big-code{margin:0 0 var(--space-3);box-shadow:none;background:0 0;border:0;padding:0;font-size:clamp(1rem,2.4vw,1.25rem)}.tok-a{color:var(--led);font-weight:700}.branch{color:var(--copper-hi);background:rgb(111 242 168/calc(var(--w,0) * .28));box-shadow:0 0 0 1px rgb(111 242 168/calc(var(--w,0) * .9));transition:all .25s var(--ease);border-radius:6px;padding:0 .35em;display:inline-block}.branch.active{color:#fff;transform:scale(1.08)}.results{gap:var(--space-3);display:flex}.results>div,.mini{background:var(--board-2);border:1px solid var(--rule);border-radius:12px;flex:1;min-width:0;padding:.5rem .8rem}.r-label{font:600 .75rem var(--font-mono);color:var(--muted);display:block}.r-big{font:700 clamp(1.8rem, 5vw, 2.6rem) var(--font-display);color:#fff;font-variant-numeric:tabular-nums;line-height:1.1;display:block}.r-big.js{color:var(--trace)}.r-mid{font:700 1.35rem var(--font-display);color:#fff;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;display:block}.circuit-svg{margin-top:-.5rem}.verdict{margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);border:1px solid;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:.2rem 1rem;transition:background .3s,border-color .3s;display:grid}.verdict:before{content:"✓";width:46px;height:46px;font:700 1.5rem var(--font-display);border-radius:50%;grid-row:span 2;place-items:center;display:grid}.verdict.exact{background:var(--led-soft);border-color:#6ff2a880}.verdict.exact:before{background:var(--led);color:var(--board);animation:pop .35s var(--ease);box-shadow:0 0 22px #6ff2a899}.verdict.blend{background:#ffd1661a;border-color:#ffd16673}.verdict.blend:before{content:"∿";background:var(--warn);color:var(--board)}@keyframes pop{0%{transform:scale(.6)}}.verdict-title{font:700 1.3rem var(--font-display);color:#fff;margin:0}.verdict.exact .verdict-title{color:var(--led)}.verdict.blend .verdict-title{color:var(--warn)}.verdict-body{color:var(--fg);margin:0;font-size:.98rem}.controls{align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.controls>*{min-width:0}.controls label,.knob label{font:600 .9rem var(--font-mono);color:var(--muted)}input[type=range]{accent-color:var(--copper);flex:200px;min-height:44px}.controls select,.num{font:500 .95rem var(--font-mono);border:1px solid var(--rule);background:var(--board);min-height:44px;color:var(--fg);border-radius:10px;max-width:100%;padding:.45rem .7rem}.num{width:6.5rem}.switch-field{align-items:center;gap:.55rem;display:inline-flex}.switch-field input{appearance:none;background:var(--board-3);border:1px solid var(--copper-lo);cursor:pointer;border-radius:13px;flex:none;width:46px;height:26px;margin:0;transition:background .2s;position:relative}.switch-field input:after{content:"";background:var(--solder);width:18px;height:18px;transition:transform .25s var(--ease), background .2s;border-radius:50%;position:absolute;top:3px;left:3px}.switch-field input:checked{background:var(--copper-soft);border-color:var(--copper)}.switch-field input:checked:after{background:var(--copper-hi);transform:translate(20px)}.switch-field label{cursor:pointer;color:var(--fg)!important}figure{margin:var(--space-3) 0 0}figcaption{color:var(--muted);margin-top:.4rem;font-size:.88rem}.key:before{content:"";vertical-align:middle;background:currentColor;border-radius:2px;width:18px;height:4px;margin-right:.35rem;display:inline-block}.k-r1{color:var(--trace)}.k-r2{color:var(--copper)}.k-ab{color:var(--led)}.k-target{color:var(--solder)}.k-exact{color:var(--muted)}.k-ghost{color:#6ff2a899}.chart{background:var(--board);border:1px solid var(--rule);touch-action:pan-y;border-radius:14px;width:100%;height:auto;display:block}.chart.draggable{cursor:ew-resize;touch-action:none}.chart .ax{stroke:var(--rule)}.chart .ax.zero{stroke:#3a5a47}.chart .tick{fill:var(--muted);font:12px var(--font-mono)}.c-r1,.c-r2,.c-ab{fill:none;stroke-width:3px;stroke-linecap:round}.c-r1{stroke:var(--trace);opacity:.8}.c-r2{stroke:var(--copper);opacity:.8;stroke-dasharray:7 6}.c-ab{stroke:var(--led);stroke-width:5px;filter:drop-shadow(0 0 6px #6ff2a880)}.int-dot{fill:var(--board);stroke:var(--led);stroke-width:2px}.blend-zone{fill:#ffd16612;opacity:.4;transition:opacity .3s}.blend-zone.show{opacity:1;fill:#ffd16624}.zone-label{font:600 18px var(--font-hand);fill:var(--warn)}.marker{stroke:var(--copper-hi);stroke-dasharray:3 5}.dot{stroke:var(--board);stroke-width:2px;transition:cy .2s var(--ease), cx .2s var(--ease)}.d-r1{fill:var(--trace)}.d-r2{fill:var(--copper)}.handle{transition:transform .2s var(--ease)}.handle-halo{fill:#6ff2a833;transform-box:fill-box;transform-origin:50%;animation:2s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.5;transform:scale(1.25)}}.handle-core{fill:var(--led);stroke:var(--board);stroke-width:3px}.handle-label{font:700 14px var(--font-mono);fill:#fff}.cmp-top{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.lamp{border:3px solid var(--copper-lo);width:92px;height:92px;font:700 2.4rem var(--font-display);color:var(--muted);transition:all .3s var(--ease);background:radial-gradient(circle at 35% 30%,#2b3d33,#0f1a15);border-radius:50%;flex:none;place-items:center;display:grid}.lamp.on{background:radial-gradient(circle at 35% 30%, #c9ffe0, var(--led) 45%, #1f9c5c);color:var(--board);border-color:var(--led);box-shadow:0 0 40px #6ff2a88c}.expr{font-family:var(--font-mono);overflow-wrap:anywhere;margin:0;font-size:clamp(1.3rem,4vw,2rem)}.cmp-expr{flex:1;min-width:0}.numline{margin-top:var(--space-3)}.numline .track{stroke:var(--copper-lo);stroke-width:6px;stroke-linecap:round}.numline .span{stroke:var(--copper);stroke-width:6px}.numline .tickmark{stroke:var(--rule);stroke-width:2px}.pin{transition:transform .15s var(--ease)}.pin .stem{stroke-width:2px}.pin .pad{stroke:var(--board);stroke-width:3px}.pa .pad,.pa .stem{fill:var(--led);stroke:var(--led)}.pb .pad,.pb .stem{fill:var(--trace);stroke:var(--trace)}.pin .pad{stroke:var(--board)}.pin-label{font:700 15px var(--font-mono);fill:#fff}.side-by-side{gap:var(--space-3);flex-wrap:wrap;display:flex}.side-by-side .mini{flex:200px}.cost{gap:.6rem;display:grid}.cost-row{color:var(--muted);border-radius:10px;grid-template-columns:minmax(0,12rem) minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.35rem .6rem;font-size:.92rem;display:grid}@media (width<=560px){.cost-row{grid-template-columns:1fr auto}.cost-row .bar{grid-area:2/1/auto/-1}}.cost-row.current{background:var(--board);color:var(--fg);box-shadow:0 0 0 1px var(--copper-lo)}.bar{background:var(--board);border:1px solid var(--rule);border-radius:6px;height:12px;overflow:hidden}.bar>span{height:100%;width:calc(var(--p,0) * 100%);background:linear-gradient(90deg, var(--copper), var(--copper-hi));transition:width .5s var(--ease);display:block}.cost-row output{font:600 .85rem var(--font-mono)}.fuzz-grid{margin-top:var(--space-3);grid-template-columns:repeat(25,1fr);gap:3px;display:grid}.fuzz-grid span{aspect-ratio:1;background:var(--board);border:1px solid var(--rule);border-radius:3px;transition:background .2s}.fuzz-grid span.ok{background:var(--led);border-color:var(--led);box-shadow:0 0 6px #6ff2a880}.fuzz-grid span.bad{background:#ff6b6b}.knobs{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:.4rem 1rem;display:grid}.knob{grid-template-columns:2.4rem 1fr 3rem;align-items:center;gap:.5rem;display:grid}.knob output{font:700 1rem var(--font-mono);color:#fff;text-align:right}.graph-wrap{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:minmax(0,1fr) 260px;display:grid}@media (width<=820px){.graph-wrap{grid-template-columns:1fr}}.graph-scroll{border:1px solid var(--rule);background:var(--board);border-radius:14px;max-height:72vh;overflow:auto}#graph{max-width:none;display:block}#graph .edge{stroke:var(--copper-lo);fill:none;stroke-width:2px;transition:stroke .25s}#graph .edge.neg{stroke-dasharray:5 4}#graph .edge.hot{stroke:var(--copper)}#graph .edge.sel{stroke:var(--warn);stroke-width:3px}#graph .edge-flow{fill:none;stroke:var(--led);stroke-width:2.5px;stroke-dasharray:2 14;opacity:0}#graph .edge-flow.hot{opacity:.85;animation:1.1s linear infinite flow}#graph .gnode{cursor:pointer;outline:none}#graph .node{fill:var(--board-3);stroke:var(--rule);stroke-width:1.5px;transition:stroke .2s,fill .2s}#graph .gnode.src .node{stroke:var(--copper)}#graph .gnode.reglu .node{stroke:var(--trace)}#graph .gnode.lit .node{fill:#183a29}#graph .gnode.out .node{stroke:var(--led);stroke-width:3px}#graph .gnode.sel .node,#graph .gnode:focus-visible .node{stroke:var(--warn);stroke-width:3px}#graph .node-label{fill:var(--muted);font:11px var(--font-mono);pointer-events:none}#graph .node-val{fill:#fff;font:700 12px var(--font-mono);pointer-events:none}.inspector{background:var(--board);border:1px solid var(--copper-lo);padding:var(--space-3);border-radius:14px;align-self:start;font-size:.92rem;position:sticky;top:5rem}.inspector p{overflow-wrap:anywhere;margin:0 0 .5rem}.insp-name{font:700 1rem var(--font-display);color:var(--copper-hi)}.insp-formula{font-family:var(--font-mono)}.insp-val{font:700 1.2rem var(--font-display);color:var(--led)}.ops-details{margin-top:var(--space-3)}.ops-details summary{cursor:pointer;color:var(--copper-hi);align-items:center;min-height:44px;font-weight:600;display:flex}.ops{padding-left:2rem;font-size:.86rem}.ops li{overflow-wrap:anywhere;margin:.25rem 0}.ops .tag{color:var(--muted);margin-left:.4rem;font-size:.8rem}.buttons{align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;flex-wrap:wrap;display:flex}.fit-line{fill:none;stroke:var(--led);stroke-width:4px;filter:drop-shadow(0 0 6px #6ff2a880)}.exact-line{fill:none;stroke:var(--muted);stroke-width:2px;stroke-dasharray:6 6;opacity:.7}.ghost{fill:none;stroke:var(--led);stroke-width:2px}.target-dot{fill:var(--solder);stroke:var(--board);stroke-width:2px}.err{stroke:var(--warn);stroke-width:1.5px;opacity:.7}.gauges{gap:var(--space-2);margin:var(--space-3) 0;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));display:grid}.gauge{background:var(--board);border:1px solid var(--rule);border-radius:12px;padding:.6rem .8rem}.gauge-track{background:var(--board-3);border-radius:4px;height:8px;margin:.4rem 0;display:block;position:relative}.gauge-fill{width:calc(var(--p,0) * 100%);background:linear-gradient(90deg, var(--copper), var(--copper-hi));border-radius:4px;position:absolute;top:0;bottom:0;left:0}.gauge-exact{width:2px;top:-4px;bottom:-4px;left:calc(var(--e,0) * 100%);background:var(--muted);position:absolute}.spark-svg{width:100%;height:30px;display:block}.spark{fill:none;stroke:var(--led);stroke-width:1.5px}.chart.small{height:auto}.loss-line{fill:none;stroke:var(--copper-hi);stroke-width:2.5px}.loss-area{fill:#e8935a26}.embed{background:var(--board);border:0;border-radius:14px;width:100%;height:320px;display:block}.demo-top{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.circuit-svg .hw-label{fill:var(--fg);font-size:17px}.circuit-svg .hw-val{font-size:24px}.circuit-svg .hw-note{font-size:30px}.demo-soft .a-controls{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.demo-soft .a-controls .switch-field{grid-column:1/-1}.demo-soft .controls .branch-inputs{display:contents}.lesson{--bad:#ff7b7b;--js:var(--trace);--hw:var(--copper);--mlp:var(--led);--ease-out:cubic-bezier(.16, 1, .3, 1)}.page.demo-page article>.lesson,.page.home article>.lesson{max-width:none!important}.lesson-bar{justify-content:flex-end;display:flex}.sound{font:600 .8rem var(--font-mono);color:var(--muted);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:999px;min-height:36px;padding:.35rem .8rem}.sound[aria-pressed=true]{color:var(--led);border-color:var(--led)}.step{border-top:1px solid var(--rule);padding:clamp(2.5rem,7vw,5rem) 0;scroll-margin-top:72px}.lesson>.step:first-of-type,.home-lesson .step{border-top:0;padding-top:1rem}.step.enter{animation:step-in .7s var(--ease-out) both}@keyframes step-in{0%{opacity:0;transform:translateY(24px)}}.step-n{font:600 .78rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--copper);margin:0 0 .6rem}.step h2{outline:none;max-width:24ch;margin:0 0 .8rem;font-size:clamp(1.7rem,4.4vw,2.6rem);line-height:1.12}.step h2:before{display:none}.step .say{color:var(--fg);max-width:56ch;margin:0 0 1.6rem;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.55}.step .aside{color:var(--muted);max-width:60ch;font-size:.95rem}.duo{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,2.2rem);display:grid}@media (width<=860px){.duo{grid-template-columns:1fr}}.code{background:var(--code-bg);border:1px solid var(--rule);white-space:pre;color:var(--solder);border-radius:16px;margin:0;padding:1.1rem 1.2rem;font-size:clamp(.78rem,1.5vw,.95rem);line-height:1.75;overflow-x:auto}.code.small{font-size:clamp(.7rem,1.2vw,.82rem)}.code.xs{white-space:pre;padding:.7rem;font-size:.68rem}.code .k{color:#1a0e05;background:var(--copper-hi);border-radius:5px;padding:0 .25em;font-weight:700;transition:background .3s}.code.live .k.moved{background:var(--led);box-shadow:0 0 14px #6ff2a880}.code .note{color:var(--led);font-style:normal}.code .note.off{color:var(--muted)}.code .note.ans{color:var(--copper-hi);font-weight:700}.code .dim{opacity:.55}.scene-wrap{position:relative}.scene{border:1px solid var(--rule);background:var(--board);border-radius:18px;width:100%;height:auto;display:block}.sc-bg{fill:#0d1813}.sc-grid{stroke:#8cc8a012}.sc-tick{fill:var(--muted);font:10px var(--font-mono)}.sc-floor{fill:#1c3326}.sc-wall{fill:#15271d}.sc-shelf rect:first-child{fill:var(--copper)}.sc-bracket{fill:var(--copper-lo)}.sc-shelf-t{fill:var(--copper-hi);font:600 11px var(--font-mono)}.sc-meter-bg{fill:#16291f;stroke:var(--rule)}.sc-meter-fill{fill:var(--copper);transition:y .25s,height .25s}.sc-meter-t{fill:var(--copper-hi);font:700 11px var(--font-mono)}.sc-fur{fill:#f4efe6}.sc-tail{fill:none;stroke:#f4efe6;stroke-width:5px;stroke-linecap:round}.sc-eye{fill:#0b1411}.sc-say{font:700 18px var(--font-display)}.sc-say.land{fill:var(--led)}.sc-say.short,.sc-say.long{fill:var(--bad)}.shelf-ctl{font:600 .9rem var(--font-mono);color:var(--fg);grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;margin-top:1rem;display:grid}.shelf-ctl input{width:100%;accent-color:var(--copper);height:44px}.shelf-ctl output{text-align:right;min-width:4.5em;color:var(--copper-hi);font-size:1.05rem}.next,.button.primary{font:700 1.05rem var(--font-display);cursor:pointer;border-radius:999px;min-height:52px;padding:.9rem 1.5rem}.next{background:var(--copper);color:#1a0e05;border:0;margin-top:2rem;animation:2.6s ease-in-out infinite nudge;box-shadow:0 10px 30px #e8935a40}.next:hover{background:var(--copper-hi)}.button.primary:disabled{opacity:.75;cursor:default}@keyframes nudge{0%,78%,to{transform:none}86%{transform:translateY(-4px)}}.continue{margin-top:2rem}.predict{border:1px dashed var(--copper-lo);background:#e8935a0a;border-radius:18px;max-width:640px;margin:0 0 1.6rem;padding:1.1rem 1.2rem 1.2rem}.predict legend{font:700 1.1rem var(--font-display);color:#fff;padding:0 .4rem}.choices{flex-wrap:wrap;gap:.6rem;margin-top:.6rem;display:flex}.choice{font:600 1rem var(--font-display);color:var(--fg);background:var(--board-3);border:1px solid var(--rule);cursor:pointer;border-radius:999px;min-height:48px;padding:.7rem 1.2rem;transition:transform .15s,border-color .15s}.choice:hover{border-color:var(--copper);transform:translateY(-2px)}.predict.picked .choice{cursor:default;transform:none}.predict.picked .choice:not([aria-pressed=true]){opacity:.45}.choice[aria-pressed=true]{background:var(--copper);color:#1a0e05;border-color:var(--copper)}.verdict-line{min-height:1.4em;margin:.8rem 0 0}.verdict-line .yes{color:var(--led)}.verdict-line .no{color:var(--warn)}.reveal{animation:step-in .6s var(--ease-out) both}.net{border:1px solid var(--rule);background:var(--board);border-radius:18px;width:100%;height:auto;display:block}.n-edge{fill:none;stroke:#6cc3ff38;stroke-width:1px}.n-node circle{fill:rgb(232 147 90/calc(.18 + var(--a,0) * .82));stroke:var(--copper);stroke-width:1px;filter:drop-shadow(0 0 calc(var(--a,0) * 6px) #e8935acc)}.n-node circle.src{fill:rgb(108 195 255/calc(.25 + var(--a,0) * .75));stroke:var(--trace)}.n-label{fill:var(--fg);font:600 10px var(--font-mono)}.net.morph .n-node{opacity:0;transform-box:fill-box;transition:opacity .5s var(--ease-out), transform .8s var(--ease-out);transition-delay:calc(var(--d) * 45ms);transform:translate(-180px)scale(.4)}.net.morph .n-edges{opacity:0;transition:opacity .6s .5s}.net.morph.in .n-node{opacity:1;transform:none}.net.morph.in .n-edges{opacity:1}.answers{text-align:center;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:.5rem 1.5rem;margin:1.6rem 0 .4rem;display:flex}.answers .who{font:600 .78rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em;display:block}.who.js{color:var(--js)}.who.hw{color:var(--hw)}.answers b{font:700 clamp(2.2rem, 7vw, 3.6rem) var(--font-display);color:#fff;font-variant-numeric:tabular-nums}.answers .eq{font:700 clamp(2rem, 6vw, 3rem) var(--font-display);color:var(--led)}.answers .eq[data-same=false]{color:var(--bad)}.race{flex-wrap:wrap;align-items:baseline;gap:.3rem 1rem;display:flex}.big{font:700 clamp(3rem, 11vw, 6rem) var(--font-display);color:var(--led);font-variant-numeric:tabular-nums;line-height:1}.race .of,.tally span:not(.big){color:var(--fg);font-size:1.15rem}.tiles{width:100%;height:auto;image-rendering:pixelated;border-radius:10px;margin-top:1rem;display:block}.tally{align-items:baseline;gap:.6rem;margin:.8rem 0 0;display:flex}.tally .big{font-size:clamp(2.4rem,8vw,4rem)}[data-reveal="4"] .tally .big{color:var(--bad)}.nudges{font:500 .9rem var(--font-mono);color:var(--muted)}.learned{border-left:3px solid var(--led);max-width:62ch;margin-top:1.2rem;padding:.2rem 0 .2rem 1.1rem}.learned h3{margin:0 0 .4rem;font-size:1.15rem}.learned ul{margin:0 0 .6rem;padding-left:1.1rem}.learned b{color:var(--led)}.vs{grid-template-columns:1fr 1fr;gap:clamp(.8rem,2.5vw,1.6rem);display:grid}@media (width<=760px){.vs{grid-template-columns:1fr}}.side{border:1px solid var(--rule);border-top:3px solid var(--c);background:#0003;border-radius:18px;min-width:0;padding:1rem 1.1rem}.side.hw{--c:var(--hw)}.side.mlp{--c:var(--mlp)}.side h3{margin:0 0 .6rem;font-size:1.2rem}.mini{background:var(--code-bg);border-radius:12px;width:100%;height:auto;display:block}.nogo{fill:#ff7b7b1a}.nogo-t{fill:var(--bad);font:600 9px var(--font-mono)}.mini-ln{fill:none;stroke:var(--c);stroke-width:2.5px}.bad-dot{fill:var(--bad)}.pt{fill:#fff;stroke:var(--board);stroke-width:2px}.metric{align-items:baseline;gap:.5rem;margin:.7rem 0 0;font-size:1.05rem;display:flex}.metric .big{font-size:clamp(2.2rem,6vw,3.2rem)}.metric.sm{color:var(--muted);font-size:.95rem}.metric.sm b{color:var(--fg)}.side .code.xs{margin-top:.7rem}.heat{background:var(--code-bg);border-radius:10px;grid-template-columns:repeat(16,1fr);gap:2px;margin-top:.7rem;padding:.5rem;display:grid}.heat i{aspect-ratio:1;background:var(--mlp);opacity:calc(.15 + var(--m,0) * .85);border-radius:2px;display:block}.heat i[data-sign=\-]{background:var(--bad)}.recap h2{max-width:30ch}.recap .ctas{flex-wrap:wrap;gap:.6rem;display:flex}.fineprint{border:1px solid var(--rule);max-width:72ch;color:var(--muted);border-radius:14px;margin:3rem 0 0;padding:0 1.1rem;font-size:.92rem}.fineprint summary{cursor:pointer;min-height:52px;color:var(--fg);align-items:center;font-weight:600;display:flex}.term{display:inline;position:relative}.term-btn{font:inherit;color:inherit;border:0;border-bottom:2px dotted var(--copper);cursor:help;background:0 0;padding:0}.term-tip{z-index:5;border:1px solid var(--copper-lo);width:min(280px,80vw);font:500 .9rem/1.45 var(--font-sans);color:var(--fg);opacity:0;pointer-events:none;background:#1d3328;border-radius:12px;padding:.7rem .85rem;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-4px);box-shadow:0 12px 30px #00000073}.term:hover .term-tip,.term-btn:focus-visible+.term-tip,.term-btn:focus+.term-tip{opacity:1;transform:none}.hero.hero-lesson{min-height:0;padding:clamp(1.5rem,5vw,3.5rem) 0 0;display:block}.hero.hero-lesson h1{max-width:16ch;margin:.3rem 0 .8rem;font-size:clamp(2.3rem,6.5vw,4.4rem)}.hero.hero-lesson .sub{max-width:44ch;font-size:clamp(1.1rem,2.2vw,1.35rem)}.home-lesson{margin-top:1rem}@media (width<=860px){.duo>.vis{order:-1}}@media (prefers-reduced-motion:reduce){.next{animation:none}.net.morph .n-node,.net.morph .n-edges{transition:none}}.trace{font:500 .92rem/1.7 var(--font-mono);color:var(--muted);margin:.9rem 0 0}.trace b{color:var(--fg)}.trace b.on{color:var(--led)}.trace b.off{color:var(--muted)}.trace b.ans{color:var(--copper-hi);font-size:1.05rem}[data-wrap="4"]{max-width:620px}.n-label{font-size:12px}@media (width<=600px){.hero.hero-lesson{padding-top:.6rem}.hero.hero-lesson .kicker{display:none}.hero.hero-lesson h1{margin-bottom:.4rem;font-size:2rem}.hero.hero-lesson .sub{margin-bottom:0;font-size:1rem}.home-lesson .step-n{display:none}.step h2{font-size:1.6rem}.code{padding:.9rem;font-size:.74rem}}.cap{font:600 .82rem var(--font-mono);color:var(--muted);margin:.9rem 0 0}.side .cap+.code.xs,.side .cap+.heat{margin-top:.4rem}.metric .big{color:var(--led)}.metric.alarm .big{color:var(--bad)}.hero.hero-lesson{padding-top:clamp(.6rem,2.5vw,1.6rem)}.hero.hero-lesson h1{font-size:clamp(2rem,5vw,3.5rem)}.home-lesson .step{padding-top:.4rem}.home-lesson .step h2{font-size:clamp(1.5rem,3vw,2rem)}.uc{gap:var(--space-4);display:grid}.uc-step{border-top:1px solid var(--rule);padding-top:var(--space-4)}.uc-h{margin:0 0 var(--space-3);align-items:center;gap:.6rem;font-size:1.35rem;display:flex}.uc-n{background:var(--copper-soft);width:1.8rem;height:1.8rem;color:var(--copper-hi);border-radius:50%;flex:none;place-items:center;font-size:1rem;display:inline-grid}.rk-board{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=860px){.rk-board{grid-template-columns:minmax(0,1fr)}}.rk-col{min-width:0}.rk-code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.82rem}.rk-code .tok-a{color:var(--copper-hi);font-weight:600}.rk-code .tick{animation:rk-tick .5s var(--ease)}@keyframes rk-tick{0%{background:var(--copper-soft)}to{background:0 0}}.rk-code .rule,.rk-diff .rule{color:var(--led)}.rk-rules{margin:var(--space-3) 0 0;gap:.35rem;padding:0;list-style:none;display:grid}.rk-rules li{border-bottom:1px dashed var(--rule);justify-content:space-between;gap:1rem;padding-bottom:.3rem;display:flex}.rk-rules output{font-family:var(--font-mono);font-weight:600}.ok{color:var(--led)}.bad{color:var(--warn)}.rk-list{counter-reset:rk;gap:4px;margin:0;padding:0;list-style:none;display:grid}.rk-list li{counter-increment:rk;grid-template-columns:2.1rem minmax(0,1fr);align-items:center;display:grid}.rk-list li:before{content:counter(rk);font-family:var(--font-mono);color:var(--muted);text-align:right;padding-right:.5rem;font-size:.85rem}.rk-list li.cut{border-top:2px dashed var(--copper);margin-top:4px;padding-top:4px}.rk-item{border:1px solid var(--rule);background:var(--board-2);width:100%;min-height:36px;color:var(--fg);font:inherit;text-align:left;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.3rem .6rem;font-size:.9rem;display:flex}.rk-item.static{cursor:default}button.rk-item:hover{border-color:var(--copper)}.rk-item:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.rk-item.pinned{border-color:var(--led)}.rk-item.oos{opacity:.85}.rk-item.oos em{color:var(--warn);font-size:.78rem;font-style:normal}.rk-name{overflow-wrap:anywhere;min-width:0}.rk-f{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;font-size:.72rem}.clicked .rk-item{background:var(--copper-soft)}.rk-list.small .rk-item{min-height:28px;font-size:.82rem}.rk-foil{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=760px){.rk-foil{grid-template-columns:minmax(0,1fr)}.rk-f{display:none}}.rk-diff .del{color:#ff9a8a}.rk-diff .add{color:var(--led)}.reveal{background:var(--board-2);border-left:3px solid var(--copper);padding:var(--space-3);border-radius:8px}.takeaway{border:1px solid var(--copper-lo);background:var(--copper-soft);padding:var(--space-3);border-radius:var(--radius);font-size:1.15rem}.uc-fine{font-size:.82rem}.uc-cards{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));display:grid}.uc-cards .card h3{font-size:1.15rem}.page article>.uc,.page article>.uc-home-wrap{max-width:var(--wide)!important}@media (prefers-reduced-motion:reduce){.rk-code .tick{animation:none}}@media (width<=860px){.rk-board>.rk-col:last-child{order:-1}}@media (width<=600px){.hero-uc .sub{font-size:.95rem!important}.uc-home .rk-list li:nth-child(n+11){display:none}.uc-home.show-all .rk-list li{display:grid}}.rk-train{margin:0 0 .3rem}.rk-status{margin:0 0 var(--space-3);min-height:1.4em}.hero.hero-uc h1{max-width:22ch;font-size:clamp(2rem,4.6vw,3.4rem)!important}.hero.hero-uc .sub{max-width:60ch}.rk-wline{color:var(--copper-hi);margin:0 0 .5rem;font-size:.78rem;display:none}@media (width<=860px){.rk-wline{display:block}}.gs-embed{border:1px solid var(--rule);border-radius:var(--radius);background:#f3eee4;width:100%;height:min(1100px,150vh)}.ly-screen-wrap{border:1px solid var(--rule);background:var(--board);border-radius:10px;position:relative;overflow:hidden}.ly-screen{transform-origin:0 0;box-sizing:border-box;flex-wrap:wrap;align-content:flex-start;gap:12px;padding:16px;display:flex}.ly-card{box-sizing:border-box;background:var(--board-3);border:2px solid var(--rule);border-radius:12px;align-content:start;gap:4px;min-height:110px;padding:12px 22px 12px 14px;font-size:22px;display:grid;position:relative}.ly-card.mine{border-color:var(--copper)}.ly-card.bad{background:#ff786424;border-color:#ff8a7a}.ly-t{font-weight:600}.ly-imp,.ly-w{color:var(--muted);font-family:var(--font-mono);font-size:17px}.ly-card.bad .ly-w{color:#ffb4a8}.ly-handle{cursor:ew-resize;background:linear-gradient(90deg, transparent 40%, var(--copper) 40% 60%, transparent 60%);touch-action:none;border-radius:0 12px 12px 0;width:22px;position:absolute;top:0;bottom:0;right:-2px}.ly-handle:focus-visible{outline:4px solid var(--focus)}.ly-card{flex:none}.ly-screen{outline:2px dashed var(--muted);outline-offset:-1px;background:var(--board-2)}.ph-svg{background:var(--board);border:1px solid var(--rule);border-radius:10px;width:100%;height:auto}.ph-floor{stroke:var(--muted);stroke-width:2px}.ph-dot{fill:var(--led)}.ph-sim{stroke:var(--copper);stroke-width:2.5px}.ph-mlp{stroke:var(--trace);stroke-width:2px;stroke-dasharray:6 4}.ph-real{stroke:var(--led);stroke-width:2px;stroke-dasharray:2 4}.ph-ball{fill:var(--copper-hi)}.ph-k{font-family:var(--font-mono);margin-right:.8rem}.ph-k.k1,.ph-k.k4{color:var(--led)}.ph-k.k2{color:var(--copper-hi)}.ph-k.k3{color:var(--trace)}#rk-list:empty{min-height:808px}#rk-code:empty,#ly-code:empty,#ph-code:empty{min-height:12.5em;display:block}@media (width<=600px){.uc-home #rk-list:empty{min-height:400px}}.co-ui{width:100%;height:auto;margin:var(--space-3) 0;border-radius:14px}.co-picks{gap:var(--space-3);margin:var(--space-2) 0;grid-template-columns:1fr 1fr;display:grid}.co-pick{align-items:center;gap:.5rem;margin:.3rem 0;display:flex}.co-pick input{border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:6px;width:44px;height:32px;padding:0}.co-pick input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.co-presets .button[aria-pressed=true]{border-color:var(--copper);color:var(--copper-hi)}.co-table table{width:100%;font-size:.85rem}.co-table td{font-family:var(--font-mono);white-space:nowrap}.co-warn{color:#000;background:#ffd166;border-radius:4px;padding:0 .35rem;font-weight:700;display:inline-block}.rk-code,.rk-code code{overflow-wrap:anywhere;max-width:100%;white-space:pre-wrap!important}.co-picks{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rk-rules .r-label{white-space:normal;min-width:0}.rk-rules output{flex:none}.co-presets{flex-wrap:wrap}.uc{grid-template-columns:minmax(0,1fr)}.uc-step{min-width:0}.rk-diff{max-width:100%;overflow-x:auto}
