.constellation{gap:16px;display:grid}@media (min-width:1100px){.constellation{grid-template-columns:minmax(0,1fr) 320px}.constellation__src{grid-column:1/-1}}.constellation__stage{border:1px solid var(--line);background:var(--surface);touch-action:none;border-radius:20px;height:clamp(380px,62vh,620px);position:relative;overflow:hidden}.constellation__canvas{cursor:grab;font-family:var(--font-mono);--ink:inherit;display:block}.constellation__legend{color:var(--ink-3);pointer-events:none;flex-wrap:wrap;gap:6px 14px;font-size:.75rem;display:flex;position:absolute;top:12px;left:14px}.constellation__legend .dot{border:1px solid var(--ink-3);background:var(--surface);vertical-align:-1px;border-radius:50%;width:9px;height:9px;margin-right:4px;display:inline-block}.constellation__legend .dot--api{background:var(--ink)}.constellation__legend .dot--blast{background:var(--heat-2);border-color:var(--heat-2)}.constellation__legend .dot--sel{background:var(--blue);border-color:var(--blue)}.constellation__hint{pointer-events:none;font-size:.75rem;position:absolute;bottom:10px;left:14px}.constellation__panel{align-content:start;gap:16px;display:grid}.constellation__toggle{color:var(--ink-2);align-items:center;gap:8px;min-height:32px;font-size:.875rem;display:inline-flex}.constellation__detail{gap:10px;display:grid}.constellation__file{word-break:break-all;font-size:.875rem;font-weight:500}.constellation__routes{flex-wrap:wrap;gap:6px;display:flex}.constellation__blast{font-size:.9375rem}.constellation__blast strong{color:var(--blue);font-weight:600}.constellation__cols{gap:14px;display:grid}.constellation__cols ul,.constellation__list ul{gap:2px;max-height:220px;margin-top:6px;display:grid;overflow:auto}.constellation__cols button,.constellation__list button{text-align:left;width:100%;min-height:30px;color:var(--ink-2);font-family:var(--font-mono);cursor:pointer;word-break:break-all;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:.75rem}.constellation__cols button:hover,.constellation__list button:hover,.constellation__list button[aria-pressed=true]{background:var(--surface-2);color:var(--ink)}.constellation__list summary{cursor:pointer;color:var(--ink-2);font-size:.875rem}.constellation__list input{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;width:100%;min-height:36px;margin-top:8px;padding:0 10px}.constellation__list button{justify-content:space-between;gap:8px;display:flex}.constellation__src code{font-family:var(--font-mono);font-size:.85em}
