:root{--ink:#162033;--muted:#667085;--line:#e4e7ec;--surface:#fff;--canvas:#f5f7fb;--brand:#3157d5;--nav:#111a2d}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;background:var(--nav);color:#fff;padding:28px 20px;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-size:18px;font-weight:750}.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#5578ef,#2846af);color:#fff;font-size:13px}.sidebar nav{margin-top:38px}.sidebar .nav-link{color:#aeb8ce;border-radius:9px;padding:10px 12px}.sidebar .nav-link.active{background:#25314a;color:#fff}.nav-label{margin:28px 12px 7px;color:#66728d;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.main-content{margin-left:248px;min-width:0;width:calc(100% - 248px)}.topbar{height:94px;padding:20px 34px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.topbar h1{font-size:23px;margin:1px 0}.page-kicker,.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:750;color:var(--muted)}.user-menu{display:flex;align-items:center;gap:18px}.user-menu small{display:block;color:var(--muted)}.content-wrap{padding:32px}.status-banner,.panel,.metric-card,.report-card{background:var(--surface);border:1px solid var(--line);box-shadow:0 6px 24px rgba(16,24,40,.04)}.status-banner{border-radius:16px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between}.status-banner h2,.panel h2,.report-card h2{font-size:21px;margin:7px 0}.status-banner p,.panel p,.report-card p{color:var(--muted);margin:0}.metric-card{border-radius:14px;padding:22px}.metric-card span,.metric-card small{display:block;color:var(--muted)}.metric-card strong{display:block;font-size:23px;margin:8px 0}.panel{border-radius:16px;padding:28px}.panel-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:22px}.settings-list{margin:0 0 24px}.settings-list div{display:grid;grid-template-columns:150px 1fr;padding:14px 0;border-bottom:1px solid #eef0f4}.settings-list dt{color:var(--muted);font-weight:500}.settings-list dd{margin:0;font-weight:650}.security-note code{display:block;background:#f2f4f7;padding:12px;border-radius:8px;margin:20px 0;color:#344054}.btn-primary{background:var(--brand);border-color:var(--brand)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 10%,#e8edff,transparent 35%),var(--canvas)}.login-card{width:min(430px,100%);padding:36px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 60px rgba(16,24,40,.1)}.form-control{min-height:45px;border-color:#d0d5dd}.empty-state{padding:38px 20px;text-align:center;color:var(--muted);background:#f9fafb;border:1px dashed #d0d5dd;border-radius:12px}.chart-box{height:290px}.person{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none}.person img,.profile-head>img{width:36px;height:36px;border-radius:50%;object-fit:cover}.profile-head{display:flex;align-items:center;gap:16px}.profile-head>img{width:64px;height:64px}.report-card{display:block;height:100%;padding:26px;border-radius:15px;text-decoration:none;color:var(--ink);transition:.18s}.report-card:hover{transform:translateY(-2px);border-color:#b9c4eb}.sync-actions{display:flex;flex-wrap:wrap;gap:10px}.table th{white-space:nowrap;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.table td{vertical-align:middle}@media(max-width:800px){.sidebar{position:static;width:100%;padding:18px}.sidebar nav{margin-top:18px}.app-shell{display:block}.main-content{margin:0;width:100%}.topbar{height:auto;padding:18px}.content-wrap{padding:18px}.status-banner,.panel-header{align-items:flex-start;gap:20px;flex-direction:column}.user-menu .text-end{display:none}}
.settings-grid tbody tr { transition: background-color .15s ease, box-shadow .15s ease; }
.settings-grid tbody tr:hover { --bs-table-hover-bg: #eef3ff; box-shadow: inset 4px 0 0 #3d5bd8; }
.settings-grid tbody tr:hover td { color: #172554; }
.sidebar .nav-sub-link { margin-left:.65rem; padding-left:1rem; border-left:2px solid rgba(255,255,255,.12); }
