.site-header{position:sticky;inset-block-start:0;z-index:var(--z-sticky);background-color:var(--color-bg);border-block-end:var(--border-width-heavy) solid var(--color-border)}.nav-primary{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--page-inline);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:56px}.nav-logo{display:block;padding-block:var(--space-2);text-decoration:none}.nav-logo svg{width:96px;height:24px}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;background:none;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer}.nav-toggle svg{width:24px;height:24px;fill:none;stroke:currentcolor;stroke-width:2;stroke-linecap:butt}.nav-menu{list-style:none;padding:0;margin:0;display:none;width:100%}.nav-menu.is-open{display:block;padding-block-end:var(--space-4)}.nav-item{margin:0;border-block-start:var(--border-width) solid var(--color-neutral)}.nav-link{display:flex;align-items:baseline;gap:var(--space-3);min-height:48px;padding-block:var(--space-3);font-family:var(--font-ui);font-size:var(--text-base);font-weight:500;letter-spacing:var(--tracking-ui);line-height:var(--lh-ui);color:var(--color-text);text-decoration:none}.nav-link:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.nav-index{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;color:var(--color-gray-deep);font-variant-numeric:tabular-nums}.nav-link.is-primary{font-weight:600}.nav-item:has(>.nav-link.is-primary){border-block-start-color:var(--color-border);border-block-start-width:var(--border-width-heavy)}.nav-link.is-muted,.nav-link.is-muted .nav-index{color:var(--color-gray-deep)}.nav-link[aria-current='page']{font-weight:600}.nav-link[aria-current='page'] .nav-index{color:var(--color-text)}@media (width>= 900px){.nav-toggle{display:none}.nav-menu{display:flex;width:auto;align-items:stretch;gap:var(--space-4)}.nav-item{border-block-start:none}.nav-link{flex-direction:column;gap:2px;align-items:flex-start;justify-content:center;min-height:56px;padding-block:var(--space-2);font-size:var(--text-sm);border-block-start:var(--border-width-heavy) solid transparent}.nav-link.is-primary{border-block-start-color:var(--color-border)}.nav-link[aria-current='page']{box-shadow:inset 0 -2px 0 var(--color-border)}}.btn{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:48px;padding:var(--space-3) var(--space-6);font-family:var(--font-ui);font-size:var(--text-base);font-weight:600;letter-spacing:var(--tracking-ui);line-height:var(--lh-ui);text-decoration:none;border:var(--border-width) solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--motion-snap)}.btn-primary{min-width:176px;background-color:var(--color-primary-deep);color:var(--color-bg)}.btn-primary:hover,.btn-primary:active{background-color:var(--color-primary-press);color:var(--color-bg)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-bg)}.btn-secondary:hover,.btn-secondary:active{background-color:#000;color:var(--color-bg)}.btn-ghost{background-color:transparent;color:var(--color-text);border-color:var(--color-border)}.btn-ghost:hover{background-color:var(--color-surface-alt);color:var(--color-text)}.btn-note{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:400;letter-spacing:var(--tracking-mono)}.btn-primary .btn-note,.btn-secondary .btn-note{color:var(--color-bg)}.btn-ghost .btn-note{color:var(--color-gray-deep)}.module{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background-color:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);transition:box-shadow var(--motion-snap)}.module:hover{box-shadow:inset var(--border-width-heavy) 0 0 var(--color-primary)}.module-index{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-gray-deep)}.module h3{font-family:var(--font-headline);font-weight:800;font-size:var(--text-lg);letter-spacing:var(--tracking-headline);line-height:1.15}.module p{font-size:var(--text-base);line-height:var(--lh-body)}.module-icon{width:32px;height:32px;fill:none;stroke:currentcolor;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;color:var(--color-text)}.module--hero{background-color:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.module--hero h3{color:var(--color-bg);font-size:var(--text-xl)}.module--hero .module-index,.module--hero .module-angle{color:var(--color-surface-alt)}.module--hero .module-icon{color:var(--color-bg);width:40px;height:40px}.module--hero:hover{box-shadow:inset var(--border-width-rule) 0 0 var(--color-primary)}.module-angle{font-size:var(--text-base);font-weight:500;line-height:1.45}.module--footnote{flex-direction:row;align-items:baseline;gap:var(--space-4);padding:var(--space-4);background-color:transparent;border-color:var(--color-neutral)}.module--footnote h3{font-size:var(--text-base)}.module--footnote p{font-size:var(--text-sm)}.module--footnote .module-body{display:flex;flex:1;min-width:0;flex-direction:column;gap:var(--space-1)}.feature-detail{display:flex;flex-direction:column;gap:var(--space-3);grid-column:1 / -1;padding:var(--space-6);background-color:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);transition:box-shadow var(--motion-snap)}.feature-detail:hover{box-shadow:inset var(--border-width-heavy) 0 0 var(--color-primary)}.feature-detail.is-primary{border-block-start:var(--border-width-rule) solid var(--color-primary)}.feature-detail h3{font-family:var(--font-headline);font-weight:800;font-size:var(--text-xl);letter-spacing:var(--tracking-headline);line-height:1.1}.feature-detail p{font-size:var(--text-lg);font-weight:500;line-height:1.5}.feature-detail .module-icon{width:40px;height:40px}@media (width>= 768px){.feature-detail{grid-column:span 4}}@media (width>= 1024px){.feature-detail{grid-column:span 6}.feature-detail h3{font-size:var(--text-2xl)}.feature-detail p{font-size:var(--text-xl);line-height:1.4}}.module .module-index,.feature-detail .module-index{font-size:var(--text-xs);line-height:var(--lh-ui)}.client-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gutter);margin-block-start:var(--space-8)}.client-card{grid-column:1 / -1;padding:var(--space-6);background-color:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);transition:box-shadow var(--motion-snap)}.client-card:hover{box-shadow:inset var(--border-width-heavy) 0 0 var(--color-primary)}.card-head h3{font-family:var(--font-headline);font-weight:800;font-size:var(--text-xl);letter-spacing:var(--tracking-headline);line-height:1.1}.card-head .client-status{margin-block-start:var(--space-2)}.client-tagline{margin-block-start:var(--space-2);font-size:var(--text-base);color:var(--color-text)}@media (width>= 768px){.client-cards{grid-template-columns:repeat(8,minmax(0,1fr))}.client-card{grid-column:span 4;display:grid;grid-template-rows:minmax(5.5rem,auto) auto 1fr;align-content:start}}@media (width>= 1024px){.client-cards{grid-template-columns:repeat(12,minmax(0,1fr))}.client-card{grid-column:span 3}}.spec-table{margin-block-start:var(--space-4);border-block-start:var(--border-width-heavy) solid var(--color-border)}.spec-table .spec-row{display:grid;grid-template-columns:1fr;gap:2px;padding-block:var(--space-2);border-block-end:var(--border-width) solid var(--color-neutral)}.spec-table dt{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-gray-deep)}.spec-table dd{margin:0;font-size:var(--text-sm);line-height:var(--lh-ui)}.spec-table dd ul{list-style:none;padding:0;margin:0}.spec-table dd li{margin:0}.spec-table dd code,.repo-list dd code{font-size:var(--text-xs)}.client-status{display:inline-block;padding:2px var(--space-2);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-label);line-height:var(--lh-ui);text-transform:uppercase;border-radius:var(--radius-sm)}.status-stable{background-color:var(--color-text);color:var(--color-bg)}.status-beta{background-color:transparent;color:var(--color-text);border:var(--border-width) solid var(--color-tertiary)}pre.code-block{margin-block-start:var(--space-6);padding:var(--space-4);background-color:var(--color-surface);border:var(--border-width) solid var(--color-border);border-inline-start-width:var(--border-width-rule);overflow-x:auto}pre.code-block code{display:block;background:none;padding:0;font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:normal;color:var(--color-text)}.code-caption{margin-block-start:var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-body);color:var(--color-gray-deep)}.repo-list{margin-block-start:var(--space-8);border-block-start:var(--border-width-heavy) solid var(--color-border)}.repo-list .repo-row{display:grid;grid-template-columns:1fr;gap:var(--space-1);padding-block:var(--space-4);border-block-end:var(--border-width) solid var(--color-neutral)}.repo-list dt{font-family:var(--font-headline);font-weight:800;font-size:var(--text-base);letter-spacing:var(--tracking-headline)}.repo-list dd{margin:0;font-size:var(--text-base);line-height:var(--lh-body)}@media (width>= 768px){.repo-list .repo-row{grid-template-columns:4fr 5fr 3fr;gap:var(--grid-gutter);align-items:baseline}}.download-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gutter);margin-block-start:var(--space-8)}.download-card{grid-column:1 / -1;display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start;padding:var(--space-6);background-color:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);transition:box-shadow var(--motion-snap)}.download-card .card-head h3{font-size:var(--text-lg);line-height:1.15}.download-card p{font-size:var(--text-sm);line-height:var(--lh-body)}.download-card:hover{box-shadow:inset var(--border-width-heavy) 0 0 var(--color-primary)}@media (width>= 768px){.download-cards{grid-template-columns:repeat(8,minmax(0,1fr))}.download-card{grid-column:span 4;display:grid;grid-template-rows:minmax(4.5rem,auto) 1fr auto;row-gap:var(--space-3);justify-items:start;align-content:start}}@media (width>= 1024px){.download-cards{grid-template-columns:repeat(12,minmax(0,1fr))}.download-card{grid-column:span 3}}.link-list{list-style:none;padding:0;margin-block-start:var(--space-8);border-block-start:var(--border-width-heavy) solid var(--color-border)}.link-list>li{display:grid;grid-template-columns:minmax(0,3rem) minmax(0,1fr);gap:var(--space-3);align-items:baseline;margin:0;padding-block:var(--space-4);border-block-end:var(--border-width) solid var(--color-neutral)}.link-list>li:hover{background-color:var(--color-surface-alt)}.link-list .link-index{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;color:var(--color-gray-deep);font-variant-numeric:tabular-nums}.link-list .link-body>* + *{margin-block-start:var(--space-1)}.link-list .link-title{font-family:var(--font-headline);font-weight:800;font-size:var(--text-base);letter-spacing:var(--tracking-headline)}.link-list .link-desc{font-size:var(--text-sm);line-height:var(--lh-body)}@media (width>= 768px){.link-list>li{grid-template-columns:minmax(0,4rem) minmax(0,1fr)}}.manpage-head{margin-block-start:var(--space-6);border-block-start:var(--border-width-heavy) solid var(--color-border)}.manpage-head .spec-row{display:grid;grid-template-columns:1fr;gap:2px;padding-block:var(--space-3);border-block-end:var(--border-width) solid var(--color-neutral)}.manpage-head dt{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-gray-deep)}.manpage-head dd{margin:0;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--lh-mono)}@media (width>= 768px){.manpage-head .spec-row{grid-template-columns:minmax(0,12rem) minmax(0,1fr);gap:var(--grid-gutter)}}.faq-list{margin-block-start:var(--space-8);border-block-start:var(--border-width-heavy) solid var(--color-border)}.faq-entry{display:grid;grid-template-columns:1fr;gap:var(--space-3);padding-block:var(--space-6);border-block-end:var(--border-width) solid var(--color-neutral)}.faq-entry dt{font-family:var(--font-headline);font-weight:800;font-size:var(--text-base);letter-spacing:var(--tracking-headline);line-height:1.25}.faq-entry dd{margin:0;font-size:var(--text-base);line-height:var(--lh-body)}.faq-ref{display:block;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-gray-deep);margin-block-end:var(--space-1)}@media (width>= 1024px){.faq-entry{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:var(--grid-gutter)}}.faq-entry--alias{background-color:var(--color-surface-alt)}.faq-entry--alias dt,.faq-entry--alias dd{font-size:var(--text-sm)}.site-footer{padding-block:var(--space-12) var(--space-8);border-block-start:var(--border-width-rule) solid var(--color-border);background-color:var(--color-surface)}.footer-tagline{font-family:var(--font-headline);font-weight:900;font-size:min(var(--text-2xl),8vw);letter-spacing:var(--tracking-headline);line-height:var(--lh-headline)}.footer-mirror{list-style:none;padding:0;margin-block-start:var(--space-8);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--grid-gutter);border-block-start:var(--border-width-heavy) solid var(--color-border);padding-block-start:var(--space-4)}.footer-mirror>li{margin:0}.footer-mirror a{display:flex;align-items:baseline;gap:var(--space-2);min-height:44px;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;text-decoration:none;color:var(--color-text)}.footer-mirror a:hover{text-decoration:underline;text-decoration-thickness:2px}.footer-nav{display:grid;grid-template-columns:1fr;gap:var(--space-8);margin-block-start:var(--space-12)}.footer-nav-column h2{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-gray-deep);padding-block-end:var(--space-2);border-block-end:var(--border-width) solid var(--color-border)}.footer-nav-column ul{list-style:none;padding:0;margin-block-start:var(--space-3)}.footer-nav-column li{margin-block-end:var(--space-1)}.footer-nav-column a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm);color:var(--color-text)}.footer-copy{margin-block-start:var(--space-12);padding-block-start:var(--space-4);border-block-start:var(--border-width) solid var(--color-border);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--lh-mono);color:var(--color-gray-deep)}@media (width>= 768px){.footer-mirror{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gutter)}}@media (width>= 1024px){.footer-mirror{grid-template-columns:repeat(8,minmax(0,1fr))}}.egg-sweep{position:fixed;inset-block-start:0;inset-inline-start:0;z-index:var(--z-egg);width:100%;height:var(--border-width-heavy);background-color:var(--color-primary);transform:scaleX(0);transform-origin:left center;animation:egg-sweep 1000ms linear 1 forwards}.egg-reward:empty{display:none}.egg-reward{position:fixed;inset-block-start:var(--border-width-heavy);inset-inline-start:0;z-index:var(--z-egg);padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--lh-mono);color:var(--color-bg);background-color:var(--color-text)}@keyframes egg-sweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.egg-sweep{animation:none;transform:scaleX(1)}}@media print{.site-header,.footer-mirror{position:static;display:none}.grid-guides{display:none}}