:root{--nav:#0b2745;--blue:#2563eb;--bg:#f4f7fb;--text:#172033}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif}.app{display:flex;min-height:100vh}.sidebar{width:235px;background:var(--nav);color:#fff;position:fixed;inset:0 auto 0 0;padding:18px 12px;display:flex;flex-direction:column}.brand{font-weight:800;font-size:20px;padding:10px 12px 20px}.brand small{display:block;font-size:11px;opacity:.65;font-weight:500;margin-top:3px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar a{color:#dbe8f7;text-decoration:none;padding:10px 12px;border-radius:9px;font-size:13px}.sidebar a:hover,.sidebar a.active{background:#17436f;color:#fff}.sidebar a span{display:inline-block;width:25px}.side-bottom{margin-top:auto}.main{margin-left:235px;width:calc(100% - 235px)}.topbar{height:68px;background:#fff;border-bottom:1px solid #e5eaf1;padding:0 26px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.topbar h1{font-size:23px;margin:0;font-weight:800}.content{padding:25px;max-width:1500px;margin:auto}.cardx{background:#fff;border:1px solid #e6ebf2;border-radius:14px;box-shadow:0 5px 20px rgba(16,24,40,.05);padding:18px}.btn-primary{background:#2563eb;border-color:#2563eb}.table thead th{font-size:12px;color:#667085;background:#f8fafc}.table td{font-size:13px;vertical-align:middle}.stat{border-radius:14px;color:#fff;padding:18px;min-height:112px}.stat small{opacity:.85}.stat h3{margin:8px 0 0;font-size:23px}.s1{background:#2563eb}.s2{background:#16a34a}.s3{background:#f59e0b}.s4{background:#dc2626}.s5{background:#7c3aed}.s6{background:#0891b2}.form-label{font-size:12px;font-weight:700}.form-control,.form-select{border-radius:9px}.summary{background:#f8fafc;border:1px solid #e8edf4;border-radius:12px;padding:15px}.danger{color:#dc2626}.success{color:#16a34a}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef5ff,#f7f3ff)}.login-card{width:380px;background:#fff;padding:32px;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.1)}.login-card h2{font-weight:800}.kpi{font-size:11px;color:#667085}.muted{color:#667085}.badge-soft{background:#eef4ff;color:#2457c5}.quick a{text-decoration:none}.table-responsive{border-radius:10px}.action-btn{padding:4px 8px;font-size:12px}@media(max-width:900px){.sidebar{width:70px}.sidebar .brand,.sidebar a:not(:has(span)),.sidebar a{font-size:0}.sidebar a span{font-size:16px;width:auto}.main{margin-left:70px;width:calc(100% - 70px)}.content{padding:15px}}
