*,*:before,*:after{box-sizing:border-box}:root{--reading-scale: 1.2;font-size:calc(100% * var(--reading-scale));-webkit-text-size-adjust:100%}body{margin:0}img{max-width:100%;height:auto}.prose pre{overflow-x:auto}.prose table{display:block;overflow-x:auto}.prose .katex-display{overflow-x:auto;overflow-y:hidden}.topbar{display:flex;align-items:baseline;gap:.8em;flex-wrap:wrap}.topbar a{text-decoration:none}.attribution{font-size:.88em;line-height:1.45;opacity:.7;margin:.8em 0 0}.hero{margin:1.6em 0 2em}.hero img{display:block;width:100%;height:auto;border-radius:6px}.hero figcaption{margin-top:.5em;font-size:.9em;line-height:1.4;opacity:.8}.hero .photo-credit{display:block;margin-top:.25em;font-size:.9em;opacity:.75;font-style:italic}.entry-list{list-style:none;padding:0;margin:0}.entry-list li+li{margin-top:.2em}.entry-list a{display:block;text-decoration:none}.entry-name,.entry-desc{display:block}.entry-meta{display:flex;align-items:baseline;gap:.8em;flex-wrap:wrap}.lesson-info dl{display:grid;grid-template-columns:max-content 1fr;gap:.4em 1em;margin:0}.lesson-info dt,.lesson-info dd{margin:0}.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4em}.chips li{display:inline-block}.theme-toggle{position:fixed;right:1em;bottom:1em;z-index:50;display:inline-flex;align-items:center;gap:.5em;padding:.45em .85em;border-radius:999px;cursor:pointer;font:inherit;font-size:.8rem;line-height:1;box-shadow:0 1px 4px #0000001f;transition:transform .1s ease}.theme-toggle:active{transform:translateY(1px)}.theme-toggle .swatch{width:.7em;height:.7em;border-radius:50%}:root[data-theme=paper]{--bg: #f7f6f1;--text: #1c1b18;--text-muted: #6b6860;--accent: #1a3f6f;--accent-light: #2b6cb0;--border: #d8d5cd;--warn-bg: #fffbeb;--warn-border: #b7791f;--warn-text: #78350f;--font-serif: "STIX Two Text", "Times New Roman", serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "Fira Code", "Courier New", monospace}:root[data-theme=paper] body{font-family:var(--font-serif);color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}:root[data-theme=paper] .page{max-width:46rem;margin:2.5em auto;padding:0 1.2em 5em}:root[data-theme=paper] .topbar{margin-bottom:2.5em;font-family:var(--font-sans);font-size:.75em;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}:root[data-theme=paper] .topbar a{color:var(--accent-light)}:root[data-theme=paper] .topbar a:hover{text-decoration:underline}:root[data-theme=paper] .index-title{font-family:var(--font-sans);font-size:1.9em;font-weight:700;color:var(--accent);letter-spacing:-.02em;margin:0 0 .4em}:root[data-theme=paper] .index-lead{font-style:italic;color:var(--text-muted);margin:0 0 1.8em}:root[data-theme=paper] .entry-list a{padding:.9em 0;border-bottom:1px solid var(--border)}:root[data-theme=paper] .entry-list .entry-name{font-family:var(--font-sans);font-size:1.15em;font-weight:600;color:var(--accent)}:root[data-theme=paper] .entry-list a:hover .entry-name{color:var(--accent-light)}:root[data-theme=paper] .entry-list .entry-desc{color:var(--text);margin-top:.2em}:root[data-theme=paper] .entry-meta{font-family:var(--font-sans);font-size:.78em;color:var(--text-muted);margin-top:.35em}:root[data-theme=paper] .entry-diff{color:var(--warn-border);letter-spacing:.1em}:root[data-theme=paper] .prose{font-size:1.15em;line-height:1.8}:root[data-theme=paper] .prose p{margin:.9em 0}:root[data-theme=paper] .prose strong{font-weight:600}:root[data-theme=paper] .prose em{font-style:italic}:root[data-theme=paper] .prose a{color:var(--accent-light);text-decoration:underline;text-decoration-thickness:1px}:root[data-theme=paper] .prose a:hover{text-decoration-thickness:2px}:root[data-theme=paper] .prose h1{font-family:var(--font-sans);font-size:1.7em;font-weight:700;color:var(--accent);letter-spacing:-.02em;line-height:1.15;margin:0 0 .6em}:root[data-theme=paper] .prose h2{font-family:var(--font-sans);font-size:1.3em;font-weight:700;letter-spacing:.02em;color:var(--accent);margin:2.4em 0 .7em;padding-bottom:.4em;border-bottom:1px solid var(--border)}:root[data-theme=paper] .prose h3{font-family:var(--font-sans);font-size:1.1em;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:1.5em 0 .5em}:root[data-theme=paper] .prose ul,:root[data-theme=paper] .prose ol{margin:.5em 0 1em 1.6em;padding:0}:root[data-theme=paper] .prose li{margin-bottom:.3em}:root[data-theme=paper] .prose pre{background:#f0ede6;border:1px solid var(--border);border-radius:4px;padding:.9em 1.1em;font-family:var(--font-mono);font-size:.82em;line-height:1.55;margin:1em 0 1.25em}:root[data-theme=paper] .prose code{font-family:var(--font-mono);background:#ede9e1;padding:.1em .35em;border-radius:3px;font-size:.88em}:root[data-theme=paper] .prose pre code{background:none;padding:0;font-size:inherit;border-radius:0}:root[data-theme=paper] .prose table{border-collapse:collapse;margin:1.5em 0;font-family:var(--font-serif);font-size:1em;line-height:1.55}:root[data-theme=paper] .prose thead th{font-family:var(--font-sans);font-weight:700;font-size:.78em;letter-spacing:.06em;text-transform:uppercase;text-align:left;color:var(--text-muted);background:#1a3f6f08;padding:.55em .9em;border-top:1.5px solid var(--text);border-bottom:1.5px solid var(--text)}:root[data-theme=paper] .prose tbody td{padding:.5em .9em;border-bottom:1px solid var(--border);vertical-align:top}:root[data-theme=paper] .prose tbody tr:last-child td{border-bottom:1.5px solid var(--text)}:root[data-theme=paper] .prose thead th+th,:root[data-theme=paper] .prose tbody td+td{border-left:1px solid var(--border)}:root[data-theme=paper] .prose blockquote{border-left:4px solid var(--warn-border);background:var(--warn-bg);padding:.75em 1.1em;margin:1.25em 0;border-radius:0 6px 6px 0;color:var(--warn-text)}:root[data-theme=paper] .prose blockquote p{margin:0}:root[data-theme=paper] .prose blockquote strong{color:var(--warn-text)}:root[data-theme=paper] .prose .katex-display{padding:.3em 0;margin:1.25em 0}:root[data-theme=paper] .prose .katex{font-size:1.05em}:root[data-theme=paper] .prose h1+.attribution{margin:-.3em 0 1.6em;font-family:var(--font-sans);font-size:.82em;font-style:italic;color:var(--text-muted)}:root[data-theme=paper] .lesson-info{background:#f0ede6;border:1px solid var(--border);border-radius:6px;padding:1em 1.2em;margin:0 0 2em;font-family:var(--font-sans);font-size:.92em}:root[data-theme=paper] .lesson-info dt{font-size:.72em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-top:.15em}:root[data-theme=paper] .lesson-info dd{color:var(--text)}:root[data-theme=paper] .lesson-info .entry-diff{color:var(--warn-border);letter-spacing:.1em}:root[data-theme=paper] .lesson-info .chips li{background:#fff;border:1px solid var(--border);border-radius:999px;padding:.15em .7em;font-size:.92em}:root[data-theme=paper] .lesson-info .chips-accent li{background:#1a3f6f0f;border-color:#1a3f6f33;color:var(--accent)}:root[data-theme=paper] .section-head{font-family:var(--font-sans);font-size:1.05em;font-weight:700;letter-spacing:.04em;color:var(--accent);margin:2.4em 0 .6em;padding-bottom:.4em;border-bottom:1px solid var(--border)}:root[data-theme=paper] .kind-tag{display:block;font-family:var(--font-sans);font-size:.72em;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-top:.25em}:root[data-theme=paper] .theme-toggle{font-family:var(--font-sans);background:#fff;color:var(--text);border:1px solid var(--border)}:root[data-theme=paper] .theme-toggle .swatch{background:var(--accent)}:root[data-theme=report]{--fg: #2a2a2a;--muted: #6a6a6a;--accent: #7a4a1a;--rule: #e5e0d8;--bg: #fbfaf7;--card: #ffffff;--code-bg: #f0ece4;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: "SF Mono", Menlo, Consolas, monospace}:root[data-theme=report] body{font-family:var(--font-sans);color:var(--fg);background:var(--bg);line-height:1.55;font-size:1rem}:root[data-theme=report] .page{max-width:50rem;margin:3em auto;padding:0 1.4em 4em}:root[data-theme=report] .topbar{margin-bottom:2em;font-size:.84em;color:var(--muted)}:root[data-theme=report] .topbar a{color:var(--accent)}:root[data-theme=report] .topbar a:hover{text-decoration:underline}:root[data-theme=report] .index-title{font-weight:600;font-size:1.8em;color:var(--fg);margin:0 0 .3em}:root[data-theme=report] .index-lead{color:var(--muted);margin:0 0 1.6em}:root[data-theme=report] .entry-list li+li{margin-top:.7em}:root[data-theme=report] .entry-list a{background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:.9em 1.1em}:root[data-theme=report] .entry-list a:hover{border-color:var(--accent)}:root[data-theme=report] .entry-list .entry-name{font-size:1.02em;font-weight:600;color:var(--fg)}:root[data-theme=report] .entry-list .entry-desc{color:var(--muted);font-size:.92em;margin-top:.25em}:root[data-theme=report] .entry-meta{color:var(--muted);font-size:.82em;margin-top:.4em}:root[data-theme=report] .entry-diff{color:var(--accent);letter-spacing:.1em}:root[data-theme=report] .prose{background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:1.6em 1.8em 2em}:root[data-theme=report] .prose p{margin:.6em 0}:root[data-theme=report] .prose a{color:var(--accent);text-decoration:underline}:root[data-theme=report] .prose h1{font-weight:600;font-size:2em;margin:0 0 .5em;color:var(--fg)}:root[data-theme=report] .prose h2{font-weight:600;font-size:1.5em;margin-top:2.4em;padding-bottom:.25em;border-bottom:1px solid var(--rule)}:root[data-theme=report] .prose h3{font-weight:600;font-size:1.25em;margin:1.6em 0 .3em}:root[data-theme=report] .prose ul,:root[data-theme=report] .prose ol{margin:.4em 0 .9em 1.5em;padding:0}:root[data-theme=report] .prose li{margin-bottom:.25em}:root[data-theme=report] .prose code{font-family:var(--font-mono);font-size:.88em;background:var(--code-bg);padding:1px 5px;border-radius:3px}:root[data-theme=report] .prose pre{background:var(--code-bg);border:1px solid var(--rule);border-radius:5px;padding:.9em 1.1em;font-family:var(--font-mono);font-size:.9em;line-height:1.5;margin:1em 0}:root[data-theme=report] .prose pre code{background:none;padding:0;font-size:inherit;border-radius:0}:root[data-theme=report] .prose table{border-collapse:collapse;margin:1.2em 0;font-size:1em}:root[data-theme=report] .prose thead th{text-align:left;font-weight:600;color:var(--fg);background:#faf7f1;padding:.5em .8em;border:1px solid var(--rule)}:root[data-theme=report] .prose tbody td{padding:.45em .8em;border:1px solid var(--rule);vertical-align:top}:root[data-theme=report] .prose blockquote{margin:1.1em 0;padding:.6em 1em;border-left:3px solid var(--accent);background:#fbf6ee;border-radius:0 4px 4px 0;color:#5a4420}:root[data-theme=report] .prose blockquote p{margin:.2em 0}:root[data-theme=report] .prose .katex-display{padding:.2em 0;margin:1em 0}:root[data-theme=report] .prose h1+.attribution{margin:-.2em 0 1.4em;font-size:.84em;font-style:italic;color:var(--muted)}:root[data-theme=report] .lesson-info{background:#faf7f1;border:1px solid var(--rule);border-radius:6px;padding:1em 1.2em;margin:0 0 1.8em;font-size:.92em}:root[data-theme=report] .lesson-info dt{font-size:.74em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-top:.15em}:root[data-theme=report] .lesson-info dd{color:var(--fg)}:root[data-theme=report] .lesson-info .entry-diff{color:var(--accent);letter-spacing:.1em}:root[data-theme=report] .lesson-info .chips li{background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:.15em .6em;font-size:.92em}:root[data-theme=report] .lesson-info .chips-accent li{background:#fbf6ee;border-color:#e2d2bc;color:var(--accent)}:root[data-theme=report] .section-head{font-weight:600;font-size:1.15em;color:var(--fg);margin:2.4em 0 .7em;padding-bottom:.25em;border-bottom:1px solid var(--rule)}:root[data-theme=report] .kind-tag{display:block;font-size:.74em;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.25em}:root[data-theme=report] .theme-toggle{font-family:var(--font-sans);background:var(--card);color:var(--fg);border:1px solid var(--rule)}:root[data-theme=report] .theme-toggle .swatch{background:var(--accent)}.site-footer[data-astro-cid-sckkx6r4]{margin-top:4rem;padding-top:1.25rem;border-top:1px solid var(--border);text-align:center;font-size:.8rem;color:var(--text-muted)}.site-footer[data-astro-cid-sckkx6r4] a[data-astro-cid-sckkx6r4]{color:inherit}
