.connection-panel{background:color-mix(in srgb,var(--surface) 70%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:32px 28px;border-radius:20px;box-shadow:0 16px 40px #0006,inset 0 1px #ffffff1a;color:var(--text);width:100%;max-width:360px;border:1px solid var(--border);margin-bottom:2rem;position:relative}.connection-panel h2{margin-top:0;margin-bottom:24px;text-align:center;color:var(--text);font-size:1.4rem;font-weight:700;letter-spacing:.5px}.connection-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.6rem;position:relative}.form-group label{font-weight:600;color:var(--text-2);font-size:.8rem;text-transform:uppercase;letter-spacing:1px}.form-group input[type=text],.form-group input[type=password],.form-group input[type=number],.form-group select{padding:12px 16px;border:1px solid var(--border);border-radius:10px;font-size:.95rem;background-color:color-mix(in srgb,var(--bg) 60%,transparent);color:var(--text);transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--mint);background-color:color-mix(in srgb,var(--bg) 80%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--mint) 15%,transparent)}.form-group input:disabled,.form-group select:disabled{background-color:color-mix(in srgb,var(--text) 4%,transparent);color:var(--text-3);cursor:not-allowed;border-color:transparent}.error-message{padding:12px;background:#e74c3c1a;color:#ff6b6b;border-radius:10px;border:1px solid rgba(231,76,60,.2);font-size:.9rem;text-align:center}.form-actions{display:flex;gap:12px;margin-top:16px}.btn-primary,.btn-secondary{flex:1;padding:12px;border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px #00000026}.btn-primary{background:linear-gradient(135deg,var(--mint),color-mix(in srgb,var(--mint) 70%,var(--bg)));color:var(--on-accent)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--mint) 30%,transparent)}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{background:#ffffff1a;color:var(--text-3);cursor:not-allowed;box-shadow:none}.btn-secondary{background:linear-gradient(135deg,var(--coral),color-mix(in srgb,var(--coral) 70%,var(--bg)));color:var(--on-accent)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--coral) 30%,transparent)}.btn-secondary:active{transform:translateY(1px)}.connection-status{display:flex;align-items:center;gap:10px;padding:10px;background:#2ecc711a;color:#2ecc71;border-radius:6px;border:1px solid rgba(46,204,113,.3);font-weight:500;font-size:.9rem;justify-content:center}.status-indicator{width:10px;height:10px;border-radius:50%;background-color:#7f8c8d}.status-indicator.connected{background-color:#2ecc71;box-shadow:0 0 10px #2ecc7199;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}*{box-sizing:border-box;margin:0;padding:0}body,html,#root{width:100%;height:100%;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-color);color:var(--text-primary)}.app{width:100%;height:100%;position:relative;padding-bottom:80px}.dashboard-container{width:100%;height:100vh;padding:80px 20px 20px;background-color:var(--bg);background-image:none;color:var(--theme-text-soft);overflow-y:auto;overflow-x:auto;box-sizing:border-box}.dashboard-card{background:var(--glass-bg);border-radius:12px;overflow:hidden;border:1px solid var(--glass-border);box-shadow:var(--theme-shadow);transition:transform .2s,box-shadow .2s}.dashboard-card-header{height:32px;background:#ffffff05;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border-bottom:1px solid var(--theme-border);font-size:.8rem;font-weight:600;color:var(--theme-text-muted);text-transform:uppercase;letter-spacing:.5px}.phase-control-stack{display:flex;flex-direction:column;gap:12px}.phase-control-layout{display:grid;grid-template-columns:minmax(500px,1fr) minmax(700px,520px);gap:12px;align-items:start}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.status-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;padding:15px;margin-bottom:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-header h3{margin:0 0 15px;font-size:1.1rem;color:var(--theme-text-muted);font-weight:500}.status-grid-container{display:flex;flex-direction:column;overflow-x:auto}.grid-header-row,.grid-content-row{display:grid;grid-template-columns:repeat(32,minmax(25px,1fr));gap:4px}.grid-header-cell{text-align:center;font-size:.8rem;color:var(--text-muted);margin-bottom:5px}.grid-cell{display:flex;justify-content:center;align-items:center;height:60px;background:#0003;border-radius:4px}.signal-group-vertical{display:flex;flex-direction:column;gap:2px;padding:2px;background:#0006;border-radius:10px}.signal-light{width:12px;height:12px;border-radius:50%;background:#ffffff1a;transition:all .1s}.signal-light.red.active{background-color:#ff3b30;box-shadow:0 0 8px #ff3b30}.signal-light.yellow.active{background-color:#fc0;box-shadow:0 0 8px #fc0}.signal-light.green.active{background-color:#34c759;box-shadow:0 0 8px #34c759}@keyframes blink{0%,to{opacity:1}50%{opacity:.3;box-shadow:none}}.signal-light.flashing{animation:blink 1s infinite;will-change:opacity}.flashing-stroke{animation:blink-stroke 1s infinite;will-change:opacity,stroke-opacity}@keyframes blink-stroke{0%,to{opacity:.9;stroke-opacity:.9}50%{opacity:.3;stroke-opacity:.3}}.phase-table-grid{display:grid;grid-template-columns:110px repeat(32,minmax(50px,1fr));gap:3px;overflow-x:auto}.table-header-cell{text-align:center;padding:6px 4px;font-size:.78rem;color:var(--text-3);white-space:nowrap}.table-row-label{display:flex;align-items:center;justify-content:flex-end;padding-right:10px;font-size:.78rem;color:var(--text-2);font-weight:500;background:#ffffff08;border-right:3px solid rgba(255,255,255,.06)}.table-cell{min-height:32px;padding:2px;background:#0003;display:flex;align-items:center;justify-content:center;font-size:.78rem;color:var(--text);white-space:nowrap;overflow:hidden}.table-cell.active-green{background-color:#32cd64d9}.table-cell.active-red{background-color:#e63c3cd9}.table-cell.active-blue{background-color:#3c8ce6d9}.table-cell.active-purple{background-color:#b060e0d9}.table-cell.active-detector-blue{background-color:#3c8ce6d9;animation:detector-pulse-blue 1.5s ease-in-out infinite;box-shadow:0 0 12px #3c8ce699,inset 0 0 8px #ffffff26}.table-cell.active-detector-purple{background-color:#b060e0d9;animation:detector-pulse-purple 1.5s ease-in-out infinite;box-shadow:0 0 12px #b060e099,inset 0 0 8px #ffffff26}@keyframes detector-pulse-blue{0%,to{background-color:#3c8ce6d9;box-shadow:0 0 12px #3c8ce699,inset 0 0 8px #ffffff26}50%{background-color:#3c8ce680;box-shadow:0 0 20px #3c8ce6e6,inset 0 0 12px #ffffff40}}@keyframes detector-pulse-purple{0%,to{background-color:#b060e0d9;box-shadow:0 0 12px #b060e099,inset 0 0 8px #ffffff26}50%{background-color:#b060e080;box-shadow:0 0 20px #b060e0e6,inset 0 0 12px #ffffff40}}.table-cell.active-amber{background-color:#e8a33ad9;font-weight:700}.table-cell.active-teal{background-color:#40b8a8d9}.detector-box{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--text-primary);background:#0006;border-radius:2px}.detector-box.active{background:var(--accent-color);color:#fff;font-weight:700}.detector-box.active-ped{background:var(--theme-surface-raised);color:var(--text);font-weight:700}.map-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1000;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:16px}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--panel-radius);box-shadow:var(--theme-shadow);pointer-events:auto;padding:16px}.top-bar{display:flex;justify-content:space-between;align-items:center;width:100%;margin:0;padding:0 24px;position:fixed;top:0;left:0;height:60px;z-index:1001;pointer-events:auto;background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-2);border-radius:0;box-shadow:0 6px 18px -6px #00000073}.view-selector{display:flex;gap:10px;align-items:center}.search-box{display:flex;align-items:center;gap:12px}.side-dock{position:absolute;top:80px;right:16px;left:auto;display:flex;flex-direction:column;gap:12px;width:320px;max-height:calc(100% - 100px);overflow-y:auto}.bottom-bar{display:flex;gap:12px;width:100%;justify-content:center}button{background:transparent;border:1px solid transparent;color:var(--text-secondary);padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}button:hover{background:var(--accent-color);color:var(--on-accent);border-color:var(--accent-color);box-shadow:0 0 0 1px var(--theme-accent-border),0 10px 24px #1f5eff33}button.active{background:#1f5eff24;color:var(--theme-text-soft);border-color:var(--theme-accent-border);box-shadow:none}select,input{background:#141414e6;border:1px solid var(--glass-border);color:var(--text-primary);padding:8px;border-radius:4px;width:100%}input[type=checkbox],input[type=radio]{width:auto;padding:0;background:transparent;border:none;cursor:pointer;accent-color:var(--accent-color)}label{font-size:12px;color:var(--text-secondary);margin-bottom:4px;display:block}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0000001a}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:4px}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes flash-red{0%,to{background-color:#e63c3cd9}50%{background-color:#e63c3c26}}.table-cell.active-ped-clear{background-color:#e63c3cd9;color:#fff;font-weight:700;animation:flash-red 1s infinite;will-change:background-color}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:20px}.analysis-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--panel-radius);padding:20px;display:flex;flex-direction:column}.kpi-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px}.kpi-value{font-size:1.8rem;font-weight:700;color:var(--text-primary)}.kpi-label{font-size:.85rem;color:var(--text-secondary)}.analysis-table{width:100%;border-collapse:collapse;font-size:.9rem}.privacy-toggle{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:6px 10px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;margin-right:10px}.privacy-toggle:hover{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text);border-color:var(--border)}.analysis-table th{text-align:left;padding:12px;border-bottom:2px solid rgba(255,255,255,.1);color:var(--text-secondary);font-weight:600}.analysis-table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-primary)}.analysis-table tr:hover{background:#ffffff08}.analysis-dashboard{display:flex;flex-direction:column;gap:16px}.analysis-header-row h2{margin:0;font-size:1.5rem;font-weight:650}.analysis-header-sub{margin-top:6px;color:var(--text-muted);font-size:.85rem}.analysis-card-title{font-size:.95rem;font-weight:600;color:var(--text);margin-bottom:14px}.analysis-filter-card{gap:12px}.analysis-scope-toggle{display:flex;gap:8px;flex-wrap:wrap}.analysis-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px}.analysis-filter-grid label{display:flex;flex-direction:column;gap:6px;font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.analysis-filter-grid input{border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);padding:8px 10px;font-size:.92rem}.analysis-filter-grid input:disabled{opacity:.45;cursor:not-allowed}.analysis-filter-actions{display:flex;gap:10px;flex-wrap:wrap}.analysis-primary-btn,.analysis-secondary-btn,.analysis-danger-btn{border-radius:9px;border:1px solid transparent;font-size:.86rem;font-weight:600;padding:8px 14px;cursor:pointer;transition:all .2s ease}.analysis-primary-btn{background:var(--accent-color);color:var(--on-accent);border-color:var(--accent-color)}.analysis-primary-btn:hover{background:var(--accent-color);color:var(--on-accent);border-color:var(--accent-color);box-shadow:0 8px 20px color-mix(in srgb,var(--accent-color) 30%,transparent)}.analysis-secondary-btn{background:var(--surface);color:var(--text);border-color:var(--border)}.analysis-secondary-btn:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.analysis-danger-btn{background:color-mix(in srgb,var(--coral) 15%,transparent);color:var(--coral);border-color:color-mix(in srgb,var(--coral) 45%,transparent)}.analysis-danger-btn:hover{background:color-mix(in srgb,var(--coral) 26%,transparent);color:var(--coral);border-color:color-mix(in srgb,var(--coral) 55%,transparent)}.analysis-last-updated{margin-top:2px;font-size:.8rem;color:var(--text-muted)}.analysis-error{border-radius:10px;border:1px solid rgba(248,113,113,.45);background:#b91c1c33;color:#fecaca;padding:10px 12px;font-size:.9rem}.analysis-loading{border-radius:10px;border:1px solid rgba(59,130,246,.35);background:#1e40af29;color:#bfdbfe;padding:10px 12px;font-size:.9rem}.analysis-empty{height:100%;min-height:120px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);text-align:center;padding:8px}.analysis-kpi-grid .analysis-card{min-height:114px}.analysis-kpi-sub{margin-top:8px;font-size:.8rem;color:var(--text-muted)}.analysis-kpi-warning{margin-top:6px;display:inline-block;border-radius:999px;padding:2px 8px;font-size:.72rem;border:1px solid rgba(245,158,11,.4);color:#fcd34d}.analysis-main-grid{align-items:stretch}.analysis-chart-lg{min-height:260px}.analysis-table-wrap{overflow-x:auto}.analysis-empty-cell{text-align:center;color:var(--text-muted);padding:20px 10px}.analysis-link-btn{background:transparent;border:1px solid var(--border);border-radius:7px;color:var(--text-2);padding:4px 8px;font-size:.78rem;cursor:pointer}.analysis-link-btn:hover{border-color:var(--blue);color:var(--text)}.analysis-query-window{margin-top:12px;font-size:.82rem;color:var(--text-muted)}.analysis-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;display:flex;align-items:center;justify-content:center;padding:28px 16px;background:#030712c2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.analysis-modal{width:min(1120px,100%);max-height:90vh;overflow-y:auto;border-radius:16px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);padding:18px;box-shadow:0 24px 60px #0000007a;display:flex;flex-direction:column;gap:14px}.analysis-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.analysis-modal-header h3{margin:2px 0 0;font-size:1.4rem;color:var(--text)}.analysis-modal-eyebrow{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px}.analysis-modal-kpis .analysis-card{min-height:92px}.analysis-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px}.analysis-cycles-table-wrap{max-height:280px;overflow:auto}.signal-performance-root{position:relative}.signal-filter-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.signal-filter-grid select{border-radius:8px;border:1px solid rgba(255,255,255,.14);background:#141414e6;color:var(--text-primary);padding:8px 10px;font-size:.92rem}.signal-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px}.signal-checkbox-title{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.45px;margin-bottom:6px}.signal-checkbox-list{display:flex;flex-wrap:wrap;gap:8px}.signal-checkbox-list label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:.8rem;color:var(--text);background:var(--surface)}.signal-checkbox-list input{accent-color:var(--theme-accent)}.signal-loading-state{position:relative}.signal-heatmap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;max-height:330px;overflow:auto;padding-right:2px}.signal-heatmap-cell{border:1px solid rgba(125,211,252,.35);border-radius:10px;background:#0e749047;color:#e0f2fe;min-height:74px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:8px;cursor:pointer}.signal-heatmap-cell span{font-size:.75rem;color:#bae6fd}.signal-heatmap-cell strong{font-size:1rem;line-height:1}.signal-drilldown-drawer{position:fixed;right:18px;top:84px;bottom:58px;width:min(560px,calc(100vw - 36px));z-index:2600;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 24px 44px #0206177a;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px}.signal-drilldown-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.signal-drilldown-header h3{margin:0;font-size:1.05rem;color:var(--text)}.signal-cursor-toggle{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;color:var(--text-2)}.signal-debug-json{margin:0;border-radius:10px;background:#020617b3;border:1px solid rgba(148,163,184,.28);padding:10px;color:#bfdbfe;font-size:.75rem;max-height:220px;overflow:auto}.spark-bar-container{display:flex;align-items:flex-end;gap:2px;height:40px;margin-top:10px}.spark-bar{flex:1;background:var(--accent-color);border-radius:2px 2px 0 0;opacity:.6;transition:all .2s}.spark-bar:hover{opacity:1}.tab-button{background:transparent;border:1px solid transparent;color:var(--text-secondary);padding:8px 16px;border-radius:20px;cursor:pointer;font-weight:500}.tab-button.active{background:var(--surface-2);color:var(--text);border-color:var(--border)}.dashboard-tab{padding:6px 12px;font-size:11px;border-radius:20px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);cursor:pointer;transition:all .2s ease;font-weight:500}.dashboard-tab:hover{background:var(--surface-2);color:var(--text)}.dashboard-tab.active{background:var(--accent-color);color:var(--on-accent);border-color:var(--accent-color);box-shadow:0 2px 8px color-mix(in srgb,var(--accent-color) 28%,transparent)}.app-title{font-family:Orbitron,Inter,sans-serif;font-weight:700;font-size:28px;letter-spacing:2px;color:var(--text);background:none;-webkit-background-clip:unset;background-clip:unset;-webkit-text-fill-color:initial;text-shadow:none;display:flex;align-items:center}@media (max-width: 768px){.top-bar{height:auto;flex-direction:column;padding:10px 16px;gap:10px}.top-bar>div{width:100%;justify-content:space-between}.top-bar>div:first-child{flex-direction:column;align-items:flex-start;gap:10px}.view-selector{width:100%;overflow-x:auto;padding-bottom:5px;justify-content:flex-start}.app-title{font-size:20px}.dashboard-container{padding-top:130px}.connection-panel{width:90%;margin:0 auto}.phase-control-layout,.analysis-filter-grid{grid-template-columns:1fr}.analysis-filter-actions{flex-direction:column;align-items:stretch}.analysis-primary-btn,.analysis-secondary-btn,.analysis-danger-btn{width:100%}.analysis-main-grid,.analysis-modal-grid{grid-template-columns:1fr}.analysis-chart-lg{min-height:220px}.signal-filter-grid,.signal-checkbox-grid{grid-template-columns:1fr}.signal-drilldown-drawer{left:12px;right:12px;width:auto;top:120px;bottom:56px}}.channel-label-tooltip{background:#000000b3!important;border:none!important;border-radius:4px!important;padding:1px 4px!important;box-shadow:none!important;font-size:10px!important;color:#fff!important}.channel-label-tooltip:before{display:none!important}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0f141c;--surface: #161d28;--surface-2: #1e2735;--surface-3: #28313f;--border: #2c3a4d;--border-2: #3d4d63;--text: #e8edf4;--text-2: #a6b3c4;--text-3: #6c7889;--mint: #34d399;--iris: #a78bfa;--amber: #fbbf24;--coral: #fb7185;--blue: #60a5fa;--on-accent: #0f141c;--rota-bg: var(--bg);--rota-surface: var(--surface);--rota-surface-2: var(--surface-2);--rota-surface-3: var(--surface-3);--rota-border: var(--border);--rota-border-2: var(--border-2);--rota-text: var(--text);--rota-text-2: var(--text-2);--rota-text-3: var(--text-3);--rota-mint: var(--mint);--rota-iris: var(--iris);--rota-amber: var(--amber);--rota-coral: var(--coral);--rota-blue: var(--blue);--rota-on-accent: var(--on-accent);--theme-bg: var(--bg);--theme-surface: var(--surface);--theme-surface-raised: var(--surface-2);--theme-surface-soft: var(--surface-3);--theme-surface-strong: var(--surface-3);--theme-accent: var(--mint);--theme-accent-border: color-mix(in srgb, var(--accent-color) 45%, transparent);--theme-text: var(--text-2);--theme-text-soft: var(--text);--theme-text-muted: var(--text-3);--theme-border: var(--border);--theme-border-strong: var(--border-2);--theme-glow: color-mix(in srgb, var(--accent-color) 28%, transparent);--theme-shadow: 0 24px 64px rgba(0, 0, 0, .42);--primary: var(--mint);--primary-dark: var(--mint);--secondary: var(--surface-2);--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--dark: var(--bg);--dark-light: var(--surface);--gray: var(--text-3);--gray-light: var(--text-2);--bg-card: var(--surface);--bg-hover: var(--surface-2);--text-muted: var(--text-3);--accent-color: var(--mint);--glass-bg: color-mix(in srgb, var(--surface) 88%, transparent);--glass-border: color-mix(in srgb, var(--border) 55%, transparent);--accent-soft: color-mix(in srgb, var(--accent-color) 14%, transparent);--accent-softer: color-mix(in srgb, var(--accent-color) 8%, transparent);--accent-strong: color-mix(in srgb, var(--accent-color) 65%, transparent)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;background:radial-gradient(1200px 800px at 85% -8%,var(--accent-softer),transparent 60%),var(--bg);color:var(--text);min-height:100vh;scrollbar-color:color-mix(in srgb,var(--accent-color) 40%,var(--border)) transparent}::selection{background:color-mix(in srgb,var(--accent-color) 32%,transparent);color:var(--text)}:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-color) 70%,transparent);outline-offset:1px}[data-theme-mode=light] img[alt=ROTA]{filter:brightness(0) saturate(0)}code{font-family:Fira Code,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:color-mix(in srgb,var(--surface) 70%,transparent)}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent-color) 32%,var(--border));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent-color) 58%,var(--border))}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes connectedGlow{0%,to{opacity:1;box-shadow:0 0 12px #2ecc71}50%{opacity:.7;box-shadow:0 0 4px #2ecc71}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 8px currentColor,0 2px 4px #0000004d}50%{box-shadow:0 0 16px currentColor,0 2px 4px #0000004d}}.mib-table{width:100%;border-collapse:collapse;font-family:Fira Code,SF Mono,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5}.mib-table thead{position:sticky;top:0;z-index:10}.mib-table thead th{padding:10px 12px;text-align:left;font-weight:600;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--theme-text-soft);background:var(--theme-surface);border-bottom:1px solid var(--theme-border);white-space:nowrap;-webkit-user-select:none;user-select:none}.mib-table thead th:first-child{border-top-left-radius:4px}.mib-table thead th:last-child{border-top-right-radius:4px}.mib-table tbody tr{transition:background .15s ease;border-bottom:1px solid var(--theme-border);background:color-mix(in srgb,var(--surface) 88%,transparent)}.mib-table tbody tr:hover{background:var(--surface-2)!important}.mib-table tbody tr:last-child td:first-child{border-bottom-left-radius:4px}.mib-table tbody tr:last-child td:last-child{border-bottom-right-radius:4px}.mib-table tbody td{padding:8px 12px;color:var(--theme-text-soft);vertical-align:middle}.mib-cell-name{color:var(--theme-text)!important;font-weight:600}.mib-cell-oid{color:var(--text-3)!important;font-size:11px;font-family:Fira Code,monospace}.mib-cell-value{color:var(--theme-text)!important}.mib-cell-value-error{color:var(--coral)!important}.mib-cell-center{text-align:center!important}.mib-cell-readonly{color:var(--text-3)!important}.mib-cell-type{color:#e67e22!important}.mib-cell-access{color:#2ecc71!important}.mib-cell-desc{color:var(--text-3)!important;font-style:italic;font-family:Inter,sans-serif;max-width:300px}.mib-table .mib-sticky-left{position:sticky;left:0;z-index:5;border-right:1px solid var(--theme-border)}.mib-table thead .mib-sticky-left{z-index:11;background:var(--theme-surface)}.mib-table .mib-sticky-right{position:sticky;right:0;z-index:5}.mib-table thead .mib-sticky-right{z-index:12;background:var(--theme-surface)}.mib-table-matrix{font-size:11px}.mib-table-matrix thead th{padding:0}.mib-table-matrix thead th .mib-th-resize{resize:horizontal;overflow:hidden;padding:10px 8px;display:flex;align-items:center;height:100%}.mib-table-matrix tbody td{padding:6px 8px;border-left:1px solid var(--theme-border);vertical-align:top}.mib-table-matrix tbody tr:hover td.mib-sticky-left{background:var(--surface-2)!important}.mib-table-footer{padding:10px 14px;background:color-mix(in srgb,var(--surface) 88%,transparent);border-top:1px solid var(--theme-border);font-size:11px;color:var(--text-3);display:flex;align-items:center;gap:6px;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mib-table-footer span{opacity:.5}.mib-btn-edit{background:var(--theme-surface-raised);border:1px solid var(--theme-border);color:var(--theme-text-soft);padding:4px 10px;border-radius:4px;cursor:pointer;font-size:11px;font-family:inherit;transition:all .15s ease}.mib-btn-edit:hover{background:var(--theme-accent);color:var(--theme-text-soft);border-color:var(--theme-accent);box-shadow:0 0 8px var(--theme-glow)}.mib-btn-toggle{border:none;padding:4px 14px;border-radius:4px;cursor:pointer;font-weight:600;font-size:11px;font-family:inherit;width:80px;transition:all .15s ease}.mib-btn-toggle-on{background:linear-gradient(135deg,#059669,#10b981);color:#fff;box-shadow:0 0 8px #10b9814d}.mib-btn-toggle-off{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;box-shadow:0 0 8px #ef444433}.mib-select{background:var(--theme-surface-raised);border:1px solid var(--theme-border);color:var(--theme-text-soft);padding:5px 22px 5px 8px;border-radius:5px;font-size:11px;font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2395a5a6' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.mib-select:hover{border-color:var(--theme-border-strong)}.mib-select:focus{border-color:var(--theme-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-color) 22%,transparent)}.mib-select-edited{border-color:#f59e0b!important;color:#fbbf24!important;background-color:#f59e0b0f}.mib-input{background:transparent;border:1px solid transparent;color:var(--theme-text-soft);padding:5px 8px;border-radius:5px;text-align:center;font-family:inherit;font-size:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;width:100%}.mib-input:hover{border-color:var(--theme-accent-border);background:var(--accent-softer)}.mib-input:focus{border-color:var(--theme-accent);background:var(--accent-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-color) 18%,transparent)}.mib-input-edited{border-color:#f59e0b!important;color:#fbbf24!important;background:#f59e0b0f!important}.mib-input-readonly{cursor:default;border-color:transparent!important;background:transparent!important}.mib-badge{display:inline-block;font-size:10px;padding:2px 7px;border-radius:10px;white-space:nowrap;font-weight:600;letter-spacing:.3px}.mib-badge-green{background:#2ecc711f;color:#2ecc71;border:1px solid rgba(46,204,113,.2)}.mib-badge-blue{background:var(--accent-soft);color:var(--theme-accent);border:1px solid var(--theme-accent-border)}.mib-badge-binary{background:#38bdf81a;color:#38bdf8;margin-left:10px}.mib-checkbox{width:16px;height:16px;accent-color:var(--theme-accent);cursor:inherit}.mib-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mib-loading-pill{color:var(--theme-text-soft);background:var(--theme-surface);padding:12px 24px;border-radius:8px;box-shadow:0 8px 24px #0006,0 0 0 1px var(--theme-border);display:flex;align-items:center;gap:10px;font-size:13px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mib-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--theme-accent);border-radius:50%;animation:spin .8s linear infinite}.mib-spinner-sm{width:14px;height:14px}.rota-el-wrap{pointer-events:auto}.rota-el-badge{visibility:hidden}.rota-el-wrap:hover .rota-el-badge,.rota-tags-always .rota-el-badge{visibility:visible}
