@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-vietnamese-500-normal-DjeaNLFD.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-500-normal-CsrJDWc5.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-ext-500-normal-yA5ONLQ9.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-500-normal-B1RE8WP7.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-500-normal-BgYH2mbd.woff2)format("woff2"),url(/assets/barlow-condensed-latin-500-normal-HIEiP5Ov.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-vietnamese-600-normal-A5AYRdjN.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-600-normal-CNlPk46_.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-600-normal-Clv9cIcR.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-700-normal-DhIzd8Tb.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.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{--bg:#e9edf1;--panel:#fff;--panel-2:#f4f6f8;--ink:#14202b;--muted:#566472;--line:#d3dae2;--grid:#e3e8ed;--accent:#1d5bbf;--accent-soft:#dbe7fa;--accent-ink:#fff;--good:#19784a;--good-bg:#e0f2e8;--warn:#a35f00;--warn-bg:#fbefd9;--bad:#c0352f;--bad-bg:#fbe3e1;--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#008300;--s7:#4b2fb8;--s8:#e34948;--region:#1baf7a21;--f-display:"Barlow Condensed", "Arial Narrow", sans-serif;--f-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d1318;--panel:#141c23;--panel-2:#18222b;--ink:#e3eaf1;--muted:#93a2b1;--line:#26333f;--grid:#1f2a34;--accent:#5b9bff;--accent-soft:#1a2c47;--accent-ink:#0b1220;--good:#45c07f;--good-bg:#12301f;--warn:#e3a53c;--warn-bg:#33270f;--bad:#f0706a;--bad-bg:#3a1a19;--s1:#3987e5;--s2:#d95926;--s3:#2fbf8a;--s4:#c98500;--s5:#d55181;--s6:#008300;--s7:#b3a7ff;--s8:#e66767;--region:#199e7029;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0d1318;--panel:#141c23;--panel-2:#18222b;--ink:#e3eaf1;--muted:#93a2b1;--line:#26333f;--grid:#1f2a34;--accent:#5b9bff;--accent-soft:#1a2c47;--accent-ink:#0b1220;--good:#45c07f;--good-bg:#12301f;--warn:#e3a53c;--warn-bg:#33270f;--bad:#f0706a;--bad-bg:#3a1a19;--s1:#3987e5;--s2:#d95926;--s3:#2fbf8a;--s4:#c98500;--s5:#d55181;--s6:#008300;--s7:#b3a7ff;--s8:#e66767;--region:#199e7029;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:15px/1.55 var(--f-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--f-display);letter-spacing:.01em;text-wrap:balance;margin:0;line-height:1.15}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono,output,.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.btn{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:6px;padding:6px 11px;font-size:13px}.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed;border-color:var(--line)}.seg{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.seg button{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:5px;padding:5px 9px;font-size:13px}.seg button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.seg button:disabled{opacity:.45;cursor:not-allowed}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.hint{color:var(--muted);margin:3px 0 0;font-size:12.5px;line-height:1.4}input[type=range]{width:100%;accent-color:var(--accent);height:22px;margin:8px 0 2px}.eq{font:14px/1.5 var(--f-mono);background:var(--panel-2);border:1px solid var(--line);white-space:nowrap;border-radius:6px;margin:8px 0 12px;padding:9px 12px;overflow-x:auto}.eq .c{color:var(--muted);font-family:var(--f-body);white-space:normal;margin-top:4px;font-size:12.5px;display:block}.top{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 16px;display:flex}.brand{align-items:baseline;gap:10px;margin-right:auto;display:flex}.brand h1{text-transform:uppercase;letter-spacing:.04em;font-size:22px;font-weight:700}.brand span{color:var(--muted);font-size:13px}.top .seg{margin-top:0}.hud{z-index:20;background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;box-shadow:0 2px 8px #0000000d}.hud-row{scrollbar-width:thin;gap:8px;padding:8px 16px;display:flex;overflow-x:auto}.chip{border:1px solid var(--line);border-left:4px solid var(--line);background:var(--panel-2);border-radius:6px;flex:none;min-width:118px;padding:5px 9px 6px}.chip.good{border-left-color:var(--good)}.chip.warn{border-left-color:var(--warn)}.chip.bad{border-left-color:var(--bad)}.chip .l{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;gap:6px;font-size:11px;display:flex}.chip .v{font:500 18px/1.2 var(--f-mono);font-variant-numeric:tabular-nums}.chip .v small{color:var(--muted);margin-left:3px;font-size:11px}.chip .s{color:var(--muted);justify-content:space-between;gap:6px;font-size:11px;display:flex}.chip .d{font-family:var(--f-mono)}.d.up{color:var(--good)}.d.down{color:var(--bad)}.d.flat{color:var(--muted)}.sicon{font-weight:700}.good .sicon{color:var(--good)}.warn .sicon{color:var(--warn)}.bad .sicon{color:var(--bad)}.callout{border-radius:8px;padding:10px 12px;font-size:14px}.callout.good{background:var(--good-bg)}.callout.warn{background:var(--warn-bg)}.callout.bad{background:var(--bad-bg)}.callout.info{background:var(--accent-soft)}.callout b{font-weight:600}.strip-note{margin:8px 16px 0}.banner{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 16px 0;display:flex}.toast{background:var(--ink);color:var(--bg);z-index:50;border-radius:8px;align-items:center;gap:12px;max-width:min(560px,100% - 32px);padding:10px 14px;font-size:13.5px;display:none;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 26px #00000040}.toast.on{display:flex}.toast .tl{font-family:var(--f-mono);gap:2px;font-size:12.5px;display:grid}.toast .tl b{font-family:var(--f-body);font-size:13.5px}.toast button{cursor:pointer;color:inherit;background:0 0;border:1px solid;border-radius:5px;flex:none;padding:4px 9px}.shell{grid-template-columns:232px minmax(0,1fr);gap:0;min-width:0;max-width:1480px;margin:0 auto;display:grid}.rail{align-self:start;min-width:0;padding:16px 10px 16px 16px;position:sticky;top:74px}.rail ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.rail a{color:var(--ink);border-radius:6px;grid-template-columns:26px 1fr 10px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;text-decoration:none;display:grid}.rail a:hover{background:var(--panel)}.rail a[aria-current=page]{background:var(--panel);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.rail .n{font:600 15px var(--f-display);color:var(--muted)}.dot{background:var(--line);border-radius:50%;width:9px;height:9px}.dot.good{background:var(--good)}.dot.warn{background:var(--warn)}.dot.bad{background:var(--bad)}.rail .legend-note{color:var(--muted);padding:12px 10px 0;font-size:12px;line-height:1.45}main{align-content:start;gap:16px;min-width:0;padding:16px;display:grid}.step-head{gap:6px;display:grid}.eyebrow{font:600 13px var(--f-display);text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.step-head h2{font-size:34px;font-weight:700}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.rail{padding:8px 0 0;position:static}.rail ol{gap:4px;padding:0 16px 4px;display:flex;overflow-x:auto}.rail a{white-space:nowrap;background:var(--panel);border:1px solid var(--line);grid-template-columns:auto auto 8px;padding:6px 10px}.rail a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--accent)}.rail .legend-note{display:none}.step-head h2{font-size:28px}}@media (width<=480px){main{padding:12px}.brand span{display:none}}.update-bar{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 16px;display:flex}.update-bar span{margin-right:auto;font-weight:600}.saving-off{background:var(--panel);border-bottom:1px solid var(--line);color:var(--warn);margin:0;padding:6px 16px;font-size:13px}.file-panel ul{margin:4px 0 0;padding-left:18px}.brand{flex-wrap:wrap;row-gap:2px}.brand-link{color:var(--ink);font:600 15px var(--f-display);letter-spacing:.04em;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.brand-link:hover{color:var(--accent)}.brand-link img{border-radius:4px;display:block}main:focus{outline:none}.notice-wrap{max-width:1480px;margin:0 auto;padding:12px 16px 0}.notice{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px 20px;padding:12px 16px;display:flex}.notice>div:first-child{flex:320px;min-width:0}.notice h2{text-transform:uppercase;letter-spacing:.06em;color:var(--warn);font-size:17px;font-weight:700}.notice p{margin:2px 0 0}.notice .actions,.error-screen .actions{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.notice a,.prose a,.foot a{color:var(--accent);text-underline-offset:2px}.prose{gap:10px;max-width:68ch;display:grid}.prose h2{font-size:34px;font-weight:700}.prose h3{margin-top:10px;font-size:20px;font-weight:600}.prose p{margin:0}.prose code{font-family:var(--f-mono);background:var(--panel-2);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:4px;padding:0 4px}.fine{color:var(--muted);font-size:13px}.error-screen{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--bad);border-radius:8px;gap:12px;max-width:68ch;padding:16px;display:grid}.error-screen h2{font-size:28px;font-weight:700}.error-screen p{margin:0}.error-page{max-width:1480px;margin:0 auto;padding:24px 16px}.error-page h1{text-transform:uppercase;letter-spacing:.04em;font-size:22px;font-weight:700}.foot{border-top:1px solid var(--line);max-width:1480px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 20px;margin:24px auto 0;padding:14px 16px 24px;font-size:13px;display:flex}.foot p{margin:0}.foot ul{flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}@media (width<=480px){.prose h2{font-size:28px}.notice-wrap{padding:10px 12px 0}}[data-trace]{cursor:pointer}.stat[data-trace] .v,.chip[data-trace] .v,span[data-trace]{-webkit-text-decoration:underline dotted var(--muted);text-decoration:underline dotted var(--muted);text-underline-offset:4px}.stat[data-trace]:hover .v,.chip[data-trace]:hover .v{color:var(--accent)}.chip[data-trace]:focus-visible,.stat[data-trace]:focus-visible,span[data-trace]:focus-visible{outline:2px solid var(--accent)}.stats{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;display:grid}.stat{border-left:2px solid var(--line);padding:2px 0 2px 10px}.stat .k{color:var(--muted);font-size:12px}.stat .v{font:500 17px var(--f-mono);font-variant-numeric:tabular-nums}.stat .v small{color:var(--muted);font-size:11px}.trace{background:var(--panel);border-left:1px solid var(--line);z-index:60;width:min(440px,100%);padding:16px 18px 40px;transition:transform .22s;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(105%);box-shadow:-8px 0 30px #00000026}.trace.on{transform:none}.trace h4{margin:16px 0 6px;font-size:15px;font-weight:600}.tr-top{justify-content:space-between;gap:8px;margin-bottom:10px;display:flex}.tr-h{margin:2px 0;font-size:26px;font-weight:700}.tr-h:focus{outline:none}.tr-v{font:500 30px var(--f-mono);font-variant-numeric:tabular-nums}.tr-v small{color:var(--muted);font-size:14px}.tr-sub{white-space:normal}.tr-src{font-size:13.5px}.tr-go{margin-top:14px}.tr-go .btn{text-decoration:none;display:inline-block}.pill{font:600 12px var(--f-body);letter-spacing:.02em;border-radius:999px;margin:6px 0 4px;padding:3px 9px;display:inline-block}.c-input{background:var(--accent-soft);color:var(--accent)}.c-physics{background:var(--good-bg);color:var(--good)}.c-empirical{background:var(--warn-bg);color:var(--warn)}.c-assumption{background:var(--bad-bg);color:var(--bad)}.c-derived{background:var(--panel-2);color:var(--ink);border:1px solid var(--line)}.tchips{gap:6px;display:grid}.tchip{text-align:left;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);cursor:pointer;font:inherit;border-radius:6px;grid-template-columns:12px 1fr auto;align-items:center;gap:8px;padding:7px 10px;font-size:13.5px;display:grid}.tchip:hover{border-color:var(--accent)}.tchip b{font:500 12.5px var(--f-mono);color:var(--muted)}.cdot{border:0;border-radius:50%;width:10px;height:10px;padding:0}.cdot.c-input{background:var(--accent)}.cdot.c-physics{background:var(--good)}.cdot.c-empirical{background:var(--warn)}.cdot.c-assumption{background:var(--bad)}.cdot.c-derived{background:var(--muted)}@media (width<=600px){.trace{border-left:0;border-top:1px solid var(--line);border-radius:14px 14px 0 0;width:100%;height:78vh;top:auto;transform:translateY(105%)}.trace.on{transform:none}}@media (prefers-reduced-motion:reduce){.trace{transition:none}}.step-page{display:contents}:where(.step-head) .decide{max-width:70ch;margin:0;font-size:17px}:where(.step-head) .concept{max-width:75ch;color:var(--muted);margin:0}:where(.step-head) .mathhint{color:var(--muted);font-size:13px}:where(.step-page) .grid2{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}:where(.step-page) .col{gap:16px;min-width:0;display:grid}:where(.step-page) .card{background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0;padding:14px 16px}:where(.step-page) .card h3{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;font-size:19px;font-weight:600;display:flex}:where(.step-page) .card h3 .meta{font:400 12px var(--f-body);color:var(--muted)}:where(.step-page) .card p{margin:0 0 10px}:where(.step-page) .card p:last-child{margin-bottom:0}:where(.step-page) .vis-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:16px;display:grid}:where(.step-page) table.t{border-collapse:collapse;width:100%;font-size:13px}:where(.step-page) .t th,:where(.step-page) .t td{text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding:5px 8px}:where(.step-page) .t th:first-child,:where(.step-page) .t td:first-child{text-align:left}:where(.step-page) .t th{color:var(--muted);font-size:12px;font-weight:600}:where(.step-page) .t td{font-family:var(--f-mono)}:where(.step-page) .t td:first-child{font-family:var(--f-body)}:where(.step-page) .scroll-x{overflow-x:auto}:where(.step-page) .ctrl{border-bottom:1px dashed var(--line);padding:9px 0}:where(.step-page) .ctrl:last-child{border-bottom:0}:where(.step-page) .ctrl-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}:where(.step-page) .ctrl label,:where(.step-page) .ctrl .lab{font-size:14px;font-weight:500}:where(.step-page) .ctrl output{color:var(--accent);font-size:14px}:where(.step-page) .tries{gap:8px;display:grid}:where(.step-page) .try{text-align:left;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:8px;gap:2px;padding:9px 11px;display:grid}:where(.step-page) .try:hover{border-color:var(--accent)}:where(.step-page) .try b{font-size:14px;font-weight:600}:where(.step-page) .try span{color:var(--muted);font-size:12.5px}:where(.step-page) .learn{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}:where(.step-page) .lesson{max-width:72ch}:where(.step-page) .lesson h4{margin:14px 0 6px;font-size:18px;font-weight:600}:where(.step-page) .lesson h4:first-child{margin-top:0}:where(.step-page) .lesson p{margin:0 0 10px}:where(.step-page) .trade{gap:8px;margin:0;padding:0;list-style:none;display:grid}:where(.step-page) .trade li{background:var(--panel-2);border-radius:6px;padding:8px 10px;font-size:14px}:where(.step-page) .trade b{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600;font-family:var(--f-display);font-size:14px;display:block}:where(.step-page) .quiz .opts{gap:6px;margin:8px 0;display:grid}:where(.step-page) .quiz .opts button{text-align:left;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:6px;padding:7px 10px;font-size:14px}:where(.step-page) .quiz .opts button.right{border-color:var(--good);background:var(--good-bg)}:where(.step-page) .quiz .opts button.wrong{border-color:var(--bad);background:var(--bad-bg)}:where(.step-page) .quiz .why{font-size:14px;display:none}:where(.step-page) .quiz.answered .why{display:block}:where(.step-page) .refs{color:var(--muted);margin:0;padding-left:18px;font-size:13px}:where(.step-page) .refs li{margin-bottom:4px}:where(.step-page) .pager{justify-content:space-between;gap:10px;padding-bottom:30px;display:flex}:where(.step-page) .pager a{text-decoration:none}@media (width<=1100px){:where(.step-page) .learn{grid-template-columns:1fr}}@media (width<=900px){:where(.step-page) .grid2{grid-template-columns:1fr}}@media (width<=480px){:where(.step-page) .card{padding:12px}}
