@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0d0f;--bg-elevated:#141416;--bg-surface:#1a1a1e;--bg-hover:#222226;--border:#262629;--border-subtle:#1e1e22;--border-hover:#38383d;--text:#e8e6e3;--text-secondary:#8b8b8e;--text-muted:#5a5a5d;--accent:#7c7cff;--accent-dim:#7c7cff1f;--accent-glow:#7c7cff40;--green:#3ecf8e;--green-dim:#3ecf8e1f;--red:#f75b5b;--red-dim:#f75b5b1f;--orange:#f5a623;--orange-dim:#f5a6231f;--cyan:#2dd4bf;--cyan-dim:#2dd4bf1f;--radius:8px;--radius-lg:12px;--transition:all .2s cubic-bezier(.4, 0, .2, 1);--font-sans:"Inter", -apple-system, system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02", "cv03", "cv04", "cv11";min-height:100vh}h1,h2,h3{letter-spacing:-.025em;color:var(--text);font-weight:600}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1rem}.mono{font-family:var(--font-mono);letter-spacing:-.01em;font-size:.8125rem}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);transition:var(--transition);padding:24px}.card:hover{border-color:var(--border-hover)}.card-flush{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.stat-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);transition:var(--transition);padding:24px;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:0;height:1px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.stat-card:hover{border-color:var(--border-hover)}.stat-card:hover:before{opacity:1}.stat-label{font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:12px}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--text);font-size:2.25rem;font-weight:700}.btn{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;font-size:.875rem;font-weight:500;font-family:var(--font-sans);transition:var(--transition);white-space:nowrap;border:none;align-items:center;gap:8px;padding:9px 18px;display:inline-flex}.btn:hover{box-shadow:0 0 20px var(--accent-glow);background:#8e8eff}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{box-shadow:none}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font-size:.875rem;font-weight:500;font-family:var(--font-sans);transition:var(--transition);background:0 0;align-items:center;gap:8px;padding:9px 18px;display:inline-flex}.btn-ghost:hover{background:var(--bg-hover);border-color:var(--border-hover);color:var(--text)}.btn-danger{color:var(--red);border-radius:var(--radius);cursor:pointer;transition:var(--transition);background:0 0;border:none;align-items:center;padding:6px;display:inline-flex}.btn-danger:hover{background:var(--red-dim)}.input{background:var(--bg-surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);transition:var(--transition);width:100%;font-family:var(--font-sans);outline:none;padding:10px 14px;font-size:.875rem}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input::placeholder{color:var(--text-muted)}select.input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%235A5A5D' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.label{font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px;display:block}.badge{font-family:var(--font-mono);letter-spacing:.02em;text-transform:uppercase;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:.6875rem;font-weight:500;display:inline-flex}.badge-accent{background:var(--accent-dim);color:var(--accent)}.badge-green{background:var(--green-dim);color:var(--green)}.badge-red{background:var(--red-dim);color:var(--red)}.badge-orange{background:var(--orange-dim);color:var(--orange)}.badge-cyan{background:var(--cyan-dim);color:var(--cyan)}.badge-muted{color:var(--text-secondary);background:#8a8a8e1a}table{border-collapse:collapse;width:100%}th{text-align:left;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:12px 16px;font-size:.6875rem;font-weight:500}td{border-bottom:1px solid var(--border-subtle);padding:14px 16px;font-size:.875rem}tr:last-child td{border-bottom:none}tr:hover td{background:var(--bg-hover)}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.active{background:var(--green);box-shadow:0 0 8px var(--green-dim)}.status-dot.inactive{background:var(--red);box-shadow:0 0 8px var(--red-dim)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0009;justify-content:center;align-items:flex-start;padding-top:10vh;padding-bottom:10vh;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);width:420px;max-width:92vw;max-height:80vh;padding:28px;animation:.2s modalIn;overflow-y:auto;box-shadow:0 24px 48px #0006}.sidebar{background:var(--bg-elevated);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:240px;padding:20px 0;display:flex}.sidebar-brand{align-items:center;gap:10px;margin-bottom:32px;padding:0 20px;display:flex}.sidebar-brand-icon{background:var(--accent);color:#fff;width:28px;height:28px;box-shadow:0 0 12px var(--accent-glow);border-radius:6px;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.sidebar-brand-text{letter-spacing:-.02em;font-size:1rem;font-weight:600}.nav-item{color:var(--text-secondary);transition:var(--transition);border-radius:6px;align-items:center;gap:10px;margin:1px 8px;padding:9px 20px;font-size:.875rem;font-weight:450;text-decoration:none;display:flex;position:relative}.nav-item:hover{color:var(--text);background:var(--bg-hover)}.nav-item.active{color:var(--accent);background:var(--accent-dim)}.nav-item.active:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:3px;height:20px;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}.sidebar-footer{border-top:1px solid var(--border);margin:auto 12px 0;padding:16px}.sidebar-user{align-items:center;gap:10px;margin-bottom:12px;padding-top:16px;display:flex}.sidebar-avatar{background:var(--bg-surface);border:1px solid var(--border);width:32px;height:32px;color:var(--text-secondary);text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.code{font-family:var(--font-mono);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:4px;padding:3px 7px;font-size:.8125rem}.alert-error{color:var(--red);background:var(--red-dim);border-radius:var(--radius);border:1px solid #f75b5b33;padding:10px 12px;font-size:.8125rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.empty-state{text-align:center;color:var(--text-muted);padding:48px 24px;font-size:.875rem}.loading{text-align:center;color:var(--text-muted);padding:24px;font-size:.875rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes modalIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-in{animation:.3s forwards fadeIn}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}::selection{background:var(--accent-dim);color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select,button{font-family:inherit}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}
