:root{--paper: oklch(.984 .008 88);--paper-trans: oklch(.984 .008 88 / .86);--card: oklch(.975 .006 90);--card-soft: oklch(.978 .006 90);--card-stripe: oklch(.955 .006 88);--card-header: oklch(.96 .007 88);--row-hover: oklch(.96 .008 86);--footer-bg: oklch(.975 .007 88);--ink: oklch(.23 .013 65);--body-muted: oklch(.4 .012 70);--ink-muted: oklch(.42 .012 70);--on-accent: oklch(.986 .007 90);--faint: oklch(.52 .012 70);--faint-mono: oklch(.58 .012 72);--faint-mono-2: oklch(.62 .012 72);--num-coming: oklch(.74 .01 78);--pill-coming: oklch(.6 .012 72);--step-body: oklch(.38 .012 70);--lede: oklch(.4 .012 70);--closing-body: oklch(.3 .012 70);--hairline: oklch(.88 .008 80);--hairline-light: oklch(.9 .008 82);--card-border: oklch(.86 .008 80);--accent: oklch(.56 .16 35);--accent-soft: oklch(.56 .16 35 / .12);--accent-soft-13: oklch(.56 .16 35 / .13);--accent-line: oklch(.56 .16 35 / .55);--accent-hover-06: oklch(.56 .16 35 / .06);--accent-border-45: oklch(.56 .16 35 / .45);--accent-border-3: oklch(.56 .16 35 / .3);--accent-border-4: oklch(.56 .16 35 / .4);--accent-underline: oklch(.56 .16 35 / .35);--selection: oklch(.56 .16 35 / .18);--code-keyword: oklch(.56 .16 35);--code-string: oklch(.5 .12 150);--code-comment: oklch(.64 .01 75);--code-plain: oklch(.28 .012 68);--code-dim: oklch(.3 .012 70);--dot-red: oklch(.78 .07 35);--dot-yellow: oklch(.85 .05 95);--dot-green: oklch(.8 .06 150);--matrix-paper: oklch(.987 .007 90);--matrix-bar-bg: oklch(.24 .013 60 / .07);--matrix-bar-mut: oklch(.62 .012 70);--font-sans: "Hanken Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--font-code: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}a{text-decoration:none;color:inherit}::selection{background:var(--selection)}.katex{font-size:1em}.katex-mathml{-webkit-user-select:none;user-select:none}nav,.gb-chrome{-webkit-user-select:none;user-select:none}main p,main h1,main h2,main li,main details,pre,.gb-code{-webkit-user-select:text;user-select:text}.gb-code{cursor:text}.tok-kw{color:var(--code-keyword)}.tok-kw-b{color:var(--code-keyword);font-weight:600}.tok-str{color:var(--code-string)}.tok-com{color:var(--code-comment)}.tok-dim{color:var(--code-dim)}@media (prefers-reduced-motion: no-preference){html.cascade-on:not(.entrance-fade) :is(.hero__left>*,.hero__right>*,.contents__head,.chap,.why-sec>*,.lesson-main>:not(.step),.step>*){opacity:0;transform:translateY(14px);transition:opacity .5s ease-out,transform .5s ease-out;transition-delay:var(--cascade-delay, 0s)}html.cascade-on:not(.entrance-fade) :is(.hero__left>*,.hero__right>*,.contents__head,.chap,.why-sec>*,.lesson-main>:not(.step),.step>*).cascade-in{opacity:1;transform:none}html.cascade-on.entrance-fade .lesson-main{animation:gb-fade-in .5s ease-out both}@keyframes gb-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}html.cascade-on .hero__bracket{border-color:transparent}}.topbar[data-astro-cid-lq7i5isa]{border-bottom:1px solid var(--hairline-light)}.topbar--lesson[data-astro-cid-lq7i5isa]{position:sticky;top:0;z-index:20;background:var(--paper-trans);backdrop-filter:saturate(1.1) blur(8px)}.topbar__inner[data-astro-cid-lq7i5isa]{max-width:1000px;margin:0 auto;padding:15px 32px;display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar--lesson[data-astro-cid-lq7i5isa] .topbar__inner[data-astro-cid-lq7i5isa]{max-width:1180px;padding:13px 32px}.topbar__left[data-astro-cid-lq7i5isa]{display:flex;align-items:center;gap:14px;min-width:0}.topbar__brand[data-astro-cid-lq7i5isa]{display:flex;align-items:center;gap:11px;flex-shrink:0}.topbar__wordmark[data-astro-cid-lq7i5isa]{font-weight:700;font-size:17px;letter-spacing:-.01em}.topbar__crumb[data-astro-cid-lq7i5isa]{font-family:var(--font-mono);font-size:12px;color:var(--faint-mono);white-space:nowrap}.topbar__nav[data-astro-cid-lq7i5isa]{display:flex;align-items:center;gap:28px;font-family:var(--font-mono);font-size:13px}.topbar__nav[data-astro-cid-lq7i5isa] a[data-astro-cid-lq7i5isa]{color:var(--body-muted);transition:color .15s;white-space:nowrap}.topbar__nav[data-astro-cid-lq7i5isa] a[data-astro-cid-lq7i5isa]:hover{color:var(--accent)}.topbar__back[data-astro-cid-lq7i5isa]{font-family:var(--font-mono);font-size:12px;color:var(--body-muted);border:1px solid var(--card-border);border-radius:7px;padding:5px 12px;white-space:nowrap;flex-shrink:0;transition:color .15s,border-color .15s}.topbar__back[data-astro-cid-lq7i5isa]:hover{color:var(--accent);border-color:var(--accent-border-45)}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--hairline-light);background:var(--footer-bg)}.footer__inner[data-astro-cid-sz7xmlte]{max-width:1000px;margin:0 auto;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}.footer__inner--wide[data-astro-cid-sz7xmlte]{max-width:1180px;padding:26px 32px}.footer__brand[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:10px}.footer__name[data-astro-cid-sz7xmlte]{font-size:14px;font-weight:700}.footer__tag[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:12px;color:var(--faint)}.footer__meta[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:11.5px;color:var(--faint-mono);display:flex;gap:16px}
