*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f1117;--surface: #1a1d27;--border: #2a2d3a;--text: #e4e4e7;--text-dim: #9ca3af;--primary: #6366f1;--primary-hover: #818cf8;--danger: #ef4444;--danger-hover: #f87171;--success: #22c55e;--warning: #f59e0b;--radius: 8px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}.hidden{display:none!important}.screen{min-height:100vh}#login-screen{display:flex;align-items:center;justify-content:center}.login-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2.5rem;width:100%;max-width:400px}.login-box h1{text-align:center;margin-bottom:1.5rem;font-size:1.5rem}.login-box input{width:100%;padding:.75rem 1rem;margin-bottom:1rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.95rem}.login-box input:focus{outline:none;border-color:var(--primary)}.login-box button{width:100%;padding:.75rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:1rem;cursor:pointer;transition:background .2s}.login-box button:hover{background:var(--primary-hover)}.login-box button:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--danger);font-size:.875rem;margin-top:.5rem;text-align:center}.topbar{display:flex;align-items:center;gap:2rem;padding:0 1.5rem;height:56px;background:var(--surface);border-bottom:1px solid var(--border)}.brand{font-weight:700;font-size:1.125rem;color:var(--primary)}.nav-links{display:flex;gap:.5rem}.nav-link{color:var(--text-dim);text-decoration:none;padding:.5rem 1rem;border-radius:var(--radius);font-size:.875rem;transition:all .2s}.nav-link:hover,.nav-link.active{color:var(--text);background:var(--bg)}.nav-right{margin-left:auto;display:flex;align-items:center;gap:1rem;font-size:.875rem;color:var(--text-dim)}.btn-text{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:.875rem}.btn-text:hover{color:var(--text)}.content{padding:1.5rem;max-width:1400px;margin:0 auto}.content h2{font-size:1.25rem;margin-bottom:1rem}.loading{color:var(--text-dim);padding:2rem;text-align:center}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{text-align:left;padding:.75rem 1rem;color:var(--text-dim);font-weight:500;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tr:hover td{background:#6366f10d}.badge{display:inline-block;padding:.2rem .6rem;border-radius:99px;font-size:.75rem;font-weight:500}.badge-healthy{background:#22c55e26;color:var(--success)}.badge-unhealthy{background:#ef444426;color:var(--danger)}.badge-active{background:#22c55e26;color:var(--success)}.badge-revoked{background:#ef444426;color:var(--danger)}.badge-suspended{background:#f59e0b26;color:var(--warning)}.badge-free{background:#9ca3af26;color:var(--text-dim)}.badge-premium{background:#6366f126;color:var(--primary)}.btn-sm{padding:.35rem .75rem;font-size:.8rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;transition:all .2s}.btn-sm:hover{border-color:var(--primary);color:var(--primary)}.btn-danger{padding:.35rem .75rem;font-size:.8rem;border:1px solid var(--danger);border-radius:var(--radius);background:transparent;color:var(--danger);cursor:pointer}.btn-danger:hover{background:#ef44441a}.btn-toggle{padding:.35rem .75rem;font-size:.8rem;border-radius:var(--radius);cursor:pointer;border:none;transition:all .2s}.btn-toggle.on{background:var(--success);color:#fff}.btn-toggle.off{background:var(--border);color:var(--text-dim)}.filters{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.filters input,.filters select{padding:.5rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.875rem}.filters input{min-width:250px}.filters input:focus,.filters select:focus{outline:none;border-color:var(--primary)}.pagination{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.875rem;color:var(--text-dim)}.pagination button{padding:.35rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer}.pagination button:disabled{opacity:.3;cursor:not-allowed}.actions{display:flex;gap:.5rem;flex-wrap:wrap}
