.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--c4-cream-50: #fdfaef;--c4-cream-100: #faf4e2;--c4-cream-200: #f7f0dd;--c4-cream-300: #f5edd2;--c4-cream-400: #ece3c2;--c4-cream-500: #c4bea9;--c4-cream-600: #8a857a;--c4-char-50: #2a2826;--c4-char-100: #1a1814;--c4-char-200: #16140f;--c4-char-300: #0e0e0c;--c4-char-400: #3a3a36;--c4-char-500: #3a3527;--c4-char-600: #6b6b66;--c4-char-700: #6e6650;--c4-bronze-50: #fff2e6;--c4-bronze-100: #ffd6b5;--c4-bronze-200: #8a5e48;--c4-bronze-300: #6e4a36;--c4-bronze-400: #6b4a38;--c4-bronze-500: #2a1810;--c4-phosphor-green-50: #b9ffb0;--c4-phosphor-green-100: #7eff70;--c4-phosphor-green-200: #5cc25c;--c4-phosphor-green-300: #2f8a3c;--c4-phosphor-green-400: #1f5a28;--c4-phosphor-green-500: #102f15;--c4-phosphor-green-600: #050a06;--c4-phosphor-amber-50: #ffe1a0;--c4-phosphor-amber-100: #ffb000;--c4-phosphor-amber-200: #d68b00;--c4-phosphor-amber-300: #a06600;--c4-phosphor-amber-400: #5a3a00;--c4-phosphor-amber-500: #2a1c00;--c4-phosphor-amber-600: #0a0700;--c4-danger: #ad2222;--c4-danger-bright: #ff7a7a;--c4-success: #2f8a3c;--c4-warning: #d68b00}:root,[data-theme=paper]{--paper: var(--c4-cream-200);--ink: var(--c4-char-300);--ink-mid: var(--c4-char-400);--ink-dim: var(--c4-char-600);--ink-faint: rgba(14, 14, 12, .18);--ink-faint-2: rgba(14, 14, 12, .06);--crt-warm: var(--c4-bronze-200);--crt-warm-deep: var(--c4-bronze-300);--crt-glaze: var(--c4-bronze-50);--crt-shadow: var(--c4-bronze-400);--danger: var(--c4-danger)}[data-theme=dark]{--paper: var(--c4-char-300);--ink: var(--c4-cream-200);--ink-mid: var(--c4-cream-500);--ink-dim: var(--c4-cream-600);--ink-faint: rgba(247, 240, 221, .18);--ink-faint-2: rgba(247, 240, 221, .06);--crt-warm: var(--c4-bronze-300);--crt-warm-deep: var(--c4-bronze-500);--crt-glaze: rgba(255, 242, 230, .12);--crt-shadow: rgba(0, 0, 0, .45);--danger: var(--c4-danger-bright)}[data-theme=green]{--paper: var(--c4-phosphor-green-600);--ink: var(--c4-phosphor-green-100);--ink-mid: var(--c4-phosphor-green-200);--ink-dim: color-mix(in srgb, var(--c4-phosphor-green-200) 30%, var(--c4-phosphor-green-300));--ink-faint: rgba(126, 255, 112, .18);--ink-faint-2: rgba(126, 255, 112, .06);--crt-warm: var(--c4-phosphor-green-400);--crt-warm-deep: var(--c4-phosphor-green-500);--crt-glaze: rgba(126, 255, 112, .16);--crt-shadow: rgba(0, 0, 0, .55);--danger: var(--c4-danger-bright)}[data-theme=amber]{--paper: var(--c4-phosphor-amber-600);--ink: var(--c4-phosphor-amber-100);--ink-mid: var(--c4-phosphor-amber-200);--ink-dim: color-mix(in srgb, var(--c4-phosphor-amber-200) 40%, var(--c4-phosphor-amber-300));--ink-faint: rgba(255, 176, 0, .18);--ink-faint-2: rgba(255, 176, 0, .06);--crt-warm: var(--c4-phosphor-amber-400);--crt-warm-deep: var(--c4-phosphor-amber-500);--crt-glaze: rgba(255, 176, 0, .18);--crt-shadow: rgba(0, 0, 0, .55);--danger: var(--c4-danger-bright)}[data-theme=red]{--paper: #0d0100;--ink: #ff3b00;--ink-mid: #ff8568;--ink-dim: #d7613e;--ink-faint: rgba(255, 59, 0, .18);--ink-faint-2: rgba(255, 59, 0, .06);--crt-warm: #9a2c00;--crt-warm-deep: #2a0900;--crt-glaze: rgba(255, 59, 0, .16);--crt-shadow: rgba(0, 0, 0, .55);--danger: #ffcc00}html:not([data-theme]) .c4-ds,[data-theme=paper] .c4-ds{--paper: var(--c4-cream-300);--ink-mid: var(--c4-char-500);--ink-dim: var(--c4-char-700)}[data-theme=dark] .c4-ds{--paper: var(--c4-char-200);--ink: var(--c4-cream-300)}:root{--c4-duration-instant: .1s;--c4-duration-fast: .18s;--c4-duration-base: .28s;--c4-duration-slow: .52s;--c4-duration-hero: .9s;--c4-ease-out: cubic-bezier(.22, 1, .36, 1);--c4-ease-in-out: cubic-bezier(.4, 0, .2, 1);--c4-ease-emphasis: cubic-bezier(.2, .8, .2, 1);--c4-ease-mold: cubic-bezier(.12, .78, .18, 1);--c4-ease-bounce: cubic-bezier(.34, 1.56, .64, 1)}.ch{display:inline-block;white-space:pre;min-width:.18em}.word-group{display:inline-block;white-space:nowrap}.acl-typewriter-cursor{display:inline-block;width:2px;height:.9em;margin-left:.06em;margin-right:.02em;background:var(--ink);vertical-align:-.08em;animation:acl-cursor-blink .7s steps(2,end) infinite;transition:opacity .52s cubic-bezier(.22,1,.36,1)}.acl-typewriter-cursor[data-state=done]{opacity:0;animation:none}@keyframes acl-cursor-blink{50%{opacity:0}}.acl-shift-guard{display:grid;grid-template-areas:"stack"}.acl-shift-guard--inline{display:inline-grid;vertical-align:top}.acl-shift-guard>*{grid-area:stack;min-width:0}.acl-shift-ghost{visibility:hidden;pointer-events:none;user-select:none}[data-typewriter] .ch{opacity:0;transition:opacity 60ms ease}[data-typewriter] .ch[data-shown="1"]{opacity:1}[data-line-scramble] .ch{font-variant-ligatures:none;font-feature-settings:"liga" 0;opacity:0;transition:opacity 60ms ease}[data-line-scramble] .ch[data-shown="1"]{opacity:1}[data-line-scramble][data-soft-reveal="1"] .ch{opacity:1;transition:none}[data-line-scramble][data-soft-reveal="1"] .word-group{opacity:1;transform:translateZ(0) scale(1);filter:blur(0);clip-path:inset(0 0 0 0 round 0);transition:opacity .52s var(--c4-ease-out, cubic-bezier(.22, 1, .36, 1)),transform .66s var(--c4-ease-emphasis, cubic-bezier(.16, 1, .3, 1)),filter .66s var(--c4-ease-out, cubic-bezier(.22, 1, .36, 1)),clip-path .66s var(--c4-ease-out, cubic-bezier(.22, 1, .36, 1))}[data-line-scramble][data-soft-reveal="1"][data-soft-pending="1"] .word-group{will-change:opacity,transform,filter,clip-path}[data-line-scramble][data-soft-reveal="1"][data-soft-pending="1"] .word-group:not([data-shown="1"]){opacity:0;transform:translate3d(0,.42em,0) scale(.985);filter:blur(8px);clip-path:inset(12% 0 18% 0 round .12em)}[data-glitch]{position:relative;display:inline-block}[data-glitch]:before,[data-glitch]:after{content:attr(data-text);position:absolute;inset:0;font:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;pointer-events:none;opacity:0;white-space:pre}[data-glitch][data-glitch-state=rip]:before{opacity:1;clip-path:inset(0 0 56% 0);animation:acl-rip-top .22s steps(2,start)}[data-glitch][data-glitch-state=rip]:after{opacity:1;clip-path:inset(46% 0 0 0);animation:acl-rip-bot .22s steps(2,start)}@keyframes acl-rip-top{0%{transform:translate(-7px);filter:brightness(1)}35%{transform:translate(-11px);filter:brightness(1.4)}60%{transform:translate(-4px)}to{transform:translate(-7px)}}@keyframes acl-rip-bot{0%{transform:translate(8px);filter:brightness(1)}35%{transform:translate(12px);filter:brightness(1.4)}60%{transform:translate(5px)}to{transform:translate(8px)}}[data-glitch][data-glitch-state=double]:before{opacity:.5;animation:acl-ghost .36s ease-out}@keyframes acl-ghost{0%{opacity:.55;transform:translateY(-4px) scaleY(1.02)}55%{opacity:.28;transform:translateY(-2px)}to{opacity:0;transform:translateY(0)}}[data-glitch][data-glitch-state=strobe]{animation:acl-strobe .34s steps(5,end)}@keyframes acl-strobe{0%,56%,to{filter:brightness(1) saturate(1)}14%{filter:brightness(1.9) saturate(1.5) contrast(1.15)}28%{filter:brightness(.85)}42%{filter:brightness(1.7)}70%{filter:brightness(1.5)}}@media(prefers-reduced-motion:reduce){[data-glitch][data-glitch-state]:before,[data-glitch][data-glitch-state]:after{animation:none;opacity:0}[data-typewriter] .ch,[data-line-scramble] .ch{opacity:1;transition:none}[data-line-scramble][data-soft-reveal="1"] .word-group{opacity:1;transform:none;filter:none;clip-path:none;transition:none}}@font-face{font-family:Comfortaa;src:url(/fonts/comfortaa/comfortaa-latin-ext.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Comfortaa;src:url(/fonts/comfortaa/comfortaa-latin.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:TX-02;src:url(/fonts/berkeley-mono/TX-02-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TX-02;src:url(/fonts/berkeley-mono/TX-02-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:TX-02;src:url(/fonts/berkeley-mono/TX-02-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:TX-02;src:url(/fonts/berkeley-mono/TX-02-Oblique.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}*,*:before,*:after{box-sizing:border-box}html{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision;font-feature-settings:"kern" 1,"calt" 1;scroll-behavior:smooth}body{margin:0;min-height:100svh;background:var(--paper);color:var(--ink);font-family:TX-02,ui-monospace,JetBrains Mono,monospace;line-height:1.55}::selection{background:var(--ink);color:var(--paper)}*:focus-visible{outline:2px solid var(--ink);outline-offset:2px}html[data-c4-page-visible=false] *,html[data-c4-page-visible=false] *:before,html[data-c4-page-visible=false] *:after{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.c4-ds{--c4-ds-max: 76rem;--c4-ds-gutter: clamp(1.25rem, 5vw, 4rem);--c4-ds-section-y: clamp(5rem, 11vw, 9rem);--c4-ds-radius: clamp(1rem, 1.6vw, 1.5rem);--c4-ds-radius-control: .9rem;--c4-ds-title: var(--ink);--c4-ds-text: color-mix(in srgb, var(--c4-ds-title) 82%, var(--paper));--c4-ds-muted: var(--ink-dim);--c4-ds-line: color-mix(in srgb, var(--ink) 13%, transparent);--c4-ds-line-strong: color-mix(in srgb, var(--ink) 24%, transparent);--c4-ds-surface: color-mix(in srgb, var(--ink) 3.5%, var(--paper));--c4-ds-surface-raised: color-mix(in srgb, var(--ink) 6%, var(--paper));--c4-ds-dot: color-mix(in srgb, var(--ink) 16%, transparent);--c4-ds-glow: color-mix(in srgb, var(--crt-warm) 30%, transparent);--c4-ds-danger: var(--danger);--c4-ds-cube-tint: var(--crt-warm-deep);--c4-ds-font-display: "Comfortaa", system-ui, sans-serif;--c4-ds-font-mono: "TX-02", ui-monospace, monospace;--c4-ds-ease: var(--c4-ease-out);--c4-ds-card-delay: .26s;--c4-ds-card-stagger: 90ms;--c4-chrome-text: var(--ink);--c4-chrome-text-muted: color-mix(in srgb, var(--ink) 74%, transparent);--c4-chrome-on-ink: var(--paper)}[data-theme=green] .c4-ds,[data-theme=amber] .c4-ds,[data-theme=red] .c4-ds{--c4-ds-title: color-mix(in srgb, #ffffff 74%, var(--ink) 26%);--c4-ds-cube-tint: var(--ink-mid);--c4-chrome-text: color-mix(in srgb, #ffffff 84%, var(--ink) 16%);--c4-chrome-text-muted: color-mix(in srgb, #ffffff 62%, var(--ink) 38%)}[data-theme=dark] .c4-ds{--c4-ds-cube-tint: var(--ink-mid)}.c4-ds-page{overflow-x:clip;color:var(--c4-ds-text)}.c4-ds-container{width:min(var(--c4-ds-max),100% - 2 * var(--c4-ds-gutter));margin-inline:auto}.c4-ds-section{position:relative;padding-block:var(--c4-ds-section-y);scroll-margin-top:4.5rem}.c4-ds-section[data-density=compact]{padding-block:clamp(2.5rem,6vw,4.5rem)}.c4-ds-section+.c4-ds-section:before{content:"";position:absolute;top:0;left:50%;width:min(var(--c4-ds-max),100% - 2 * var(--c4-ds-gutter));height:2px;translate:-50% 0;background:radial-gradient(circle,var(--c4-ds-line-strong) .9px,transparent 1.3px) 0 50% / 10px 2px repeat-x}.c4-ds-dotted-rule{display:block;height:6px;background:radial-gradient(circle,var(--c4-ds-line-strong) 1.5px,transparent 2px) 0 50% / 12px 6px repeat-x}.c4-ds-stack{display:grid;gap:clamp(1rem,2vw,1.5rem)}.c4-ds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--c4-ds-grid-min, 18rem)),1fr));gap:clamp(1rem,2vw,1.5rem)}.c4-ds-head{display:grid;gap:1.25rem clamp(2rem,6vw,5rem);margin-bottom:clamp(2.75rem,6vw,4.5rem)}.c4-ds-eyebrow{display:inline-flex;align-items:center;gap:.75rem;margin:0;color:var(--c4-ds-muted);font-family:var(--c4-ds-font-mono);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.c4-ds-eyebrow:before{content:"";width:1.6rem;height:6px;flex:none;background:radial-gradient(circle,currentColor 2px,transparent 2.4px) 0 50% / 8px 6px repeat-x}.c4-ds-h1{margin:0;max-width:20ch;color:var(--c4-ds-title);font-family:var(--c4-ds-font-display);font-size:clamp(2.4rem,5.6vw,4.5rem);font-weight:500;line-height:1.04;letter-spacing:-.04em;text-wrap:balance}.c4-ds-h2{margin:0;max-width:18ch;color:var(--c4-ds-title);font-family:var(--c4-ds-font-display);font-size:clamp(2.1rem,4.6vw,3.75rem);font-weight:500;line-height:1.06;letter-spacing:-.035em;white-space:pre-line;text-wrap:balance}.c4-ds-h3{margin:0;color:var(--c4-ds-title);font-family:var(--c4-ds-font-display);font-size:clamp(1.2rem,2vw,1.45rem);font-weight:700;line-height:1.2;letter-spacing:-.02em;overflow-wrap:break-word}.c4-ds-lead{display:grid;gap:.85rem;max-width:62ch;color:var(--c4-ds-text);font-size:clamp(.95rem,.9rem + .2vw,1.05rem);line-height:1.7}.c4-ds-lead p{margin:0;text-wrap:pretty}.c4-ds-lead p[data-lead=first]{color:var(--c4-ds-title)}.c4-ds-prose{max-width:68ch;color:var(--c4-ds-text);font-size:.95rem;line-height:1.7}.c4-ds-prose>*{margin-block:0 1rem}.c4-ds-prose a{color:var(--c4-ds-title);text-decoration:underline dotted;text-underline-offset:.25em}@media(min-width:960px){.c4-ds-head[data-layout=split]{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end}.c4-ds-head[data-layout=split] .c4-ds-eyebrow{grid-column:1 / -1}}.c4-ds-btn{--c4-ds-btn-bg: transparent;--c4-ds-btn-fg: var(--ink);--c4-ds-btn-border: var(--c4-ds-line-strong);display:inline-flex;align-items:center;justify-content:center;gap:.85rem;min-height:3.25rem;padding:0 .6rem 0 1.5rem;border:1px solid var(--c4-ds-btn-border);border-radius:999px;background:var(--c4-ds-btn-bg);color:var(--c4-ds-btn-fg);font:700 .82rem/1 var(--c4-ds-font-mono);letter-spacing:.08em;text-decoration:none;cursor:pointer;transition:transform var(--c4-duration-fast) var(--c4-ds-ease),box-shadow var(--c4-duration-fast) var(--c4-ds-ease),background-color var(--c4-duration-fast) var(--c4-ds-ease)}.c4-ds-btn--solid{--c4-ds-btn-bg: var(--ink);--c4-ds-btn-fg: var(--paper);--c4-ds-btn-border: var(--ink)}.c4-ds-btn--inverse{--c4-ds-btn-bg: var(--paper);--c4-ds-btn-fg: var(--ink);--c4-ds-btn-border: var(--paper)}.c4-ds-btn--ghost{padding-inline:1.4rem .6rem;background:var(--paper)}.c4-ds-btn--danger{--c4-ds-btn-fg: var(--c4-ds-danger);--c4-ds-btn-border: color-mix(in srgb, var(--c4-ds-danger) 55%, transparent)}.c4-ds-btn--sm{gap:.6rem;min-height:2.5rem;padding:0 1.1rem;font-size:.74rem}.c4-ds-btn:not(:has(.c4-ds-btn-glyph)){padding-inline:1.5rem}.c4-ds-btn--sm:not(:has(.c4-ds-btn-glyph)){padding-inline:1.1rem}.c4-ds-btn-glyph{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:color-mix(in srgb,var(--c4-ds-btn-fg) 14%,transparent);font-size:1rem;transition:transform var(--c4-duration-fast) var(--c4-ds-ease)}.c4-ds-btn--sm .c4-ds-btn-glyph{width:1.6rem;height:1.6rem;margin-right:-.6rem;font-size:.85rem}.c4-ds-btn[data-glyph=start]{padding-inline:.6rem 1.5rem}.c4-ds-btn--sm[data-glyph=start] .c4-ds-btn-glyph{margin-right:0;margin-left:-.6rem}.c4-ds-btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px color-mix(in srgb,var(--crt-shadow) 22%,transparent)}.c4-ds-btn:hover .c4-ds-btn-glyph{transform:translate(3px)}.c4-ds-btn:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.c4-ds-btn:is(:disabled,[aria-disabled=true],[data-state=loading]){opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.c4-ds-btn[data-state=loading]{cursor:progress}.c4-ds-chip{display:inline-flex;align-items:center;min-height:1.7rem;padding:0 .65rem;border:1px solid var(--c4-ds-line);border-radius:999px;color:var(--c4-ds-muted);font:500 .72rem/1 var(--c4-ds-font-mono);letter-spacing:.02em;white-space:nowrap}.c4-ds-status{display:inline-flex;align-items:center;gap:.45rem;min-height:1.6rem;padding:0 .7rem;border:1px solid var(--c4-ds-line-strong);border-radius:999px;color:var(--c4-ds-muted);font:700 .66rem/1 var(--c4-ds-font-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.c4-ds-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.55}.c4-ds-status[data-status=preview]{border-color:transparent;background:var(--ink);color:var(--paper)}.c4-ds-status[data-status=preview]:before{opacity:1;animation:c4-ds-blink 2.4s steps(2,jump-none) infinite}.c4-ds-status[data-status=danger]{border-color:color-mix(in srgb,var(--c4-ds-danger) 55%,transparent);color:var(--c4-ds-danger)}@keyframes c4-ds-blink{50%{opacity:.25}}.c4-ds-segmented{display:inline-flex;flex-wrap:wrap;gap:.25rem;max-width:100%;padding:.3rem;border:1px solid var(--c4-ds-line-strong);border-radius:999px;background:var(--c4-ds-surface)}.c4-ds-segmented[data-scroll]{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.c4-ds-segmented[data-scroll]::-webkit-scrollbar{display:none}.c4-ds-segment{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:2.1rem;padding:0 .95rem;border:0;border-radius:999px;background:transparent;color:var(--c4-ds-muted);font:700 .7rem/1 var(--c4-ds-font-mono);letter-spacing:.12em;text-decoration:none;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color var(--c4-duration-fast) var(--c4-ds-ease),color var(--c4-duration-fast) var(--c4-ds-ease)}.c4-ds-segment:hover{color:var(--c4-ds-title)}.c4-ds-segment:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.c4-ds-segment:is([data-active=true],[aria-pressed=true]){background:var(--ink);color:var(--paper)}.c4-ds-segmented[data-size=sm] .c4-ds-segment{min-height:1.85rem;padding-inline:.85rem;font-size:.66rem}@media(prefers-reduced-motion:reduce){.c4-ds-btn,.c4-ds-btn-glyph,.c4-ds-segment{transition:none}.c4-ds-status[data-status=preview]:before{animation:none}}.c4-ds-form{display:grid;gap:clamp(1.1rem,2vw,1.5rem)}.c4-ds-fieldset{display:grid;gap:1rem;margin:0;padding:clamp(1.25rem,2.6vw,1.75rem);border:1px solid var(--c4-ds-line);border-radius:var(--c4-ds-radius)}.c4-ds-fieldset>legend{padding-inline:.5rem;color:var(--c4-ds-muted);font:700 .72rem/1 var(--c4-ds-font-mono);letter-spacing:.14em;text-transform:uppercase}.c4-ds-field{display:grid;gap:.5rem;min-width:0}.c4-ds-label{color:var(--c4-ds-title);font:700 .74rem/1.3 var(--c4-ds-font-mono);letter-spacing:.08em;text-transform:uppercase}.c4-ds-label[data-required]:after{content:" *";color:var(--c4-ds-muted)}.c4-ds-input{width:100%;min-height:3rem;padding:.75rem 1rem;border:1px solid var(--c4-ds-line-strong);border-radius:var(--c4-ds-radius-control);background:var(--paper);color:var(--c4-ds-title);font:400 .92rem/1.5 var(--c4-ds-font-mono);transition:border-color var(--c4-duration-fast) var(--c4-ds-ease),background-color var(--c4-duration-fast) var(--c4-ds-ease)}.c4-ds-input::placeholder{color:color-mix(in srgb,var(--c4-ds-muted) 70%,transparent)}.c4-ds-input:hover{border-color:color-mix(in srgb,var(--ink) 40%,transparent)}.c4-ds-input:focus-visible{border-color:var(--ink);outline:2px solid var(--ink);outline-offset:2px}.c4-ds-input:disabled{background:var(--c4-ds-surface);color:var(--c4-ds-muted);cursor:not-allowed}.c4-ds-input[aria-invalid=true]{border-color:var(--c4-ds-danger)}textarea.c4-ds-input{min-height:8rem;resize:vertical}select.c4-ds-input{appearance:none;padding-right:2.75rem;background-image:linear-gradient(45deg,transparent 50%,var(--c4-ds-title) 50%),linear-gradient(135deg,var(--c4-ds-title) 50%,transparent 50%);background-position:calc(100% - 1.35rem) 50%,calc(100% - 1rem) 50%;background-size:.35rem .35rem;background-repeat:no-repeat;cursor:pointer}.c4-ds-help,.c4-ds-error{margin:0;font-size:.8rem;line-height:1.5}.c4-ds-help{color:var(--c4-ds-muted)}.c4-ds-error{color:var(--c4-ds-danger);font-weight:700}.c4-ds-status-line{min-height:1.4rem;margin:0;color:var(--c4-ds-muted);font:400 .82rem/1.5 var(--c4-ds-font-mono)}.c4-ds-status-line[data-tone=ok]{color:var(--c4-ds-title)}.c4-ds-status-line[data-tone=err]{color:var(--c4-ds-danger)}.c4-ds-check{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.25rem .75rem;color:var(--c4-ds-text);font-size:.9rem;line-height:1.5;cursor:pointer}.c4-ds-check>input{width:1.1rem;height:1.1rem;margin:.15rem 0 0;accent-color:var(--ink);cursor:pointer}.c4-ds-check>:is(.c4-ds-help,.c4-ds-error){grid-column:2}.c4-ds-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}@media(prefers-reduced-motion:reduce){.c4-ds-input{transition:none}}.c4-ds-card{position:relative;display:flex;flex-direction:column;gap:.9rem;min-width:0;padding:clamp(1.5rem,2.6vw,2rem);border:1px solid var(--c4-ds-line);border-radius:var(--c4-ds-radius);background:var(--c4-ds-surface);color:var(--c4-ds-text);transition:border-color var(--c4-duration-fast) var(--c4-ds-ease),box-shadow var(--c4-duration-fast) var(--c4-ds-ease)}.c4-ds-card[data-tone=outline]{border-color:var(--c4-ds-line-strong);background:var(--paper)}.c4-ds-card[data-tone=ink]{--c4-ds-title: var(--paper);--c4-ds-text: color-mix(in srgb, var(--paper) 78%, var(--ink));--c4-ds-muted: color-mix(in srgb, var(--paper) 62%, var(--ink));--c4-ds-line: color-mix(in srgb, var(--paper) 22%, transparent);--c4-ds-line-strong: color-mix(in srgb, var(--paper) 36%, transparent);border-color:var(--ink);background:var(--ink)}:is(a.c4-ds-card,.c4-ds-card[data-ds-tilt]):hover{border-color:var(--c4-ds-line-strong);box-shadow:0 16px 36px color-mix(in srgb,var(--crt-shadow) 14%,transparent)}a.c4-ds-card{text-decoration:none}.c4-ds-card-body{margin:0;line-height:1.65;text-wrap:pretty}.c4-ds-card-footer{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:auto;padding-top:.5rem}.c4-ds-callout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1rem,2.4vw,1.75rem);margin-top:clamp(1rem,2vw,1.5rem);padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--c4-ds-line-strong);border-radius:var(--c4-ds-radius);background:radial-gradient(circle,var(--c4-ds-dot) 1px,transparent 1.4px) 0 0 / 14px 14px,var(--paper)}.c4-ds-callout[data-has-icon]{grid-template-columns:auto minmax(0,1fr)}.c4-ds-callout[data-tone=danger]{border-color:color-mix(in srgb,var(--c4-ds-danger) 60%,transparent)}.c4-ds-callout-icon{display:grid;place-items:center;width:3rem;height:3rem;border:1px solid var(--c4-ds-line-strong);border-radius:50%;background:var(--paper);color:var(--c4-ds-title)}.c4-ds-callout-title{margin:0 0 .6rem;color:var(--c4-ds-title);font-family:var(--c4-ds-font-display);font-size:clamp(1.2rem,2vw,1.45rem);font-weight:700;letter-spacing:-.02em;overflow-wrap:break-word}.c4-ds-callout p{max-width:78ch;margin:0;line-height:1.7}.c4-ds-rows{margin:0;padding:0;list-style:none}.c4-ds-row{display:grid;grid-template-columns:minmax(0,16rem) auto minmax(0,1fr);align-items:baseline;gap:.75rem 2rem;min-width:0;padding-block:1.25rem;border-bottom:1px solid var(--c4-ds-line)}.c4-ds-row-title{margin:0;color:var(--c4-ds-title);font-family:var(--c4-ds-font-display);font-size:1.2rem;font-weight:700;overflow-wrap:break-word}.c4-ds-row p{margin:0;line-height:1.65}.c4-ds-table-wrap{overflow-x:auto;border:1px solid var(--c4-ds-line);border-radius:var(--c4-ds-radius);background:var(--paper)}.c4-ds-table{width:100%;border-collapse:collapse;color:var(--c4-ds-text);font-size:.88rem;line-height:1.5}.c4-ds-table th{padding:.85rem 1rem;border-bottom:1px solid var(--c4-ds-line-strong);background:var(--c4-ds-surface);color:var(--c4-ds-muted);font:700 .68rem/1.2 var(--c4-ds-font-mono);letter-spacing:.12em;text-align:left;text-transform:uppercase;white-space:nowrap}.c4-ds-table td{padding:.85rem 1rem;border-bottom:1px solid var(--c4-ds-line);vertical-align:top}.c4-ds-table tbody tr:last-child td{border-bottom:0}.c4-ds-table tbody tr:hover td{background:var(--c4-ds-surface)}.c4-ds-table :is(th,td)[data-numeric]{font-variant-numeric:tabular-nums;text-align:right}.c4-ds-dl{display:grid;margin:0}.c4-ds-dl>div{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr);gap:.25rem 1.5rem;padding-block:.75rem;border-top:1px dotted var(--c4-ds-line-strong)}.c4-ds-dl dt{color:var(--c4-ds-muted);font:700 .72rem/1.5 var(--c4-ds-font-mono);letter-spacing:.1em;text-transform:uppercase}.c4-ds-dl dd{margin:0;color:var(--c4-ds-title);overflow-wrap:anywhere}.c4-ds-empty{margin:0;padding:1.5rem 1.25rem;border:1px dashed var(--c4-ds-line-strong);border-radius:var(--c4-ds-radius);background:radial-gradient(circle,var(--c4-ds-dot) 1px,transparent 1.4px) 0 0 / 14px 14px,var(--paper);color:var(--c4-ds-muted);font-size:.86rem}.c4-ds-empty[data-tone=danger]{margin-bottom:1.25rem;border-color:color-mix(in srgb,var(--c4-ds-danger) 55%,transparent);color:var(--c4-ds-danger)}.c4-ds-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));gap:1rem;margin:0;padding:0;list-style:none}.c4-ds-kpi{display:grid;gap:.55rem;padding:1.35rem 1.4rem}.c4-ds-kpi p{margin:0}.c4-ds-kpi-label{color:var(--c4-ds-muted);font:700 .66rem/1.3 var(--c4-ds-font-mono);letter-spacing:.14em;text-transform:uppercase}.c4-ds-kpi-value{color:var(--c4-ds-title);font:700 clamp(2rem,3.4vw,2.6rem)/1 var(--c4-ds-font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.c4-ds-kpi-sub{color:var(--c4-ds-muted);font:400 .74rem/1.4 var(--c4-ds-font-mono)}.c4-ds-dialog{width:min(32rem,100vw - 2rem);padding:clamp(1.5rem,3vw,2rem);border:1px solid var(--c4-ds-line-strong);border-radius:var(--c4-ds-radius);background:var(--paper);color:var(--c4-ds-text);box-shadow:0 24px 60px color-mix(in srgb,var(--crt-shadow) 28%,transparent)}.c4-ds-dialog[data-size=wide]{width:min(38rem,100vw - 2rem)}.c4-ds-dialog[open]{animation:c4-ds-rise var(--c4-duration-base) var(--c4-ds-ease)}.c4-ds-dialog::backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent);backdrop-filter:blur(3px)}.c4-ds-dialog p{margin:0;line-height:1.65}.c4-ds-dialog strong{color:var(--c4-ds-title)}.c4-ds-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.c4-ds-dialog-head .c4-ds-h3{margin:0}.c4-ds-dialog-close{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border:1px solid var(--c4-ds-line-strong);border-radius:999px;background:var(--paper);color:var(--c4-ds-title);font:400 1.2rem/1 var(--c4-ds-font-mono);cursor:pointer;transition:background-color var(--c4-duration-fast) var(--c4-ds-ease)}.c4-ds-dialog-close:hover{background:var(--c4-ds-surface-raised)}.c4-ds-dialog-close:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media(max-width:759px){.c4-ds-row,.c4-ds-callout[data-has-icon]{grid-template-columns:minmax(0,1fr)}}@media(max-width:599px){.c4-ds-dl>div{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.c4-ds-card,.c4-ds-dialog-close{transition:none}.c4-ds-dialog[open]{animation:none}}.c4-ds-hero{padding-block:clamp(1.5rem,4vw,3rem) clamp(2.5rem,6vw,4.5rem)}.c4-ds-hero-panel{position:relative;isolation:isolate;overflow:hidden;padding:clamp(2.25rem,6vw,5rem) clamp(1.5rem,5vw,4rem);border-radius:clamp(18px,2.4vw,30px)}.c4-ds-hero[data-backdrop=none] .c4-ds-hero-panel{overflow:visible;padding-inline:0}.c4-ds-crt{position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(ellipse 120% 110% at 50% 38%,color-mix(in srgb,var(--paper) 92%,var(--crt-warm) 8%),color-mix(in srgb,var(--paper) 96%,var(--crt-warm) 4%));box-shadow:0 14px 30px color-mix(in srgb,var(--crt-shadow) 14%,transparent),0 1px color-mix(in srgb,var(--crt-glaze) 60%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--crt-shadow) 20%,transparent),inset 0 6px 20px color-mix(in srgb,var(--crt-shadow) 18%,transparent),inset 0 -3px 12px color-mix(in srgb,var(--crt-shadow) 10%,transparent)}.c4-ds-crt:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,color-mix(in srgb,var(--crt-glaze) 28%,transparent) 0%,transparent 32%),radial-gradient(ellipse 100% 90% at center,transparent 62%,color-mix(in srgb,var(--crt-shadow) 14%,transparent) 100%);pointer-events:none}.c4-ds-crt[data-backdrop=dots]:before{content:"";position:absolute;inset:0;background:radial-gradient(circle,var(--c4-ds-dot) 1.1px,transparent 1.5px) 0 0 / 14px 14px;mask-image:linear-gradient(90deg,transparent 30%,#000 85%)}.c4-ds-crt-cubes{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent 22%,#000 72%)}.c4-ds-crt-cubes canvas{display:block;animation:c4-ds-fade-in .6s var(--c4-ds-ease) both}.c4-ds-hero-copy{position:relative;display:grid;justify-items:start;gap:1.25rem;max-width:46rem}.c4-ds-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.5rem}@keyframes c4-ds-fade-in{0%{opacity:0}}@media(max-width:759px){.c4-ds-crt-cubes{opacity:.45}}@media(prefers-reduced-motion:reduce){.c4-ds-crt-cubes canvas{animation:none}}:where(html.js) .c4-ds [data-reveal]:not([data-revealed]) :is([data-typewriter],[data-line-scramble]){opacity:0}:where(html.js) .c4-ds [data-reveal] :is(.c4-ds-head,.c4-ds-hero-copy){transform:translateY(8px);transition:transform .7s var(--c4-ds-ease) .12s}:where(html.js) .c4-ds [data-reveal] :is(.c4-ds-callout,[data-ds-fade]){opacity:0;transform:translateY(8px);transition:opacity .7s var(--c4-ds-ease) .12s,transform .7s var(--c4-ds-ease) .12s}.c4-ds [data-reveal] .c4-ds-callout{transition-delay:.42s}.c4-ds [data-reveal][data-revealed] :is(.c4-ds-head,.c4-ds-hero-copy,.c4-ds-callout,[data-ds-fade]){opacity:1;transform:none}:where(html.js) .c4-ds [data-reveal] [data-ds-enter]{opacity:0;transform:perspective(900px) translate3d(0,2.25rem,0) rotateX(16deg);transform-origin:50% 100%;transition:opacity .7s var(--c4-ds-ease),transform .9s var(--c4-ease-emphasis);transition-delay:calc(var(--c4-ds-card-delay) + var(--i, 0) * var(--c4-ds-card-stagger))}.c4-ds [data-reveal][data-revealed] [data-ds-enter]{opacity:1;transform:perspective(900px) translateZ(0) rotateX(0)}.c4-ds [data-revealed] [data-ds-tilt][data-tilt=active]{transform:perspective(900px) rotateX(calc(var(--c4-ds-tilt-y, 0) * -7deg)) rotateY(calc(var(--c4-ds-tilt-x, 0) * 7deg)) translateZ(6px);transition:transform var(--c4-duration-fast) var(--c4-ds-ease);transition-delay:0ms}[data-ds-tilt]{position:relative;isolation:isolate}[data-ds-tilt]:after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(circle 14rem at var(--c4-ds-spot-x, 50%) var(--c4-ds-spot-y, 50%),color-mix(in srgb,var(--c4-ds-title) 9%,transparent),transparent 70%);opacity:0;transition:opacity var(--c4-duration-base) var(--c4-ds-ease);pointer-events:none}[data-ds-tilt][data-tilt=active]:after{opacity:1}:where(.c4-ds) [data-flash-row][data-flash=flashing]{--c4-ds-title: var(--paper);--c4-ds-text: var(--paper);--c4-ds-muted: color-mix(in srgb, var(--paper) 72%, var(--ink));--c4-ds-line: color-mix(in srgb, var(--paper) 30%, transparent);--c4-ds-line-strong: color-mix(in srgb, var(--paper) 45%, transparent);border-color:var(--ink);background:var(--ink);color:var(--paper)}:where(.c4-ds) [data-flash-row][data-tone=ink][data-flash=flashing]{--c4-ds-title: var(--ink);--c4-ds-text: var(--ink);background:var(--paper)}[data-ds-magnetic]{translate:var(--c4-ds-pull-x, 0) var(--c4-ds-pull-y, 0);transition:translate .42s var(--c4-ease-bounce),transform var(--c4-duration-fast) var(--c4-ds-ease),box-shadow var(--c4-duration-fast) var(--c4-ds-ease)}[data-ds-magnetic][data-pull=active]{transition:translate .12s linear,transform var(--c4-duration-fast) var(--c4-ds-ease),box-shadow var(--c4-duration-fast) var(--c4-ds-ease)}:where(html.js) .c4-ds-section[data-reveal]:before{transform:scaleX(0);transition:transform 1.4s var(--c4-ease-emphasis) .1s}.c4-ds-section[data-revealed]:before{transform:scaleX(1)}.c4-ds-eyebrow:before{animation:c4-ds-marquee 2.4s linear infinite}@keyframes c4-ds-marquee{to{background-position:8px 50%}}@keyframes c4-ds-rise{0%{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){:where(html.js) .c4-ds [data-reveal] [data-ds-enter],:where(html.js) .c4-ds-section[data-reveal]:before{opacity:1;transform:none;transition:none}.c4-ds-eyebrow:before{animation:none}[data-ds-magnetic]{translate:none;transition:none}}
