@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap");:root{--bg:#f4f6fa;--surface:#fff;--surface-sunken:#eef1f7;--border:#dde2eb;--border-strong:#c6cdda;--text:#171b24;--text-muted:#656d7d;--text-faint:#98a0ae;--accent:#3454d1;--accent-ink:#2643ad;--accent-soft:#eaeeff;--accent-soft-border:#cdd6ff;--success:#157a4a;--success-soft:#e4f5ec;--danger:#b3391f;--danger-soft:#fbeae6;--shadow:0 1px 2px rgba(23,27,36,.04),0 8px 24px -12px rgba(23,27,36,.12);--radius:10px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:IBM Plex Sans,system-ui,-apple-system,sans-serif}.mono{font-family:IBM Plex Mono,ui-monospace,monospace}a{color:var(--accent-ink)}.nav{justify-content:space-between;padding:14px 28px;background:var(--surface);border-bottom:1px solid var(--border);margin-bottom:28px}.nav,.nav-links{display:flex;align-items:center}.nav-links{gap:22px}.nav-brand{font-weight:700;font-size:15px;letter-spacing:-.01em}.nav-link{font-size:13.5px;font-weight:500;color:var(--text-muted);text-decoration:none}.nav-link:hover{color:var(--accent-ink)}.page{padding:0 28px 48px;max-width:1100px;margin:0 auto}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px}.page-head h1{font-size:22px;font-weight:700;margin:0;letter-spacing:-.01em}.btn{font:inherit;font-size:13.5px;font-weight:600;padding:9px 16px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer}.btn:hover{background:var(--surface-sunken)}.btn-sm{padding:6px 11px;font-size:12.5px;border-radius:7px}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn-danger{color:var(--danger);border-color:var(--danger-soft);background:var(--danger-soft)}.btn-danger:hover{background:#f6d9d1}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:20px}.card-head{padding:14px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head-title{font-size:12.5px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.card-body{padding:20px;display:flex;flex-direction:column;gap:16px}.tag{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;letter-spacing:.02em;white-space:nowrap}.tag-default{background:var(--surface-sunken);color:var(--text-muted);border:1px solid var(--border)}.tag-accent{background:var(--accent-soft);color:var(--accent-ink);border:1px solid var(--accent-soft-border)}.tag-success{background:var(--success-soft);color:var(--success)}.tag-danger{background:var(--danger-soft);color:var(--danger)}.conn{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--text-muted)}.conn-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--text-faint)}.conn-dot.online{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.conn-dot.offline{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}@media (prefers-reduced-motion:no-preference){.conn-dot.online{animation:conn-pulse 2s ease-in-out infinite}}@keyframes conn-pulse{0%,to{box-shadow:0 0 0 3px var(--success-soft)}50%{box-shadow:0 0 0 5px var(--success-soft)}}.field{display:flex;flex-direction:column;gap:6px;flex:1 1;min-width:160px}.field label{font-size:12.5px;font-weight:600;color:var(--text-muted)}.field-row{display:flex;gap:12px;flex-wrap:wrap}input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;padding:9px 11px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface-sunken);color:var(--text);font:inherit;font-size:14px}textarea{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px}.toggle-row{display:flex;gap:4px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:9px;padding:3px}.toggle-opt{flex:1 1;text-align:center;padding:8px 10px;border-radius:7px;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;border:none;background:transparent;font-family:inherit}.toggle-opt .hint{display:block;font-weight:400;font-size:11px;color:var(--text-faint);margin-top:1px}.toggle-opt.active{background:var(--surface);color:var(--accent-ink);box-shadow:0 1px 3px rgba(23,27,36,.12)}.toggle-opt.active .hint{color:var(--accent-ink);opacity:.75}.note{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--text-faint);line-height:1.5}.note svg{flex-shrink:0;margin-top:2px}.error-text{color:var(--danger);font-size:13px;margin:0}.table-wrap{overflow-x:auto}table.t{width:100%;border-collapse:collapse;font-size:13.5px}table.t th{text-align:left;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);padding:10px 20px}table.t td,table.t th{border-bottom:1px solid var(--border)}table.t td{padding:12px 20px;vertical-align:middle}table.t tbody tr:last-child td{border-bottom:none}table.t tbody tr:hover{background:var(--surface-sunken)}table.t td.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12.5px}.auth-wrap{max-width:380px;margin:90px auto;padding:0 20px}.auth-wrap h1{font-size:24px;font-weight:700;margin:0 0 2px;letter-spacing:-.01em}.auth-sub{color:var(--text-muted);font-size:14px;margin:0 0 24px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;display:flex;flex-direction:column;gap:16px}