.cst{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.5rem;align-items:start}@media (max-width:900px){.cst{grid-template-columns:1fr}}.cst-controls{grid-column:1/-1;flex-wrap:wrap;gap:1rem 2rem;margin-bottom:.5rem;font-family:var(--font-inter),system-ui,sans-serif}.cst-controls,.cst-year{display:flex;align-items:center}.cst-year{gap:.75rem;flex:1 1 320px}.cst-year-label{font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;opacity:.6}.cst-year input{flex:1;accent-color:currentColor}.cst-year-value{font-variant-numeric:tabular-nums;font-weight:600;min-width:3.5ch}.cst-btn{font:inherit;font-size:.8125rem;font-weight:500;color:inherit;background:transparent;border:1px solid color-mix(in oklab,currentColor 25%,transparent);border-radius:6px;padding:.5rem .9rem;cursor:pointer}.cst-btn:hover{border-color:color-mix(in oklab,currentColor 50%,transparent)}.cst-btn:focus-visible{outline:2px solid currentColor;outline-offset:3px}.cst-stage{overflow-x:auto;border:1px solid color-mix(in oklab,currentColor 10%,transparent);border-radius:10px;background:color-mix(in oklab,currentColor 3%,transparent)}.cst-svg{display:block;width:100%;min-width:900px;height:auto}.cst-svg text{font-family:var(--font-inter),system-ui,sans-serif;fill:currentColor}.cst-decade line{stroke:currentColor;stroke-opacity:.12}.cst-decade text{font-size:12px;opacity:.5}.cst-lane line{stroke:currentColor;stroke-opacity:.16}.cst-lane-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.6}.cst-edge{fill:none;stroke:currentColor;stroke-width:1.4;stroke-opacity:.4;transition:stroke-opacity .2s ease,stroke-width .2s ease}.cst-edge.is-influence{stroke-dasharray:4 5;stroke-opacity:.28}.cst-edge.is-lit{stroke-opacity:.95;stroke-width:2.2}.cst-edge.is-dim{stroke-opacity:.08}.cst-node{cursor:pointer;outline:none}.cst-node circle{fill:currentColor;stroke:var(--chart-bg,Canvas);stroke-width:2;transition:r .16s ease}.cst-node.is-self circle,.cst-node:focus-visible circle,.cst-node:hover circle{r:9}.cst-node:focus-visible circle{stroke:currentColor;stroke-width:3}.cst-node-name{font-size:13px;font-weight:600}.cst-node-year{font-size:11px;opacity:.55}.cst[data-focus] .cst-node.is-dim{opacity:.22!important}.cst-node.is-down .cst-node-name,.cst-node.is-self .cst-node-name,.cst-node.is-up .cst-node-name{text-decoration:underline;text-underline-offset:3px}.cst-panel{position:sticky;top:4.5rem;z-index:3;font-family:var(--font-inter),system-ui,sans-serif;border:1px solid color-mix(in oklab,currentColor 14%,transparent);border-radius:10px;padding:1.1rem 1.2rem;background:color-mix(in oklab,var(--chart-bg) 72%,transparent);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 8px 30px color-mix(in oklab,var(--chart-bg) 40%,transparent);min-height:18rem;max-height:min(70vh,34rem);overflow:auto}.cst-panel-kicker{margin:0 0 .35rem;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;opacity:.55}.cst-panel-title{margin:0 0 .6rem;font-family:var(--font-jost),system-ui,sans-serif;font-weight:600;font-size:1.4rem;letter-spacing:-.01em}.cst-panel-fam,.cst-panel-what,.cst-panel-why{margin:0 0 .6rem;font-size:.875rem;line-height:1.55}.cst-panel-why{color:color-mix(in oklab,currentColor 72%,transparent)}.cst-panel-fam{font-size:.8125rem;color:color-mix(in oklab,currentColor 55%,transparent)}.cst-ramp{display:grid;grid-template-columns:repeat(9,1fr);gap:2px;margin:.8rem 0}.cst-ramp>span:not(.cst-ramp-note){aspect-ratio:1;border-radius:3px}.cst-ramp-note{grid-column:1/-1;font-size:.75rem;line-height:1.5;color:color-mix(in oklab,currentColor 55%,transparent);margin-top:.3rem}@media (prefers-reduced-motion:reduce){.cst-edge,.cst-node,.cst-node circle{transition:none!important}}