:root{--bg:#0b0f14;--bg-panel:#121822;--bg-elev:#18202c;--bg-input:#0e141c;--border:#222c3a;--border-strong:#33415a;--text:#e6edf3;--text-dim:#9aa7b5;--text-faint:#6b7787;--accent:#3ea6ff;--accent-dim:#1e6fbf;--good:#34d399;--good-dim:#10633f;--warn:#fbbf24;--danger:#f87171;--danger-dim:#7f1d1d;--radius:10px;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{border-bottom:1px solid var(--border);background:linear-gradient(180deg, var(--bg-panel), var(--bg));z-index:10;align-items:center;gap:16px;padding:14px 24px;display:flex;position:sticky;top:0}.brand{letter-spacing:.2px;align-items:center;gap:10px;font-weight:650;display:flex}.brand .dot{background:var(--good);width:9px;height:9px;box-shadow:0 0 10px var(--good);border-radius:50%}.brand small{font-family:var(--mono);color:var(--text-faint);font-size:12px;font-weight:400}.app-header .spacer{flex:1}.who{color:var(--text-dim);font-size:13px}.app-main{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:24px}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin-bottom:24px;display:flex}.tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-family:inherit;font-size:14px}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--accent)}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;padding:20px}.panel h2{margin:0 0 4px;font-size:16px}.panel .hint{color:var(--text-dim);margin:0 0 16px;font-size:13px}.row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;font-size:12px}input[type=text],input[type=password],input[type=email],input[type=number],select{background:var(--bg-input);border:1px solid var(--border-strong);color:var(--text);border-radius:8px;outline:none;min-width:220px;padding:9px 11px;font-family:inherit;font-size:14px}input:focus,select:focus{border-color:var(--accent)}.btn{border:1px solid var(--border-strong);background:var(--bg-elev);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:9px 15px;font-family:inherit;font-size:14px;display:inline-flex}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent-dim);border-color:var(--accent);color:#fff}.btn.danger{border-color:var(--danger-dim);color:var(--danger)}.btn.danger:hover{border-color:var(--danger)}.btn.sm{padding:5px 10px;font-size:12.5px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px;font-weight:500}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}tr:last-child td{border-bottom:none}.login-cell{font-family:var(--mono);font-size:13px}.actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.badge{font-size:11.5px;font-family:var(--mono);border:1px solid var(--border-strong);color:var(--text-dim);border-radius:999px;padding:2px 8px;display:inline-block}.badge.good{color:var(--good);border-color:var(--good-dim)}.badge.warn{color:var(--warn);border-color:#7a5b12}.badge.off{color:var(--text-faint)}.toast-stack{z-index:100;flex-direction:column;gap:10px;max-width:380px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--bg-elev);border:1px solid var(--border-strong);border-left:3px solid var(--accent);border-radius:8px;padding:12px 14px;font-size:13.5px;box-shadow:0 8px 30px #0006}.toast.error{border-left-color:var(--danger)}.toast.success{border-left-color:var(--good)}.secret{background:var(--bg-input);border:1px dashed var(--warn);border-radius:8px;margin-top:14px;padding:14px}.secret code{font-family:var(--mono);color:var(--warn);word-break:break-all;font-size:15px}pre.console{border:1px solid var(--border);font-family:var(--mono);color:#c7d3df;white-space:pre;background:#05080c;border-radius:8px;max-height:460px;padding:14px;font-size:12.5px;line-height:1.55;overflow-x:auto}.empty{color:var(--text-faint);padding:16px 0;font-style:italic}.login-wrap{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:14px;width:100%;max-width:360px;padding:28px}.login-card h1{margin:0 0 4px;font-size:18px}.login-card p{color:var(--text-dim);margin:0 0 20px;font-size:13px}.login-card input{width:100%}.login-card .btn{justify-content:center;width:100%;margin-top:14px}.login-error{color:var(--danger);min-height:18px;margin-top:12px;font-size:13px}.inline-error{color:var(--danger);font-size:13px}
