*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font: "Inter", system-ui, sans-serif;--bg: #07090f;--bg-2: #0b0e17;--surface: #0f1420;--surface-2:#141c2e;--border: rgba(255,255,255,.07);--border-strong: rgba(255,255,255,.13);--text: #dde8ff;--text-2: #7a8fad;--text-muted: #3a4d6a;--accent: #00e5ff;--accent-dim: rgba(0,229,255,.12);--accent-glow: 0 0 18px rgba(0,229,255,.35);--success: #00ffa3;--success-bg: rgba(0,255,163,.1);--danger: #ff3b6b;--danger-bg: rgba(255,59,107,.1);--header-h: 52px;--sidebar-w: 180px;--radius: 10px;--radius-lg: 14px;--content-max: 860px}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 15% 40%,rgba(0,229,255,.03) 0%,transparent 55%),radial-gradient(ellipse at 85% 15%,rgba(0,255,163,.02) 0%,transparent 50%);z-index:0}.app-shell{display:flex;flex-direction:column;min-height:100vh;position:relative;z-index:1}.app-header{position:fixed;top:0;left:0;right:0;height:var(--header-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 16px 0 20px;gap:0;z-index:60}.header-logo{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800;letter-spacing:.06em;color:var(--text);text-decoration:none;margin-right:20px;flex-shrink:0;padding-right:20px;border-right:1px solid var(--border)}.logo-mark{width:28px;height:28px;background:var(--accent);border-radius:7px;display:flex;align-items:center;justify-content:center;color:#000;font-size:14px;font-weight:900;box-shadow:var(--accent-glow);flex-shrink:0}.header-config{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.header-config-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-weight:600;white-space:nowrap;flex-shrink:0}.header-config-select{font-size:13px;font-family:var(--font);font-weight:500;padding:5px 28px 5px 10px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg-2);color:var(--text);outline:none;cursor:pointer;min-width:100px;max-width:180px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 3.5L9 1' stroke='%237a8fad' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .15s}.header-config-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.header-live-badge{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--success);background:var(--success-bg);padding:3px 8px;border-radius:100px;white-space:nowrap;flex-shrink:0}.header-live-other{font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.header-right{display:flex;align-items:center;gap:12px;margin-left:auto;padding-left:16px;border-left:1px solid var(--border);flex-shrink:0}.header-user{font-size:12px;color:var(--text-2);white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.header-menu-btn{display:none;background:none;border:none;color:var(--text-2);cursor:pointer;padding:6px;border-radius:8px;margin-right:4px;flex-shrink:0}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:49;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-overlay.open{display:block}.sidebar{width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:var(--header-h);left:0;bottom:0;z-index:50;transition:transform .25s cubic-bezier(.4,0,.2,1);overflow-y:auto;overflow-x:hidden}.sidebar-section{padding:16px 12px 5px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.nav-item{display:flex;align-items:center;gap:9px;padding:9px 10px;margin:2px 6px;border-radius:var(--radius);font-size:13px;color:var(--text-2);cursor:pointer;border:1px solid transparent;background:none;width:calc(100% - 12px);text-align:left;transition:all .15s;flex-shrink:0}.nav-item:hover{background:var(--accent-dim);color:var(--text)}.nav-item.active{background:var(--accent-dim);color:var(--accent);font-weight:600;border-color:#00e5ff33}.nav-icon{font-size:14px;flex-shrink:0}.sidebar-footer{margin-top:auto;padding:12px;border-top:1px solid var(--border);flex-shrink:0}.body-shell{display:flex;flex:1;padding-top:var(--header-h)}.main{margin-left:var(--sidebar-w);flex:1;min-width:0}.page-header{padding:28px 32px 0;display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:16px;max-width:var(--content-max)}.page-title{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.page-sub{font-size:13px;color:var(--text-muted);margin-top:3px}.page-content{padding:0 32px 48px;max-width:var(--content-max)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px;margin-bottom:16px;transition:border-color .2s}.card:hover{border-color:var(--border-strong)}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px;transition:border-color .2s}.metric-card:hover{border-color:#00e5ff40}.metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:700;margin-bottom:8px}.metric-val{font-size:28px;font-weight:700;color:var(--text);letter-spacing:-.03em;line-height:1}.metric-sub{font-size:11px;color:var(--text-muted);margin-top:5px}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-family:var(--font);font-weight:500;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0}.btn:hover{color:var(--text);border-color:var(--border-strong)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#000;font-weight:700}.btn-primary:hover{filter:brightness(1.1);box-shadow:var(--accent-glow)}.btn-danger{background:var(--danger-bg);border-color:transparent;color:var(--danger)}.btn-danger:hover{background:#ff3b6b2e}.btn-sm{padding:5px 12px;font-size:12px}.btn-icon{padding:7px;border-radius:8px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);margin-bottom:7px}.input{width:100%;padding:9px 13px;font-size:14px;font-family:var(--font);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-2);color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input::placeholder{color:var(--text-muted)}select.input{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 3.5L9 1' stroke='%237a8fad' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;padding-right:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.slider-row{display:grid;grid-template-columns:140px minmax(80px,260px) 44px;align-items:center;gap:14px;padding:9px 0}.slider-label{font-size:13px;color:var(--text-2)}.slider-val{font-size:13px;font-weight:700;text-align:right;color:var(--accent);font-variant-numeric:tabular-nums}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:var(--border-strong);outline:none;width:100%;cursor:pointer;touch-action:pan-x;position:relative;z-index:1}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid var(--bg);box-shadow:0 0 8px #00e5ff8c;transition:box-shadow .15s}input[type=range]:hover::-webkit-slider-thumb{box-shadow:0 0 16px #00e5ffcc}input[type=range]:disabled{opacity:.3;cursor:not-allowed}.list-item{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;background:var(--bg-2);transition:border-color .15s;gap:12px}.list-item:hover{border-color:var(--border-strong)}.list-item-actions{display:flex;gap:6px;flex-shrink:0}.badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:100px;letter-spacing:.03em}.badge-success{background:var(--success-bg);color:var(--success)}.badge-accent{background:var(--accent-dim);color:var(--accent)}.badge-muted{background:#ffffff0d;color:var(--text-muted)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.status{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2)}.dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-on{background:var(--success);box-shadow:0 0 7px #00ffa3b3;animation:pulse-dot 2.2s ease-in-out infinite}.dot-off{background:var(--text-muted)}@keyframes pulse-dot{0%,to{box-shadow:0 0 4px #00ffa366}50%{box-shadow:0 0 12px #00ffa3e6}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tab-btn{padding:6px 13px;font-size:12.5px;font-weight:500;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-2);color:var(--text-2);cursor:pointer;transition:all .15s}.tab-btn.active{background:var(--accent-dim);border-color:#00e5ff4d;color:var(--accent);font-weight:700}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-wrap:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 30% 50%,rgba(0,229,255,.05) 0%,transparent 55%),radial-gradient(ellipse at 80% 20%,rgba(0,255,163,.03) 0%,transparent 50%)}.login-card{width:390px;max-width:calc(100vw - 32px);position:relative;z-index:1}.login-logo{display:flex;align-items:center;gap:11px;font-size:22px;font-weight:900;letter-spacing:.05em;color:var(--text);margin-bottom:32px}.login-tabs{display:flex;margin-bottom:22px;border-bottom:1px solid var(--border)}.login-tab{flex:1;text-align:center;padding:9px;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.login-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.error-msg{color:var(--danger);font-size:12px;margin-top:8px}.empty{text-align:center;padding:44px 24px;color:var(--text-muted);font-size:14px}.config-editor{margin-top:20px}.config-selector{margin-bottom:20px;display:flex;gap:10px;align-items:center}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}@media (max-width: 768px){.header-menu-btn{display:flex}.header-user,.header-config-label,.header-live-other{display:none}.header-right{border-left:none;padding-left:8px}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:8px 0 32px #0009}.main{margin-left:0}.page-header{padding:20px 16px 0;flex-wrap:wrap;gap:12px;margin-bottom:16px;max-width:100%}.page-content{padding:0 16px 32px;max-width:100%}.metric-grid{grid-template-columns:repeat(3,1fr);gap:8px}.metric-card{padding:13px 11px}.metric-val{font-size:22px}.slider-row{grid-template-columns:100px minmax(60px,200px) 40px;gap:10px}.card{padding:15px 16px}.list-item{flex-wrap:wrap;gap:10px}.list-item>div:first-child{flex:1 1 100%}.list-item-actions{width:100%}}@media (max-width: 480px){.metric-grid{grid-template-columns:1fr 1fr}.btn{padding:7px 13px}.header-config-select{max-width:130px}}
