.constellation-view{aspect-ratio:1;width:100%;position:relative;container-type:inline-size}.constellation-svg{width:100%;height:100%;display:block;position:absolute;inset:0}.constellation-guide-ring{fill:none;stroke:#d7e8ee0d;stroke:lab(90.8413% -5.07411 -4.90416/.05);stroke-width:1px;stroke-dasharray:1 7}.constellation-seam{stroke:#d7e8ee14;stroke:lab(90.8413% -5.07411 -4.90416/.08);stroke-width:1px}.constellation-line{stroke:#d7e8ee0f;stroke:lab(90.8413% -5.07411 -4.90416/.06);stroke-width:1px;transition:stroke .4s,opacity .4s}.constellation-line-group[data-lit] .constellation-line{stroke:color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 55%, transparent);stroke-width:1.2px}.constellation-line-glow{stroke:color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 22%, transparent);stroke-width:3.5px;stroke-linecap:round}.constellation-line-group[data-dim]{opacity:.25}.constellation-core-halo{fill:color-mix(in oklch, var(--vf-accent-blue) 7%, transparent)}.constellation-core-seed-ring{fill:none;stroke:color-mix(in oklch, var(--vf-accent-violet) 22%, transparent);stroke-width:1px;stroke-dasharray:2 6;transform-origin:50%;animation:120s linear infinite constellation-seed-spin}.constellation-core-ring{fill:none;stroke:#d7e8ee24;stroke:lab(90.8413% -5.07411 -4.90416/.14);stroke-width:1px}.constellation-core-disc{fill:color-mix(in oklch, var(--bg-surface-raised,#0d1218) 88%, var(--vf-accent-blue));stroke:color-mix(in oklch, var(--vf-accent-cyan) 28%, transparent);stroke-width:1px}@supports (color:lab(0% 0 0)){.constellation-core-disc{fill:color-mix(in oklch, var(--bg-surface-raised,lab(5.24559% -.9728 -4.53259)) 88%, var(--vf-accent-blue))}}.constellation-core[data-empty] .constellation-core-halo{animation:75s ease-in-out infinite constellation-core-breathe}.constellation-core-mark{pointer-events:none;object-fit:contain;width:11.5%;height:auto;filter:drop-shadow(0 0 5px color-mix(in oklch, var(--vf-brand-aqua) 42%, transparent)) drop-shadow(0 0 12px color-mix(in oklch, var(--vf-accent-blue) 24%, transparent));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.constellation-core-readout{pointer-events:none;text-align:center;flex-direction:column;align-items:center;gap:.05rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.constellation-core-count{color:var(--text-primary);letter-spacing:.01em;font-size:clamp(1.05rem,5.5cqi,1.45rem);font-weight:600;line-height:1}.constellation-core-total{color:var(--text-muted);font-size:.72em;font-weight:500}.constellation-core-word{color:var(--text-muted);letter-spacing:.08em;font-size:clamp(.6rem,2.6cqi,.68rem)}.constellation-star-seed{fill:#0000;stroke:#d7e8ee47;stroke:lab(90.8413% -5.07411 -4.90416/.28);stroke-width:1.2px;transition:stroke .4s}.constellation-star-dot{fill:color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 88%, white)}.constellation-star-glow{fill:color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 26%, transparent)}.constellation-star-ring{fill:none;stroke:color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 60%, transparent);stroke-width:1.2px;stroke-dasharray:3 4}.constellation-star[data-dim]{opacity:.25}.constellation-star[data-just-lit] .constellation-star-glow{animation:1.1s cubic-bezier(.2,.8,.2,1) constellation-bloom}.constellation-nodes{position:absolute;inset:0}.constellation-node{cursor:pointer;background:0 0;border:none;border-radius:999px;width:44px;height:44px;padding:0;position:absolute;transform:translate(-50%,-50%)}.constellation-node:hover,.constellation-node:focus-visible{box-shadow:0 0 0 1px color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 35%, transparent), 0 0 18px var(--tier-accent-soft,transparent)}.constellation-node[data-dim]{opacity:.3}.constellation-labels{pointer-events:none;position:absolute;inset:0}.constellation-label{text-align:center;letter-spacing:.015em;width:6.5rem;color:color-mix(in oklch, var(--text-primary) 82%, var(--tier-hue,var(--vf-accent-cyan)));opacity:0;pointer-events:none;margin-left:-3.25rem;font-size:.72rem;line-height:1.25;transition:opacity .3s;position:absolute;left:50%}.constellation-labels .constellation-label{margin-left:0;transform:translate(-50%)}.constellation-labels .constellation-label[data-side=top]{transform:translate(-50%,calc(-100% - 14px))}.constellation-labels .constellation-label[data-side=bottom]{transform:translate(-50%,14px)}.constellation-node .constellation-label[data-side=top]{bottom:calc(100% - 4px)}.constellation-node .constellation-label[data-side=bottom]{top:calc(100% - 4px)}.constellation-label[data-visible],.constellation-node:hover .constellation-label,.constellation-node:focus-visible .constellation-label{opacity:1}.constellation-star[data-just-lit]~* .constellation-label{transition-duration:.9s}.constellation-label-flag{border:1px solid color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 45%, transparent);color:color-mix(in oklch, var(--tier-hue,var(--vf-accent-cyan)) 80%, white);letter-spacing:.05em;vertical-align:.08em;border-radius:999px;margin-left:.3rem;padding:.05rem .35rem;font-size:.62rem;display:inline-block}@container (max-width:360px){.constellation-label{display:none}}@keyframes constellation-seed-spin{to{transform:rotate(360deg)}}@keyframes constellation-core-breathe{0%,to{opacity:1}50%{opacity:.55}}@keyframes constellation-bloom{0%{opacity:0;r:5}45%{opacity:1;r:17}to{opacity:1;r:11}}@media (prefers-reduced-motion:reduce){.constellation-core-seed-ring,.constellation-core[data-empty] .constellation-core-halo,.constellation-star[data-just-lit] .constellation-star-glow{animation:none}}[data-motion=off] .constellation-core-seed-ring,[data-motion=off] .constellation-core[data-empty] .constellation-core-halo,[data-motion=off] .constellation-star[data-just-lit] .constellation-star-glow{animation:none}
