@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600&display=swap";:root{font-family:Space Grotesk,Inter,system-ui,-apple-system,sans-serif;color:#e7ecff;background-color:#050710;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 30% 30%,rgba(73,114,255,.12),transparent 35%),radial-gradient(circle at 70% 60%,rgba(129,96,255,.12),transparent 30%),#050710;color:#e7ecff}#app{position:relative;min-height:100vh}.app-shell{position:relative;width:100vw;height:100vh;overflow:hidden}#scene-container{position:absolute;inset:0}.ui-overlay{position:absolute;inset:0;pointer-events:none;transition:opacity .4s ease;opacity:0}.ui-overlay.revealed{opacity:1}.controls{position:absolute;left:50%;bottom:24px;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:12px 16px;background:#04060cb3;border:1px solid rgba(255,255,255,.08);border-radius:14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 16px 60px #00000059;pointer-events:auto}.control-group{display:grid;gap:6px}.control-group label{font-size:12px;letter-spacing:.02em;color:#a8b6ff}.slider-row{display:flex;align-items:center;gap:8px}input[type=range]{accent-color:#78c7ff;width:160px}button{border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#e7ecff;padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:600;letter-spacing:.01em;transition:background .2s ease,border-color .2s ease,transform .15s ease}button:hover{background:#ffffff24;border-color:#ffffff52}button:active{transform:translateY(1px)}button.ghost{border-color:#78c7ff73;background:linear-gradient(120deg,#67d9ff24,#9875ff1f)}button.flash{box-shadow:0 0 24px #78c7ff8c}.toggle{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#c8d4ff}.legend{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:#c8d4ff}.legend-item{display:inline-flex;align-items:center;gap:6px}.dot{display:inline-block;width:10px;height:10px;border-radius:999px;box-shadow:0 0 12px currentColor}.dot.active{color:#67d9ff}.dot.moderate{color:#88a5ff}.dot.quiet{color:#9b8bff}.detail-panel{position:absolute;top:20px;right:20px;width:min(320px,90vw);background:#070a14b8;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px 16px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;box-shadow:0 20px 50px #00000073}.detail-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#f2f4ff}.detail-pill{font-size:11px;padding:3px 7px;border-radius:999px;background:#67d9ff24;border:1px solid rgba(103,217,255,.3);color:#9bdeff}.detail-body{margin-top:10px;display:grid;gap:8px}.detail-row{display:flex;justify-content:space-between;font-size:14px;color:#cfd7ff}.detail-row .label{color:#9cadff}.detail-placeholder{margin:0;color:#94a1d8;font-size:14px}.detail-dot{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:10px;text-transform:capitalize;font-weight:600}.detail-dot.active{background:#67d9ff1f;color:#67d9ff;border:1px solid rgba(103,217,255,.35)}.detail-dot.moderate{background:#88a5ff1f;color:#88a5ff;border:1px solid rgba(136,165,255,.35)}.detail-dot.quiet{background:#9b8bff1f;color:#9b8bff;border:1px solid rgba(155,139,255,.35)}.live-status{position:absolute;top:14px;left:16px;padding:6px 10px;border-radius:10px;font-size:12px;font-weight:600;letter-spacing:.02em;background:#0a0e16c2;border:1px solid rgba(103,217,255,.18);color:#a9e8ff;box-shadow:0 12px 30px #00000059;pointer-events:auto}.live-status.ok{border-color:#67d9ff59;color:#67d9ff}.live-status.warn{border-color:#ffc76659;color:#ffc766}.live-status.err{border-color:#ff808059;color:#ff9b9b}.live-status.mock{border-color:#9b8bff59;color:#c7b7ff}@keyframes labelPulse{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1)}}@media(max-width:720px){.controls{flex-direction:column;align-items:flex-start;gap:10px;bottom:16px}.legend{flex-wrap:wrap}.detail-panel{right:12px;left:12px;width:auto}}
