:root{--color-paper:oklch(13% .014 265);--color-paper-2:oklch(17% .016 265);--color-paper-3:oklch(21% .018 265);--color-paper-emit:oklch(76% .17 50/.04);--color-ink:oklch(96% .006 262);--color-ink-2:oklch(82% .01 262);--color-muted:oklch(62% .012 262);--color-rule:oklch(96% .006 262/.12);--color-rule-2:oklch(96% .006 262/.08);--rule-blueprint:oklch(96% .006 262/.04);--color-accent:oklch(76% .17 50);--color-accent-2:oklch(68% .16 18);--color-accent-ink:oklch(13% .014 265);--color-glow:oklch(80% .16 50/.42);--color-glow-2:oklch(80% .16 50/.22);--color-focus:oklch(76% .17 50);--color-code-bg:oklch(10% .012 265);--color-code-fg:oklch(90% .006 262);--font-display:"Instrument Serif", "Tiempos Headline", ui-serif, Georgia, serif;--font-body:"Geist", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;--font-outlier:var(--font-mono);--text-xs:.64rem;--text-sm:.8rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.9531rem;--text-2xl:2.4414rem;--text-3xl:3.0518rem;--text-4xl:3.8147rem;--text-display:clamp(2.75rem, 5vw + 1rem, 5.5rem);--tracking-micro:.1em;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-gutter:clamp(1.25rem, 4vw, 3rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-soft:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--dur-pulse:4s;--radius-sm:6px;--radius-md:10px;--radius-pill:999px;--rule-hair:1px;--z-base:1;--z-raised:10;--z-sticky:200;--z-modal:400;--z-toast:500;--max-width:1120px}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth}body{min-height:100dvh;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-ink);background:var(--color-paper);text-transform:lowercase;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-style:normal;font-weight:400;line-height:1.55}a{color:inherit;transition:color var(--dur-short) var(--ease-out);text-decoration:none}a:hover{color:var(--color-accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.nav-edge{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--page-gutter);border-bottom:var(--rule-hair) solid var(--color-rule);z-index:var(--z-sticky);background:color-mix(in oklch, var(--color-paper) 92%, transparent);backdrop-filter:blur(10px);display:flex;position:sticky;top:0}.nav-edge .wordmark{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.02em;white-space:nowrap;font-weight:400}.nav-edge .cta-outline{font-family:var(--font-body);font-size:var(--text-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);white-space:nowrap;min-height:44px;color:var(--color-ink);transition:border-color var(--dur-short) var(--ease-out), background var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);align-items:center;padding:.65rem 1.1rem;font-weight:500;display:inline-flex}.nav-edge .cta-outline:hover,.nav-edge .cta-outline.is-hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-paper-emit)}.nav-edge .cta-outline:active,.nav-edge .cta-outline.is-active{transform:translateY(1px)}main{min-width:0}.hero{gap:var(--space-2xl);min-height:calc(100dvh - 5.5rem);padding:var(--space-2xl) var(--page-gutter) var(--space-xl);background:linear-gradient(var(--rule-blueprint) 1px, transparent 1px) 0 0 / 48px 48px, linear-gradient(90deg, var(--rule-blueprint) 1px, transparent 1px) 0 0 / 48px 48px, radial-gradient(60% 50% at 78% 30%, var(--color-paper-emit) 0%, transparent 65%), var(--color-paper);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;display:grid}.hero__copy{gap:var(--space-lg);min-width:0;display:grid}.eyebrow{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);margin:0;font-size:11px}.hero__title{font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.03em;overflow-wrap:anywhere;text-transform:lowercase;min-width:0;max-width:14ch;margin:0;font-style:normal;font-weight:400;line-height:1.02}.hero__title em{color:var(--color-accent-2);white-space:nowrap;font-style:normal;position:relative}.hero__title em:after{content:"";background:var(--color-accent-2);transform-origin:0;height:1px;animation:pivot-underline .32s var(--ease-soft) .9s backwards;position:absolute;bottom:.04em;left:.05em;right:.05em}@keyframes pivot-underline{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.hero__lead{max-width:36ch;color:var(--color-ink-2);font-size:var(--text-md);margin:0;line-height:1.45}.index{margin:var(--space-sm) 0 0;border-top:var(--rule-hair) solid var(--color-rule);padding:0;list-style:none}.index__row{gap:var(--space-md);padding:var(--space-md) 0;border-bottom:var(--rule-hair) solid var(--color-rule);grid-template-columns:auto 1fr auto;align-items:baseline;min-width:0;display:grid}.index__row a{display:contents}.index__ord{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);font-size:11px}.index__label{font-family:var(--font-display);overflow-wrap:anywhere;min-width:0;font-size:clamp(1.35rem,2.5vw,1.85rem);line-height:1.1}.index__hint{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);white-space:nowrap;font-size:10.5px}.index__row:hover .index__label,.index__row.is-hover .index__label{color:var(--color-accent)}.index__row:hover .index__hint,.index__row.is-hover .index__hint{color:var(--color-accent-2)}.apparatus{aspect-ratio:.72;justify-self:center;width:min(100%,320px);margin:0;position:relative}.chamber{aspect-ratio:.55;border:1px solid var(--color-rule-2);border-radius:var(--radius-pill);background:oklch(17% .016 265/.8);width:clamp(160px,22vw,240px);margin-inline:auto;position:relative;overflow:hidden}.chamber__filament{width:2px;box-shadow:0 0 16px 4px var(--color-glow), 0 0 48px 12px var(--color-glow-2);animation:filament-pulse var(--dur-pulse) ease-in-out infinite;background:linear-gradient(oklch(96% .05 50) 0%,oklch(80% .17 50) 50%,oklch(96% .05 50) 100%);margin-left:-1px;position:absolute;top:8%;bottom:8%;left:50%}.chamber__electrode{left:0;right:0;top:var(--y);background:var(--color-rule-2);height:1px;position:absolute}.chamber__glow{background:radial-gradient(ellipse 60% 50% at 50% 50%, var(--color-glow-2) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.chamber__stencil{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);font-size:9px;position:absolute;bottom:10%;left:50%;transform:translate(-50%)}@keyframes filament-pulse{0%,to{opacity:1}50%{opacity:.86}}.callouts{margin:var(--space-md) 0 0;gap:var(--space-2xs);padding:0;list-style:none;display:grid}.callout{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);font-size:10.5px}.callout:before{content:"— ";color:var(--color-rule)}.meter{gap:var(--space-md);padding:.75rem var(--page-gutter);border-block:var(--rule-hair) solid var(--color-rule);background:var(--color-paper-2);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.meter__label{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);white-space:nowrap;margin:0;font-size:10.5px}.meter__bars{align-items:end;gap:2px;min-width:0;height:28px;display:flex}.meter__bars>span{background:var(--color-accent);min-width:1px;opacity:var(--o,.45);height:var(--h,40%);border-radius:.5px;flex:1 1 0}.foot-stmt{padding:var(--space-2xl) var(--page-gutter) var(--space-xl);gap:var(--space-lg);display:grid}.foot-stmt__line{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;min-width:0;max-width:22ch;margin:0;font-size:clamp(1.75rem,5vw,3.25rem);line-height:1.05}.foot-stmt__meta{justify-content:space-between;align-items:baseline;gap:var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);font-size:var(--text-sm);color:var(--color-muted);flex-wrap:wrap;padding-block-start:var(--space-sm);display:flex}.foot-stmt__meta .wordmark{font-family:var(--font-display);color:var(--color-ink)}.foot-stmt__links{gap:var(--space-sm) var(--space-md);flex-wrap:wrap;display:flex}.foot-projects{font-size:var(--text-xs);color:var(--color-muted);margin:0}.foot-current{color:var(--color-ink-2)}.lang-switcher{margin-top:var(--space-md)}.lang-label{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);margin:0 0 var(--space-2xs);font-size:10.5px}.lang-list{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.lang-btn{font-size:var(--text-sm);border:var(--rule-hair) solid transparent;border-radius:var(--radius-sm);color:var(--color-muted);white-space:nowrap;padding:.35rem .55rem}.lang-btn:hover,.lang-btn-active{color:var(--color-ink);border-color:var(--color-rule)}.install-home{max-width:40rem;padding:var(--space-3xl) var(--page-gutter);gap:var(--space-lg);margin:0 auto;display:grid}.install-home h1{font-family:var(--font-display);overflow-wrap:anywhere;margin:0;font-size:clamp(2rem,4vw,3.25rem);font-style:normal;font-weight:400;line-height:1.05}.install-home .page-lead{color:var(--color-ink-2);max-width:42ch;margin:0}.install-home .btn-row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.cta-outline,.cta-solid{border-radius:var(--radius-sm);min-height:44px;font-size:var(--text-sm);white-space:nowrap;border:var(--rule-hair) solid var(--color-rule);transition:background var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);align-items:center;gap:.4em;padding:.7rem 1.2rem;font-weight:500;display:inline-flex}.cta-solid{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.cta-solid:hover,.cta-solid.is-hover{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.cta-outline:hover,.cta-outline.is-hover{border-color:var(--color-accent);color:var(--color-accent)}.command{padding:var(--space-md);background:var(--color-code-bg);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-code-fg);gap:var(--space-sm);margin:0;display:grid;overflow-x:auto}.command pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;color:inherit;margin:0}.copy-btn{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-muted);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);cursor:pointer;min-height:36px;transition:color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);background:0 0;justify-self:start;padding:.45rem .7rem;font-size:10.5px}.copy-btn:hover,.copy-btn.is-hover{color:var(--color-accent);border-color:var(--color-accent)}.copy-btn:active,.copy-btn.is-active{transform:translateY(1px)}.not-found{place-content:center;gap:var(--space-md);min-height:60dvh;padding:var(--space-2xl) var(--page-gutter);text-align:left;display:grid}.not-found h1{font-family:var(--font-display);font-size:var(--text-display);margin:0;font-weight:400}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__title em:after{animation:none}.chamber__filament{opacity:1;animation:none}}@media (width<=768px){.hero{min-height:auto;padding-block:var(--space-xl);gap:var(--space-xl);grid-template-columns:minmax(0,1fr)}.apparatus{order:-1;width:min(100%,260px)}.index__row{gap:var(--space-xs) var(--space-sm);grid-template-columns:auto 1fr}.index__hint{white-space:normal;grid-column:2}.meter{gap:var(--space-xs);grid-template-columns:1fr}.meter__label--right{justify-self:end}.foot-stmt__meta{flex-direction:column;align-items:flex-start}}
