﻿@font-face{font-family:cormorant garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-latin-ext.woff2)format("woff2");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:cormorant garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-latin.woff2)format("woff2");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:cormorant garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600-latin-ext.woff2)format("woff2");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:cormorant garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600-latin.woff2)format("woff2");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:lora;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/lora-400-italic-latin-ext.woff2)format("woff2");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:lora;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/lora-400-italic-latin.woff2)format("woff2");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:lora;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lora-400-latin-ext.woff2)format("woff2");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:lora;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lora-400-latin.woff2)format("woff2");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:lora;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/lora-600-latin-ext.woff2)format("woff2");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:lora;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/lora-600-latin.woff2)format("woff2");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-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin-ext.woff2)format("woff2");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-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");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-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin-ext.woff2)format("woff2");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-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");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{--color-bg:#f3f2f2;--color-surface:#eae9e9;--color-text:#201f1d;--color-accent:#b68235;--color-divider:color-mix(in srgb, #201f1d 16%, transparent);--color-neutral-100:#f8f4f4;--color-neutral-200:#eae7e7;--color-neutral-300:#d7d3d3;--color-neutral-400:#bab6b6;--color-neutral-500:#9b9797;--color-neutral-600:#7d7979;--color-neutral-700:#605d5d;--color-neutral-800:#444141;--color-neutral-900:#2d2b2b;--color-accent-100:#fff3e4;--color-accent-200:#ffe3bf;--color-accent-300:#facb8d;--color-accent-400:#e1ad66;--color-accent-500:#c28d41;--color-accent-600:#a06f24;--color-accent-700:#7d5411;--color-accent-800:#5a3b0a;--color-accent-900:#3a270d;--accent-text:var(--color-accent-700);--accent-strong:var(--color-accent-600);--font-heading:"Cormorant Garamond", Georgia, "Times New Roman", serif;--font-heading-weight:600;--font-body:"Lora", Georgia, "Times New Roman", serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--display:clamp(36px, 6.4vw, 68px);--title:clamp(25px, 3.4vw, 38px);--h2:clamp(23px, 2.8vw, 33px);--h3:clamp(19px, 2vw, 23px);--read-scale:1;--body:calc(clamp(16.5px, 0.4vw + 15px, 18.5px) * var(--read-scale));--space-1:4.6px;--space-2:9.2px;--space-3:13.8px;--space-4:18.4px;--space-6:27.6px;--space-8:36.8px;--radius-sm:2px;--radius-md:4px;--radius-lg:7px;--shadow-sm:0 1px 2px color-mix(in srgb, #2d2b2b 14%, transparent);--shadow-md:0 3px 10px color-mix(in srgb, #2d2b2b 16%, transparent);--shadow-lg:0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent);--shell:1180px;--pad:clamp(18px, 4.5vw, 52px);--gut:clamp(26px, 4vw, 60px);--feed-cols:minmax(0, 1fr) 280px;--read-cols:210px minmax(0, 1fr);--pair:repeat(2, minmax(0, 1fr));--text-align:justify;--header-h:64px;--syntax-comment:var(--faint);--syntax-keyword:var(--color-accent-700);--syntax-string:#3f6b45;--syntax-number:#6b4a86;--syntax-function:#2f5d7c;--syntax-punct:var(--muted);--tap:200ms ease;--mark:350ms cubic-bezier(0.2, 0.7, 0.2, 1);--enter:600ms cubic-bezier(0.2, 0.7, 0.2, 1);--view:300ms ease;--theme-fade:400ms ease}body{--muted:color-mix(in srgb, var(--color-text) 76%, transparent);--faint:color-mix(in srgb, var(--color-text) 64%, transparent)}body[data-theme=dark]{--color-bg:#1a1917;--color-surface:#272420;--color-text:#efeae2;--color-accent:#e1ad66;--color-divider:color-mix(in srgb, #efeae2 20%, transparent);--accent-text:var(--color-accent-300);--accent-strong:var(--color-accent-300);--syntax-keyword:var(--color-accent-300);--syntax-string:#a8c9a4;--syntax-number:#c9b3ea;--syntax-function:#9dc4e2;--shadow-sm:0 1px 2px rgb(0 0 0 / 0.5);--shadow-md:0 3px 12px rgb(0 0 0 / 0.55);--shadow-lg:0 14px 36px rgb(0 0 0 / 0.6)}@media(prefers-color-scheme:dark){body:not([data-theme]){--color-bg:#1a1917;--color-surface:#272420;--color-text:#efeae2;--color-accent:#e1ad66;--color-divider:color-mix(in srgb, #efeae2 20%, transparent);--accent-text:var(--color-accent-300);--accent-strong:var(--color-accent-300);--syntax-keyword:var(--color-accent-300);--syntax-string:#a8c9a4;--syntax-number:#c9b3ea;--syntax-function:#9dc4e2;--shadow-sm:0 1px 2px rgb(0 0 0 / 0.5);--shadow-md:0 3px 12px rgb(0 0 0 / 0.55);--shadow-lg:0 14px 36px rgb(0 0 0 / 0.6)}}@media(max-width:1024px){:root{--feed-cols:minmax(0, 1fr);--read-cols:minmax(0, 1fr)}}@media(max-width:700px){:root{--text-align:left;--pair:minmax(0, 1fr)}}@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased;transition:background-color var(--theme-fade),color var(--theme-fade)}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-2);font-family:var(--font-heading);font-weight:var(--font-heading-weight);line-height:1.12;letter-spacing:-.015em}p{margin:0 0 var(--space-3)}img{display:block;max-width:100%}figure{margin:0}ul,ol{margin:0 0 var(--space-3);padding-left:var(--space-4)}a{color:var(--accent-text);text-decoration:none;text-underline-offset:3px;transition:color var(--tap)}a:hover{color:var(--accent-strong)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--color-accent) 30%,transparent)}.tnum{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.kicker{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:10.5px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text)}.eyebrow{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.rule-ink{border-bottom:1px solid var(--color-text)}.rule-hair{border-bottom:1px solid var(--color-divider)}.hr{height:1px;border:0;margin:var(--space-4)0;background:var(--color-divider)}.section-head{display:flex;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-text)}.section-head h2{margin:0;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.section-head__count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--faint);font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;text-decoration:none;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:14px;line-height:1.2;color:var(--color-text);background:0 0;border:1px solid transparent;padding:var(--space-2)calc(var(--space-3)*1.2);border-radius:var(--radius-md);transition:background-color var(--tap),border-color var(--tap),color var(--tap)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:var(--accent-text);border-color:var(--color-accent)}.btn-primary:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--accent-text)}.btn-primary:active{background:color-mix(in srgb,var(--color-accent) 22%,transparent)}.btn-secondary{border-color:var(--color-divider);color:var(--color-text)}.btn-secondary:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent);color:var(--color-text)}.btn-secondary:active{background:color-mix(in srgb,var(--color-text) 14%,transparent)}.btn-ghost{color:var(--accent-text);padding-inline:var(--space-1)}.btn-ghost:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.btn-icon{width:36px;height:36px;padding:0}.btn-block{width:100%;margin-top:var(--space-2)}.btn-mono{font-family:var(--font-mono);font-size:11px;font-weight:400;letter-spacing:.08em}.input{width:100%;min-height:36px;padding:6px 10px;font:inherit;font-size:14px;color:var(--color-text);caret-color:var(--color-accent);background:0 0;border:1px solid var(--color-divider);border-radius:var(--radius-md);transition:border-color var(--tap)}.input:hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}.input-mono{font-family:var(--font-mono);font-size:13px}.tag{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.02em;padding:3px 10px;border-radius:calc(var(--radius-md)*.75);transition:border-color var(--tap),color var(--tap),background-color var(--tap)}.tag-accent{background:var(--color-accent-100);color:var(--color-accent-800)}.tag-neutral{background:var(--color-neutral-100);color:var(--color-neutral-800)}.tag-outline{border:1px solid var(--color-accent);color:var(--accent-text)}.tag-pill{display:inline-flex;align-items:center;min-height:32px;padding:3px 10px;border:1px solid var(--color-divider);border-radius:calc(var(--radius-md)*.75);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--muted);transition:border-color var(--tap),color var(--tap),background-color var(--tap)}.tag-pill:hover{border-color:var(--color-accent);color:var(--accent-text);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.tag-pill[aria-current=page],.tag-pill--active{border-color:var(--color-accent);color:var(--accent-text);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:0 0;color:var(--color-text);transition:border-color 250ms ease,transform 250ms cubic-bezier(.2,.7,.2,1)}.card:hover{border-color:var(--color-accent);transform:translateY(-2px);color:var(--color-text)}.card-kicker{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-text)}.card-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px;line-height:1.2}.plate{box-sizing:border-box;filter:sepia(.22)saturate(.82)contrast(1.05);border:6px solid var(--color-surface);outline:1px solid var(--color-divider);transition:outline-color var(--view)}a:hover>.plate,.plate-link:hover .plate{outline-color:var(--color-accent)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:var(--space-2);border-bottom:1px solid var(--color-divider)}.table td{padding:var(--space-2);color:var(--muted);border-bottom:1px solid var(--color-divider)}.ad-slot{margin-bottom:clamp(32px,5vw,54px)}.ad-slot__label{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}.ad-slot__id{letter-spacing:.08em;text-transform:none}.ad-slot__frame{display:grid;place-items:center;min-height:96px;border:1px solid var(--color-divider);border-radius:var(--radius-md);background-image:repeating-linear-gradient(135deg,transparent 0 8px,var(--color-divider) 8px 8.6px);overflow:hidden}.ad-slot--endcap .ad-slot__frame{min-height:180px}.ad-slot__frame .adsbygoogle{width:100%}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-top:var(--space-6)}.pagination__count{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}.pagination .btn{min-height:44px}.diamond{width:5px;height:5px;flex:none;transform:rotate(45deg);background:var(--color-accent)}.shell{max-width:var(--shell);margin:0 auto;padding:0 var(--pad)}.skip-link{position:fixed;top:8px;left:8px;z-index:200;transform:translateY(-200%);background:var(--color-text);color:var(--color-bg);padding:10px 14px;border-radius:var(--radius-md);font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;transition:transform var(--tap)}.skip-link:focus{transform:translateY(0);color:var(--color-bg)}.read-progress{position:fixed;top:0;left:0;width:0;height:2px;z-index:96;background:var(--color-accent);transition:width 100ms linear}.site-header{position:sticky;top:0;z-index:80;background:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-divider)}.site-header__bar{max-width:var(--shell);margin:0 auto;padding:0 var(--pad);height:var(--header-h);display:flex;align-items:center;gap:var(--space-4)}.site-brand{display:flex;align-items:baseline;gap:8px;color:var(--color-text)}.site-brand:hover{color:var(--color-text)}.site-brand__word{font-family:var(--font-heading);font-weight:600;font-size:24px;letter-spacing:-.01em}.site-brand__mark{width:5px;height:5px;transform:rotate(45deg);background:var(--color-accent);margin-bottom:4px;transition:transform var(--mark)}.site-brand:hover .site-brand__mark{transform:rotate(135deg)}.site-nav{display:flex;gap:var(--space-4);margin-left:var(--space-6)}.site-nav__link{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-bottom:2px;border-bottom:1px solid transparent}.site-nav__link:hover{color:var(--color-text)}.site-nav__link--active{color:var(--color-text);border-bottom-color:var(--color-accent)}.site-header__actions{margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}.site-menu-button{display:none;font-family:var(--font-mono);font-size:15px}.site-sheet{border-top:1px solid var(--color-divider);padding:var(--space-2)var(--pad)var(--space-4);display:flex;flex-direction:column;animation:fade 200ms ease both}.site-sheet[hidden]{display:none}.site-sheet a{min-height:44px;display:flex;align-items:center;font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text);border-bottom:1px solid var(--color-divider)}.site-sheet a:last-child{border-bottom:0}@media(max-width:760px){.site-nav{display:none}.site-menu-button{display:inline-flex}}.app-content{display:block;animation:fade var(--view)ease both}.app-content:focus{outline:none}.site-footer{border-top:1px solid var(--color-divider);margin-top:auto}.site-footer__inner{max-width:var(--shell);margin:0 auto;padding:var(--space-6)var(--pad);display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.site-footer__inner p{margin:0;font-size:14px;color:var(--muted)}.site-footer__links{display:flex;gap:var(--space-3);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.breadcrumb{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--color-text)}.breadcrumb__current{color:var(--accent-text)}.enter{animation:rise var(--enter)both}.enter-delayed{animation:rise var(--enter)both;animation-delay:70ms}.article-page{display:block}.article-shell{max-width:var(--shell);margin:0 auto;padding:0 var(--pad)}.article-hero{padding:clamp(34px,5vw,62px)0 var(--space-6);border-bottom:1px solid var(--color-divider)}.article-breadcrumb{margin:0 0 var(--space-4);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px}.article-breadcrumb a{color:var(--muted)}.article-breadcrumb a:hover{color:var(--color-text)}.article-breadcrumb .eyebrow{margin:0;color:var(--accent-text);font-size:inherit;letter-spacing:inherit}.article-hero h1{margin:0 0 var(--space-4);font-family:var(--font-heading);font-weight:400;font-size:clamp(32px,5.4vw,58px);line-height:1.04;letter-spacing:-.02em;max-width:24ch}.article-summary{margin:0 0 var(--space-4);font-size:19.5px;line-height:1.6;color:var(--muted);max-width:58ch}.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)var(--space-4);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-variant-numeric:tabular-nums}.article-disclosure-chip{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.article-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.article-feature{margin:var(--space-6)0 clamp(32px,5vw,54px)}.article-feature img{aspect-ratio:21/9;width:100%;object-fit:cover;background:var(--color-surface)}.article-layout{display:grid;grid-template-columns:var(--read-cols);gap:var(--gut);padding-bottom:clamp(48px,7vw,88px)}.article-main{min-width:0}.article-sidebar{min-width:0}.article-sidebar__inner{position:sticky;top:calc(var(--header-h) + 64px)}.article-sidebar h2{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:10px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}.article-toc{display:flex;flex-direction:column;border-left:1px solid var(--color-divider);margin-bottom:var(--space-4)}.article-toc a{padding:6px 0 6px 14px;margin-left:-1px;border-left:1px solid transparent;font-size:14.5px;line-height:1.35;color:var(--muted);transition:color var(--tap),border-color var(--tap)}.article-toc a:hover{color:var(--color-text)}.article-toc a[aria-current=true]{border-left-color:var(--color-accent);color:var(--accent-text)}.article-tools{display:flex;gap:6px}.article-tools .btn{flex:1;min-height:40px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em}.article-aside-block{margin-top:var(--space-6)}.related-list{list-style:none;margin:0;padding:0}.related-list li{padding:var(--space-2)0;border-bottom:1px solid var(--color-divider);font-size:14.5px;line-height:1.4}.article-prose{min-width:0;max-width:68ch;font-size:var(--body);line-height:1.74}.article-prose>p{margin:0 0 var(--space-4);text-align:var(--text-align);hyphens:auto}.article-prose h2{margin:var(--space-8)0 var(--space-4);font-family:var(--font-heading);font-weight:600;font-size:var(--h2);line-height:1.14;letter-spacing:-.01em;scroll-margin-top:130px}.article-prose h2:first-child{margin-top:0}.article-prose h3{margin:var(--space-6)0 var(--space-3);font-family:var(--font-heading);font-weight:600;font-size:var(--h3);line-height:1.2;letter-spacing:0;scroll-margin-top:130px}.article-prose a{text-decoration:underline}.article-prose em{font-style:italic}.article-prose strong{font-weight:600}.article-prose ul{margin:0 0 var(--space-6);padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.article-prose ul>li{position:relative;padding-left:22px}.article-prose ul>li::before{content:"—";position:absolute;left:0;top:0;color:var(--accent-text);font-family:var(--font-mono);font-size:13px}.article-prose ol{margin:0 0 var(--space-6);padding-left:var(--space-6)}.article-prose ol>li{margin-bottom:var(--space-2)}.article-prose blockquote{margin:0 0 var(--space-6);padding:var(--space-4)0;border-top:1px solid var(--color-accent);border-bottom:1px solid var(--color-accent);font-family:var(--font-heading);font-weight:400;font-size:24px;line-height:1.32;font-style:italic}.article-prose blockquote p:last-child{margin-bottom:0}.article-prose img{margin:0 0 var(--space-6)}.article-prose table{width:100%;border-collapse:collapse;font-size:15px;margin:0 0 var(--space-6)}.article-prose th{text-align:left;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:var(--space-2);border-bottom:1px solid var(--color-divider)}.article-prose td{padding:var(--space-2);color:var(--muted);border-bottom:1px solid var(--color-divider)}.article-prose :not(pre)>code{font-family:var(--font-mono);font-size:.86em;border:1px solid var(--color-divider);border-radius:var(--radius-sm);padding:1px 5px}.article-prose pre{margin:0 0 var(--space-6);border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden;background:0 0}.article-prose pre>code{display:block;padding:14px 16px;overflow-x:auto;font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--color-text);background:0 0;font-variant-numeric:tabular-nums}.code-block{margin:0 0 var(--space-6);border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden}.code-block pre{margin:0;border:0;border-radius:0}.code-block__chrome{display:flex;align-items:center;gap:var(--space-2);padding:7px 12px;border-bottom:1px solid var(--color-divider)}.code-block__lang{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.code-block__copy{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em}.article-prose .mermaid,.article-prose .graph{display:flex;align-items:center;justify-content:center;min-height:120px;margin:0 0 var(--space-6);overflow-x:auto}.article-prose pre[class*=language-],.article-prose code[class*=language-]{color:var(--color-text);background:0 0;text-shadow:none}.article-prose .token{background:0 0}.article-prose .token.comment,.article-prose .token.prolog,.article-prose .token.doctype,.article-prose .token.cdata{color:var(--syntax-comment);font-style:italic}.article-prose .token.punctuation,.article-prose .token.operator,.article-prose .token.entity,.article-prose .token.url{color:var(--syntax-punct)}.article-prose .token.keyword,.article-prose .token.atrule,.article-prose .token.rule,.article-prose .token.important,.article-prose .token.tag,.article-prose .token.selector{color:var(--syntax-keyword);font-weight:600}.article-prose .token.string,.article-prose .token.char,.article-prose .token.attr-value,.article-prose .token.regex,.article-prose .token.inserted{color:var(--syntax-string)}.article-prose .token.number,.article-prose .token.boolean,.article-prose .token.constant,.article-prose .token.symbol,.article-prose .token.variable,.article-prose .token.deleted{color:var(--syntax-number)}.article-prose .token.function,.article-prose .token.class-name,.article-prose .token.builtin,.article-prose .token.property,.article-prose .token.attr-name{color:var(--syntax-function)}.article-disclosure{margin:0 0 var(--space-6);border-top:1px solid var(--color-divider);padding-top:var(--space-3)}.article-disclosure__label{margin:0 0 var(--space-2);font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}.article-disclosure p{margin:0;font-size:14.5px;line-height:1.6;color:var(--muted)}.article-pager{display:grid;grid-template-columns:var(--pair);gap:var(--space-3);margin-top:var(--space-6)}.article-pager__next{text-align:right}.article-related{border-top:1px solid var(--color-text);padding:var(--space-4)0 clamp(50px,7vw,88px)}.article-related h2{margin:0 0 var(--space-4);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.article-related__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-4)}.article-related__item{display:block;padding-top:var(--space-3);border-top:1px solid var(--color-divider);color:var(--color-text)}.article-related__item:hover{color:var(--accent-text)}.article-related__tag{display:block;margin-bottom:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.article-related__title{display:block;font-family:var(--font-heading);font-weight:600;font-size:19px;line-height:1.18}@media(max-width:1024px){.article-sidebar{order:2}.article-sidebar__inner{position:static}.article-toc{display:none}}.draft-flag{display:inline-block;margin:0 0 var(--space-4);padding:2px 10px;border:1px solid #b00;border-radius:var(--radius-sm);color:#b00;font-family:var(--font-mono);font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.search-head{max-width:720px;padding:clamp(38px,6vw,76px)0 var(--space-6)}.search-head h1{margin:0 0 var(--space-4);font-family:var(--font-heading);font-weight:400;font-size:clamp(30px,4.4vw,46px);line-height:1.05;letter-spacing:-.02em}.search-form{display:flex;gap:var(--space-2);align-items:stretch}.search-form .input{font-family:var(--font-mono);font-size:15px;min-height:48px}.search-form .btn{min-height:48px;padding-inline:var(--space-4);white-space:nowrap}.search-hint{margin:var(--space-3)0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-variant-numeric:tabular-nums}.search-filter{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-text)}.search-filter__label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);align-self:center}.search-results{padding-bottom:clamp(46px,7vw,84px)}.search-result{display:block;max-width:780px;padding:var(--space-4)0;border-bottom:1px solid var(--color-divider);color:var(--color-text)}.search-result__meta{margin:0 0 5px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-variant-numeric:tabular-nums}.search-result h2{margin:0 0 6px;font-family:var(--font-heading);font-weight:600;font-size:22px;line-height:1.18;letter-spacing:-.01em}.search-result h2 a{color:var(--color-text)}.search-result h2 a:hover{color:var(--color-accent)}.search-result>p{margin:0;font-size:15.5px;line-height:1.62;color:var(--muted)}.search-result mark{background:color-mix(in srgb,var(--color-accent) 18%,transparent);color:var(--accent-text)}.search-result__tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.search-result__tags a{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.search-result__tags a:hover{color:var(--accent-text)}.search-results__header{padding:var(--space-4)0 var(--space-2)}.search-results__header h2{margin:0;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.search-state{padding:var(--space-6)0;border-top:1px solid var(--color-divider)}.search-state h2{margin:0 0 var(--space-2);font-family:var(--font-heading);font-weight:600;font-size:22px;line-height:1.2}.search-state p{margin:0;font-size:15.5px;color:var(--muted)}.search-closing{margin:var(--space-6)0 0;font-family:var(--font-mono);font-size:11px;color:var(--faint)}.article-prose .z-l-1.z-d-4{color:var(--syntax-number)}.article-prose .z-l-2.z-d-6,.article-prose .z-l-2.z-d-9{color:var(--syntax-string)}.article-prose .z-l-3.z-d-5{color:var(--syntax-keyword);font-weight:600}.article-prose .z-l-5.z-d-3{color:var(--syntax-comment);font-style:italic}.article-prose .z-l-6.z-d-7{color:var(--syntax-function)}.article-prose .z-l-8.z-d-10{color:var(--syntax-keyword);font-weight:600}.article-prose .z-l-9.z-d-12{color:var(--syntax-number)}