.galaxy{height:100%;min-height:0;display:flex;flex-direction:column;background:var(--surface-base);color:var(--text-primary);font-family:var(--font-sans);overflow:hidden}.galaxy *{box-sizing:border-box}.galaxy button{cursor:pointer;border-radius:0}.galaxy-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border-soft);font:.75rem var(--font-mono);letter-spacing:.06em;z-index:2}.galaxy-muted,.galaxy-kicker{color:var(--text-muted)}.galaxy-toolbar>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.galaxy-toolbar button{min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--border-soft);background:var(--surface-raised);color:var(--text-primary);font:.75rem var(--font-mono)}.galaxy-toolbar button:hover{border-color:var(--secondary)}.galaxy-body{display:grid;grid-template-columns:minmax(0,1fr) 240px;flex:1;min-height:0}.galaxy-viewport{position:relative;overflow:hidden;touch-action:none;cursor:grab;isolation:isolate}.galaxy-viewport:active{cursor:grabbing}.galaxy-nebula{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 35% 55%,color-mix(in srgb,var(--secondary) 13%,transparent),transparent 65%),radial-gradient(ellipse at 75% 25%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 55%)}.galaxy-routes{position:absolute;inset:0;pointer-events:none}.galaxy-orbit{fill:none;stroke:var(--secondary);stroke-opacity:.07;stroke-dasharray:3 12;vector-effect:non-scaling-stroke}.galaxy-dust{fill:var(--text-primary);opacity:.24}.galaxy-route{stroke:var(--secondary);stroke-width:1;stroke-opacity:.22;vector-effect:non-scaling-stroke;transition:stroke-opacity .2s}.galaxy-route.is-active{stroke-opacity:.85;stroke-width:1.5}.galaxy-route.is-dim{stroke-opacity:.045}.galaxy .galaxy-star{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;padding:0;display:grid;place-items:center;border:0;background:transparent;color:var(--text-primary);z-index:1;translate:none!important;scale:none!important;opacity:1;transition:opacity .2s!important}.galaxy-star-core{display:block;width:5px;height:5px;border-radius:50%;background:var(--secondary);box-shadow:0 0 8px color-mix(in srgb,var(--secondary) 55%,transparent)}.galaxy-star--project .galaxy-star-core{width:10px;height:10px;background:var(--text-primary);box-shadow:0 0 5px var(--text-primary),0 0 18px var(--secondary);outline:1px solid color-mix(in srgb,var(--secondary) 50%,transparent);outline-offset:5px}.galaxy-star--experiment .galaxy-star-core{width:8px;height:8px;border-radius:0;transform:rotate(45deg);background:var(--text-secondary)}.galaxy .galaxy-star.is-dim{opacity:.2}.galaxy .galaxy-star.is-active{z-index:3}.galaxy-star.is-selected .galaxy-star-core{outline:1px solid var(--secondary);outline-offset:10px}.galaxy-star-label{position:absolute;left:32px;top:16px;max-width:145px;width:max-content;text-align:left;padding:2px 4px;font:500 .75rem var(--font-headline);line-height:1.25;color:var(--text-secondary);background:color-mix(in srgb,var(--surface-base) 78%,transparent);opacity:0;pointer-events:none}.galaxy-star-label.is-visible{opacity:1}.galaxy-star.is-active .galaxy-star-label{color:var(--text-primary)}.galaxy-legend{position:absolute;left:14px;bottom:12px;pointer-events:none;font:.75rem/1.8 var(--font-mono);color:var(--text-secondary);background:color-mix(in srgb,var(--surface-base) 85%,transparent);z-index:4;padding:4px 8px}.galaxy-legend span{color:var(--text-muted)}.galaxy-inspector{min-height:0;overflow:auto;border-left:1px solid var(--border-soft);padding:18px;background:var(--surface-base)}.galaxy-inspector label,.galaxy-kicker{display:block;margin-bottom:10px;font:.75rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.galaxy-inspector input{width:100%;min-height:44px;background:var(--surface-raised);border:1px solid var(--border-soft);color:var(--text-primary);padding:8px;font:.875rem var(--font-sans);border-radius:0}.galaxy-details{padding:22px 0}.galaxy-details h2{margin:8px 0;font:700 1.25rem var(--font-headline)}.galaxy-details p,.galaxy-results p{font:.875rem/1.6 var(--font-sans);color:var(--text-secondary)}.galaxy a.galaxy-open{display:flex;width:100%}.galaxy-results{padding-top:16px;border-top:1px solid var(--border-soft)}.galaxy-results button{width:100%;display:block;text-align:left;padding:10px 6px;min-height:44px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;color:var(--text-secondary);font:.875rem var(--font-sans)}.galaxy-results button:hover{color:var(--secondary)}.galaxy-results small{display:block;margin-top:4px;color:var(--text-muted);font:.75rem var(--font-mono)}@media(max-width:640px){.galaxy-body{grid-template-columns:1fr;grid-template-rows:minmax(280px,1fr) 230px;overflow:auto}.galaxy-inspector{border-left:0;border-top:1px solid var(--border-soft);padding:12px}.galaxy-toolbar{padding:6px 10px}.galaxy-muted{display:none}.galaxy-star-label{max-width:105px}}@media(prefers-reduced-motion:reduce){.galaxy .galaxy-star,.galaxy-route{transition:none!important}}.galaxy-transmission{stroke:var(--secondary);stroke-width:2;stroke-dasharray:5 95;stroke-linecap:round;stroke-opacity:.9;vector-effect:non-scaling-stroke;animation:galaxy-transmit 3s linear infinite}@keyframes galaxy-transmit{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.galaxy-star.is-selected:before{content:"";position:absolute;inset:6px;border:1px solid var(--secondary);border-radius:50%;pointer-events:none;animation:galaxy-lock 2.8s ease-out infinite}@keyframes galaxy-lock{0%{transform:scale(.65);opacity:.8}80%,to{transform:scale(1.6);opacity:0}}.galaxy-details{animation:galaxy-inspect .3s ease-out both}@keyframes galaxy-inspect{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.galaxy-star-label{transition:opacity .22s}.galaxy[data-paused] .galaxy-transmission,.galaxy[data-paused] .galaxy-star:before,.galaxy[data-paused] .galaxy-details{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.galaxy-transmission{display:none}.galaxy-star.is-selected:before,.galaxy-details{animation:none}.galaxy-star-label{transition:none}}.galaxy-star:focus-visible{opacity:1!important;z-index:5}.galaxy-star:focus-visible .galaxy-star-label{opacity:1}.transmission-lab{height:100%;min-width:0;overflow:auto;background:var(--surface-base);color:var(--text-primary);font:.875rem/1.6 var(--font-sans)}.transmission-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid var(--border-medium)}.transmission-controls{display:flex;gap:.5rem}.transmission-controls .transmission-playback{width:7rem;flex:none}.transmission-controls .transmission-speed{width:8rem;flex:none;font-variant-numeric:tabular-nums}.transmission-workspace{display:grid;grid-template-columns:minmax(0,1fr) 20rem}.transmission-map{position:sticky;top:0;align-self:start;min-width:0;display:flex;align-items:center;min-height:30rem;overflow:hidden;background-image:linear-gradient(var(--border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--border-subtle) 1px,transparent 1px);background-size:40px 40px}.transmission-map svg{width:100%;display:block;color:var(--secondary);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.transmission-map-board{position:relative;width:100%}.transmission-trace{stroke:var(--accent);stroke-width:5;opacity:.7}.transmission-node-control{position:absolute;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;transform:translate(-50%,-50%)!important;transition:none}.transmission-node-control span{width:12px;height:12px;background:var(--secondary);border:2px solid var(--surface-base);outline:1px solid var(--secondary)}.transmission-node-control[aria-pressed=true] span{background:var(--accent);outline:2px solid var(--accent)}.transmission-node-control:hover span{outline-width:3px}.transmission-node-control:focus-visible{outline:2px solid var(--secondary);outline-offset:0}.transmission-detection{stroke:var(--semantic-error);opacity:0;transform-box:fill-box;transform-origin:center}.transmission-quarantine{stroke:var(--accent);stroke-width:3;stroke-dasharray:8 5;opacity:0}.transmission-select-label{display:grid;gap:.35rem;margin:.75rem 0;font:.75rem var(--font-mono)}.transmission-select-label select{width:100%;min-width:0;font-family:var(--font-sans)}.transmission-routes{opacity:.3}.transmission-wire{opacity:.25}.transmission-packet{opacity:0;stroke-dasharray:5 105;stroke-dashoffset:5;stroke-width:4}.transmission-pulse{opacity:0;transform-box:fill-box;transform-origin:center}.transmission-node{fill:var(--secondary)}.transmission-map text{fill:var(--text-secondary);stroke:none;font:24px var(--font-mono)}.transmission-probe{stroke:var(--semantic-error)}.transmission-guard{stroke:var(--accent)}.transmission-map[data-feature=traffic] .transmission-incidents,.transmission-map[data-feature=branch] .transmission-incidents,.transmission-map[data-feature=intercept] .transmission-secure,.transmission-map[data-feature=intercept] .transmission-branches{opacity:.3}.transmission-map-status{position:absolute;left:1rem;bottom:.5rem;font:.75rem var(--font-mono);color:var(--text-secondary)}.transmission-inspector{min-width:0;padding:1.25rem;border-left:1px solid var(--border-medium)}.transmission-inspector h2{margin:0 0 1rem;font:700 1.125rem var(--font-headline)}.transmission-inspector h3{font:700 .875rem var(--font-headline);margin:1.5rem 0 .75rem}.transmission-feature-list{display:grid;gap:.5rem}.transmission-feature-list [aria-pressed=true]{border-color:var(--secondary);box-shadow:inset 3px 0 var(--secondary)}.transmission-inspector p{color:var(--text-secondary)}.transmission-copy{display:grid}.transmission-copy>p{grid-area:1 / 1;margin:1rem 0}.transmission-copy>p[aria-hidden=true]{visibility:hidden}.transmission-inspector .transmission-note{font-size:.75rem}.transmission-event-log{height:17rem;overflow:auto;scrollbar-gutter:stable;padding:0;list-style:none;font:.75rem/1.6 var(--font-mono);color:var(--text-secondary)}.transmission-event-log li{border-top:1px solid var(--border-subtle);padding:.5rem 0}@media(max-width:900px){.transmission-workspace{grid-template-columns:1fr}.transmission-map{position:relative;top:auto;min-height:0;padding:1rem 0 3rem}.transmission-inspector{border-left:0;border-top:1px solid var(--border-medium)}}
