@layer reset{*,:before,:after{box-sizing:border-box}:where(:not(dialog,[popover])){margin:0}*{min-inline-size:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}body{overflow-wrap:break-word}img,picture,video,canvas,svg,iframe{max-inline-size:100%}img,video,svg{block-size:auto}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}h1,h2,h3,h4,h5,h6{text-wrap:balance}p,li,dd,dt,figcaption,blockquote{text-wrap:pretty}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}}@layer tokens{:root{color-scheme:light dark;--p-ink-975:oklch(17.3604% .026858 263.512);--p-ink-950:oklch(18.3113% .030892 263.383);--p-ink-950-a94:oklch(18.3113% .030892 263.383/.94);--p-ink-900:oklch(21.0084% .031763 264.665);--p-ink-900-a84:oklch(21.0084% .031763 264.665/.84);--p-ink-900-a66:oklch(21.0084% .031763 264.665/.66);--p-ink-900-a16:oklch(21.0084% .031763 264.665/.16);--p-ink-900-a12:oklch(21.0084% .031763 264.665/.12);--p-ink-900-a09:oklch(21.0084% .031763 264.665/.09);--p-white:oklch(100% 0 0);--p-white-a78:oklch(100% 0 0/.78);--p-white-a60:oklch(100% 0 0/.6);--p-white-a16:oklch(100% 0 0/.16);--p-white-a08:oklch(100% 0 0/.08);--p-black-a22:oklch(0% 0 0/.22);--p-neutral-50:oklch(98.4152% .003413 247.858);--p-neutral-75:oklch(96.9953% .002872 264.542);--p-neutral-75-a94:oklch(96.9953% .002872 264.542/.94);--p-neutral-100:oklch(95.9546% .007959 253.853);--p-neutral-200:oklch(92.7582% .005814 264.531);--p-neutral-350:oklch(76.681% .024188 258.367);--p-neutral-400:oklch(71.0672% .035114 256.788);--p-neutral-600:oklch(48.3663% .03246 253.432);--p-neutral-650:oklch(44.6112% .026312 256.802);--p-blue-300:oklch(80.9069% .095598 251.813);--p-blue-400:oklch(71.374% .143381 254.624);--p-blue-400-a35:oklch(71.374% .143381 254.624/.35);--p-blue-600:oklch(54.615% .215208 262.881);--p-blue-620:oklch(52.6% .215208 262.881);--p-blue-600-a14:oklch(54.615% .215208 262.881/.14);--p-blue-600-a10:oklch(54.615% .215208 262.881/.1);--p-blue-600-a40:oklch(54.615% .215208 262.881/.4);--p-blue-700:oklch(48.8198% .217165 264.376);--p-red-500:oklch(65.061% .220291 27.7092);--color-bg:light-dark(var(--p-neutral-75),var(--p-ink-950));--color-surface:light-dark(var(--p-white),var(--p-ink-900));--color-surface-raised:light-dark(var(--p-white),var(--p-ink-900));--color-header:light-dark(var(--p-neutral-75-a94),var(--p-ink-950-a94));--color-text:light-dark(var(--p-ink-900),var(--p-white));--color-text-body:light-dark(var(--p-ink-900-a84),var(--p-white-a78));--color-text-muted:light-dark(var(--p-ink-900-a66),var(--p-white-a60));--color-text-subtle:light-dark(var(--p-neutral-650),var(--p-neutral-350));--color-border:light-dark(var(--p-ink-900-a16),var(--p-white-a16));--color-border-subtle:light-dark(var(--p-ink-900-a09),var(--p-white-a08));--color-accent:light-dark(var(--p-blue-700),var(--p-blue-400));--color-accent-soft:light-dark(var(--p-blue-620),var(--p-blue-300));--color-accent-surface:light-dark(var(--p-blue-600-a10),var(--p-blue-600-a14));--color-accent-border:light-dark(var(--p-blue-600-a40),var(--p-blue-400-a35));--color-focus:light-dark(var(--p-blue-700),var(--p-blue-300));--color-progress:light-dark(var(--p-red-500),var(--p-red-500));--shadow-raised:0 20px 50px light-dark(var(--p-ink-900-a12),var(--p-black-a22));--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback", "Public Sans", sans-serif;--font-body:"Public Sans", "Public Sans Fallback", system-ui, sans-serif;--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback", ui-monospace, monospace;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-heading:-.035em;--tracking-label:.16em;--leading-body:1.65;--leading-tight:1.15;--leading-display:.98;--leading-snug:1.3;--leading-code:1.6;--text-xs:clamp(.75rem, .725rem + .125vw, .875rem);--text-sm:clamp(.875rem, .85rem + .125vw, 1rem);--text-base:clamp(1.0625rem, 1rem + .3vw, 1.1875rem);--text-lg:clamp(1.1875rem, 1.15rem + .1875vw, 1.375rem);--text-xl:clamp(1.375rem, 1.3rem + .375vw, 1.75rem);--text-2xl:clamp(1.875rem, 4vw, 2.875rem);--text-3xl:clamp(2rem, 4.5vw, 3.25rem);--text-4xl:clamp(2.75rem, 7.5vw, 5.75rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-gutter:clamp(1.25rem, 5vw, 3rem);--space-section:clamp(3rem, 8vw, 6rem);--prose-flow:1.25em;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-pill:999rem;--measure-prose:46rem;--measure-wide:64rem;--measure-page:71.25rem;--toc-width:14rem;--tap-size:2.75rem;--header-height:3.5rem;--border-width:1px;--focus-width:.1875rem;--focus-offset:.1875rem;--z-progress:1;--z-header:50;--z-back-to-top:60;--z-skip-link:70;--dur-fast:.13s;--dur-base:.16s;--ease-out:ease-out;--code-bg:light-dark(var(--p-neutral-50),var(--p-ink-975));--code-toolbar-bg:light-dark(var(--p-neutral-100),var(--p-ink-900));--code-text:light-dark(var(--p-ink-900),var(--p-neutral-200));--code-muted:light-dark(var(--p-neutral-600),var(--p-neutral-400));--code-border:var(--color-border);--code-inline-scale:.85;--code-block-scale:.85;--code-font-size:calc(var(--text-base) * var(--code-block-scale));--code-inline-size:calc(var(--code-inline-scale) * 1em);--leading-code-inline:1;--code-inline-bg:var(--color-accent-surface);--code-inline-text:light-dark(var(--p-blue-700),var(--p-blue-300));--table-border:var(--color-border);--table-head-bg:var(--color-surface);--table-stripe:var(--color-border-subtle);--kbd-bg:var(--color-surface-raised);--kbd-border:var(--color-border);--paint-in-light:light-dark(currentColor,#0000);--paint-in-dark:light-dark(#0000,currentColor);--frame-dark:var(--p-ink-975);--frame-light:var(--p-white);--bg:var(--color-surface);--w88:var(--color-text);--w7:var(--color-text-body);--w55:var(--color-text-muted);--w5:var(--color-text-muted);--w45:var(--color-text-subtle);--w42:var(--color-border);--ab4:var(--color-accent);--ok:var(--color-accent);--okb5:var(--color-accent-border)}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}@media print{:root,[data-theme=dark]{color-scheme:light;--text-print-root:87.5%}}@media (prefers-reduced-motion:reduce){:root{--dur-fast:.01ms;--dur-base:.01ms}}@media (prefers-contrast:more){:root{--color-text-body:var(--color-text);--color-text-muted:light-dark(var(--p-ink-900-a84),var(--p-white-a78));--color-text-subtle:light-dark(var(--p-ink-900-a66),var(--p-white-a60));--color-border:light-dark(var(--p-ink-900-a66),var(--p-white-a60));--color-border-subtle:light-dark(var(--p-ink-900-a16),var(--p-white-a16))}}@media (forced-colors:active){:root{--color-progress:Highlight}}}@layer base{@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/bricolage-grotesque-latin.woff2)format("woff2")}@font-face{font-family:Public Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/public-sans-latin.woff2)format("woff2")}@font-face{font-family:Public Sans;font-style:italic;font-weight:400 600;font-display:swap;src:url(/assets/fonts/public-sans-latin-italic.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-500.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-600.woff2)format("woff2")}@font-face{font-family:Public Sans Fallback;font-style:normal;src:local(Arial),local(ArialMT),local(Liberation Sans),local(LiberationSans);size-adjust:105.23%;ascent-override:90.28%;descent-override:21.38%;line-gap-override:0%}@font-face{font-family:Public Sans Fallback;font-style:italic;src:local(Arial Italic),local(Arial-ItalicMT),local(Liberation Sans Italic),local(LiberationSans-Italic);size-adjust:105.23%;ascent-override:90.28%;descent-override:21.38%;line-gap-override:0%}@font-face{font-family:Bricolage Grotesque Fallback;font-weight:400 600;src:local(Arial),local(ArialMT),local(Liberation Sans),local(LiberationSans);size-adjust:100.81%;ascent-override:92.26%;descent-override:26.78%;line-gap-override:0%}@font-face{font-family:Bricolage Grotesque Fallback;font-weight:601 800;src:local(Arial Bold),local(Arial-BoldMT),local(Liberation Sans Bold),local(LiberationSans-Bold);size-adjust:91.88%;ascent-override:101.22%;descent-override:29.39%;line-gap-override:0%}@font-face{font-family:IBM Plex Mono Fallback;src:local(Courier New),local(CourierNewPSMT),local(Liberation Mono),local(LiberationMono);size-adjust:100%;ascent-override:102.5%;descent-override:27.5%;line-gap-override:0%}html{background:var(--color-bg);scroll-padding-block-start:calc(var(--header-height) + var(--space-10))}@media (prefers-reduced-motion:no-preference){html:focus-within{scroll-behavior:smooth}}body{min-block-size:100svh;color:var(--color-text-body);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-normal);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;display:flex}h1,h2,h3,h4,h5,h6{color:var(--color-text)}h1,h2{font-family:var(--font-display);font-weight:var(--weight-bold);line-height:var(--leading-tight)}h1{font-size:var(--text-3xl);letter-spacing:var(--tracking-heading)}h2{font-size:var(--text-2xl);letter-spacing:var(--tracking-heading)}h3,h4{font-family:var(--font-display);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5,h6{font-family:var(--font-body);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}h5{font-size:var(--text-base)}h6{font-size:var(--text-sm)}code,kbd,samp,pre{font-family:var(--font-mono);font-variant-ligatures:none}a{color:var(--color-accent);text-decoration-color:var(--color-accent-border);text-underline-offset:.2em}a:hover{color:var(--color-accent-soft);text-decoration-color:var(--color-accent-soft)}a,button{-webkit-tap-highlight-color:var(--color-accent-surface)}button:where(:not(:disabled)),summary,[role=button]{cursor:pointer}button,[role=button],select,textarea,summary,input:where(:not([type=hidden],[type=checkbox],[type=radio],[type=range])),a:where(:not(.prose a)){min-inline-size:var(--tap-size);min-block-size:var(--tap-size)}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}::selection{background:var(--color-accent);color:var(--color-bg)}.skip-link{z-index:var(--z-skip-link);min-block-size:var(--tap-size);padding-block:var(--space-2);padding-inline:var(--space-4);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-raised);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);align-items:center;text-decoration:none;display:inline-flex;position:fixed;inset-block-start:var(--space-3);inset-inline-start:var(--space-3);translate:0 -200%}.skip-link:focus,.skip-link:focus-visible{translate:none}.eyebrow{margin:0 0 var(--space-4);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-normal);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-subtle)}@media (forced-colors:active){button[aria-pressed=true]{text-underline-offset:.2em;text-decoration:underline 2px}}}@layer expressive-code;@layer layout{.page{inline-size:100%;min-inline-size:0;max-inline-size:var(--measure-page);padding-inline:env(safe-area-inset-left,0) env(safe-area-inset-right,0);flex:1 0 auto;margin-inline:auto}.page>*{min-inline-size:0}.content-grid{grid-template-columns: [full-start] var(--space-gutter) [wide-start content-start] minmax(0, 1fr) [content-end wide-end] var(--space-gutter) [full-end];display:grid;container-type:inline-size}.content-grid>*{grid-column:content;min-inline-size:0}.content-grid>.wide{grid-column:wide}.content-grid>.full-bleed{grid-column:full}@media (width<40rem){.content-grid>:is(.wide,.full-bleed):not(.content-grid,:has(>.content-grid)){grid-column:content}}.section{padding-block:var(--space-section)}.section+.section{padding-block-start:0}.article{--wide-floor:6rem;--wide-room:max(0px, calc(100% - var(--measure-prose) - 2 * var(--space-gutter)));--wide-extra:min(calc(var(--measure-wide) - var(--measure-prose)), var(--wide-room), max(0px, calc((var(--wide-room) - var(--wide-floor)) * 9999)));--article-columns:[full-start] var(--space-gutter) [wide-start content-start] minmax(0, var(--measure-prose)) [content-end] var(--wide-extra) [wide-end] minmax(var(--space-gutter), 1fr) [full-end];grid-template-columns:var(--article-columns);row-gap:var(--space-10);padding-block-end:var(--space-section)}.article:not(:has(>[data-landing])){--wide-room:0px}.article>[data-landing]~.adjacent-nav{grid-column:wide}.article>:empty{display:none}.article.content-grid>.content-grid{grid-column:full;grid-template-columns:var(--article-columns)}.toc{--toc-rail-inset:calc(var(--header-height) + var(--space-6))}@media (width>=80rem){.article:has(>.toc){--article-columns:[full-start] var(--space-gutter) [wide-start content-start] minmax(0, var(--measure-prose)) [content-end] var(--wide-extra) [wide-end] var(--space-10) [toc-start] var(--toc-width) [toc-end] minmax(var(--space-gutter), 1fr) [full-end]}.article:has(>.toc)>.toc{grid-area:1/toc/span 2;align-self:start;position:sticky;inset-block-start:var(--toc-rail-inset)}.article:has(>.toc)>.content-grid{grid-row:2}.article:has(>.toc)>.content-grid>.full-bleed{grid-column:wide}}}@layer components{.op-header{z-index:var(--z-header);border-block-end:1px solid var(--color-border-subtle);background:var(--color-header);backdrop-filter:blur(12px);padding-inline:env(safe-area-inset-left,0) env(safe-area-inset-right,0);position:sticky;inset-block-start:0}.op-header__inner{justify-content:flex-end;align-items:center;gap:clamp(var(--space-4), 3vw, var(--space-8));inline-size:100%;max-inline-size:var(--measure-page);min-block-size:var(--header-height);padding-inline:var(--space-gutter);flex-wrap:wrap;margin-inline:auto;display:flex}.op-header__tools{align-items:center;gap:var(--space-2);flex:none;display:flex}.op-brand{min-block-size:var(--tap-size);padding-inline:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.02em;color:var(--color-text);white-space:nowrap;flex:none;align-items:center;margin-inline-start:calc(var(--space-2) * -1);text-decoration:none;display:inline-flex}.op-brand:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.op-brand__short{display:inline}.op-brand__full{display:none}@media (width>=48rem){.op-brand__short{display:none}.op-brand__full{display:inline}}.op-app-nav{align-items:center;gap:clamp(var(--space-3), 2vw, var(--space-5));white-space:nowrap;min-inline-size:0;margin-inline-start:auto;display:flex}.op-app-nav a{min-inline-size:var(--tap-size);min-block-size:var(--tap-size);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.op-app-nav a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.op-app-nav a[aria-current=page],.op-app-nav a.is-active{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.45rem;text-decoration-thickness:2px}@media (hover:hover) and (pointer:fine){.op-app-nav a:hover{color:var(--color-text)}}.op-theme-toggle{inline-size:var(--tap-size);block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.op-theme-toggle:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.op-theme-toggle__icon{inline-size:var(--space-4);block-size:var(--space-4);fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;display:block}.op-theme-toggle__sun{stroke:var(--paint-in-light)}.op-theme-toggle__moon{stroke:var(--paint-in-dark)}@media (hover:hover) and (pointer:fine){.op-theme-toggle:hover{border-color:var(--color-accent-border);color:var(--color-text)}}@media (width<64rem){.op-header__inner,.op-app-nav{gap:var(--space-3)}}@media (width<48rem){.op-header__inner,.op-header__tools{gap:var(--space-1)}.op-app-nav{gap:var(--space-2)}.op-app-nav a{letter-spacing:0}}.op-reading-progress{z-index:var(--z-progress);block-size:2px;position:absolute;inset-block-end:0;inset-inline:0}.op-reading-progress>span{background:var(--color-progress);transform-origin:0;forced-color-adjust:none;block-size:100%;display:block;transform:scaleX(0)}.op-footer{border-block-start:1px solid var(--color-border-subtle);padding-inline:env(safe-area-inset-left,0) env(safe-area-inset-right,0);font-family:var(--font-mono);padding-block-end:env(safe-area-inset-bottom,0)}.op-footer__inner{justify-content:space-between;gap:var(--space-8);inline-size:100%;max-inline-size:var(--measure-page);padding-block:var(--space-10);padding-inline:var(--space-gutter);margin-inline:auto;display:flex}.op-footer__inner>*{min-inline-size:0}.op-footer__brand{font-size:var(--text-xs);color:var(--color-text);margin:0}.op-footer__note{max-inline-size:var(--measure-prose);margin:var(--space-1) 0 0;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-body);color:var(--color-text-muted)}.op-footer__links{align-items:center;gap:var(--space-2);flex:none;margin-block:0;padding:0;list-style:none;display:flex}.op-footer__links a{inline-size:var(--tap-size);block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);transition:color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), background-color var(--dur-base) var(--ease-out);place-items:center;text-decoration:none;display:grid}.op-footer__links svg{inline-size:var(--space-4);block-size:var(--space-4);fill:currentColor}.op-footer__links a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}@media (hover:hover) and (pointer:fine){.op-footer__links a:hover{border-color:var(--color-accent);background:var(--color-accent-surface);color:var(--color-text)}}@media (width<48rem){.op-footer__inner{flex-direction:column}}.back-to-top{z-index:var(--z-back-to-top);min-block-size:var(--tap-size);min-inline-size:var(--tap-size);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out), visibility var(--dur-base) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;line-height:1;text-decoration:none;display:inline-flex;position:fixed;inset-block-end:max(clamp(var(--space-4), 3vw, var(--space-8)), env(safe-area-inset-bottom,0));inset-inline-end:max(clamp(var(--space-4), 3vw, var(--space-8)), env(safe-area-inset-right,0))}.back-to-top[data-visible=true]{opacity:1;visibility:visible;pointer-events:auto}.back-to-top[hidden]{display:none}.back-to-top:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}@media (hover:hover) and (pointer:fine){.back-to-top:hover{border-color:var(--color-accent-border);color:var(--color-text)}}.op-global-search-open{justify-content:center;align-items:center;gap:var(--space-2);min-inline-size:var(--tap-size);block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;flex:none;padding:0;display:inline-flex}.op-global-search-open svg{inline-size:var(--space-4);block-size:var(--space-4);fill:currentColor}.op-global-search-open:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.op-global-search-open__hint{gap:var(--space-1);align-items:center;display:none}.op-global-search-open__hint kbd{min-inline-size:var(--space-5);block-size:var(--space-5);padding-inline:var(--space-1);border:var(--border-width) solid var(--kbd-border);border-radius:var(--radius-sm);background:var(--kbd-bg);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);place-items:center;line-height:1;display:inline-grid}@media (width>=64rem) and (hover:hover) and (pointer:fine){.op-global-search-open{padding-inline:var(--space-3)}.op-global-search-open__hint{display:inline-flex}}@media (hover:hover) and (pointer:fine){.op-global-search-open:hover,.op-global-search-open:hover .op-global-search-open__hint kbd{border-color:var(--color-accent-border);color:var(--color-text)}}.global-search-dialog{inline-size:min(100% - 2 * var(--space-4), var(--measure-wide));border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);max-block-size:min(80vh,44rem);box-shadow:var(--shadow-raised);color:var(--color-text-body);margin:auto;padding:0;overflow:hidden}.global-search-dialog::backdrop{background:var(--color-bg);opacity:.72}.global-search-panel{max-block-size:inherit;flex-direction:column;display:flex}.global-search-header{align-items:start;gap:var(--space-3);padding:var(--space-5);border-block-end:1px solid var(--color-border-subtle);display:flex}.global-search-header h2{font-size:var(--text-lg);line-height:var(--leading-tight);margin:0}.global-search-header p{font-size:var(--text-sm);color:var(--color-text-muted);margin:0}.global-search-header button{min-block-size:var(--tap-size);min-inline-size:var(--tap-size);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;margin-inline-start:auto;display:inline-flex}.global-search-header button:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.global-search-header svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5px;block-size:1em;inline-size:1em}@media (hover:hover) and (pointer:fine){.global-search-header button:hover{color:var(--color-text)}}.global-search-field{align-items:center;gap:var(--space-3);padding-inline:var(--space-5);padding-block:var(--space-3);border-block-end:1px solid var(--color-border-subtle);display:flex}.global-search-field__icon{color:var(--color-text-subtle);display:inline-flex}.global-search-field__icon svg{fill:currentColor;block-size:1em;inline-size:1em}.global-search-field input{min-inline-size:0;min-block-size:var(--tap-size);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:0 0;border:0;flex:1}.global-search-field input::placeholder{color:var(--color-text-subtle)}.global-search-field input::-webkit-search-decoration,.global-search-field input::-webkit-search-cancel-button{display:none}.global-search-field input:focus{outline:none}.global-search-field kbd{padding-inline:var(--space-2);padding-block:var(--space-1);border:1px solid var(--kbd-border);border-radius:var(--radius-sm);background:var(--kbd-bg);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-subtle)}.global-search-scopes{gap:var(--space-2);padding-inline:var(--space-5);padding-block:var(--space-3);overscroll-behavior-inline:contain;scrollbar-width:none;flex:none;display:flex;overflow-x:auto}.global-search-scopes::-webkit-scrollbar{display:none}.global-search-scopes button{min-block-size:var(--tap-size);padding-inline:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;flex:none}.global-search-scopes button:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.global-search-scopes button[aria-pressed=true]{border-color:var(--color-accent-border);background:var(--color-accent-surface);color:var(--color-text)}.global-search-scopes [data-search-count]{color:var(--color-text-subtle);font-weight:var(--weight-medium);letter-spacing:0;margin-inline-start:var(--space-2)}.global-search-scopes button[aria-pressed=true] [data-search-count]{color:var(--color-accent)}.global-search-results{min-block-size:0;padding:var(--space-3) var(--space-5) var(--space-5);overscroll-behavior-block:contain;flex:1;margin:0;list-style:none;overflow-y:auto}.global-search-results li+li{margin-block-start:var(--space-2)}.global-search-results a{padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-body);overflow-wrap:anywhere;border:1px solid #0000;padding-inline-end:calc(var(--space-3) + var(--space-8));text-decoration:none;display:block;position:relative}.global-search-results b[aria-hidden]{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-normal);line-height:var(--leading-snug);color:var(--color-text-subtle);display:block;position:absolute;inset-block-start:var(--space-3);inset-inline-end:var(--space-3)}.global-search-results a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.global-search-results [role=option][aria-selected=true]>a{border-color:var(--color-border-subtle);background:var(--color-surface)}.global-search-results strong,.global-search-results b{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);display:block}.global-search-results p{margin:var(--space-1) 0 0;font-size:var(--text-sm);line-height:var(--leading-body);color:var(--color-text-muted)}.global-search-results mark{background:var(--color-accent-surface);color:var(--color-text)}.global-search-result-meta{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);color:var(--color-text-subtle);flex-wrap:wrap;margin-block-start:var(--space-1);display:flex}.global-search-result-meta i{font-style:normal}.global-search-result-meta i:before{content:"·";margin-inline-end:var(--space-2)}.global-search-result-meta small{font-size:inherit}.global-search-hint{padding-inline:var(--space-5);padding-block:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--color-text-subtle)}.section-shell>h2+.prose{margin-block-start:var(--space-6)}.arc-list{margin-block-start:var(--space-16)}.arc-step{grid-template-columns:var(--space-10) minmax(0, 1fr);column-gap:var(--space-5);padding-block-end:var(--space-12);display:grid;position:relative}.arc-step:before{content:"";inset-block:var(--space-12) 0;inline-size:var(--border-width);background:var(--color-border);position:absolute;inset-inline-start:calc(var(--space-10) / 2);transform:translate(-50%)}.arc-step:last-child{padding-block-end:0}.arc-step:last-child:before{display:none}.arc-number{z-index:1;inline-size:var(--space-10);block-size:var(--space-10);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);place-items:center;display:grid;position:relative}.arc-content{min-inline-size:0}.arc-copy{min-inline-size:0;margin-block-start:var(--space-1)}.arc-copy p{margin:0}.arc-copy strong{color:var(--color-text);font-weight:var(--weight-semibold)}.arc-links{gap:var(--space-2);font-family:var(--font-mono);flex-wrap:wrap;margin-block-start:var(--space-4);display:flex}.arc-links a{min-inline-size:var(--tap-size);min-block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);max-inline-size:100%;padding:var(--space-1) var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);overflow-wrap:anywhere;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.arc-links a:hover{border-color:var(--color-accent);color:var(--color-text)}.arc-arrow{z-index:1;padding:var(--space-1);background:var(--color-bg);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-tight);position:absolute;inset-block-end:calc(var(--space-12) / 2);inset-inline-start:calc(var(--space-10) / 2);transform:translate(-50%,50%)}.spotlight{min-inline-size:0;margin-block-start:var(--space-10);scroll-margin-block-start:var(--space-section)}.spotlight-header{min-inline-size:0;margin-block-end:0}.spotlight-header h3{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);text-wrap:balance;overflow-wrap:break-word}.spotlight-header h3 em{color:var(--color-accent-soft)}.topic-filters{gap:var(--space-2);flex-wrap:wrap;margin-block-start:var(--space-10);display:flex}.topic-filters button,.grid-toggle{min-inline-size:var(--tap-size);min-block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);max-inline-size:100%;padding:var(--space-2) var(--space-4);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);cursor:pointer;overflow-wrap:anywhere;background:0 0;justify-content:center;align-items:center;display:inline-flex}.topic-filters button:hover,.topic-filters button[aria-pressed=true],.grid-toggle:hover{border-color:var(--color-accent);color:var(--color-accent-soft)}.topic-filters button[aria-pressed=true]{background:var(--color-accent-surface)}.filter-status{min-block-size:var(--space-5);margin:var(--space-4) 0 0;color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug)}.grid-toggle-row{justify-content:center;margin-block-start:var(--space-8);display:flex}.grid-toggle{padding:var(--space-2) var(--space-6);border-color:var(--color-accent-border);color:var(--color-accent-soft)}.grid-toggle[hidden]{display:none}.case-grid{grid-template-columns:repeat(auto-fill, minmax(min(calc(var(--measure-wide) / 4), 100%), 1fr));gap:var(--space-4);margin-block-start:var(--space-8);display:grid}.case-card{gap:var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);min-inline-size:0;padding:var(--space-6);background:var(--color-surface);color:var(--color-text-body);text-align:start;cursor:pointer;overflow-wrap:anywhere;flex-direction:column;scroll-margin-block-start:calc(var(--header-height) + var(--space-8));text-decoration:none;display:flex}.case-card[hidden]{display:none}.case-card:hover{border-color:var(--color-accent)}.case-card-featured{border-color:var(--color-accent-border);background:var(--color-accent-surface)}.case-card-number,.case-card-topics,.case-card-action{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);text-transform:lowercase}.case-card-number,.case-card-topics{color:var(--color-text-muted)}.case-card-action{color:var(--color-accent)}.case-card-title{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-snug);text-wrap:balance}.case-card-summary{color:var(--color-text-body);font-size:var(--text-sm);line-height:var(--leading-body)}:is(.case-card,.case-proof) strong{color:var(--color-text);font-weight:var(--weight-semibold)}.case-card-topics{gap:0 var(--space-2);flex-wrap:wrap;margin-block-start:auto;display:flex}.case-card-topics>*+:before{content:"·";color:var(--color-text-subtle);margin-inline-end:var(--space-2)}.case-proof{gap:var(--space-4);margin:var(--space-6) 0 0;grid-template-columns:minmax(0,1fr);display:grid}.case-proof>div{border-block-start:var(--border-width) solid var(--color-border-subtle);min-inline-size:0;padding-block-start:var(--space-3)}.case-proof dt{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase;margin-block-end:var(--space-2)}.case-proof dd{color:var(--color-text-body);font-size:var(--text-sm);line-height:var(--leading-body);margin:0}.case-card-proof{gap:var(--space-3);margin-block-start:0}.case-card-proof>div{padding-block-start:var(--space-2)}.case-card-proof dt{margin-block-end:var(--space-1)}@container (width>=48rem){.spotlight-proof,.article-header>.case-proof{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}}.principle-list{margin-block-start:var(--space-10)}.principle{grid-template-columns:var(--space-10) minmax(0, 1fr);gap:var(--space-5);padding-block:var(--space-8);border-block-start:var(--border-width) solid var(--color-border-subtle);display:grid}.principle>span{color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);padding-block-start:var(--space-2)}.principle>div{min-inline-size:0}.principle h3{font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin-block-end:var(--space-3)}.principle p{color:var(--color-text-body);line-height:var(--leading-body);margin:0}.hero-lead{max-inline-size:calc(var(--measure-prose) - var(--space-16));margin:var(--space-8) 0 0;color:var(--color-text-body);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body)}.hero>.eyebrow{color:var(--color-accent-soft);font-weight:var(--weight-medium);margin-block-end:var(--space-6)}.archive{min-inline-size:0;padding-block:clamp(var(--space-16), 9vw, calc(var(--space-16) + var(--space-12)));border-block-start:var(--border-width) solid var(--color-border-subtle);scroll-margin-block-start:var(--header-height)}.archive-shell{gap:var(--space-10);grid-template-columns:minmax(0,1fr);display:grid}@container (width>=64rem){.archive-shell{grid-template-columns:minmax(var(--toc-width), calc(var(--measure-wide) / 4)) minmax(0, 1fr);gap:clamp(var(--space-12), 6vw, calc(var(--space-16) + var(--space-4)))}.archive-heading{align-self:start;position:sticky;inset-block-start:calc(var(--header-height) + var(--space-8))}}.section-heading h2{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);text-wrap:balance;margin:0}.archive-heading{min-inline-size:0}.archive-intro{margin:var(--space-5) 0 0;color:var(--color-text-subtle)}.topic-directory{border-block-start:var(--border-width) solid var(--color-border-subtle);margin-block-start:var(--space-10);padding-block-start:var(--space-5)}.topic-directory-label{margin:0 0 var(--space-3);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase}.topic-directory ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.topic-directory li{min-inline-size:0;max-inline-size:100%}.topic-directory a{justify-content:center;align-items:center;gap:var(--space-2);min-inline-size:var(--tap-size);min-block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);max-inline-size:100%;padding:var(--space-2) var(--space-4);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);overflow-wrap:anywhere;text-decoration:none;display:inline-flex}.topic-directory a:hover{border-color:var(--color-accent);color:var(--color-accent-soft)}.topic-directory-count{color:var(--color-text-subtle);font-variant-numeric:tabular-nums;flex:none}.archive-years{min-inline-size:0}.archive-year+.archive-year{margin-block-start:var(--space-16)}.archive-year>h3{margin:0 0 var(--space-4);color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug)}.article-list{border-block-start:var(--border-width) solid var(--color-border);margin:0;padding:0;list-style:none}.article-row{align-items:start;gap:var(--space-3) var(--space-5);min-inline-size:0;padding-block:var(--space-4);border-block-end:var(--border-width) solid var(--color-border-subtle);transition:border-color var(--dur-fast) var(--ease-out);grid-template-columns:minmax(0,1fr);display:grid}@container (width>=40rem){.article-row{grid-template-columns:calc(var(--space-16) + var(--space-4)) minmax(0, 1fr);align-items:center}}.article-row:hover,.article-row:focus-within{border-block-end-color:var(--color-accent-border)}.article-row time{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-normal);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase}.article-title{min-inline-size:0;min-block-size:var(--tap-size);color:var(--color-text);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-snug);overflow-wrap:anywhere;align-items:center;text-decoration:none;display:inline-flex}.article-title:hover{color:var(--color-accent-soft)}.category-detail{min-inline-size:0;min-block-size:calc(100vh - var(--space-section) * 2 - var(--space-16) * 2);padding-block:max(var(--space-16), var(--space-section))}.category-detail .detail-header{gap:0;margin-block-end:var(--space-12);padding-block:0}.category-detail .back-link{color:var(--color-accent-soft);letter-spacing:normal;margin-block-end:var(--space-10)}.category-detail .back-link:hover{color:var(--color-text)}.category-detail h1{font-size:calc((var(--text-3xl) + var(--text-4xl)) / 2);letter-spacing:-.025em;line-height:var(--leading-display);overflow-wrap:anywhere;text-wrap:balance;margin:0}.category-list{min-inline-size:0}.category-list .article-row{padding-block:var(--space-5)}@container (width>=40rem){.category-list .article-row{grid-template-columns:calc(var(--space-16) * 2) minmax(0, 1fr)}}.empty-state{border-block:var(--border-width) solid var(--color-border-subtle);padding-block:var(--space-10)}.empty-state p{color:var(--color-text-body);line-height:var(--leading-body);margin:0}.empty-state a{min-block-size:var(--tap-size);color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);align-items:center;margin-block-start:var(--space-4);text-decoration:none;display:inline-flex}.contact-page{min-block-size:calc(100vh - var(--space-section) * 2)}.contact-meta{align-items:center;gap:0 var(--space-2);margin:var(--space-6) 0 0;color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-body);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;display:flex}.contact-meta>*+:before{content:"·";margin-inline-end:var(--space-2)}.contact-methods{padding-block-start:0}.contact-method-list{gap:var(--space-4);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}@container (width>=48rem){.contact-method-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.contact-method{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);min-inline-size:0;padding:var(--space-6);background:var(--color-surface);color:var(--color-text-body);transition:border-color var(--dur-fast) var(--ease-out);overflow-wrap:anywhere;flex-direction:column;scroll-margin-block-start:calc(var(--header-height) + var(--space-8));display:flex;position:relative}.contact-method:hover{border-color:var(--color-accent)}.contact-method:has(>h2>a:focus-visible){outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.contact-method__head{justify-content:space-between;align-items:center;gap:var(--space-3);min-block-size:var(--space-6);display:flex}.contact-method__number{color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase}.contact-method h2{margin:var(--space-10) 0 0;color:var(--color-text);font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-snug)}.contact-method h2>a{min-block-size:var(--tap-size);margin-block:calc((1lh - var(--tap-size)) / 2);color:inherit;align-items:center;text-decoration:none;display:inline-flex}.contact-method h2>a:after{content:"";border-radius:var(--radius-lg);position:absolute;inset:0}.contact-method h2>a:focus-visible{outline:none}.contact-method p{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-body)}.contact-method__action{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);max-inline-size:100%;flex-wrap:wrap;margin-block-start:auto;padding-block-start:var(--space-10);display:flex}.contact-method__target{min-inline-size:0;color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);overflow-wrap:anywhere;transition:color var(--dur-fast) var(--ease-out)}.contact-method:hover .contact-method__target{color:var(--color-accent)}.contact-copy{z-index:1;inline-size:var(--tap-size);block-size:var(--tap-size);margin:calc((var(--space-6) - var(--tap-size)) / 2);color:var(--color-text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex:none;place-items:center;margin-inline-start:0;padding:0;display:inline-grid;position:relative}.contact-copy:before{content:"";inset:calc((var(--tap-size) - var(--space-6)) / 2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);position:absolute}.contact-copy>svg{grid-area:1/1;position:relative}.contact-copy__check,.contact-copy[data-copied] .contact-copy__icon{display:none}.contact-copy[data-copied] .contact-copy__check{display:block}.contact-copy:hover{color:var(--color-text)}.contact-copy:hover:before{border-color:var(--color-accent);background:var(--color-accent-surface)}.contact-copy[data-copied]{color:var(--color-accent)}.contact-copy[data-copied]:before{border-color:var(--color-accent-border);background:var(--color-accent-surface)}.contact-copy:focus-visible{outline:none}.contact-copy:focus-visible:before{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.contact-note .section-shell{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@container (width>=48rem){.contact-note .section-shell{gap:var(--space-16);grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}.contact-note .eyebrow{color:var(--color-accent-soft);font-weight:var(--weight-medium);margin:0}.contact-note p{margin:0}.contact-note .section-shell>p:last-child{max-inline-size:var(--measure-prose);color:var(--color-text-body);font-family:var(--font-body);font-size:var(--text-lg);line-height:var(--leading-body)}.toc{max-inline-size:var(--measure-prose);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:inset var(--focus-width) 0 0 var(--color-accent)}.toc:first-child{margin-block-start:var(--space-8)}.toc__details{margin:0}.toc__summary{justify-content:space-between;align-items:center;gap:var(--space-4);min-block-size:calc(var(--tap-size) + var(--space-2));padding:var(--space-2) var(--space-3);border-radius:calc(var(--radius-lg) - var(--border-width));color:var(--color-text);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);margin-inline-start:var(--focus-width);list-style:none;display:flex}.toc__summary::-webkit-details-marker{display:none}.toc__summary:hover{background:var(--color-accent-surface)}.toc__summary:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:calc(-1 * var(--focus-width))}.toc__label{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-inline-size:0;display:flex}.toc__label>strong{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.toc__count{color:var(--color-text-subtle);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug)}.toc__marker{inline-size:var(--space-8);block-size:var(--space-8);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);flex:none;place-items:center;display:grid}.toc__marker:before{content:"";inline-size:var(--space-2);block-size:var(--space-2);border-inline-end:calc(2 * var(--border-width)) solid var(--color-accent-soft);border-block-end:calc(2 * var(--border-width)) solid var(--color-accent-soft);translate:0 calc(-1 * var(--space-1) / 2);transition:translate var(--dur-fast) var(--ease-out), rotate var(--dur-fast) var(--ease-out);rotate:45deg}.toc__details[open]>.toc__summary .toc__marker:before{translate:0 calc(var(--space-1) / 2);rotate:225deg}.toc__nav{max-block-size:min(40dvh,20rem);padding:var(--space-2);border-block-start:var(--border-width) solid var(--color-border-subtle);overscroll-behavior:contain;scrollbar-width:none;padding-inline-start:calc(var(--space-2) + var(--focus-width));overflow-y:auto}.toc__nav::-webkit-scrollbar{display:none}.toc__nav[data-overflows]{mask-image:linear-gradient(to bottom, transparent, black var(--space-6), black calc(100% - var(--space-6)), transparent)}.toc__nav[data-overflows][data-at-start]{mask-image:linear-gradient(to bottom, black calc(100% - var(--space-6)), transparent)}.toc__nav[data-overflows][data-at-end]{mask-image:linear-gradient(to bottom, transparent, black var(--space-6))}.toc__nav[data-overflows][data-at-start][data-at-end]{mask-image:none}.toc__list{margin:0;padding:0;list-style:none}.toc__list a{min-block-size:var(--tap-size);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug);overflow-wrap:anywhere;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);align-items:center;text-decoration:none;display:flex}.toc__item--nested a{color:var(--color-text-subtle);font-size:var(--text-xs);padding-inline-start:calc(var(--space-3) + var(--space-4))}.toc__list a:hover{background:var(--color-accent-surface);color:var(--color-text)}.toc__list a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:calc(-1 * var(--focus-width))}.toc__list a[aria-current=location]{background:var(--color-accent-surface);color:var(--color-accent-soft);font-weight:var(--weight-semibold)}@media (width>=80rem){.toc{max-block-size:calc(100dvh - var(--toc-rail-inset) - var(--space-6));box-shadow:none;background:0 0;border:0;border-radius:0}.article>.toc{margin-block-start:var(--space-section)}.toc__details{border-inline-start:var(--border-width) solid var(--color-border);flex-direction:column;display:flex}.toc__summary{min-block-size:var(--tap-size);padding:0 var(--space-2) 0 var(--space-4);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;border-radius:0;align-items:start;margin-inline-start:0}.toc__summary:hover{color:var(--color-text);background:0 0}.toc__label>strong{font:inherit}.toc__count,.toc__marker{display:none}.toc__nav{min-block-size:0;max-block-size:calc(100dvh - var(--toc-rail-inset) - var(--tap-size) - var(--space-6));padding:0 0 var(--space-2);border-block-start:0}.toc__list a{padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);color:var(--color-text-muted);font-size:var(--text-xs);border-radius:0;position:relative}.toc__item--nested a{color:var(--color-text-subtle);padding-inline-start:calc(var(--space-4) + var(--space-3))}.toc__list a:hover{color:var(--color-text);background:0 0}.toc__list a[aria-current=location]{background:var(--color-accent-surface);color:var(--color-text);font-weight:var(--weight-normal)}.toc__list a[aria-current=location]:before{content:"";inline-size:calc(2 * var(--border-width));background:var(--color-accent);position:absolute;inset:0 auto 0 0}}.adjacent-nav{gap:var(--space-4);border-block-start:1px solid var(--color-border-subtle);padding-block-start:var(--space-8);display:grid}@media (width>=48rem){.adjacent-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}.adjacent-nav a{gap:var(--space-1);min-block-size:var(--tap-size);padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface);transition:border-color var(--dur-fast) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.adjacent-nav a:hover{border-color:var(--color-accent-border)}.adjacent-nav a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.adjacent-nav__next{text-align:end;grid-column:-2}.adjacent-nav__label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);color:var(--color-text-subtle)}.adjacent-nav__number{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.adjacent-nav__title{font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);color:var(--color-text);overflow-wrap:anywhere}.topic-list{gap:0 var(--space-2);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.topic-list>*{min-block-size:var(--space-6);align-items:center;display:inline-flex}.topic-list>*+:before{content:"·";color:var(--color-text-subtle);margin-inline-end:var(--space-2)}.topic-list>:has(>a){min-block-size:0;margin-block:calc((var(--space-6) - var(--tap-size)) / 2)}.topic-list a{min-inline-size:0;min-block-size:var(--tap-size);color:inherit;transition:color var(--dur-fast) var(--ease-out);align-items:center;text-decoration:none;display:inline-flex;position:relative}.topic-list a:after{content:"";inline-size:max(100%, var(--tap-size));position:absolute;inset-block:0;inset-inline-start:50%;translate:-50%}.topic-list a:hover{color:var(--color-accent);text-underline-offset:.2em;text-decoration:underline}.back-link{align-items:center;gap:var(--space-2);min-block-size:var(--tap-size);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);color:var(--color-text-muted);text-decoration:none;display:inline-flex}.back-link:before{content:"←"}.back-link:hover{color:var(--color-text)}.back-link:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.link-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.link-row a{align-items:center;gap:var(--space-2);min-block-size:var(--tap-size);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-subtle);text-decoration:none;display:inline-flex}.link-row a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}@media (hover:hover) and (pointer:fine){.link-row a:hover{color:var(--color-text)}}.page-source-actions{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin:0;display:flex}.page-source-actions a{inline-size:var(--tap-size);block-size:var(--tap-size);color:var(--color-text-subtle);transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;font-size:0;text-decoration:none;display:flex}.page-source-actions a:first-child{border-start-start-radius:calc(var(--radius-md) - var(--border-width));border-end-start-radius:calc(var(--radius-md) - var(--border-width))}.page-source-actions a:last-child{border-start-end-radius:calc(var(--radius-md) - var(--border-width));border-end-end-radius:calc(var(--radius-md) - var(--border-width))}.page-source-actions a+a{border-inline-start:var(--border-width) solid var(--color-border-subtle)}.page-source-actions a:before{content:"";inline-size:var(--space-5);block-size:var(--space-5);background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8zm4 18H6V4h7v5h5z'/%3E%3C/svg%3E") 50%/contain no-repeat}.page-source-actions a[href*="/raw/"]:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 18c.56 0 1 .44 1 1s-.44 1-1 1-1-.44-1-1 .44-1 1-1m0-3c-2.73 0-5.06 1.66-6 4 .94 2.34 3.27 4 6 4s5.06-1.66 6-4c-.94-2.34-3.27-4-6-4m0 6.5a2.5 2.5 0 0 1-2.5-2.5 2.5 2.5 0 0 1 2.5-2.5 2.5 2.5 0 0 1 2.5 2.5M9.27 20H6V4h7v5h5v4.07c.7.08 1.36.25 2 .49V8l-6-6H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4.5a8.2 8.2 0 0 1-1.23-2'/%3E%3C/svg%3E")}.page-source-actions a[href*="/edit/"]:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 20H6V4h7v5h5v3.1l2-2V8l-6-6H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h4zm10.2-7c.1 0 .3.1.4.2l1.3 1.3c.2.2.2.6 0 .8l-1 1-2.1-2.1 1-1c.1-.1.2-.2.4-.2m0 3.9L14.1 23H12v-2.1l6.1-6.1z'/%3E%3C/svg%3E")}.page-source-actions a:hover{background:var(--color-accent-surface);color:var(--color-text)}.page-source-actions a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:calc(-1 * var(--focus-width))}@media (width>=40rem){.article-header>.page-source-actions{order:-1;align-self:end;margin-block-end:calc(-1 * (var(--tap-size) + 2 * var(--border-width)))}.article-header:has(>.page-source-actions)>h1{max-inline-size:calc(100% - 2 * var(--tap-size) - var(--space-6))}}.detail-header{align-items:start;gap:var(--space-3);padding-block:var(--space-12) var(--space-8);flex-direction:column;display:flex}.article-header{max-inline-size:var(--measure-prose);padding-block:var(--space-section) var(--space-6);flex-direction:column;align-items:start;display:flex}[data-app=dotfiles] .article-header{border-block-end:var(--border-width) solid var(--color-border-subtle);padding-block-end:var(--space-8)}.article-header>.back-link{color:var(--color-accent-soft);letter-spacing:normal;margin-block-end:var(--space-10)}.article-header>.back-link:hover{color:var(--color-text)}.article-header>h1{font-size:calc((var(--text-3xl) + var(--text-4xl)) / 2);line-height:var(--leading-display);letter-spacing:-.025em;overflow-wrap:anywhere;text-wrap:balance;margin:0}.article-dek{margin-block-start:var(--space-6)}.article-meta{align-items:center;gap:var(--space-2);margin:var(--space-6) 0 0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-body);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-subtle);flex-wrap:wrap;display:flex}.article-header>.case-proof{align-self:stretch}.article-header>.topic-list{margin-block-start:var(--space-5)}.spotlight-header>.prose,.spotlight-header>.topic-list{margin-block-start:var(--space-6)}.article .adjacent-nav{max-inline-size:var(--measure-prose)}.article>[data-landing]~.adjacent-nav{max-inline-size:none}.article .adjacent-nav a{padding:var(--space-4);border-color:var(--color-border);color:var(--color-text)}.article .adjacent-nav a:hover{border-color:var(--color-accent-border)}.article .adjacent-nav .adjacent-nav__label{font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:.14em;text-transform:uppercase}.article .adjacent-nav .adjacent-nav__title{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:-.01em;overflow-wrap:anywhere}.article .adjacent-nav a:hover .adjacent-nav__title{color:var(--color-accent-soft)}.article .link-row{justify-content:space-between;gap:var(--space-4);max-inline-size:var(--measure-prose);border-block-start:var(--border-width) solid var(--color-border-subtle);padding-block-start:var(--space-5)}.article .link-row a{padding:var(--space-2) var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);justify-content:center}.article .link-row a:hover{border-color:var(--color-accent-border)}.comments-region{max-inline-size:var(--measure-prose);border-block-start:var(--border-width) solid var(--color-border-subtle);padding-block-start:var(--space-8)}.comments-region h2{font-size:calc((var(--text-xl) + var(--text-2xl)) / 2);font-weight:calc((var(--weight-semibold) + var(--weight-bold)) / 2);letter-spacing:-.02em;margin-block-end:var(--space-8)}.comments-region>div{min-block-size:calc(var(--space-16) * 2.5)}.comments-region iframe{border:0;inline-size:100%;max-inline-size:100%}body.reader-open{overflow:hidden}.reader{block-size:100%;max-block-size:none;inline-size:100%;max-inline-size:none;padding:0 var(--space-gutter) var(--space-gutter);overscroll-behavior:contain;background:var(--color-header);color:var(--color-text-body);border:0;margin:0;scroll-padding-block-start:calc(var(--tap-size) + 2 * var(--space-4) + var(--space-6));position:fixed;inset:0;overflow-y:auto}.reader::backdrop{background:0 0}.reader-shell{inline-size:min(100%, calc(var(--measure-prose) + 2 * var(--space-gutter)));min-inline-size:0;max-inline-size:100%;margin:var(--space-gutter) auto 0;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:0 var(--space-gutter) var(--space-gutter);background:var(--color-surface-raised);box-shadow:var(--shadow-raised);container-type:inline-size}.reader[open] .reader-shell{animation:reader-in var(--dur-base) var(--ease-out)}@keyframes reader-in{0%{opacity:0;transform:translateY(var(--space-3))}to{opacity:1;transform:none}}.reader-toolbar{z-index:1;justify-content:space-between;align-items:center;gap:var(--space-4);min-block-size:calc(var(--tap-size) + 2 * var(--space-4));margin:0 calc(-1 * var(--space-gutter)) var(--space-8);border-block-end:var(--border-width) solid var(--color-border-subtle);padding:var(--space-4) var(--space-gutter);background:var(--color-surface-raised);display:flex;position:sticky;inset-block-start:0}.reader-permalink{min-block-size:var(--tap-size);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.04em;transition:color var(--dur-fast) var(--ease-out);align-items:center;text-decoration:none;display:inline-flex}.reader-permalink:hover{color:var(--color-text)}.reader-permalink:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.reader-close{inline-size:var(--tap-size);block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.reader-close svg{inline-size:var(--space-4);block-size:var(--space-4);fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5px}.reader-close:hover{border-color:var(--color-accent);background:var(--color-accent-surface);color:var(--color-text)}.reader-close:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.reader-study{min-inline-size:0;padding:0}.reader-meta{margin:0 0 var(--space-5);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.14em;line-height:var(--leading-snug);text-transform:uppercase}.reader-study>.reader-meta{color:var(--color-text-body);overflow-wrap:anywhere;margin-block-end:var(--space-4)}.reader-meta-number{color:var(--color-accent);font-weight:var(--weight-semibold)}.reader-meta-topics{color:var(--color-text-subtle);font-weight:var(--weight-normal);text-transform:lowercase}.reader-meta-topic{white-space:nowrap}.reader-title{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-heading);line-height:var(--leading-tight);overflow-wrap:anywhere;text-wrap:balance}.reader-study>.reader-title{margin:0 0 var(--space-10)}.reader-study>.reader-title:has(+.reader-dek:not([hidden])){margin-block-end:var(--space-6)}.reader-study>.reader-dek{margin:0 0 var(--space-10)}.reader-study>.reader-dek[hidden]{display:none}.reader-prose{min-inline-size:0;max-inline-size:100%}.reader-prose>:first-child{margin-block-start:0}.reader-prose>:last-child{margin-block-end:0}.reader-prose .media-exhibit,.reader-prose .diagram-exhibit,.reader-prose .concept-diagram{inline-size:auto;max-inline-size:100%;position:static;inset:auto;transform:none}.reader-prose img,.reader-prose video,.reader-prose svg{block-size:auto;max-inline-size:100%}.reader-prose .expressive-code,.reader-prose pre{min-inline-size:0;max-inline-size:100%}.reader-navigation{gap:var(--space-4);border-block-start:var(--border-width) solid var(--color-border-subtle);font-family:var(--font-mono);font-size:var(--text-sm);grid-template-columns:minmax(0,1fr);margin-block-start:var(--space-12);padding-block-start:var(--space-5);display:grid}@container (width>=40rem){.reader-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}}.reader-navigation button{justify-content:flex-start;align-items:flex-start;gap:var(--space-1);min-inline-size:0;min-block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug);text-align:start;cursor:pointer;overflow-wrap:anywhere;flex-direction:column;display:flex}.reader-navigation [data-reader-direction=previous]{text-align:start;align-items:flex-start}.reader-navigation [data-reader-direction=next]{text-align:end;align-items:flex-end}.reader-navigation button:hover{border-color:var(--color-accent);background:var(--color-accent-surface);color:var(--color-text)}[data-reader-direction-kicker]{color:var(--color-text-subtle);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase}[data-reader-case-number]{color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}[data-reader-case-title]{max-inline-size:100%;color:var(--color-text);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-snug);overflow-wrap:break-word;white-space:normal}@media (width<48rem){.reader{padding:0}.reader-shell{min-block-size:100%;inline-size:100%;box-shadow:none;border:0;border-radius:0;margin:0}}@media (prefers-reduced-motion:reduce){.reader[open] .reader-shell{animation:none}}[data-zoomable]{cursor:zoom-in}.lightbox{block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;padding:var(--space-gutter);color:var(--color-text-body);cursor:zoom-out;background:0 0;border:0;margin:0}.lightbox::backdrop{background:var(--color-bg);opacity:.92}.lightbox__figure{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;block-size:100%;inline-size:100%;margin:0;display:flex}.lightbox__figure>img{block-size:auto;inline-size:auto;max-inline-size:100%;max-block-size:calc(100% - var(--space-12));object-fit:contain;border-radius:var(--radius-md);box-shadow:var(--shadow-raised);display:block}.lightbox__caption{max-inline-size:var(--measure-prose);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug);text-align:center;text-wrap:balance;margin:0}.lightbox__close{inline-size:var(--tap-size);block-size:var(--tap-size);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);color:var(--color-text);cursor:pointer;place-items:center;padding:0;display:grid;position:absolute;inset-block-start:var(--space-4);inset-inline-end:var(--space-4)}.lightbox__close svg{inline-size:var(--space-4);block-size:var(--space-4);fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round}.lightbox__close:hover{border-color:var(--color-accent)}.lightbox__close:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}}@layer prose{.expressive-code .ec-line .code{min-inline-size:0}.prose{min-inline-size:0;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-normal);line-height:var(--leading-body);color:var(--color-text-body);overflow-wrap:break-word;text-wrap:pretty}.prose:not(.content-grid),.prose.content-grid>:not(.wide,.full-bleed){max-inline-size:var(--measure-prose)}.prose--lede{font-size:var(--text-lg)}.prose--compact{--prose-flow:var(--space-4)}.prose>*+*,.prose :where(section,article,aside,li,blockquote,dd,details,figure):where(:not(.expressive-code *))>*+*{margin-block-start:var(--prose-flow)}.prose :is(li,dd){--prose-flow:var(--space-3)}.prose :is(h1,h2,h3,h4,h5,h6){color:var(--color-text);text-wrap:balance;margin-block-end:calc(var(--prose-flow) / 2)}.prose :is(h1,h2,h3,h4){font-family:var(--font-display)}.prose :is(h5,h6){font-family:var(--font-body)}.prose h1{font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-heading)}.prose :is(h2,h3){font-weight:calc((var(--weight-semibold) + var(--weight-bold)) / 2)}.prose h2{border-block-end:var(--border-width) solid var(--color-border-subtle);font-size:calc((var(--text-xl) + var(--text-2xl)) / 2);line-height:var(--leading-tight);letter-spacing:-.02em;padding-block-end:var(--space-3)}.prose h3{font-size:var(--text-xl);line-height:var(--leading-snug);letter-spacing:-.01em}.prose :is(h4,h5,h6){font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.prose h4{font-size:var(--text-lg)}.prose h5{font-size:var(--text-base)}.prose :is(h2,h3,h4)>.heading-anchor{inline-size:var(--tap-size);block-size:var(--tap-size);margin-block:calc((1lh - var(--tap-size)) / 2);border-radius:var(--radius-sm);color:var(--color-text-subtle);font-family:var(--font-mono);font-weight:var(--weight-medium);vertical-align:middle;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);flex:none;justify-content:center;align-items:center;margin-inline-start:calc(-1 * var(--space-2));text-decoration:none;display:inline-flex}.prose :is(h2,h3,h4)>.heading-anchor:before{content:"#";font-size:var(--text-sm);line-height:1}.prose :is(h2,h3,h4):is(:hover,:focus-within)>.heading-anchor,.prose :is(h2,h3,h4)>.heading-anchor:focus-visible{opacity:1}.prose :is(h2,h3,h4)>.heading-anchor:is(:hover,:focus-visible){color:var(--color-accent)}.prose :is(h2,h3,h4)>.heading-anchor:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:calc(-1 * var(--focus-offset))}@media (hover:none){.prose :is(h2,h3,h4)>.heading-anchor{display:none}}.prose.reader-prose :is(h2,h3,h4)>.heading-anchor{display:none}.prose h6{font-size:var(--text-sm)}.prose :is(h2,h3):not(:first-child){margin-block-start:calc(var(--prose-flow) * 2)}.prose :is(h4,h5,h6):not(:first-child){margin-block-start:var(--space-10)}.prose :is(h1,h2,h3,h4,h5,h6)+*{margin-block-start:0}.prose[data-article-body]>h2:first-child{margin-block-start:var(--space-8)}[data-app=portfolio] :is(.article .prose[data-article-body],.reader-prose){counter-reset:prose-section}[data-app=portfolio] :is(.article .prose[data-article-body]>h2,.reader-prose>h3){align-items:center;gap:var(--space-3);font-size:calc((var(--text-xl) + var(--text-2xl)) / 2);line-height:var(--leading-tight);letter-spacing:-.02em;counter-increment:prose-section;border-block-end:0;padding-block-end:0;display:flex}[data-app=portfolio] :is(.article .prose[data-article-body]>h2,.reader-prose>h3):before{content:counter(prose-section, decimal-leading-zero);color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;flex:none;line-height:1}[data-app=portfolio] :is(.article .prose[data-article-body]>h2,.reader-prose>h3):after{content:"";block-size:var(--border-width);background:var(--color-border-subtle);flex:1}[data-app=portfolio] :is(.article .prose[data-article-body]>h2,.reader-prose>h3)>.heading-text{min-inline-size:0}.prose li>.task-mark{block-size:1em;inline-size:1em;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);vertical-align:-.125em;margin-inline-end:var(--space-2);display:inline-block}.prose li>.task-mark[data-checked]{border-color:var(--color-accent);background-color:var(--color-accent)}.prose li>.task-mark[data-checked]:before{content:"";background-color:var(--color-bg);block-size:100%;inline-size:100%;display:block;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") 50%/80% no-repeat}.prose ul.contains-task-list{padding-inline-start:0;list-style:none}.prose strong{color:var(--color-text);font-weight:var(--weight-semibold)}.prose em{color:var(--color-text)}.prose a{color:var(--color-accent-soft);text-decoration-thickness:var(--border-width);text-underline-offset:.25em}.prose a:hover{text-decoration-color:currentColor}.prose :is(sup,sub){line-height:0}.prose :is(ul,ol):not([class]){--list-indent:calc(var(--space-8) + var(--space-1));padding-inline-start:var(--list-indent);list-style-type:""}.prose :is(ul,ol):not([class])>li{position:relative}.prose :is(ul,ol):not([class])>li:before{inline-size:var(--list-indent);line-height:inherit;position:absolute;inset-block-start:0;inset-inline-start:calc(-1 * var(--list-indent))}.prose ol:not([class])>li:before{content:counter(list-item) ".";color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--code-inline-size);font-weight:var(--weight-medium);line-height:calc(var(--leading-body) * 1em / var(--code-inline-scale))}.prose ul:not([class]){--list-indent:var(--space-5)}.prose ul:not([class])>li:before{content:"";border-radius:var(--radius-pill);background:var(--color-text-subtle);block-size:.3em;inline-size:.3em;inset-block-start:calc(.5lh - .1em)}.prose li+li,.prose li>:is(ul,ol){margin-block-start:var(--space-3)}.prose :is(ul,ol)+*{margin-block-start:var(--space-8)}.prose dt{color:var(--color-text);font-weight:var(--weight-semibold)}.prose dd{margin-inline-start:var(--space-6)}.prose dd+dt{margin-block-start:var(--space-3)}.prose blockquote{border-inline-start:calc(var(--border-width) * 3) solid var(--color-accent);color:var(--color-text-muted);padding-inline-start:var(--space-5)}.prose blockquote:not(:first-child),.prose blockquote+*{margin-block-start:var(--space-10)}.prose hr{border:0;border-block-start:var(--border-width) solid var(--color-border-subtle)}.prose hr:not(:first-child),.prose hr+*{margin-block-start:var(--space-12)}.prose hr:has(+:is(h2,h3)){display:none}.prose :is(img,video,svg,iframe){block-size:auto;max-inline-size:100%}.prose :is(img,video){border-radius:var(--radius-md)}.prose img{border:var(--border-width) solid var(--color-border-subtle);background:var(--color-surface)}.prose :is(img,figure):not(:first-child,.expressive-code *),.prose :is(img,figure):not(.expressive-code *)+*{margin-block-start:var(--space-8)}.prose figcaption:not(.expressive-code *){color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);text-align:center;text-wrap:pretty;margin-block-start:var(--space-3)}.prose :not(pre)>code,.prose:not(pre)>code,:is(.case-card,.case-proof) :not(pre)>code{padding-block:calc(var(--space-1) / 4);padding-inline:var(--space-1);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-sm);background:var(--code-inline-bg);color:var(--code-inline-text);font-family:var(--font-mono);font-size:var(--code-inline-size);font-weight:var(--weight-normal);line-height:var(--leading-code-inline);white-space:nowrap}.prose :not(pre)>code[data-long],.prose:not(pre)>code[data-long],:is(.case-card,.case-proof) :not(pre)>code[data-long]{white-space:normal;overflow-wrap:anywhere;box-decoration-break:clone}.prose a[data-token-link]{text-decoration:none}.prose a[data-token-link]>code{border-color:var(--color-accent);transition:color var(--dur-fast) var(--ease-out)}.prose a[data-token-link]:is(:hover,:focus-visible)>code{color:var(--color-text)}.prose a[data-token-link]>span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--code-inline-size);transition:color var(--dur-fast) var(--ease-out);margin-inline-start:var(--space-1)}.prose a[data-token-link]:is(:hover,:focus-visible)>span{color:var(--color-text)}.prose td>a[data-token-link]{margin-block:calc(-1 * var(--space-2));padding-block:var(--space-2);display:inline-block}.prose kbd{padding-inline:var(--space-2);border:var(--border-width) solid var(--kbd-border);border-block-end-width:calc(var(--border-width) * 2);border-radius:var(--radius-sm);background:var(--kbd-bg);color:var(--color-text);font-family:var(--font-mono);font-size:var(--code-inline-size);font-weight:var(--weight-normal);white-space:nowrap}.prose kbd:has(>kbd){background:0 0;border:0;padding:0}.prose .expressive-code{inline-size:100%;min-inline-size:0;font-size:inherit}.prose .expressive-code .frame{border:var(--border-width) solid var(--code-border);border-radius:var(--radius-md);background:var(--code-bg);box-shadow:none;position:relative}.prose .expressive-code .frame .header{justify-content:flex-start;align-items:center;gap:var(--space-3);min-block-size:var(--tap-size);padding:0 calc(var(--space-5) + var(--space-8) + var(--space-2)) 0 var(--space-4);border:0;border-block-end:var(--border-width) solid var(--color-border-subtle);border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--code-toolbar-bg);color:var(--code-muted);display:flex}.prose .expressive-code .frame .header:before{content:"";inline-size:var(--space-12);block-size:var(--space-2);background:radial-gradient(circle, var(--color-text-muted) 42%, transparent 48%) 0 0 / var(--space-4) var(--space-2) repeat-x;opacity:1;border:0;flex:none;position:static;mask-image:none}.prose .expressive-code .frame .header:after{content:none}.prose .expressive-code .frame .title{min-inline-size:0;box-shadow:none;color:var(--code-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap;background:0 0;border:0;border-radius:0;flex:0 auto;margin:0;padding:0;display:flex;position:static;overflow:hidden}.prose .expressive-code .frame .title-dir{text-overflow:ellipsis;flex:1 1 0;min-inline-size:2ch;overflow:hidden}.prose .expressive-code .frame .title-name{text-overflow:ellipsis;flex:0 auto;min-inline-size:0;overflow:hidden}.prose .expressive-code .frame .title:before,.prose .expressive-code .frame .title:after{content:none}.prose .expressive-code .frame .title:empty{display:none}.prose .expressive-code .frame pre{background:var(--code-bg);font-size:var(--code-font-size);line-height:var(--leading-code);overscroll-behavior-inline:contain;border:0;border-start-start-radius:0;border-start-end-radius:0;border-end-end-radius:var(--radius-md);border-end-start-radius:var(--radius-md);overflow-x:auto}.prose .expressive-code pre>code{padding-block:var(--space-3)}.prose .expressive-code pre::-webkit-scrollbar{block-size:calc(var(--space-2) + var(--space-1))}.prose .expressive-code pre::-webkit-scrollbar-track{background:var(--code-bg)}.prose .expressive-code pre::-webkit-scrollbar-thumb{border:calc(var(--space-1) / 2) solid var(--code-bg);border-radius:var(--radius-pill);background:var(--color-border)}.prose .expressive-code pre::-webkit-scrollbar-thumb:hover{background:var(--color-text-subtle)}@supports not selector(::-webkit-scrollbar){.prose .expressive-code pre{scrollbar-width:thin;scrollbar-color:var(--color-border) var(--code-bg)}}.prose .expressive-code .frame[data-overflows]:not([data-scrolled-end]):after{content:"";inset-block:var(--tap-size) calc(var(--space-2) + var(--space-1));inline-size:var(--space-10);background:linear-gradient(to right, transparent, var(--code-bg));pointer-events:none;border-end-end-radius:var(--radius-md);position:absolute;inset-inline-end:0}.prose .expressive-code .copy{--copy-control-inset:calc((var(--tap-size) - var(--space-8)) / 2);align-items:center;gap:0;display:flex;inset-block-start:0;inset-inline-end:calc(var(--space-5) - var(--copy-control-inset))}.prose .expressive-code .copy div[aria-live]{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:.08em;text-transform:uppercase;align-self:stretch;align-items:center;display:flex}.prose .expressive-code .copy .feedback{block-size:var(--space-8);padding:0 var(--space-3);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-sm);background:linear-gradient(var(--color-accent-surface), var(--color-accent-surface)) var(--code-toolbar-bg);color:var(--color-accent);white-space:nowrap;transform:translate3d(var(--space-2), 0, 0);align-items:center;margin-inline-end:calc(var(--space-2) - var(--copy-control-inset));display:inline-flex}.prose .expressive-code .copy .feedback.show{transform:none}.prose .expressive-code .copy .feedback:after{display:none}.prose .expressive-code .copy button{inline-size:var(--tap-size);block-size:var(--tap-size);border-radius:var(--radius-sm);opacity:1;background:0 0}.prose .expressive-code .copy button>div,.prose .expressive-code .copy button:before{inset:calc((var(--tap-size) - var(--space-8)) / 2);border-radius:var(--radius-sm);opacity:1}.prose .expressive-code .copy button>div{transition:background-color var(--dur-fast) var(--ease-out);background:0 0}.prose .expressive-code .copy button:before{border:var(--border-width) solid var(--color-border);transition:border-color var(--dur-fast) var(--ease-out)}.prose .expressive-code .copy button:after{margin:calc((var(--tap-size) - var(--space-4)) / 2);background-color:var(--code-muted)}.prose .expressive-code .copy button:hover>div,.prose .expressive-code .copy button:focus-visible>div,.prose .expressive-code .copy:has(.feedback.show) button>div{background:var(--color-accent-surface)}.prose .expressive-code .copy button:hover:before,.prose .expressive-code .copy button:focus-visible:before,.prose .expressive-code .copy:has(.feedback.show) button:before{border-color:var(--color-accent-border)}.prose .expressive-code .copy button:hover:after,.prose .expressive-code .copy button:focus-visible:after{background-color:var(--color-text)}.prose .expressive-code .copy:has(.feedback.show) button:after{background-color:var(--color-accent);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5l5 5L19.5 7'/%3E%3C/svg%3E")}.prose .expressive-code .copy button:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:calc(-1 * var(--focus-offset))}.prose pre:not(.expressive-code *){padding:var(--space-4) var(--space-5);border:var(--border-width) solid var(--code-border);border-radius:var(--radius-md);background:var(--code-bg);color:var(--code-text);font-family:var(--font-mono);font-size:var(--code-font-size);line-height:var(--leading-code);white-space:pre;overscroll-behavior-inline:contain;overflow-x:auto}.table-scroll{inline-size:min-content;min-inline-size:min(100%, var(--measure-prose));overscroll-behavior-inline:contain;border:var(--border-width) solid var(--table-border);border-radius:var(--radius-md);background:var(--color-surface);max-inline-size:100%;margin-inline:0;overflow-x:auto}.table-scroll:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.prose :where(.table-scroll,:has(>.table-scroll:only-child)):where(:not(:first-child)){margin-block-start:var(--space-8)}.prose :where(.table-scroll,:has(>.table-scroll:only-child))+*{margin-block-start:var(--space-10)}.prose table{--table-label-floor:calc(var(--measure-prose) / 4);--table-description-floor:calc(var(--measure-prose) / 3);--table-token-space:nowrap;border-collapse:collapse;border-spacing:0;inline-size:100%;font-size:var(--text-base);font-variant-numeric:tabular-nums;line-height:var(--leading-body);text-align:start}.prose caption{caption-side:bottom;padding-block:var(--space-3);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);text-align:start}.prose :is(th,td){padding:var(--space-3) var(--space-4);vertical-align:top;text-align:start}@media (width<40rem){.prose :is(th,td){padding-inline:var(--space-3)}}.prose th{padding-block:var(--space-4) var(--space-3);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-label);text-align:start;text-transform:uppercase;white-space:nowrap}.prose thead+tbody>tr:first-child>td,.prose tbody tr+tr>td{border-block-start:var(--border-width) solid var(--color-border-subtle)}.prose tbody tr:last-child>td{padding-block-end:var(--space-4)}.prose :is(td,th) code[data-long]{white-space:var(--table-token-space)}.prose td[data-token-cell]:not(:last-child){vertical-align:middle;inline-size:0;white-space:var(--table-token-space)}.prose td[data-token-cell]:not(:last-child)~td:last-child{min-inline-size:var(--table-description-floor)}.prose td:not([data-token-cell]):has(~td[data-token-cell]:not(:last-child)){min-inline-size:var(--table-label-floor)}@media (width<40rem){.prose table:not(:has(tr>:nth-child(4))){--table-label-floor:0px;--table-description-floor:0px;--table-token-space:normal;display:block}.prose table:not(:has(tr>:nth-child(4))) :is(thead,tbody,tr,th,td){display:block}.prose table:not(:has(tr>:nth-child(4))) tr{padding:var(--space-3)}.prose table:not(:has(tr>:nth-child(4))) thead tr{gap:0 var(--space-2);border-block-end:var(--border-width) solid var(--color-border-subtle);flex-wrap:wrap;display:flex}.prose table:not(:has(tr>:nth-child(4))) th{text-align:start;padding:0}.prose table:not(:has(tr>:nth-child(4))) th+th:before{content:"·";margin-inline-end:var(--space-2)}.prose table:not(:has(tr>:nth-child(4))) tbody tr+tr{border-block-start:var(--border-width) solid var(--color-border-subtle)}.prose table:not(:has(tr>:nth-child(4))) :is(td,tbody tr:last-child>td){text-align:start;border:0;inline-size:auto;padding:0}.prose table:not(:has(tr>:nth-child(4))) td+td{margin-block-start:var(--space-1)}}.prose details{padding-inline:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.prose details[open]{padding-block-end:var(--space-4)}.prose summary{min-block-size:var(--tap-size);padding-block:var(--space-2);color:var(--color-text);font-weight:var(--weight-semibold);cursor:pointer;align-content:center;display:list-item}.prose details[open]>summary{border-block-end:var(--border-width) solid var(--color-border-subtle)}.op-admonition{--prose-flow:var(--space-3);--admonition-symbol:"i";padding:var(--space-4) var(--space-5);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text-body);box-shadow:inset calc(var(--border-width) * 3) 0 0 var(--color-accent)}.op-admonition:not(:first-child),.op-admonition+*{margin-block-start:var(--space-8)}.op-admonition--tip{--admonition-symbol:"✓"}.op-admonition--important{--admonition-symbol:"◆"}.op-admonition--warning,.op-admonition--caution,.op-admonition--danger,.op-admonition--critical{--admonition-symbol:"!"}.op-admonition__title{gap:var(--space-3);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:-.005em;align-items:center;display:flex}.op-admonition__title+*{margin-block-start:var(--space-2)}.op-admonition__title:before{content:var(--admonition-symbol);inline-size:var(--space-6);block-size:var(--space-6);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-pill);background:var(--color-accent-surface);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);flex:none;place-items:center;line-height:1;display:inline-grid}.prose aside:not([class]){--prose-flow:var(--space-3);padding:var(--space-4) var(--space-5);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-lg);background:var(--color-accent-surface);color:var(--color-text-body)}.prose aside:not([class],:first-child),.prose aside:not([class])+*{margin-block-start:var(--space-8)}.prose aside:not([class])>strong:first-child{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);text-wrap:balance;display:block}.prose aside:not([class])>p{font-size:var(--text-sm)}.prose .series-nav{gap:var(--space-4);border-block-start:var(--border-width) solid var(--color-border-subtle);margin-block-start:var(--space-10);padding-block-start:var(--space-6);display:grid}@media (width>=48rem){.prose .series-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.prose .series-nav__next{text-align:end;grid-column:-2}}.prose .series-nav a{gap:var(--space-1);min-block-size:var(--tap-size);padding:var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:border-color var(--dur-fast) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.prose .series-nav a:hover{border-color:var(--color-accent-border)}.prose .series-nav a:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.prose .series-nav__label,.prose .series-nav__number{font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug);letter-spacing:.14em;text-transform:uppercase}.prose .series-nav__label{font-weight:var(--weight-medium);color:var(--color-text-subtle)}.prose .series-nav__number{color:var(--color-text-muted)}.prose .series-nav__title{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:-.01em;overflow-wrap:anywhere}.prose .series-nav a:hover .series-nav__title{color:var(--color-accent-soft)}.prose .footnotes{border-block-start:var(--border-width) solid var(--color-border-subtle);color:var(--color-text-muted);font-size:var(--text-sm);margin-block-start:var(--space-12);padding-block-start:var(--space-6)}}@layer primitives{.hero{min-inline-size:0;padding-block:clamp(var(--space-12), 6vh, calc(var(--space-12) + var(--space-2)));scroll-margin-block-start:var(--header-height)}.hero>h1{max-inline-size:18ch;font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:var(--leading-display);overflow-wrap:anywhere;text-wrap:balance;margin:0}.hero-cursor{background:var(--color-progress);forced-color-adjust:none;block-size:.78em;inline-size:.1em;margin-inline-start:.12em;animation:1.1s step-end infinite hero-cursor-blink;display:inline-block;transform:translateY(.06em)}@keyframes hero-cursor-blink{0%,55%{opacity:1}56%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.hero-cursor{animation:none}}.hero-copy{max-inline-size:calc(var(--measure-prose) - var(--space-16));margin-block:var(--space-8) 0;color:var(--color-text-body);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body)}.hero-copy>p{font-size:var(--text-base);line-height:var(--leading-body)}.hero-copy strong{color:var(--color-text);font-weight:var(--weight-semibold)}.hero-actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-block-start:calc(var(--space-6) + var(--space-1));display:flex}@media (width<40rem){.hero-actions{flex-direction:column;align-items:flex-start}}.primary-link,.secondary-link{justify-content:center;align-items:center;gap:var(--space-2);min-inline-size:var(--tap-size);min-block-size:var(--tap-size);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);line-height:1;text-decoration:none;display:inline-flex}.primary-link{padding:var(--space-2) var(--space-5);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-pill);color:var(--color-accent-soft);letter-spacing:.04em}.primary-link:hover{border-color:var(--color-accent);background:var(--color-accent-surface);color:var(--color-text)}.secondary-link{padding:var(--space-2) var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);letter-spacing:.04em;cursor:pointer;background:0 0}.secondary-link:hover{border-color:var(--color-text-subtle);color:var(--color-text)}.hero-signals{margin-block:var(--space-10) 0;border-block:var(--border-width) solid var(--color-border);gap:0;display:grid}.hero-signals>div{align-items:baseline;gap:var(--space-4);min-inline-size:0;padding-block:var(--space-3);grid-template-columns:minmax(6.5rem,.8fr) minmax(0,1fr);display:grid}.hero-signals>div+div{border-block-start:var(--border-width) solid var(--color-border-subtle)}.hero-signals dt{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase;margin:0}.hero-signals dd{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}@media (width>=48rem){.hero-signals{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.hero-signals>div{align-content:start;gap:var(--space-1);padding:var(--space-4) var(--space-5);grid-template-columns:minmax(0,1fr)}.hero-signals>div:first-child{padding-inline-start:0}.hero-signals>div:last-child{padding-inline-end:0}.hero-signals>div+div{border-block-start:0;border-inline-start:var(--border-width) solid var(--color-border-subtle)}}.surface-grid{gap:var(--space-3);grid-template-columns:minmax(0,1fr);min-inline-size:0;padding:0;display:grid}@media (width>=40rem){.surface-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.surface-grid:not(:has(>:nth-child(3):last-child))>:last-child:nth-child(odd){grid-column:1/-1}}@media (width>=48rem){.surface-grid:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}}[data-landing]>:is(.surface-grid,.steps),[data-landing]>aside:not([class]),[data-landing]>:is(h2,.hero){grid-column:wide;max-inline-size:none}.surface-grid>*{align-items:flex-start;gap:var(--space-3);min-inline-size:0;padding:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);font-size:var(--text-sm);overflow-wrap:anywhere;flex-direction:column;margin:0;display:flex}.surface-grid>aside{border-color:var(--color-accent-border);background:var(--color-accent-surface)}.surface-grid>div:has(>:is(h2,h3,h4):first-child){font-size:var(--text-base);background:0 0;border:0;padding:0}.surface-grid>div:has(>:is(h2,h3,h4):first-child)>p{color:inherit;font-size:inherit}.surface-grid>div:has(>:is(h2,h3,h4):first-child)>:is(h2,h3,h4){align-self:stretch}.surface-grid>a{color:var(--color-text-body);transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);text-decoration:none}.surface-grid>a[href^=\#]{position:relative}.surface-grid>a[href^=\#]>:is(span:first-child,strong){padding-inline-end:var(--space-8)}.surface-grid>a[href^=\#]:after{content:"↓";inline-size:calc(var(--space-6) + var(--space-1));block-size:calc(var(--space-6) + var(--space-1));border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);place-items:center;line-height:1;display:grid;position:absolute;inset-block-start:var(--space-5);inset-inline-end:var(--space-5)}.surface-grid>a:hover{border-color:var(--color-accent)}.surface-grid>*>:first-child{margin-block-start:0}.surface-grid>*>:last-child{margin-block-end:0}.surface-grid>*>span:first-child{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase;display:block}.surface-grid>*>strong,.surface-grid>*>dt{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);text-wrap:balance;margin:0;display:block}.surface-grid>*>p,.surface-grid>*>dd{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-body);margin:0}.surface-grid>a>p:last-child{padding-block-start:var(--space-2)}.surface-grid>*>.path-token,.surface-grid>*>a:has(>.path-token){align-items:center;inline-size:fit-content;max-inline-size:100%;display:inline-flex}.surface-grid>*>a.path-token,.surface-grid>*>a:has(>.path-token){min-block-size:var(--tap-size);margin-block:calc(-1 * var(--space-2))}.steps{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:minmax(0,1fr);gap:0;min-inline-size:0;padding:0;list-style:none;display:grid}.steps>li{grid-template-columns:var(--space-10) minmax(0, 1fr);align-items:center;gap:var(--space-5);min-inline-size:0;padding:var(--space-4) var(--space-5);margin:0;display:grid}.steps>li+li{border-block-start:var(--border-width) solid var(--color-border)}.steps>li>span{inline-size:var(--space-10);block-size:var(--space-10);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-pill);background:var(--color-accent-surface);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);place-items:center;line-height:1;display:grid}.steps>li>div{gap:var(--space-2);min-inline-size:0;margin:0;display:grid}.steps>li strong{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0;display:block}.steps>li p{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-body);margin:0}@media (width>=48rem){.steps>li>div{align-items:center;gap:var(--space-6);grid-template-columns:minmax(11rem,.7fr) minmax(0,1.3fr)}}.setup-reference{min-inline-size:0;display:flow-root}.setup-reference>:first-child{margin-block-start:0}.setup-reference>:last-child{margin-block-end:0}.tabs{gap:var(--space-4);min-inline-size:0;display:grid}.tabs:has(>[role=tablist]){gap:0}.tabs>[role=tablist]{gap:var(--space-1);border-block-end:var(--border-width) solid var(--color-border);flex-wrap:wrap;display:flex}.tabs [role=tab]{min-inline-size:var(--tap-size);min-block-size:var(--tap-size);padding:var(--space-2) var(--space-4);border:0;border-block-end:var(--focus-width) solid transparent;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;margin-block-end:calc(-1 * var(--border-width))}.tabs [role=tab]:hover{color:var(--color-text)}.tabs [role=tab][aria-selected=true]{border-block-end-color:var(--color-accent);color:var(--color-accent)}.tab{min-inline-size:0;padding:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.tabs:has(>[role=tablist])>.tab{border-block-start:0;border-start-start-radius:0;border-start-end-radius:0}.tab[hidden]{display:none}.tab>span:first-child{margin-block:0 var(--space-3);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase;display:block}.tabs:has(>[role=tablist])>.tab>span:first-child{display:none}.tabs:has(>[role=tablist])>.tab>span:first-child+*{margin-block-start:0}.tab>:last-child{margin-block-end:0}.disclosure{min-inline-size:0;padding:0 var(--space-4);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-lg);background:var(--color-surface)}.disclosure[open]{padding-block-end:var(--space-4)}.disclosure>summary{align-items:center;gap:var(--space-3);min-block-size:var(--tap-size);margin-inline:calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4);border-radius:calc(var(--radius-lg) - var(--border-width));color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{inline-size:var(--space-4);color:var(--color-accent);content:"+";font-weight:var(--weight-medium);text-align:center;flex:none;line-height:1}.disclosure[open]>summary:before{content:"−"}.disclosure>summary:hover,.disclosure>summary:focus-visible{background:var(--color-accent-surface)}.disclosure[open]>summary{border-block-end:var(--border-width) solid var(--color-border);background:var(--color-accent-surface);border-end-end-radius:0;border-end-start-radius:0}.disclosure>summary+*{margin-block-start:var(--space-4)}.context-help-source{display:contents}.context-help-source[hidden]{display:none}.context-help-trigger{z-index:var(--z-back-to-top);align-items:center;gap:var(--space-2);min-inline-size:var(--tap-size);block-size:var(--tap-size);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-raised);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.04em;transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);line-height:1;display:inline-flex;position:fixed;inset-block-end:calc(max(clamp(var(--space-4), 3vw, var(--space-8)), env(safe-area-inset-bottom,0)) + var(--tap-size) + var(--space-3));inset-inline-end:max(clamp(var(--space-4), 3vw, var(--space-8)), env(safe-area-inset-right,0))}.context-help-trigger:after{content:"Quick context"}.context-help-trigger:hover{border-color:var(--color-accent);background:var(--color-accent-surface)}[data-context-help-mount]:not(:empty){justify-content:flex-end;display:flex}[data-context-help-mount]>.context-help-trigger{box-shadow:none;position:static}.context-help{inline-size:min(var(--measure-prose), calc(100% - 2 * var(--space-gutter)));max-inline-size:none;max-block-size:calc(100dvh - 2 * var(--space-gutter));border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);color:var(--color-text-body);box-shadow:var(--shadow-raised);margin:auto;padding:0}.context-help[open]{grid-template-rows:minmax(0,1fr);display:grid}.context-help::backdrop{background:var(--color-header)}.context-help__panel{overscroll-behavior:contain;scrollbar-gutter:stable;min-block-size:0;overflow:auto}.context-help__header{z-index:var(--z-progress);justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-block-end:var(--border-width) solid var(--color-border-subtle);background:var(--color-surface-raised);display:flex;position:sticky;inset-block-start:0}.context-help__header>div{min-inline-size:0}.context-help__header p{margin:0 0 var(--space-1);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase}.context-help__header h2{color:var(--color-text);font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-heading);line-height:var(--leading-snug);text-wrap:balance;border:0;margin:0;padding:0}.context-help__header button{inline-size:var(--tap-size);block-size:var(--tap-size);margin-block:calc(-1 * var(--space-2));border-radius:var(--radius-pill);color:var(--color-text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex:none;place-items:center;margin-inline-end:calc(-1 * var(--space-2));padding:0;display:grid}.context-help__header button:hover{background:var(--color-accent-surface);color:var(--color-text)}.context-help__header svg{inline-size:var(--space-4);block-size:var(--space-4);fill:none;stroke:currentColor;stroke-linecap:square;stroke-width:1.5px}.context-help__terms{padding:0 var(--space-6) var(--space-2);margin:0}.context-help__terms>div{gap:var(--space-1);padding-block:var(--space-4);display:grid}.context-help__terms>div+div{border-block-start:var(--border-width) solid var(--color-border-subtle)}.context-help__terms dt{color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}.context-help__terms dd{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);margin:0}@media (width>=40rem){.context-help__terms>div{align-items:baseline;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}.shortcut-filter{gap:var(--space-3);min-inline-size:0;display:grid}.shortcut-filter>label{color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;line-height:var(--leading-snug);text-transform:uppercase}.shortcut-filter__search{align-items:center;min-inline-size:0;display:flex;position:relative}.shortcut-filter__search input{inline-size:100%;min-block-size:calc(var(--tap-size) + var(--space-1));padding:var(--space-2) var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-normal);line-height:var(--leading-body);appearance:none;padding-inline-end:calc(var(--tap-size) + var(--space-4))}.shortcut-filter__search input::placeholder{color:var(--color-text-subtle);opacity:1}.shortcut-filter__search input::-webkit-search-decoration,.shortcut-filter__search input::-webkit-search-cancel-button{display:none}.shortcut-filter__search input:focus-visible{border-color:var(--color-accent)}.shortcut-filter__search button{inset-block:var(--border-width);min-inline-size:var(--tap-size);padding:0 var(--space-3);border-radius:calc(var(--radius-md) - var(--border-width));color:var(--color-accent-soft);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:0;line-height:1;position:absolute;inset-inline-end:var(--border-width)}.shortcut-filter__search button:hover{background:var(--color-accent-surface);color:var(--color-text)}.shortcut-filter__search button[hidden]{display:none}.shortcut-filter__scopes{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.shortcut-filter__scopes button{min-inline-size:var(--tap-size);min-block-size:var(--tap-size);padding:var(--space-2) var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);line-height:1}.shortcut-filter__scopes button:hover{border-color:var(--color-accent-border);color:var(--color-text)}.shortcut-filter__scopes button[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent-surface);color:var(--color-accent-soft)}.shortcut-filter__status{min-block-size:var(--space-5);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-normal);line-height:var(--leading-snug);margin:0}.shortcut-filter-empty{padding:var(--space-8);border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-md);text-align:center;text-wrap:balance}.shortcut-filter-empty[hidden]{display:none}.shortcut-filter-section{min-inline-size:0}.shortcut-filter-section[hidden],.shortcut-filter-section [hidden]{display:none}.shortcut-reference{min-inline-size:0;scroll-margin-block-start:calc(var(--header-height) + var(--space-4))}.shortcut-reference>:first-child{margin-block-start:0}.shortcut-reference thead{background:var(--code-toolbar-bg)}.shortcut-reference th{padding-block:var(--space-4)}.shortcut-reference th+th{border-inline-start:var(--border-width) solid var(--color-border-subtle)}.shortcut-reference tbody td{padding-block:var(--space-4);vertical-align:middle}.shortcut-reference td:not(:last-child){text-align:start}.shortcut-reference td:not(:last-child) code{white-space:nowrap}@media (width>=48rem){.shortcut-reference :is(th,td):not(:last-child){white-space:nowrap;inline-size:0}}.shortcut-reference td:last-child{min-inline-size:var(--table-description-floor);line-height:var(--leading-body);text-wrap:pretty}.shortcut-prefix-summary{align-items:center;gap:var(--space-2) var(--space-3);min-inline-size:0;padding:var(--space-3) var(--space-4);border:var(--border-width) solid var(--color-accent-border);border-inline-start-width:var(--focus-width);border-radius:var(--radius-md);background:var(--color-accent-surface);flex-wrap:wrap;display:flex}.shortcut-prefix-summary__label{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase}.shortcut-prefix-summary__release{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);margin-inline-start:auto}.shortcut-then{margin-inline:var(--space-1);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);display:inline-block}.shortcut-mode{padding:calc(var(--space-1) / 2) var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:.12em;vertical-align:middle;white-space:nowrap;margin-inline-start:var(--space-1);display:inline-block}@media (width<40rem){.shortcut-reference table:not(:has(tr>:nth-child(4))){--table-description-floor:0px}.shortcut-reference table:not(:has(tr>:nth-child(4))) :is(th,td){text-align:start;white-space:normal;padding:0}.shortcut-reference table:not(:has(tr>:nth-child(4))) th+th{border:0}}.keys{align-items:center;gap:var(--space-1);vertical-align:baseline;white-space:nowrap;flex-wrap:nowrap;display:inline-flex}td:not(:last-child):has(>.keys:first-child){vertical-align:middle}.keys>span{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--code-inline-size);font-weight:var(--weight-medium);line-height:1}.keys>kbd{min-inline-size:calc(var(--space-6) + var(--space-1));padding:calc(var(--space-1) * .75) var(--space-2);border:var(--border-width) solid var(--kbd-border);border-radius:var(--radius-sm);background:var(--kbd-bg);color:var(--color-text);box-shadow:0 var(--border-width) 0 var(--kbd-border);font-family:var(--font-mono);font-size:var(--code-inline-size);font-weight:var(--weight-normal);line-height:var(--leading-snug);text-align:center;white-space:nowrap;justify-content:center;align-items:center;display:inline-flex}.path-token{hyphens:none;overflow-wrap:anywhere}.media-exhibit{inline-size:100%;min-inline-size:0;margin-inline:0}.media-exhibit-frame{border:var(--border-width) solid var(--code-border);border-radius:var(--radius-md);background:var(--code-bg);color:var(--code-muted);box-shadow:var(--shadow-raised);margin:0}.media-exhibit-stage{min-inline-size:0;padding:clamp(calc(var(--space-1) * 1.5), 1vw, var(--space-3));background:var(--code-bg);border-end-end-radius:calc(var(--radius-md) - var(--border-width));border-end-start-radius:calc(var(--radius-md) - var(--border-width));place-items:center;display:grid}.media-exhibit-stage>img,.media-exhibit-stage>video{border-radius:var(--radius-sm);block-size:auto;inline-size:100%;max-inline-size:100%;box-shadow:0 0 0 var(--border-width) var(--color-border-subtle);background:0 0;border:0;margin:0;display:block}.exhibit-toolbar{align-items:center;gap:var(--space-2);min-inline-size:0;padding:var(--space-2) var(--space-4);border-block-end:var(--border-width) solid var(--code-border);background:var(--code-toolbar-bg);border-start-start-radius:calc(var(--radius-md) - var(--border-width));border-start-end-radius:calc(var(--radius-md) - var(--border-width));display:flex}.exhibit-dots{gap:var(--space-2);flex:none;display:flex}.exhibit-dots>i{inline-size:var(--space-2);block-size:var(--space-2);border-radius:var(--radius-pill);background:var(--color-border);display:block}.exhibit-filename{min-inline-size:0;color:var(--code-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-normal);line-height:var(--leading-snug);overflow-wrap:anywhere;margin-inline-start:var(--space-2)}.exhibit-badge{padding:calc(var(--space-1) / 2) var(--space-2);border:var(--border-width) solid var(--code-border);border-radius:var(--radius-sm);color:var(--code-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-transform:uppercase;white-space:nowrap;flex:none;margin-inline-start:auto}.exhibit-caption{min-inline-size:0;margin:var(--space-3) 0 0;padding-inline:var(--space-1);overflow-wrap:anywhere}.exhibit-caption>span:first-child{color:var(--color-accent)}.diagram-exhibit{min-inline-size:0;padding:var(--space-5) var(--space-6);border:var(--border-width) solid var(--code-border);border-radius:var(--radius-md);background:var(--code-bg)}.diagram-exhibit svg{block-size:auto;inline-size:100%;max-inline-size:45rem;margin-inline:auto;display:block}@media (width<40rem){.diagram-exhibit:has(>svg){overscroll-behavior-inline:contain;overflow-x:auto}.diagram-exhibit>svg{min-inline-size:36rem}.diagram-exhibit:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}}.diagram-exhibit-label,.diagram-exhibit>p{margin:0 0 var(--space-4);color:var(--code-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);line-height:var(--leading-snug);text-align:center;text-transform:uppercase;text-wrap:balance}.diagram-exhibit-label-secondary{margin-block-start:var(--space-6)}.diagram-exhibit>div:not(.diagram-exhibit-label){justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug);flex-wrap:wrap;display:flex}.diagram-exhibit>div:not(.diagram-exhibit-label)>span{padding:var(--space-1) var(--space-3);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-sm);background:var(--color-accent-surface);color:var(--color-accent)}.diagram-exhibit>div:not(.diagram-exhibit-label)>i{color:var(--color-text-subtle);font-style:normal}.concept-diagram{inline-size:100%;min-inline-size:0;margin-inline:0}.concept-diagram>.diagram-exhibit{margin-block:0}.concept-diagram>.exhibit-caption{margin-block-start:var(--space-4)}.media-figure{inline-size:100%;min-inline-size:0;margin-inline:auto}.media-figure>figcaption{margin-block-start:var(--space-3)}.media-figure-wide{inline-size:100%;max-inline-size:none}.media-figure-compact{inline-size:fit-content;max-inline-size:100%}.media-frame{min-inline-size:0;padding:var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-raised)}.media-frame>:is(img,video){border-radius:var(--radius-sm);background:0 0;border:0;block-size:auto;inline-size:100%;margin:0;display:block}.media-frame-dark{background:var(--frame-dark)}.media-frame-light{background:var(--frame-light)}.media-frame-scroll{overscroll-behavior-inline:contain;scrollbar-gutter:stable;overflow-x:auto}.media-frame-scroll:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.media-frame-scroll>img{inline-size:auto;min-inline-size:100%;max-inline-size:max(100%, var(--measure-page))}}@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@layer print{@media print{@page{margin:1.6cm}html{font-size:var(--text-print-root)}.skip-link,.op-header,.op-footer,.back-to-top,.toc,.adjacent-nav,.link-row,.comments-region,.reader,.global-search-dialog,.lightbox,.context-help,.context-help-trigger,[data-context-help-mount],.page-source-actions,.back-link,.hero-actions,.hero-cursor,.topic-filters,.filter-status,.grid-toggle-row,.expressive-code .copy,.contact-copy,.heading-anchor{display:none}.page,.article,.content-grid,.prose.content-grid{max-inline-size:none;padding:0;display:block}.prose.content-grid>*,.prose:not(.content-grid),.article-header,.article .adjacent-nav,.comments-region,.toc{max-inline-size:none}.article-header{padding-block-start:0}body{color:var(--color-text)}h1,h2,h3,h4,h5,h6{break-after:avoid}pre,table,figure,aside,.steps>li,.surface-grid>*,.case-card,.contact-method{break-inside:avoid}.prose .expressive-code .frame pre,.prose pre:not(.expressive-code *),.table-scroll,.diagram-exhibit,.media-frame-scroll{overflow:visible}.expressive-code .ec-line .code,.prose pre:not(.expressive-code *){white-space:pre-wrap;overflow-wrap:anywhere}.prose .expressive-code .frame:after{content:none}.diagram-exhibit>svg{min-inline-size:0}.prose a[href^=http]:not(:has(>code)):after{content:" (" attr(href) ")";font-size:var(--code-inline-size);color:var(--color-text-muted);overflow-wrap:anywhere}}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
