[data-cc-root]{--cc-bg:#1a1a1a;--cc-fg:#fff;--cc-muted:#a1a1aa;--cc-primary:#4f46e5;--cc-primary-fg:#fff;--cc-surface:#232325;--cc-border:#ffffff1f;--cc-radius:12px;--cc-radius-sm:6px;--cc-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--cc-shadow:0 10px 30px #00000059;--cc-z:2147480000;--cc-gap:12px;--cc-pad:16px;--cc-max-w:480px;font-family:var(--cc-font);color:var(--cc-fg);box-sizing:border-box;line-height:1.45}[data-cc-root] *,[data-cc-root] *:before,[data-cc-root] *:after{box-sizing:inherit}[data-cc-root] .cc-banner{position:fixed;max-width:var(--cc-max-w);z-index:var(--cc-z);background:var(--cc-bg);color:var(--cc-fg);border:1px solid var(--cc-border);border-radius:var(--cc-radius);box-shadow:var(--cc-shadow);padding:var(--cc-pad);display:flex;gap:var(--cc-gap);flex-direction:column;margin-left:auto;margin-right:auto;bottom:16px;left:16px;right:16px}[data-cc-root][data-cc-position=top] .cc-banner{top:16px;bottom:auto}[data-cc-root][data-cc-position=bottom-left] .cc-banner{margin-left:0;margin-right:0;right:auto}[data-cc-root][data-cc-position=bottom-right] .cc-banner{margin-left:0;margin-right:0;left:auto}[data-cc-root] .cc-banner__title{margin:0;font-size:1rem;font-weight:600}[data-cc-root] .cc-banner__body{color:var(--cc-muted);margin:0;font-size:.875rem}[data-cc-root] .cc-banner__link{color:var(--cc-muted);text-decoration:underline;font-size:.8125rem}[data-cc-root] .cc-banner__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}[data-cc-root] .cc-button{font:inherit;cursor:pointer;border-radius:var(--cc-radius-sm);border:1px solid var(--cc-border);color:var(--cc-fg);background:0 0;padding:8px 14px;font-size:.875rem;font-weight:500}[data-cc-root] .cc-button:focus-visible{outline:2px solid var(--cc-primary);outline-offset:2px}[data-cc-root] .cc-button--ghost{background:var(--cc-surface)}[data-cc-root] .cc-button--primary{background:var(--cc-primary);color:var(--cc-primary-fg);border-color:var(--cc-primary)}[data-cc-root] .cc-overlay{position:fixed;z-index:var(--cc-z);display:flex;background:#0009;justify-content:center;align-items: center;padding:16px;inset:0}[data-cc-root] .cc-modal{background:var(--cc-bg);color:var(--cc-fg);border:1px solid var(--cc-border);border-radius:var(--cc-radius);box-shadow:var(--cc-shadow);overflow:auto;padding:var(--cc-pad);display:flex;gap:var(--cc-gap);flex-direction:column;width:min(560px,100%);max-height:90vh}[data-cc-root] .cc-modal__header{display:flex;justify-content:space-between;align-items: center;gap:8px}[data-cc-root] .cc-modal__title{margin:0;font-size:1.125rem;font-weight:600}[data-cc-root] .cc-modal__close{color:var(--cc-muted);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:1.5rem;line-height:1}[data-cc-root] .cc-modal__list{display:flex;flex-direction:column;gap:4px}[data-cc-root] .cc-row{display:flex;border:1px solid var(--cc-border);border-radius:var(--cc-radius-sm);background:var(--cc-surface);align-items: flex-start;gap:12px;padding:12px}[data-cc-root] .cc-row__toggle{accent-color:var(--cc-primary);margin-top:3px}[data-cc-root] .cc-row__meta{display:flex;flex-direction:column;gap:2px}[data-cc-root] .cc-row__name{font-size:.9375rem;font-weight:600}[data-cc-root] .cc-row__desc{color:var(--cc-muted);font-size:.8125rem}[data-cc-root] .cc-modal__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}@media (max-width:480px){[data-cc-root] .cc-banner__actions{justify-content:stretch}[data-cc-root] .cc-button{flex:auto}}[data-page=home]>main>section{border-top:1px solid var(--color-border);padding:clamp(64px,8vw,104px) 0}[data-page=home]>main>section:first-child{border-top:0}[data-page=home] .eyebrow{color:var(--color-primary);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.85rem;font-size:12px;font-weight:500}[data-page=home] .section-label{color:var(--color-primary);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.85rem;font-size:12px;font-weight:500}[data-page=home] .section-label{color:var(--color-text-tertiary)}[data-page=home] .placeholder-note{border:1px dashed var(--color-border-strong);border-radius:var(--radius);color:var(--color-text-tertiary);font-family:var(--font-mono);margin:.75rem 0 0;padding:8px 10px;font-size:12px;line-height:1.5}[data-page=home] .img-ph-icon{fill:none;stroke:var(--color-text-quaternary);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}[data-page=home] .spec{border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);padding:8px}[data-page=home] .spec-canvas{container-type:inline-size;position:relative;aspect-ratio:16/10;border-radius:var(--radius);overflow:hidden;background-color:var(--color-surface-hover);background-image:radial-gradient(circle,#14140f1a 1px,#0000 1px);background-position:-1px -1px;background-size:18px 18px}[data-page=home] .spec--hero .spec-canvas{aspect-ratio:1280/640}[data-page=home] .spec-canvas--bare{aspect-ratio:auto;border-radius:0;height:100%}[data-page=home] .spec-bar{display:flex;background:var(--color-surface);border-bottom:1px solid var(--color-border);border-radius:var(--radius)var(--radius)0 0;justify-content:space-between;align-items: center;padding:11px 16px}[data-page=home] .spec-bar-brand{display:flex;font-family:var(--font-display);color:var(--color-text);align-items: center;gap:8px;font-size:15px;font-weight:600}[data-page=home] .spec-bar-mark{border:1.5px dashed var(--color-primary);border-radius:var(--radius-sm);width:18px;height:18px}[data-page=home] .spec-bar-nav{display:flex;font-family:var(--font-main);color:var(--color-text-tertiary);gap:18px;font-size:12.5px}[data-page=home] .spec-bar-nav .is-active{color:var(--color-text)}@media (max-width:560px){[data-page=home] .spec-bar-nav{display:none}}[data-page=home] .spec--hero .spec-canvas{border-radius:0 0 var(--radius)var(--radius)}[data-page=home] .dbox{position:absolute;z-index:3;border-radius:var(--radius);display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.2cqw;padding:.4cqw}[data-page=home] .dbox--virtual{background:var(--color-domain-virtual-soft);border:1px solid var(--color-domain-virtual)}[data-page=home] .dbox--physical{background:var(--color-domain-physical-soft);border:1px solid var(--color-domain-physical)}[data-page=home] .dbox-kind{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:clamp(8px,.95cqw,11px)}[data-page=home] .dbox--virtual .dbox-kind{color:var(--color-domain-virtual)}[data-page=home] .dbox--physical .dbox-kind{color:var(--color-domain-physical)}[data-page=home] .dbox-title{font-family:var(--font-display);color:var(--color-text);font-size:clamp(11px,1.7cqw,20px);font-weight:600;line-height:1.1}[data-page=home] .owner{position:absolute;z-index:1;border-radius:var(--radius-lg)}[data-page=home] .owner--viewpoint{border:2px solid var(--color-text)}[data-page=home] .owner--owner{border:2px dashed var(--color-border-strong)}[data-page=home] .owner-tag{position:absolute;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);white-space:nowrap;padding:.25cqw .7cqw;font-size:clamp(8px,.92cqw,11px);font-weight:600;bottom:-.9cqw;left:.8cqw}[data-page=home] .owner--viewpoint .owner-tag{background:var(--color-text);color:var(--color-surface)}[data-page=home] .owner--owner .owner-tag{background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border-strong)}[data-page=home] .flow-layer{position:absolute;z-index:2;pointer-events:none;overflow:visible;width:100%;height:100%;inset:0}[data-page=home] .flow-layer path{fill:none;stroke-width:2;stroke-linecap:round;vector-effect:non-scaling-stroke}[data-page=home] .fl-in{stroke:var(--color-edge-in)}[data-page=home] .fl-out{stroke:var(--color-edge-out)}[data-page=home] .fl-link{stroke:var(--color-edge-flow)}[data-page=home] .mk-in{fill:var(--color-edge-in)}[data-page=home] .mk-out{fill:var(--color-edge-out)}[data-page=home] .mk-link{fill:var(--color-edge-flow)}[data-page=home] .flow-pill{position:absolute;z-index:4;background:var(--color-surface);font-family:var(--font-mono);border-radius:var(--radius-sm);white-space:nowrap;padding:.25cqw .6cqw;font-size:clamp(8px,.92cqw,11px);transform:translate(-50%,-50%)}[data-page=home] .flow-pill--in{border:1.3px solid var(--color-edge-in);color:var(--color-edge-in)}[data-page=home] .flow-pill--out{border:1.3px solid var(--color-edge-out);color:var(--color-edge-out)}[data-page=home] .flow-pill--link{border:1.3px solid var(--color-edge-flow);color:var(--color-edge-flow)}[data-page=home] .spec-key{position:absolute;z-index:5;display:flex;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:.5cqw;padding:.9cqw 1cqw;bottom:6%;right:4%}[data-page=home] .spec-key-row{display:flex;font-family:var(--font-mono);color:var(--color-text-secondary);align-items: center;gap:.6cqw;font-size:clamp(8px,1.05cqw,12px)}[data-page=home] .spec-key-line{width:1.6cqw;min-width:12px;height:2px}[data-page=home] .spec-key-line--in{background:var(--color-edge-in)}[data-page=home] .spec-key-line--out{background:var(--color-edge-out)}[data-page=home] .spec-key-line--link{background:var(--color-edge-flow)}[data-page=home] .spec-cursor{position:absolute;z-index:4;fill:var(--color-text);stroke:var(--color-surface);stroke-width:1.4;width:5%;height:auto;top:58%;right:20%}[data-page=home] .spec-tag-pop{position:absolute;z-index:4;font-family:var(--font-mono);color:var(--color-text-on-primary);background:var(--color-primary);border-radius:var(--radius-sm);padding:.3cqw .7cqw;font-size:clamp(8px,1.05cqw,12px);top:74%;right:6%}[data-page=home] .zoom-pane{position:absolute;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius);overflow:hidden}[data-page=home] .zoom-pane--overview{width:36%;height:50%;top:12%;left:6%}[data-page=home] .zoom-pane--detail{container-type:inline-size;z-index:2;width:46%;height:64%;top:22%;right:6%}[data-page=home] .zoom-label{position:absolute;z-index:2;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);font-size:clamp(8px,1.1cqw,11px);top:5px;left:7px}[data-page=home] .zoom-pane--overview svg{position:absolute;width:100%;height:100%;inset:0}[data-page=home] .zoom-mini-box rect{fill:var(--color-domain-virtual-soft);stroke:var(--color-domain-virtual);stroke-width:1}[data-page=home] .zoom-mini-line path{stroke:var(--color-edge-in);stroke-width:1.4;fill:none}[data-page=home] .zoom-loupe{position:absolute;border:1.6px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary-soft);width:30%;height:34%;top:48%;left:42%}[data-page=home] .spec-panel{container-type:inline-size;aspect-ratio:16/10;background:var(--color-surface);border-radius:var(--radius);overflow:hidden}[data-page=home] .snap-head{display:flex;border-bottom:1px solid var(--color-border);justify-content:space-between;align-items: center;padding:1cqw 1.4cqw}[data-page=home] .snap-title{font-family:var(--font-display);color:var(--color-text);font-size:clamp(12px,1.7cqw,18px);font-weight:600}[data-page=home] .snap-live{font-family:var(--font-mono);color:var(--color-success);background:var(--color-success-soft);border:1px solid color-mix(in srgb,var(--color-success)35%,transparent);border-radius:var(--radius-sm);padding:.2cqw .6cqw;font-size:clamp(8px,1.2cqw,12px)}[data-page=home] .snap-list{list-style:none;margin:0;padding:.6cqw 0}[data-page=home] .snap-row{display:flex;align-items: center;gap:1cqw;padding:.85cqw 1.4cqw}[data-page=home] .snap-row--current{background:var(--color-primary-soft);border-left:2px solid var(--color-primary)}[data-page=home] .snap-dot{border-radius:var(--radius-pill);border:1.5px solid var(--color-border-strong);flex:none;width:1.1cqw;min-width:7px;height:1.1cqw;min-height:7px}[data-page=home] .snap-row--current .snap-dot{background:var(--color-primary);border-color:var(--color-primary)}[data-page=home] .snap-meta{display:flex;flex-direction:column;gap:.1cqw}[data-page=home] .snap-v{font-family:var(--font-main);color:var(--color-text);font-size:clamp(11px,1.5cqw,16px);font-weight:600}[data-page=home] .snap-row:not(.snap-row--current) .snap-v{color:var(--color-text-secondary);font-weight:500}[data-page=home] .snap-when{font-family:var(--font-mono);color:var(--color-text-tertiary);font-size:clamp(8px,1.15cqw,12px)}[data-page=home] .spec-split{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:16/10;border-radius:var(--radius);overflow:hidden}[data-page=home] .spec-split .spec-canvas--bare{border-right:1px solid var(--color-border-strong)}[data-page=home] .logbook{container-type:inline-size;background:var(--color-surface-hover);overflow:hidden;padding:1cqw 1.2cqw}[data-page=home] .logbook-label{display:block;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:.7cqw;font-size:clamp(8px,1.15cqw,12px)}[data-page=home] .logbook-body{font-family:var(--font-mono);color:var(--color-text-secondary);white-space:pre-wrap;margin:0;font-size:clamp(9px,1.25cqw,13px);line-height:1.7}[data-page=home] .lb-virtual{color:var(--color-domain-virtual)}[data-page=home] .lb-physical{color:var(--color-domain-physical)}[data-page=home] .lb-dim{color:var(--color-text-tertiary)}[data-page=home] .lb-note{color:var(--color-edge-in)}[data-page=home] .spec-panel--legend{display:flex;flex-direction:column;justify-content:center;padding:2cqw 2.4cqw}[data-page=home] .legend-eyebrow{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:1.6cqw;font-size:clamp(9px,1.3cqw,13px)}[data-page=home] .legend-grid{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1.4cqw 1.2cqw;margin:0;padding:0}[data-page=home] .legend-grid li{display:flex;font-family:var(--font-main);color:var(--color-text-secondary);align-items: center;gap:.7cqw;font-size:clamp(11px,1.5cqw,16px)}[data-page=home] .legend-swatch{border-radius:var(--radius-sm);display:flex;flex:none;justify-content:center;align-items: center;width:1.9cqw;min-width:16px;height:1.4cqw;min-height:12px}[data-page=home] .legend-swatch--virtual{background:var(--color-domain-virtual-soft);border:1px solid var(--color-domain-virtual)}[data-page=home] .legend-swatch--physical{background:var(--color-domain-physical-soft);border:1px solid var(--color-domain-physical)}[data-page=home] .legend-swatch--viewpoint{border:1.6px solid var(--color-text)}[data-page=home] .legend-swatch--owner{border:1.6px dashed var(--color-border-strong)}[data-page=home] .legend-swatch--in{background:var(--color-edge-in);border-radius:0;height:2px;min-height:2px}[data-page=home] .legend-swatch--out{background:var(--color-edge-out);border-radius:0;height:2px;min-height:2px}[data-page=home] .legend-swatch--link{background:var(--color-edge-flow);border-radius:0;height:2px;min-height:2px}[data-page=home] .legend-swatch--star{color:var(--color-primary);font-size:clamp(12px,1.5cqw,16px);line-height:1}[data-page=home] .spec-canvas--muted{background-color:var(--color-surface-hover);background-image:none}[data-page=home] .spec-canvas--muted svg{position:absolute;width:100%;height:100%;inset:0}[data-page=home] .tangle-line path{stroke:var(--color-border-strong);stroke-width:1.4;fill:none}[data-page=home] .tangle-box rect{fill:var(--color-surface);stroke:var(--color-border-strong);stroke-width:1.4}[data-page=home] .tangle-label text{fill:var(--color-text-tertiary);font-family:var(--font-mono);font-size:9px}[data-page=home] .hero{padding-top:clamp(40px,6vw,72px)!important}[data-page=home] .hero-copy{max-width:900px}[data-page=home] .hero-copy h1{letter-spacing:-.035em;text-wrap:balance;margin-bottom:1.25rem;font-size:clamp(34px,8vw,76px);line-height:1}[data-page=home] .hero-sub{color:var(--color-text-secondary);max-width:680px;margin-bottom:2rem;font-size:1.375rem;line-height:1.6}[data-page=home] .cta-row{display:flex;flex-wrap:wrap;gap:.75rem}[data-page=home] .canvas-stage{margin-top:clamp(38px,6vw,64px)}[data-page=home] .provenance h2{max-width:22ch}[data-page=home] .provenance-list{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;margin:1.25rem 0 0;padding:0}[data-page=home] .provenance-list li{font-family:var(--font-mono);color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:5px 12px;font-size:12px}[data-page=home] .ps-grid{display:grid;grid-template-columns:1fr 1fr;align-items: start;gap:clamp(30px,5vw,72px)}@media (max-width:768px){[data-page=home] .ps-grid{grid-template-columns:1fr;gap:2rem}}[data-page=home] .ps-grid h2{letter-spacing:-.025em;max-width:18ch;font-size:clamp(26px,3.4vw,40px);line-height:1.08}[data-page=home] .ps-grid .text-secondary{max-width:52ch;font-size:1.3125rem}[data-page=home] .numbered{list-style:none;display:flex;flex-direction:column;gap:.85rem;margin:1.5rem 0 0;padding:0}[data-page=home] .numbered li{display:flex;color:var(--color-text-secondary);align-items:baseline;gap:.85rem;font-size:1.25rem;line-height:1.5}[data-page=home] .num{font-family:var(--font-mono);color:var(--color-primary);flex-shrink:0;font-size:12px;font-weight:600}[data-page=home] .before-after{display:grid;grid-template-columns:1fr 1fr;align-items: start;gap:18px;margin-top:clamp(40px,5vw,68px)}@media (max-width:640px){[data-page=home] .before-after{grid-template-columns:1fr}}[data-page=home] .ba-col{margin:0}[data-page=home] .ba-col .spec{margin-bottom:1rem}[data-page=home] .ba-col p{font-size:1.3125rem;line-height:1.5}[data-page=home] .ba-col p:last-child{margin-bottom:0}[data-page=home] .ba-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:.75rem;font-size:11px}[data-page=home] .spine{border-left:3px solid var(--color-primary);font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text);max-width:880px;margin:clamp(40px,5vw,68px) 0 0;padding:.4rem 0 .4rem 1.5rem;font-size:clamp(22px,3vw,32px);font-weight:600;line-height:1.2}[data-page=home] .features-intro h2{letter-spacing:-.028em;max-width:16ch;font-size:clamp(26px,3.6vw,44px);line-height:1.06}[data-page=home] .features-intro .lead{max-width:40ch;margin-top:1rem;font-size:1.4375rem}[data-page=home] .feature-rows{margin-top:clamp(8px,2vw,24px)}[data-page=home] .feature-row{display:flex;border-top:1px solid var(--color-border);align-items: center;gap:clamp(28px,5vw,68px);padding:clamp(40px,5vw,68px) 0}@media (max-width:860px){[data-page=home] .feature-row{flex-direction:column;align-items:stretch;gap:clamp(20px,4vw,32px)}}[data-page=home] .feature-row--flip{flex-direction:row-reverse}@media (max-width:860px){[data-page=home] .feature-row--flip{flex-direction:column}}[data-page=home] .feature-copy{flex:1 1 0;max-width:440px}[data-page=home] .feature-copy .num{display:block;margin-bottom:.6rem;font-size:13px}[data-page=home] .feature-copy h3{letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(21px,2.4vw,28px);line-height:1.15}[data-page=home] .feature-copy p.text-secondary{font-size:1.28rem;line-height:1.6}[data-page=home] .feature-visual{flex:1 1 0;width:100%;min-width:0}[data-page=home] .quote-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);max-width:680px;margin:clamp(28px,4vw,44px) 0 0;padding:1.75rem}[data-page=home] .quote-empty .quote-mark{display:block;font-family:var(--font-display);color:var(--color-border-strong);margin-bottom:.75rem;font-size:44px;line-height:.5}[data-page=home] .quote-empty blockquote{margin:0 0 1.25rem}[data-page=home] .quote-empty figcaption{display:flex;border-top:1px solid var(--color-border);align-items: center;gap:.75rem;padding-top:1rem;font-size:.85rem}[data-page=home] .quote-avatar{display:flex;border-radius:var(--radius-pill);background:var(--color-surface-hover);border:1px dashed var(--color-border-strong);flex-shrink:0;justify-content:center;align-items: center;width:40px;height:40px}[data-page=home] .quote-meta{display:flex;flex-direction:column;gap:.15rem}[data-page=home] .quote-name{color:var(--color-text);font-weight:600}[data-page=home] .closing-cta{text-align:center}[data-page=home] .closing-cta h2{letter-spacing:-.03em;text-wrap:balance;max-width:20ch;margin-left:auto;margin-right:auto;font-size:clamp(28px,4.6vw,48px);line-height:1.05}[data-page=home] .closing-cta .lead{max-width:560px;margin:1.25rem auto 1.75rem;font-size:1.4375rem}[data-page=home] .closing-cta .cta-row{justify-content:center}[data-page=home] .faq>*{max-width:760px;margin-inline-start:auto;margin-inline-end:auto}[data-page=home] .faq h2{letter-spacing:-.025em;font-size:clamp(26px,3.4vw,40px)}[data-page=home] .faq-list{border-top:1px solid var(--color-border);margin-top:1.5rem}[data-page=home] .faq-item{border-bottom:1px solid var(--color-border)}[data-page=home] .faq-item summary{cursor:pointer;list-style:none;font-family:var(--font-display);letter-spacing:-.015em;color:var(--color-text);display:flex;justify-content:space-between;gap:1rem;padding:1.25rem 0;font-size:clamp(16px,1.9vw,20px);font-weight:500}[data-page=home] .faq-item summary::-webkit-details-marker{display:none}[data-page=home] .faq-item summary:after{content:"+";color:var(--color-primary);font-family:var(--font-mono)}[data-page=home] .faq-item[open] summary:after{content:"−"}[data-page=home] .faq-item p{max-width:64ch;margin:0;padding:0 0 1.5rem;font-size:1.25rem;line-height:1.6}[data-page=home] .faq-item .placeholder-note{max-width:64ch;margin:0 0 1.5rem;padding:8px 10px}[data-page=home] .btn-primary{font-size:19px}[data-page=early-access] .ea-intro{max-width:620px;margin-bottom:2rem}[data-page=early-access] .ea-intro h1{margin-bottom:1rem;font-size:2.5rem}[data-page=early-access] .eyebrow{color:var(--color-primary);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;font-size:12px;font-weight:500}[data-page=early-access] .placeholder-note{border:1px dashed var(--color-border-strong);border-radius:var(--radius);color:var(--color-text-tertiary);font-family:var(--font-mono);margin:0;padding:8px 10px;font-size:12px;line-height:1.5}[data-page=early-access] .ea-card{max-width:620px}[data-page=early-access] form{display:flex;flex-direction:column;gap:1.25rem}[data-page=early-access] button[type=submit]{align-self: flex-start}[data-page=forms] .forms-layout{display:grid;grid-template-columns:1fr 1fr;align-items: start;gap:2rem}@media (max-width:768px){[data-page=forms] .forms-layout{grid-template-columns:1fr}}[data-page=forms] .form-card{display:block}[data-page=forms] form{display:flex;flex-direction:column;gap:1.25rem}[data-page=forms] .how-it-works h2{margin-bottom:1.25rem}[data-page=forms] .steps{display:flex;flex-direction:column;gap:1.5rem}[data-page=forms] .step{display:flex;align-items: flex-start;gap:1rem}[data-page=forms] .step h3{margin-bottom:.25rem;font-size:15px;font-weight:600}[data-page=forms] .step p{margin:0;font-size:14px;line-height:1.6}[data-page=forms] .step code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-secondary);font-family:var(--font-mono);padding:1px 5px;font-size:12px}[data-page=forms] .step-num{border:1px solid color-mix(in srgb,var(--color-primary)30%,transparent);color:var(--color-primary);display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:28px;height:28px;font-size:13px;font-weight:600}[data-page=projects] .project-list tr:hover td{background:var(--color-surface-hover)}[data-page=projects] .delete-btn{border:1px solid var(--color-border);color:var(--color-danger);background:0 0;padding:4px 10px;font-size:12px}[data-page=projects] .delete-btn:hover{background:var(--color-danger-soft)}[data-page=projects] .delete-btn:focus{background:var(--color-danger-soft)}[data-page=projects] .projects-header{display:flex;justify-content:space-between;align-items: center;gap:1rem;margin-bottom:1rem}[data-page=projects] .projects-header h2{flex-shrink:0;margin:0}@media (max-width:640px){[data-page=projects] .projects-header{flex-direction:column;align-items: flex-start}}[data-page=projects] .search-container{display:flex;align-items: center;gap:.75rem}@media (max-width:640px){[data-page=projects] .search-container{flex-direction:column;align-items:stretch}}[data-page=projects] .search-container input{width:240px;padding:8px 14px}@media (max-width:640px){[data-page=projects] .search-container input{width:100%}}[data-page=projects] .search-count{white-space:nowrap;margin:0;font-size:13px}[data-page=projects] .project-form{display:flex;align-items: center;gap:.75rem}[data-page=projects] .project-form input{flex:1}@media (max-width:640px){[data-page=projects] .project-form input{width:100%}}@media (max-width:640px){[data-page=projects] .project-form button{width:100%}}@media (max-width:640px){[data-page=projects] .project-form{flex-direction:column}}[data-page=projects] .delete-cell{text-align:right}[data-page=projects] .delete-form{display:inline}[data-page=projects] .api-section{margin-top:2.5rem}[data-page=projects] .endpoint-path{font-family:var(--font-mono);font-size:13px}[data-page=projects] .method-get{color:var(--color-success)}[data-page=projects] .method-post{color:var(--color-primary)}[data-page=projects] .method-put{color:var(--color-warning)}[data-page=projects] .method-delete{color:var(--color-danger)}[data-page=maps] .maps-intro{margin-bottom:1.5rem}[data-page=maps] .maps-intro h1{margin-bottom:.25rem}[data-page=maps] .maps-intro .lead{margin:0}[data-page=maps] .maps-create{margin-bottom:2.5rem;padding:20px 24px}[data-page=maps] .maps-create-header{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.875rem}[data-page=maps] .maps-create-title{color:var(--color-text);font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.0625rem;font-weight:600}[data-page=maps] .maps-create-hint{color:var(--color-text-tertiary);margin:0;font-size:.8125rem}[data-page=maps] .maps-create-form{display:flex;align-items: flex-end;gap:.75rem}[data-page=maps] .maps-create-form input[type=text]{width:100%;padding:10px 14px;font-size:15px}[data-page=maps] .maps-create-form button{flex-shrink:0;padding:10px 20px}@media (max-width:640px){[data-page=maps] .maps-create-form{flex-direction:column;align-items:stretch}}[data-page=maps] .maps-create-field{display:flex;flex-direction:column;flex:1;gap:.375rem}[data-page=maps] .maps-create-label{color:var(--color-text-secondary);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:600}[data-page=maps] .maps-section-header{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.875rem}[data-page=maps] .maps-section-title{color:var(--color-text);font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.0625rem;font-weight:600}[data-page=maps] .maps-section-count{color:var(--color-text-tertiary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase;font-size:.75rem}[data-page=maps] .map-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));list-style:none;gap:.875rem;margin:0;padding:0}[data-page=maps] .map-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;transition:border-color .12s ease-out,background .12s ease-out,transform .12s ease-out}[data-page=maps] .map-card:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong);transform:translateY(-1px)}[data-page=maps] .map-card:focus-within{background:var(--color-surface-hover);border-color:var(--color-border-strong);transform:translateY(-1px)}[data-page=maps] .map-card:focus-within{box-shadow:0 0 0 3px var(--color-primary-soft);border-color:var(--color-primary)}[data-page=maps] .map-card-body{color:inherit;display:flex;text-decoration:none;flex-direction:column;flex:1;gap:.875rem;padding:18px 20px 0}[data-page=maps] .map-card-body:hover{color:inherit;outline:none;text-decoration:none}[data-page=maps] .map-card-body:focus-visible{color:inherit;outline:none;text-decoration:none}[data-page=maps] .map-card-name{color:var(--color-text);font-family:var(--font-display);letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.125rem;font-weight:600;line-height:1.2}[data-page=maps] .map-card-stats{color:var(--color-text-secondary);display:flex;font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.005em;flex-wrap:wrap;gap:.25rem .875rem;margin:0;font-size:.75rem}[data-page=maps] .map-card-stat{display:inline-flex;align-items: center;gap:.35rem}[data-page=maps] .map-card-stat strong{color:var(--color-text);font-weight:600}[data-page=maps] .map-card-meta{border-top:1px solid var(--color-border);color:var(--color-text-tertiary);display:flex;justify-content:space-between;align-items: center;gap:.5rem;margin-top:auto;padding:.75rem 20px;font-size:.75rem}[data-page=maps] .map-card-updated{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.005em}[data-page=maps] .map-card-actions{position:relative}[data-page=maps] .map-card-menu-btn{border-radius:var(--radius-md);color:var(--color-text-tertiary);cursor:pointer;display:inline-flex;background:0 0;border:1px solid #0000;justify-content:center;align-items: center;width:28px;height:28px;padding:0;transition:background .12s ease-out,border-color .12s ease-out,color .12s ease-out;font-size:18px;line-height:1}[data-page=maps] .map-card-menu-btn:hover{background:var(--color-surface-hover);border-color:var(--color-border);color:var(--color-text)}[data-page=maps] .map-card-menu-btn[aria-expanded=true]{background:var(--color-surface-hover);border-color:var(--color-border);color:var(--color-text)}[data-page=maps] .map-card-menu-btn:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}[data-page=maps] .map-card-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;position:absolute;z-index:30;flex-direction:column;min-width:150px;padding:4px;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 24px #14140f29}[data-page=maps] .map-card-menu[hidden]{display:none}[data-page=maps] .map-card-menu button{border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:block;font-family:var(--font-main);text-align:left;background:0 0;border:none;width:100%;padding:7px 10px;transition:background .12s ease-out,color .12s ease-out;font-size:.8125rem}[data-page=maps] .map-card-menu button:hover{background:var(--color-surface-hover)}[data-page=maps] .map-card-menu-danger{color:#c92a2a}[data-page=maps] .map-card-menu-danger:hover{background:#fbe1e1}[data-page=maps] .maps-empty{background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-tertiary);text-align:center;padding:2rem 1.5rem}[data-page=maps] .maps-modal-overlay{display:flex;position:fixed;z-index:220;background:#14140f8c;justify-content:center;align-items: center;inset:0}[data-page=maps] .maps-modal-overlay[hidden]{display:none}[data-page=maps] .maps-modal-dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);width:min(440px,100vw - 32px);padding:28px}[data-page=maps] .maps-modal-dialog h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 10px;font-size:20px;font-weight:600;line-height:1.2}[data-page=maps] .maps-modal-dialog p{color:var(--color-text-secondary);margin:0 0 20px;font-size:13px;line-height:1.5}[data-page=maps] .maps-modal-dialog p strong{color:var(--color-text);font-weight:600}[data-page=maps] .maps-modal-label{color:var(--color-text-secondary);display:block;font-family:var(--font-main);margin:0 0 6px;font-size:13px}[data-page=maps] .maps-modal-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text);font-family:var(--font-main);outline:none;width:100%;padding:9px 12px;transition:border-color .12s ease-out,box-shadow .12s ease-out;font-size:14px}[data-page=maps] .maps-modal-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}[data-page=maps] .maps-modal-error{border-radius:var(--radius-sm);color:#14140f;background:#fbe1e1;border-left:3px solid #c92a2a;margin-top:12px;padding:8px 12px;font-size:13px}[data-page=maps] .maps-modal-error[hidden]{display:none}[data-page=maps] .maps-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}[data-page=maps] .maps-modal-cancel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-main);padding:9px 16px;transition:background .12s ease-out,border-color .12s ease-out,color .12s ease-out;font-size:13px;font-weight:500}[data-page=maps] .maps-modal-cancel:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}[data-page=maps] .maps-modal-confirm{background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-text-on-primary);cursor:pointer;font-family:var(--font-main);padding:9px 16px;transition:background .12s ease-out,border-color .12s ease-out,opacity .12s ease-out;font-size:13px;font-weight:500}[data-page=maps] .maps-modal-confirm:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}[data-page=maps] .maps-modal-danger{color:#fff;background:#c92a2a;border-color:#c92a2a}[data-page=maps] .maps-modal-danger:hover:not(:disabled){background:#b02525;border-color:#b02525}[data-page=maps] .maps-modal-confirm:disabled{cursor:not-allowed;opacity:.5}[data-page=maps] .maps-modal-cancel:disabled{cursor:not-allowed;opacity:.5}.login-page{background:var(--color-bg);display:flex;flex-direction:column;justify-content:center;align-items: center;min-height:100vh;padding:48px 16px}.login-wrapper{width:100%;max-width:440px}.login-header{text-align:center;margin-bottom:32px}.login-header a{display:inline-flex;color:var(--color-text)}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:32px}.login-title{color:var(--color-text);text-align:center;margin-bottom:4px;font-size:1.25rem;font-weight:600}.login-subtitle{color:var(--color-text-tertiary);text-align:center;margin-bottom:24px;font-size:14px}.login-card .flash-success p:first-child{color:var(--color-text);margin:0;font-weight:500}.login-card .flash-success p:nth-child(2){color:var(--color-text-secondary);margin-top:4px;margin-bottom:0;font-size:14px}.login-card .flash-success p:last-child{color:var(--color-text-quaternary);margin-top:8px;margin-bottom:0;font-size:12px}.login-card .flash-error span{color:var(--color-text-secondary);font-size:14px}.login-card .form-field{margin-bottom:20px}.login-submit{width:100%}.login-footer{text-align:center;margin-top:24px}.login-footer a{color:var(--color-text-quaternary);font-size:14px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-content{max-width:960px;margin:0 auto;padding:0 24px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-header{margin-bottom:32px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-header h1{margin:0 0 6px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-header p{margin:0;font-size:14px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-subtitle{color:var(--color-text-secondary);line-height:1.5}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-subtitle strong{color:var(--color-text);font-weight:600}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-count{font-family:var(--font-mono);color:var(--color-text-tertiary);letter-spacing:.04em;text-transform:uppercase;margin-top:20px!important;font-size:12px!important}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .flash{border-radius:var(--radius-md);margin:0 0 16px;padding:10px 16px;font-size:14px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .flash-success{background:var(--color-success-soft,#e8f5e9);color:var(--color-success,#1b5e20);border:1px solid var(--color-success-soft-deep,#c8e6c9)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .flash-error{background:var(--color-error-soft,#fdecea);color:var(--color-error,#b3261e);border:1px solid var(--color-error-soft-deep,#f5c6c0)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-table-wrap{overflow-x:auto}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-table-wrap+.admin-table-wrap{margin-top:48px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-table-wrap h2{margin:0 0 16px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .invite-form{margin:0 0 24px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .invite-form-fields{display:flex;flex-wrap:wrap;align-items: center;gap:8px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .data-table th{border-bottom:1px solid var(--color-border);padding:10px 24px;font-size:12px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .data-table td{border-bottom:1px solid var(--color-border);padding:14px 24px;font-size:14px}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-email{color:var(--color-text)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-you{color:var(--color-text-tertiary);font-size:12px;font-weight:500}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-date{color:var(--color-text-quaternary)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-actions-th{white-space:nowrap;width:1%}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-actions-cell{text-align:right;white-space:nowrap}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action-empty{color:var(--color-text-quaternary)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-role-form{display:inline-block;margin:0}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-sm);font-family:var(--font-main);cursor:pointer;padding:6px 12px;transition:background .12s,border-color .12s;font-size:13px;font-weight:500}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action:hover{background:var(--color-bg);border-color:var(--color-border-strong);color:var(--color-text)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action:focus{background:var(--color-bg);border-color:var(--color-border-strong);color:var(--color-text)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-soft)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action--demote:hover{border-color:var(--color-error,#b3261e);color:var(--color-error,#b3261e)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .admin-action--demote:focus{border-color:var(--color-error,#b3261e);color:var(--color-error,#b3261e)}:is([data-page=team],[data-page=orgs],[data-page=admin-users]) .sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0}.settings-form{display:flex;flex-direction:column;gap:20px;max-width:480px}.settings-form label{display:flex;flex-direction:column;gap:6px}.settings-form label>span{color:var(--color-text);font-size:14px;font-weight:600}.settings-form label>small{color:var(--color-text-tertiary);font-size:12px;line-height:1.45}.settings-form input[type=text]{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 12px;font-size:14px}.settings-form input[type=text]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.settings-row{display:flex;border-top:1px solid var(--color-border);flex-direction:column;gap:4px;padding:8px 0}.settings-label{color:var(--color-text-tertiary);font-size:13px;font-weight:600}.settings-value{color:var(--color-text);font-size:14px;font-family:var(--font-mono)}.settings-form button[type=submit]{align-self: flex-start}[data-component=layout]{display:flex;flex-direction:column;min-height:100vh}[data-component=layout]>header{background:var(--color-bg);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items: center;padding:.75rem 2rem}@media (max-width:640px){[data-component=layout]>header{padding:.75rem 1rem}}[data-component=layout]>header .logo{display:flex;text-decoration:none;align-items: center;gap:.5rem}[data-component=layout]>header .logo svg{width:22px;height:22px}[data-component=layout]>header .logo span{color:var(--color-text);font-family:var(--font-display);letter-spacing:-.02em;font-size:1.125rem;font-weight:600}[data-component=layout]>header .logo:hover{text-decoration:none}[data-component=layout]>header .logo:focus{text-decoration:none}[data-component=layout]>main{flex:1 0 auto;width:100%;max-width:960px;margin:0 auto;padding:2rem}@media (max-width:768px){[data-component=layout]>main{padding:1.5rem}}@media (max-width:640px){[data-component=layout]>main{padding:1rem}}[data-component=layout]>footer{border-top:1px solid var(--color-border);width:100%;max-width:1320px;margin:0 auto;padding:clamp(32px,5vw,52px) 2rem}@media (max-width:640px){[data-component=layout]>footer{padding:clamp(28px,6vw,40px) 1rem}}[data-component=layout]>footer .footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items: flex-start;gap:24px clamp(28px,5vw,72px)}[data-component=layout]>footer .footer-brand{max-width:380px}[data-component=layout]>footer .footer-wordmark{display:flex;color:var(--color-text);align-items: center;gap:.5rem}[data-component=layout]>footer .footer-wordmark svg{width:22px;height:22px}[data-component=layout]>footer .footer-wordmark span{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text);font-size:1.0625rem;font-weight:600}[data-component=layout]>footer .footer-wordmark:hover{text-decoration:none}[data-component=layout]>footer .footer-wordmark:focus{text-decoration:none}[data-component=layout]>footer .footer-brand p{color:var(--color-text-tertiary);margin:.85rem 0 0;font-size:.9375rem;line-height:1.6}[data-component=layout]>footer .footer-cols{display:flex;gap:clamp(28px,5vw,72px)}[data-component=layout]>footer .footer-col{display:flex;flex-direction:column;align-items: flex-start;gap:.7rem}[data-component=layout]>footer .footer-col-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-quaternary);font-size:11px}[data-component=layout]>footer .footer-col a{color:var(--color-text-secondary);font-size:.9375rem}[data-component=layout]>footer a:hover{color:var(--color-primary)}[data-component=layout]>footer a:focus{color:var(--color-primary)}[data-component=layout]>footer .footer-link{color:var(--color-text-secondary);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-family:inherit;font-size:.9375rem;font-weight:400}[data-component=layout]>footer .footer-link:hover{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;background:0 0}[data-component=layout]>footer .footer-link:focus{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;background:0 0}[data-component=layout][data-page=home]>main{max-width:1320px}[data-component=layout][data-page=map]>main{max-width:none;padding:0}[data-component=layout][data-page=map]>footer{display:none}[data-component=nav]{display:flex;flex:1;align-items: center;gap:1.5rem;min-width:0;margin-left:2rem}@media (max-width:640px){[data-component=nav]{gap:.75rem;margin-left:.75rem}}[data-component=nav] ul{display:flex;list-style:none;flex-wrap:wrap;align-items: center;gap:1.5rem;margin:0 0 0 auto;padding:0}@media (max-width:640px){[data-component=nav] ul{gap:.5rem}}[data-component=nav] ul li{display:flex;align-items: center}[data-component=nav] ul form{display:inline-flex;margin:0}[data-component=nav] ul a{color:var(--color-text-secondary);cursor:pointer;text-decoration:none;background:0 0;border:none;padding:0;transition:color .15s;font-family:inherit;font-size:14px;font-weight:500}[data-component=nav] ul a:hover{color:var(--color-text);text-decoration:none;background:0 0}[data-component=nav] ul a:focus{color:var(--color-text);text-decoration:none;background:0 0}[data-component=nav] ul button{color:var(--color-text-secondary);cursor:pointer;text-decoration:none;background:0 0;border:none;padding:0;transition:color .15s;font-family:inherit;font-size:14px;font-weight:500}[data-component=nav] ul button:hover{color:var(--color-text);text-decoration:none;background:0 0}[data-component=nav] ul button:focus{color:var(--color-text);text-decoration:none;background:0 0}[data-component=nav] ul a.active{color:var(--color-text);font-weight:500}[data-component=nav] ul a[aria-current=page]{color:var(--color-text);font-weight:500}[data-component=nav] ul a.nav-cta{background:var(--color-primary);color:var(--color-text-on-primary);border-radius:var(--radius);padding:7px 14px;font-size:14px}[data-component=nav] ul a.nav-cta:hover{background:var(--color-primary-hover);color:var(--color-text-on-primary)}[data-component=nav] ul a.nav-cta:focus{background:var(--color-primary-hover);color:var(--color-text-on-primary)}.flash-success{border:1px solid color-mix(in srgb,var(--color-success)25%,transparent);background:var(--color-success-soft);border-left:3px solid var(--color-success);border-radius:var(--radius);margin-bottom:1rem;padding:12px 16px 12px 19px}.flash-error{border:1px solid color-mix(in srgb,var(--color-danger)25%,transparent);background:var(--color-danger-soft);border-left:3px solid var(--color-danger);border-radius:var(--radius);margin-bottom:1rem;padding:12px 16px 12px 19px}.form-field{display:flex;flex-direction:column;gap:.375rem}.form-field label{color:var(--color-text-secondary);letter-spacing:.01em;font-size:13px;font-weight:500}.form-field input{width:100%}.form-field textarea{width:100%}.data-table{border-collapse:collapse;width:100%}.data-table th{color:var(--color-text-quaternary);letter-spacing:.05em;text-align:left;text-transform:uppercase;padding:8px 12px;font-size:11px;font-weight:500}.data-table td{border-top:1px solid var(--color-border);padding:10px 12px}.badge{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-pill);display:inline-flex;border:1px solid #0000;align-items: center;padding:2px 8px;font-size:11px;font-weight:500}.badge-admin{background:var(--color-primary-soft);color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary)25%,transparent)}.badge-user{background:var(--color-surface-hover);color:var(--color-text-secondary);border-color:var(--color-border)}:root{--color-bg:#fafaf5;--color-surface:#fff;--color-surface-hover:#f4f3ec;--color-border:#e7e5dc;--color-border-strong:#c7c5b8;--color-text:#14140f;--color-text-secondary:#54544c;--color-text-tertiary:#8a8a80;--color-text-quaternary:#bcbbae;--color-primary:#d95416;--color-primary-hover:#ff6b2c;--color-primary-soft:#fce9de;--color-text-on-primary:#fff;--color-success:#1d9d5e;--color-success-soft:#e0f4e9;--color-warning:#c68a00;--color-warning-soft:#fbeecb;--color-danger:#c92a2a;--color-danger-soft:#fbe1e1;--color-edge-in:#2c6f9e;--color-edge-out:#4b7a3e;--color-edge-flow:#d95416;--color-domain-physical:#8a5a2b;--color-domain-physical-soft:#f1e5d2;--color-domain-physical-soft-deep:#e5d1b0;--color-domain-virtual:#4b5a78;--color-domain-virtual-soft:#e2e8f1;--color-domain-virtual-soft-deep:#c9d4e4;--font-display:"Clash Grotesk",ui-sans-serif,system-ui,-apple-system,sans-serif;--font-main:"Satoshi",ui-sans-serif,system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--radius-sm:4px;--radius:6px;--radius-md:6px;--radius-lg:8px;--radius-pill:9999px}html{background:var(--color-bg);box-sizing:border-box;color:var(--color-text);font-size:16px}*,*:before,*:after{box-sizing:inherit}body{font-family:var(--font-main);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;line-height:1.55}body:before{content:"";position:fixed;pointer-events:none;z-index:-1;background-image:radial-gradient(circle,#14140f0b 1px,#0000 1px);background-size:24px 24px;inset:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .5em;font-weight:600;line-height:1.1}h1{letter-spacing:-.035em;font-size:2.2rem}h2{letter-spacing:-.025em;font-size:1.75rem}p{margin:0 0 1.2em}a{color:var(--color-primary);text-decoration:none;transition:color .15s}a:hover{color:var(--color-primary-hover);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}a:focus{color:var(--color-primary-hover);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}button{border-radius:var(--radius);background:var(--color-primary);color:var(--color-text-on-primary);cursor:pointer;border:none;padding:8px 16px;transition:all .15s;font-family:inherit;font-size:14px;font-weight:500}button:hover{background:var(--color-primary-hover)}button:focus{background:var(--color-primary-hover)}img{display:block;max-width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);display:inline-block;width:100%;margin-bottom:2rem;padding:24px}.btn-primary{display:inline-block;border-radius:var(--radius);background:var(--color-primary);color:var(--color-text-on-primary);text-decoration:none;cursor:pointer;border:none;padding:10px 20px;transition:background .15s;font-family:inherit;font-size:14px;font-weight:500}.btn-primary:hover{background:var(--color-primary-hover);color:var(--color-text-on-primary)}.btn-primary:focus{background:var(--color-primary-hover);color:var(--color-text-on-primary)}.btn-ghost{border:1px solid var(--color-border);color:var(--color-text-secondary);background:0 0}.btn-ghost:hover{background:var(--color-surface);color:var(--color-text)}.btn-ghost:focus{background:var(--color-surface);color:var(--color-text)}.btn-danger{color:var(--color-danger);background:0 0}.btn-danger:hover{background:var(--color-danger-soft)}.btn-danger:focus{background:var(--color-danger-soft)}input,textarea,select{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);padding:9px 12px;transition:border-color .12s ease-out,box-shadow .12s ease-out;font-family:inherit;font-size:14px}:is(input,textarea,select)::placeholder{color:var(--color-text-tertiary)}:is(input,textarea,select):focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-quaternary{color:var(--color-text-quaternary)}.lead{color:var(--color-text-tertiary);font-size:1.125rem;font-weight:400;line-height:1.7}[data-cc-root]{--cc-bg:var(--color-surface);--cc-fg:var(--color-text);--cc-muted:var(--color-text-secondary);--cc-primary:var(--color-primary);--cc-primary-fg:var(--color-text-on-primary);--cc-surface:var(--color-bg);--cc-border:var(--color-border);--cc-radius:var(--radius-lg);--cc-radius-sm:var(--radius-sm);--cc-font:var(--font-main)}
