:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0d;--bg-subtle:#101014;--surface:#15151b;--surface-hover:#1b1b23;--border:#24242e;--border-strong:#33333f;--text:#f2f2f6;--text-muted:#9799a8;--text-faint:#64667a;--accent:#7c6df5;--accent-hover:#8f81ff;--accent-soft:#7c6df524;--accent-text:#fff;--success:#34d399;--success-bg:#34d3991f;--danger:#f5697d;--danger-bg:#f5697d1f;--warning:#fbbf5d;--warning-bg:#fbbf5d1f;--radius-sm:7px;--radius:12px;--radius-lg:18px;--shadow:0 1px 1px #0003, 0 12px 32px -8px #0000008c;--shadow-sm:0 1px 2px #0000004d;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Consolas, monospace}*{box-sizing:border-box}html{background:var(--bg)}body{background:radial-gradient(1200px 600px at 15% -10%, #7c6df514, transparent 60%), var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}#root{max-width:1080px;margin:0 auto;padding:0 1.75rem 4rem}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .25rem;font-weight:600}h1{font-size:1.5rem}h2{color:var(--text);border-top:1px solid var(--border);margin-top:2rem;padding-top:1.5rem;font-size:1.05rem}p{color:var(--text-muted);line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}code,.mono{font-family:var(--font-mono)}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.25rem 0;display:flex}.brand{color:var(--text);align-items:center;gap:.6rem;font-size:1.05rem;font-weight:700;display:flex}.brand svg{color:var(--accent);flex-shrink:0}.nav-links{align-items:center;gap:.25rem;margin-left:1rem;display:flex}.nav-links a{color:var(--text-muted);border-radius:var(--radius-sm);padding:.4rem .7rem;font-size:.9rem;font-weight:500;text-decoration:none}.nav-links a:hover{color:var(--text);background:var(--surface-hover)}.nav-links a.active{color:var(--text);background:var(--surface)}.topbar-right{align-items:center;gap:.75rem;display:flex}.topbar-email{color:var(--text-faint);font-size:.85rem}.page-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.page-header p{margin:.15rem 0 0;font-size:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;padding:1.5rem}.card-tight{padding:1rem 1.25rem}button,.btn{font:inherit;background:var(--surface-hover);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .95rem;font-size:.875rem;font-weight:500;transition:background-color .12s,border-color .12s,transform 50ms;display:inline-flex}button:hover{background:#232330;border-color:#3d3d4c}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.danger{color:var(--danger);background:0 0;border-color:#f5697d59}button.danger:hover{background:var(--danger-bg);border-color:var(--danger)}button.ghost{color:var(--text-muted);background:0 0;border-color:#0000}button.ghost:hover{background:var(--surface-hover);color:var(--text)}.field{flex-direction:column;gap:.4rem;max-width:420px;margin-bottom:1.1rem;display:flex}.field label{color:var(--text-muted);font-size:.82rem;font-weight:500}input,textarea,select{font:inherit;background:var(--bg-subtle);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.55rem .75rem;font-size:.9rem}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:focus,textarea:focus,select:focus{border-color:var(--accent)}.row{align-items:center;gap:.6rem;display:flex}.table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.88rem}th{text-align:left;color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-subtle);border-bottom:1px solid var(--border);padding:.7rem 1rem;font-size:.78rem;font-weight:500}td{border-bottom:1px solid var(--border);color:var(--text);padding:.7rem 1rem}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-hover)}th.actions,td.actions{text-align:right}table.kv{border:none}table.kv tbody tr:hover{background:0 0}table.kv td{border-bottom:1px solid var(--border);padding:.55rem 0}table.kv td:first-child{color:var(--text-muted);width:180px;font-size:.85rem}.license-key{font-family:var(--font-mono);letter-spacing:.02em;font-size:.85rem}.badge{letter-spacing:.01em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.72rem;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.active{background:var(--success-bg);color:var(--success)}.badge.revoked{background:var(--danger-bg);color:var(--danger)}.badge.suspended{background:var(--warning-bg);color:var(--warning)}.error{color:var(--danger);background:var(--danger-bg);border-radius:var(--radius-sm);border:1px solid #f5697d4d;margin:0 0 1rem;padding:.6rem .85rem;font-size:.88rem}.empty-state{text-align:center;color:var(--text-faint);padding:2.5rem 1rem;font-size:.9rem}.muted{color:var(--text-faint)}.search-input{width:100%;max-width:360px}.pagination{color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:1rem;font-size:.85rem;display:flex}.auth-shell{justify-content:center;align-items:center;min-height:calc(100vh - 4rem);display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow);padding:2.25rem 2rem}.auth-card .brand{justify-content:center;margin-bottom:1.5rem;font-size:1.15rem}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#040407a6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow);padding:1.5rem}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.1rem;display:flex}.modal-header h2{border:none;margin:0;padding:0;font-size:1.05rem}
