.track-view-selector {display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}
.track-view-selector button {border:1px solid var(--line,#344155);background:var(--surface,#182331);color:inherit;padding:.45rem .7rem;border-radius:6px;cursor:pointer;font:inherit}
.track-view-selector button[aria-pressed=true] {background:#164e63;border-color:#38bdf8;color:#e0f2fe}
.track-3d-slot {position:relative;min-height:400px;flex:1;display:flex;overflow:hidden;background:#121c27;border:1px solid var(--line,#344155);border-radius:8px}
.track-3d-viewport {position:relative;min-width:0;min-height:400px;width:100%;height:100%;flex:1;isolation:isolate}
.track-3d-canvas,.track-3d-alternate {position:absolute;inset:0;overflow:hidden}
.track-3d-viewport canvas {display:block;width:100%;height:100%;touch-action:none}
.track-3d-viewport [hidden] {display:none!important}
.track-3d-tools {position:absolute;top:10px;left:10px;z-index:3;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.track-3d-tools button {background:#172535e8;color:#e6eef7;border:1px solid #5a6e84;border-radius:5px;padding:6px 9px;font:inherit;cursor:pointer}
.track-3d-tools span {background:#172535e8;color:#d6e3f0;border-radius:5px;padding:6px 9px;font-size:.78rem}
.track-3d-notice {position:absolute;bottom:8px;left:10px;right:10px;z-index:3;pointer-events:none;font-size:.75rem;color:#e2e8f0;text-shadow:0 1px 3px #000;background:#101c2ad9;border-radius:4px;padding:5px 8px}
.track-3d-loading {position:absolute;inset:0;display:grid;place-content:center;gap:.7rem;text-align:center;z-index:4;padding:2rem;background:#101b2bea;color:#e2e8f0}
.track-3d-loading button {margin:auto;padding:.5rem .8rem;border-radius:5px;border:1px solid #38bdf8;background:#164e63;color:white;cursor:pointer}
.track-3d-labels {position:absolute;inset:0;pointer-events:none;overflow:hidden}
.track-3d-label {position:absolute;left:0;top:0;background:#101b2be8;border:1px solid #64748b;border-radius:4px;color:#f8fafc;font-size:11px;padding:3px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;height:25px;pointer-events:auto;cursor:pointer}
.track-3d-leaders {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;stroke-width:1}
.track-3d-label.selected {border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf8}
.track-3d-label.stale {color:#cbd5e1;border-style:dashed}
.track-gateway-summary {display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-size:.8rem;padding:.5rem .7rem;border:1px solid var(--line,#344155);border-radius:6px}
.track-gateway-summary span {display:inline-flex;align-items:center;gap:.35rem}
.track-gateway-summary i {height:7px;width:7px;border-radius:50%;background:#64748b}
.track-gateway-summary .online i {background:#22c55e}.track-gateway-summary .degraded i {background:#f59e0b}
.track-row-measures {display:flex;flex-wrap:wrap;gap:.3rem .6rem;font-size:.7rem;color:var(--muted,#b5c1d0);font-style:normal}
.track-3d-hud {position:absolute;right:12px;bottom:38px;z-index:2;pointer-events:none;color:#dbeafe;font-size:11px}
.track-3d-hud .scale {display:block;border-bottom:2px solid currentColor;min-width:35px;text-align:center}
