@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+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 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+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 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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@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}:root{--font-display:"Space Grotesk Variable", "Space Grotesk", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", monospace;--fs-xs:.75rem;--fs-sm:.8438rem;--fs-base:.9375rem;--fs-md:1.0625rem;--fs-lg:clamp(1.15rem, 1rem + .6vw, 1.35rem);--fs-xl:clamp(1.4rem, 1.15rem + 1vw, 1.9rem);--fs-hero:clamp(1.9rem, 1.4rem + 2.2vw, 3.1rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4.5rem;--radius-sm:6px;--radius:10px;--radius-lg:16px;--header-h:3.5rem;--sidebar-w:17rem;--content-measure:46rem;--ease:cubic-bezier(.22, 1, .36, 1);--dur:.18s}:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fafbfc;--bg-raised:#fff;--bg-sunken:#f1f4f7;--bg-code:#0f141b;--fg-code:#d6deea;--ink:#18202b;--ink-2:#4a5768;--ink-3:#8794a5;--line:#e2e7ee;--line-strong:#c9d2dd;--accent:#2f6fed;--accent-ink:#fff;--pitfall-bg:#fdf1f1;--pitfall-line:#e5b8b8;--pitfall-ink:#a13535;--practice-bg:#eefaf2;--practice-line:#b3dfc2;--practice-ink:#1d7a43;--note-bg:#f0f5fd;--note-line:#bdd3f2;--note-ink:#2f5eb3;--shadow:0 1px 2px #18202b0d, 0 4px 16px #18202b0f;--shadow-lg:0 4px 12px #18202b14, 0 16px 48px #18202b24}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1116;--bg-raised:#151a21;--bg-sunken:#0a0d11;--bg-code:#10161f;--fg-code:#d6deea;--ink:#e3e9f1;--ink-2:#9aa7b8;--ink-3:#64707f;--line:#232a34;--line-strong:#333d4a;--accent:#6499ff;--accent-ink:#0b1220;--pitfall-bg:#2a1717;--pitfall-line:#5c2f2f;--pitfall-ink:#ef9a9a;--practice-bg:#12251a;--practice-line:#26543a;--practice-ink:#7fd6a4;--note-bg:#131f31;--note-line:#29426b;--note-ink:#93b8f5;--shadow:0 1px 2px #0006, 0 4px 16px #00000059;--shadow-lg:0 4px 12px #00000080, 0 16px 48px #00000080}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1116;--bg-raised:#151a21;--bg-sunken:#0a0d11;--bg-code:#10161f;--fg-code:#d6deea;--ink:#e3e9f1;--ink-2:#9aa7b8;--ink-3:#64707f;--line:#232a34;--line-strong:#333d4a;--accent:#6499ff;--accent-ink:#0b1220;--pitfall-bg:#2a1717;--pitfall-line:#5c2f2f;--pitfall-ink:#ef9a9a;--practice-bg:#12251a;--practice-line:#26543a;--practice-ink:#7fd6a4;--note-bg:#131f31;--note-line:#29426b;--note-ink:#93b8f5;--shadow:0 1px 2px #0006, 0 4px 16px #00000059;--shadow-lg:0 4px 12px #00000080, 0 16px 48px #00000080}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-base);-webkit-font-smoothing:antialiased;line-height:1.65}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;font-weight:600;line-height:1.2}p{text-wrap:pretty}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input{font:inherit}code,pre,kbd{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}::selection{background:color-mix(in srgb, var(--accent) 25%, transparent)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.inline-code{background:var(--bg-sunken);border:1px solid var(--line);border-radius:4px;padding:.08em .35em;font-size:.86em}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.chip{align-items:center;gap:var(--sp-2);border:1px solid var(--line);font-size:var(--fs-sm);color:var(--ink-2);background:var(--bg-raised);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:999px;padding:.2rem .75rem;display:inline-flex}button.chip:hover,a.chip:hover{border-color:var(--line-strong);color:var(--ink);text-decoration:none}.dot{border-radius:50%;flex-shrink:0;width:.55em;height:.55em}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.palette-overlay{z-index:90;padding:12vh var(--sp-4) 0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.palette{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);width:min(36rem,100%);box-shadow:var(--shadow-lg);overflow:hidden}.palette-input{width:100%;padding:var(--sp-4) var(--sp-5);border:none;border-bottom:1px solid var(--line);color:var(--ink);font-size:var(--fs-md);background:0 0}.palette-input:focus{outline:none}.palette-results{max-height:50vh;padding:var(--sp-2);overflow-y:auto}.palette-group{font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:var(--sp-2) var(--sp-3) var(--sp-1)}.palette-result{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm);text-align:left;font-size:var(--fs-sm);display:flex}.palette-result.is-active,.palette-result:hover{background:var(--bg-sunken)}.palette-result.is-active{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:-2px}.palette-badge{width:1.35rem;height:1.35rem;font-family:var(--font-mono);font-size:var(--fs-xs);border-radius:5px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.palette-badge--topic{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.palette-badge--class{color:#10b981;background:#10b98126}.palette-result-title{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.palette-result-sub{color:var(--ink-3);font-size:var(--fs-xs);white-space:nowrap;margin-left:auto}.palette-empty{padding:var(--sp-4);color:var(--ink-3);font-size:var(--fs-sm)}.palette-hints{gap:var(--sp-4);padding:var(--sp-2) var(--sp-5);border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--ink-3);display:flex}.palette-hints kbd{border:1px solid var(--line);background:var(--bg-sunken);border-radius:4px;padding:0 .3em;font-size:.9em}.shell{flex-direction:column;min-height:100dvh;display:flex}.skip-link{left:var(--sp-4);z-index:100;background:var(--accent);color:var(--accent-ink);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-sm);transition:top var(--dur) var(--ease);position:absolute;top:-3rem}.skip-link:focus{top:var(--sp-2)}.shell-header{z-index:50;align-items:center;gap:var(--sp-5);height:var(--header-h);padding:0 var(--sp-5);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;position:sticky;top:0}.brand{font-family:var(--font-mono);font-size:var(--fs-md);color:var(--ink);letter-spacing:-.02em;white-space:nowrap;font-weight:600}.brand:hover{text-decoration:none}.brand-sep{color:var(--accent);font-weight:700}.brand-name{color:var(--ink-2)}.shell-nav{gap:var(--sp-2);margin-left:auto;display:flex}.shell-nav a{color:var(--ink-2);font-size:var(--fs-sm);padding:var(--sp-1) var(--sp-3);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);border-radius:999px;font-weight:500}.shell-nav a:hover{color:var(--ink);text-decoration:none}.shell-nav a.active{color:var(--ink);background:var(--bg-sunken)}.shell-actions{align-items:center;gap:var(--sp-2);display:flex}.shell-icon-btn{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--ink-2);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);place-items:center;display:grid}.shell-icon-btn:hover{color:var(--ink);background:var(--bg-sunken)}.search-btn{align-items:center;gap:var(--sp-2);height:2rem;padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-3);font-size:var(--fs-sm);background:var(--bg-raised);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);display:flex}.search-btn:hover{border-color:var(--line-strong);color:var(--ink-2)}.search-btn kbd{font-size:var(--fs-xs);border:1px solid var(--line);background:var(--bg-sunken);border-radius:4px;padding:0 .3em}.shell-main{flex-direction:column;flex:1;min-width:0;display:flex}@media (width<=640px){.shell-header{gap:var(--sp-3);padding:0 var(--sp-4)}.brand-name,.search-hint,.search-btn kbd{display:none}}.home{max-width:68rem;padding:0 var(--sp-5) var(--sp-8);width:100%;margin:0 auto}.home-hero{padding:var(--sp-8) 0 var(--sp-7)}.home-title{letter-spacing:-.03em;margin:var(--sp-3) 0;font-size:clamp(2.6rem,2rem + 3.5vw,4.5rem)}.home-title-accent{font-family:var(--font-mono);color:var(--accent);font-weight:600}.home-lede{color:var(--ink-2);font-size:var(--fs-md);max-width:58ch}.home-actions{align-items:center;gap:var(--sp-3);margin-top:var(--sp-5);flex-wrap:wrap;display:flex}.home-cta{padding:var(--sp-2) var(--sp-5);font-weight:600;font-size:var(--fs-sm);border:1px solid var(--line-strong);color:var(--ink);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:999px;display:inline-block}.home-cta:hover{border-color:var(--accent);text-decoration:none}.home-cta.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.home-cta.primary:hover{filter:brightness(1.08)}.home-hint{font-size:var(--fs-sm);color:var(--ink-3)}.home-hint kbd{border:1px solid var(--line);background:var(--bg-sunken);border-radius:4px;padding:0 .35em;font-size:.9em}.home-stats{gap:var(--sp-6);margin:var(--sp-7) 0 0;flex-wrap:wrap;display:flex}.home-stats dt{font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.home-stats dd{font-family:var(--font-display);font-size:var(--fs-xl);margin:0;font-weight:600}.home-domains-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));display:grid}.home-domain{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);color:inherit;transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);display:flex;overflow:hidden}.home-domain:hover{border-color:var(--line-strong);box-shadow:var(--shadow);text-decoration:none;transform:translateY(-2px)}.home-domain-spine{background:var(--domain);flex-shrink:0;width:4px}.home-domain-body{gap:var(--sp-1);padding:var(--sp-4) var(--sp-4);flex-direction:column;display:flex}.home-domain-title{font-family:var(--font-display);font-weight:600}.home-domain-blurb{font-size:var(--fs-sm);color:var(--ink-2);flex:1}.home-domain-meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--ink-3);margin-top:var(--sp-2)}.home-sources{margin-top:var(--sp-8);padding-top:var(--sp-5);border-top:1px solid var(--line)}.home-sources ul{margin:var(--sp-4) 0 0;gap:var(--sp-3) var(--sp-5);grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));padding:0;list-style:none;display:grid}.home-sources li{font-size:var(--fs-sm);flex-direction:column;display:flex}.home-sources cite{color:var(--ink);font-style:normal;font-weight:500}.home-sources span{color:var(--ink-3);font-size:var(--fs-xs)}@media (width<=640px){.home{padding:0 var(--sp-4) var(--sp-7)}.home-hero{padding:var(--sp-7) 0 var(--sp-6)}.home-stats{gap:var(--sp-5)}}.sidebar{width:var(--sidebar-w);border-right:1px solid var(--line);padding:var(--sp-4) var(--sp-3) var(--sp-7);top:var(--header-h);height:calc(100dvh - var(--header-h));scrollbar-width:thin;flex-shrink:0;position:sticky;overflow-y:auto}.sidebar-domains{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sidebar-domain{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--ink-2);text-align:left;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);font-weight:500;display:flex}.sidebar-domain:hover{background:var(--bg-sunken);color:var(--ink)}.sidebar-domain-title{flex:1}.sidebar-chev{color:var(--ink-3);transition:transform var(--dur) var(--ease)}.sidebar-chev.is-open{transform:rotate(90deg)}.sidebar-topics{margin:2px 0 var(--sp-2);padding:0 0 0 1.1rem;list-style:none}.sidebar-topics a{padding:.3rem var(--sp-3);border-left:2px solid var(--line);font-size:var(--fs-sm);color:var(--ink-2);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);display:block}.sidebar-topics a:hover{color:var(--ink);text-decoration:none}.sidebar-topics a.active{color:var(--ink);border-left-color:var(--domain);font-weight:500}.sidebar-holder{display:contents}.topics-layout-toggle{display:none}@media (width<=900px){.sidebar-holder{z-index:60;top:var(--header-h);transition:transform .24s var(--ease);display:block;position:fixed;bottom:0;left:0;transform:translate(-105%)}.sidebar-holder.is-open{box-shadow:var(--shadow-lg);transform:translate(0)}.sidebar{background:var(--bg);border-right:1px solid var(--line);height:100%;position:static}.topics-layout-toggle{z-index:55;bottom:var(--sp-5);right:var(--sp-5);align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--accent);color:var(--accent-ink);font-size:var(--fs-sm);box-shadow:var(--shadow-lg);border-radius:999px;font-weight:600;display:flex;position:fixed}.sidebar-backdrop{inset:var(--header-h) 0 0 0;z-index:58;background:#00000059;border:none;position:fixed}}.codeblock{margin:var(--sp-5) 0;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-code);overflow:hidden}.codeblock-bar{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;display:flex}.codeblock-title{font-family:var(--font-mono);font-size:var(--fs-xs);color:#8494ab}.codeblock-copy{font-size:var(--fs-xs);color:#8494ab;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);border:1px solid #ffffff1f;border-radius:5px;padding:.15rem .6rem;font-weight:500}.codeblock-copy:hover{color:#d6deea;border-color:#ffffff4d}.codeblock pre{padding:var(--sp-4);color:var(--fg-code);-webkit-overflow-scrolling:touch;margin:0;font-size:.8125rem;line-height:1.6;overflow-x:auto}.codeblock figcaption{padding:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);color:#8494ab;border-top:1px solid #ffffff12}.tok-kw{color:#c792ea}.tok-type{color:#7fd6c2}.tok-str{color:#c3e88d}.tok-num{color:#f78c6c}.tok-comment{color:#5c7089;font-style:italic}.tok-ann{color:#ffcb6b}.callout{margin:var(--sp-5) 0;padding:var(--sp-4) var(--sp-5);border-radius:var(--radius);border:1px solid}.callout .codeblock{margin:var(--sp-3) 0 0}.callout-head{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-1);display:flex}.callout-icon{font-size:var(--fs-sm)}.callout-title{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.01em;font-weight:600}.callout-body{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.6}.callout-pitfall{background:var(--pitfall-bg);border-color:var(--pitfall-line)}.callout-pitfall .callout-head{color:var(--pitfall-ink)}.callout-bestPractice{background:var(--practice-bg);border-color:var(--practice-line)}.callout-bestPractice .callout-head{color:var(--practice-ink)}.callout-note{background:var(--note-bg);border-color:var(--note-line)}.callout-note .callout-head{color:var(--note-ink)}.compare-wrap{margin:var(--sp-5) 0;border:1px solid var(--line);border-radius:var(--radius);-webkit-overflow-scrolling:touch;overflow-x:auto}.compare{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.compare caption{caption-side:top;text-align:left;padding:var(--sp-3) var(--sp-4);font-family:var(--font-display);color:var(--ink);border-bottom:1px solid var(--line);background:var(--bg-raised);font-weight:600}.compare th{text-align:left;font-family:var(--font-display);font-weight:600;font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:var(--bg-sunken);padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line);white-space:nowrap}.compare td{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line);color:var(--ink-2);vertical-align:top}.compare td:first-child{color:var(--ink);white-space:nowrap;font-weight:500}.compare tbody tr:last-child td{border-bottom:none}.compare tbody tr:hover td{background:color-mix(in srgb, var(--bg-sunken) 55%, transparent)}.topic{max-width:var(--content-measure);padding:var(--sp-6) var(--sp-5) var(--sp-8);min-width:0;margin:0 auto}.topic-header{padding-left:var(--sp-5);margin-bottom:var(--sp-6);position:relative}.topic-header:before{content:"";background:var(--domain);border-radius:2px;width:3px;position:absolute;top:.4rem;bottom:.2rem;left:0}.topic-eyebrow{color:var(--domain);margin-bottom:var(--sp-2)}.topic-title{font-size:var(--fs-hero);margin-bottom:var(--sp-4)}.topic-summary{font-size:var(--fs-md);color:var(--ink);max-width:60ch;line-height:1.6}.topic-keypoints{margin:var(--sp-4) 0 0;gap:var(--sp-2);flex-direction:column;padding:0;list-style:none;display:flex}.topic-keypoints li{font-size:var(--fs-sm);color:var(--ink-2);padding-left:1.4rem;line-height:1.55;position:relative}.topic-keypoints li:before{content:"›";color:var(--domain);font-weight:700;position:absolute;left:.35rem}.topic-body{min-width:0}.topic-para{margin:var(--sp-4) 0;color:var(--ink-2)}.topic-para strong{color:var(--ink)}.topic-subheading{font-size:var(--fs-lg);margin:var(--sp-7) 0 var(--sp-2)}.topic-subheading:after{content:"";width:2rem;height:2px;margin-top:var(--sp-2);background:var(--domain);border-radius:1px;display:block}.topic-related{margin-top:var(--sp-7)}.topic-related-chips{gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.topic-refs{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--line)}.topic-refs ul{margin:var(--sp-3) 0 0;gap:var(--sp-1);flex-direction:column;padding:0;list-style:none;display:flex}.topic-refs li{font-size:var(--fs-sm);color:var(--ink-3)}.topic-refs cite{color:var(--ink-2);font-style:normal}.topic-link{font-weight:500}@media (width<=640px){.topic{padding:var(--sp-5) var(--sp-4) var(--sp-7)}}.topics-layout{flex:1;align-items:stretch;min-width:0;display:flex}.topics-content{flex:1;min-width:0}.topic-loading{min-height:40vh}.topics-index{max-width:56rem;padding:var(--sp-7) var(--sp-5) var(--sp-8);margin:0 auto}.topics-index h1{font-size:var(--fs-hero);margin-bottom:var(--sp-3)}.topics-index-lede{color:var(--ink-2);max-width:55ch;margin-bottom:var(--sp-6)}.topics-index-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));display:grid}.domain-card{gap:var(--sp-2);padding:var(--sp-5);border:1px solid var(--line);border-top:3px solid var(--domain);border-radius:var(--radius);background:var(--bg-raised);color:inherit;transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex-direction:column;display:flex}.domain-card:hover{box-shadow:var(--shadow);border-color:var(--line-strong);border-top-color:var(--domain);text-decoration:none;transform:translateY(-2px)}.domain-card h2{font-size:var(--fs-md)}.domain-card p{font-size:var(--fs-sm);color:var(--ink-2);flex:1}.domain-card-count{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--ink-3)}.domain-topic-list{gap:var(--sp-2);flex-direction:column;margin:0;padding:0 0 0 1.5rem;display:flex}.domain-topic-list li::marker{color:var(--domain);font-family:var(--font-mono);font-size:var(--fs-sm)}.domain-topic-list a{color:var(--ink);font-weight:500}.prevnext{max-width:var(--content-measure);padding:0 var(--sp-5) var(--sp-7);justify-content:space-between;gap:var(--sp-4);margin:0 auto;display:flex}.prevnext-link{padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-weight:500;font-size:var(--fs-sm);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex-direction:column;gap:2px;display:flex}.prevnext-link:hover{border-color:var(--line-strong);background:var(--bg-raised);text-decoration:none}.prevnext-link.next{text-align:right;margin-left:auto}@media (width<=640px){.topics-index{padding:var(--sp-6) var(--sp-4) var(--sp-7)}}.graphview{flex-direction:column;flex:1;min-height:0;display:flex}.graph-toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.graph-filters{gap:var(--sp-2);flex-wrap:wrap;flex:1;display:flex}.graph-filter{font-size:var(--fs-xs);padding:.1rem .6rem}.graph-filter.is-off{opacity:.4}.graph-filter-clear{font-size:var(--fs-xs);color:var(--accent);border-style:dashed}.graph-legend{gap:var(--sp-4);font-size:var(--fs-xs);color:var(--ink-3);white-space:nowrap;display:flex}.legend-item{align-items:center;gap:var(--sp-2);display:inline-flex}.legend-line{stroke-width:2px}.legend-line.part-of{stroke:var(--ink-3);opacity:.5}.legend-line.prerequisite-of{stroke:var(--accent)}.legend-line.related-to{stroke:var(--ink-3);stroke-dasharray:4 3}.graph-stage{flex:1;min-height:0;position:relative}.graph-svg{cursor:grab;touch-action:none;background:radial-gradient(circle at center, color-mix(in srgb, var(--accent) 4%, transparent), transparent 70%);width:100%;height:100%;min-height:420px;display:block}.graph-svg:active{cursor:grabbing}.graph-link{stroke:var(--ink-3);stroke-opacity:.35;stroke-width:1px;transition:stroke-opacity var(--dur) var(--ease)}.graph-link.prerequisite-of{stroke:var(--accent);stroke-opacity:.5;stroke-width:1.4px}.graph-link.related-to{stroke-dasharray:4 3}.graph-link.is-faded{stroke-opacity:.06}.graph-node{cursor:pointer;transition:opacity var(--dur) var(--ease)}.graph-node.is-faded{opacity:.15}.graph-node circle{transition:transform var(--dur) var(--ease)}.graph-node:hover circle{transform:scale(1.15)}.graph-node.is-selected circle{stroke:var(--ink);stroke-width:2.5px}.graph-node text{font-family:var(--font-body);fill:var(--ink-2);text-anchor:middle;paint-order:stroke;stroke:var(--bg);stroke-width:3px;stroke-linejoin:round;pointer-events:none;font-size:11px}.graph-node .hub-label{font-family:var(--font-display);fill:var(--ink);font-size:13px;font-weight:600}.graph-panel{top:var(--sp-4);right:var(--sp-4);width:min(20rem, calc(100% - 2 * var(--sp-4)));padding:var(--sp-5);background:var(--bg-raised);border:1px solid var(--line);border-top:3px solid var(--domain,var(--accent));border-radius:var(--radius);box-shadow:var(--shadow-lg);position:absolute}.graph-panel h2{font-size:var(--fs-lg);margin:var(--sp-1) 0 var(--sp-2)}.graph-panel-summary{font-size:var(--fs-sm);color:var(--ink-2);min-height:2.5em;line-height:1.55}.graph-panel-open{margin-top:var(--sp-3);font-size:var(--fs-sm);font-weight:600;display:inline-block}.graph-panel-close{top:var(--sp-2);right:var(--sp-3);font-size:var(--fs-lg);color:var(--ink-3);line-height:1;position:absolute}.graph-panel-close:hover{color:var(--ink)}@media (width<=640px){.graph-toolbar{padding:var(--sp-3) var(--sp-4)}.graph-legend{display:none}.graph-panel{top:auto;bottom:var(--sp-4);left:var(--sp-4);right:var(--sp-4);width:auto}}.classdetail{max-width:var(--content-measure);padding:var(--sp-7) var(--sp-5) var(--sp-8);width:100%;min-height:40vh;margin:0 auto}.classdetail-name{font-family:var(--font-mono);font-size:var(--fs-xl);margin:var(--sp-2) 0 var(--sp-4)}.classdetail-summary{font-size:var(--fs-md);color:var(--ink);max-width:60ch}.classdetail-points{margin:var(--sp-4) 0 0;gap:var(--sp-2);flex-direction:column;padding:0;list-style:none;display:flex}.classdetail-points li{font-size:var(--fs-sm);color:var(--ink-2);padding-left:1.4rem;position:relative}.classdetail-points li:before{content:"›";color:var(--accent);font-weight:700;position:absolute;left:.35rem}.classdetail h2{font-size:var(--fs-lg);margin:var(--sp-6) 0 var(--sp-3)}.method-table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}.method-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.method-table td{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-2)}.method-table tr:last-child td{border-bottom:none}.method-table td:first-child{white-space:nowrap}.method-table code{color:var(--ink);font-size:.8125rem}.classdetail-footer{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--line);align-items:flex-start;gap:var(--sp-4);flex-wrap:wrap;justify-content:space-between;display:flex}.classdetail-chips{gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.classdetail-javadoc{font-size:var(--fs-sm);white-space:nowrap;font-weight:600}@media (width<=640px){.classdetail{padding:var(--sp-6) var(--sp-4) var(--sp-7)}}.classes-page{max-width:68rem;padding:var(--sp-7) var(--sp-5) var(--sp-8);width:100%;margin:0 auto}.classes-header h1{font-size:var(--fs-hero);margin-bottom:var(--sp-3)}.classes-lede{color:var(--ink-2);max-width:60ch;margin-bottom:var(--sp-5)}.classes-search{width:100%;max-width:28rem;padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink);margin-bottom:var(--sp-6)}.classes-search:focus{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.classes-group{margin-bottom:var(--sp-6)}.classes-group>.eyebrow{margin-bottom:var(--sp-3)}.classes-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));margin:0;padding:0;list-style:none;display:grid}.class-card{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);color:inherit;height:100%;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);display:flex}.class-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow);text-decoration:none}.kind-badge{width:1.5rem;height:1.5rem;font-family:var(--font-mono);font-size:var(--fs-xs);border-radius:6px;flex-shrink:0;place-items:center;margin-top:2px;font-weight:700;display:grid}.kind-class{color:#2f6fed;background:#2f6fed26}.kind-interface{color:#10b981;background:#10b98126}.kind-enum{color:#f97316;background:#f9731626}.kind-record{color:#c026d3;background:#c026d326}.kind-annotation{color:#b0850a;background:#eab3082e}.class-card-body{flex-direction:column;gap:1px;min-width:0;display:flex}.class-card-name{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-sm)}.class-card-pkg{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--ink-3)}.class-card-summary{font-size:var(--fs-xs);color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;display:-webkit-box;overflow:hidden}.classes-empty{color:var(--ink-2)}@media (width<=640px){.classes-page{padding:var(--sp-6) var(--sp-4) var(--sp-7)}}
