:root{--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--surface:#fff;--bg:#f5f7fb;--primary:#5b5cf0;--side:#111827}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.sidebar{width:255px;background:var(--side);color:#fff;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px}.brand small{display:block;color:#9ca3af}.brand-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#7067ff,#24c7d9);display:grid;place-items:center;color:#fff;font-weight:800}.sidebar .nav-link{color:#b6becb;border-radius:10px;padding:.72rem .85rem}.sidebar .nav-link i{width:25px}.sidebar .nav-link:hover,.sidebar .nav-link.active{background:#242d3d;color:#fff}.nav-caption{font-size:.68rem;color:#6b7280;font-weight:700;letter-spacing:.09em;margin:20px 10px 7px}.topbar{background:#fff;border-bottom:1px solid var(--line)}.metric-card,.panel-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 4px 18px rgba(15,23,42,.035)}.metric-icon{width:46px;height:46px;border-radius:14px;background:#eef0ff;color:var(--primary);display:grid;place-items:center;margin-bottom:20px}.status-dot{width:14px;height:14px;background:#21b66f;border-radius:50%;box-shadow:0 0 0 6px #e6f8ef}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-head h1{font-size:1.75rem;font-weight:800;margin:0}.page-head p{margin:.35rem 0 0;color:var(--muted)}.btn-primary{background:var(--primary);border-color:var(--primary)}.form-control,.form-select{border-radius:11px;padding:.72rem .85rem}.code-box{background:#111827;color:#e5e7eb;padding:14px;border-radius:12px}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#dfe4ff,transparent 33%),#f5f7fb}.login-card{width:min(440px,92vw);background:#fff;padding:38px;border-radius:24px;border:1px solid var(--line);box-shadow:0 24px 60px rgba(15,23,42,.10)}@media(max-width:900px){.sidebar{width:82px}.sidebar .brand>div:last-child,.sidebar .nav-link{font-size:0}.sidebar .nav-link i{font-size:1rem}.nav-caption{display:none}.brand{justify-content:center}.page-head{align-items:flex-start;gap:15px;flex-direction:column}}
