:root{--bg: #05050a;--surface: #090910;--border: #14141c;--border-hover: #1c1c26;--text: #9090a0;--text-muted: #545468;--text-heading: #c8c8d8;--accent: #4a88f0;--green: #2a944a;--yellow: #b08828;--red: #cc4454;--radius: 10px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh}.app{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--surface);border-right:1px solid var(--border);padding:1rem;flex-shrink:0}.sidebar h2{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;opacity:.7}.sidebar a{display:block;padding:.4rem .5rem;color:var(--text);text-decoration:none;border-radius:6px;font-size:.85rem;margin-bottom:.12rem}.sidebar a:hover,.sidebar a.active{background:var(--border);color:var(--text-heading)}.main{flex:1;padding:1.5rem;min-width:0}.topbar{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.topbar h1{font-size:1.2rem;color:var(--text-heading);margin-right:auto}.search{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.5rem .75rem;color:var(--text);font-size:.85rem;width:280px;outline:none}.search:focus{border-color:var(--accent)}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}table{width:100%;border-collapse:collapse;font-size:.85rem}th{text-align:left;padding:.6rem .75rem;color:var(--text-muted);font-weight:500;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;background:transparent;border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;opacity:.6}th:hover{color:var(--text);opacity:.9}td{padding:.5rem .75rem;border-bottom:1px solid var(--border);opacity:.85}tr:hover td{background:transparent;opacity:1}tr:last-child td{border-bottom:none}.status{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem}.dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.dot-active{background:var(--green);animation:pulse 2s infinite}.dot-paused{background:var(--yellow)}.dot-error{background:var(--red)}.dot-offline{background:var(--text-muted)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.btn{background:var(--border);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.35rem .7rem;cursor:pointer;font-size:.8rem;text-decoration:none;display:inline-block;transition:background .15s}.btn:hover{background:var(--border-hover)}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.filters{display:none}.chip{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:.2rem .65rem;font-size:.75rem;cursor:pointer;transition:all .15s;opacity:.7}.chip:hover,.chip.active{border-color:var(--accent);color:var(--text-heading);opacity:1}.overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:100}.overlay.open{display:block}.slideover{position:fixed;top:0;right:0;width:420px;max-width:90vw;height:100%;background:var(--surface);border-left:1px solid var(--border);z-index:101;transform:translate(100%);transition:transform .2s ease;overflow-y:auto;padding:1.5rem}.slideover.open{transform:translate(0)}.slideover h3{font-size:1.1rem;color:var(--text-heading);margin-bottom:1rem}.slideover .row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.85rem}.slideover .row:last-child{border-bottom:none}.slideover .row .label{color:var(--text-muted)}.slideover .actions{margin-top:1rem;display:flex;gap:.5rem}.empty{text-align:center;padding:3rem;color:var(--text-muted)}.empty h3{font-size:1.2rem;color:var(--text-heading);margin-bottom:.5rem}.loading{text-align:center;padding:2rem;color:var(--text-muted)}.dropdown-menu-fixed{position:fixed;min-width:190px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0009;overflow:hidden}.dropdown-menu-fixed a{display:block;padding:.45rem .75rem;color:var(--text);text-decoration:none;font-size:.8rem;white-space:nowrap}.dropdown-menu-fixed a:hover{background:var(--border);color:var(--text-heading)}@media (max-width: 1024px){.sidebar{display:none}.app{flex-direction:column}.main{padding:.75rem}.topbar{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.topbar h1{width:100%;font-size:1.1rem}.search{width:100%;font-size:16px}.filters,table,.table-wrap{display:none}.slideover{width:100%;max-width:100%}}
