
:root{--brand:#2563eb;--purple:#7c3aed;--cyan:#06b6d4;--dark:#0f172a;--muted:#64748b;--soft:#f8fafc;--line:#e2e8f0;--green:#16a34a;--red:#ef4444;--orange:#f97316}*{box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:linear-gradient(135deg,#f8fafc,#eef2ff);color:var(--dark);overflow-x:hidden}.fw-black{font-weight:900}.small-muted{color:var(--muted);font-size:13px}.app-shell{min-height:100vh}.sidebar{width:280px;background:linear-gradient(180deg,#0f172a,#172554 55%,#312e81);color:white;position:fixed;left:0;top:0;bottom:0;padding:22px;z-index:1000;box-shadow:18px 0 50px rgba(15,23,42,.22);transition:.35s ease}.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:20px;margin-bottom:28px}.sidebar-brand{justify-content:space-between}.sidebar-brand>div:not(.brand-icon){flex:1}.sidebar-close{width:38px;height:38px;border:0;border-radius:14px;background:rgba(255,255,255,.16);color:#fff;display:grid;place-items:center}.sidebar-close:hover{background:rgba(255,255,255,.25)}.brand small{display:block;color:#cbd5e1;font-size:11px;font-weight:600}.brand-icon{width:46px;height:46px;border-radius:17px;background:linear-gradient(135deg,#38bdf8,#2563eb,#7c3aed);display:grid;place-items:center;box-shadow:0 12px 28px rgba(37,99,235,.45);animation:float 3s ease-in-out infinite}.nav-link{color:#dbeafe;border-radius:16px;padding:13px 14px;margin:6px 0;display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:750;transition:.25s}.nav-link i{width:22px}.nav-link:hover,.nav-link.active{background:rgba(255,255,255,.16);color:#fff;transform:translateX(4px)}.sidebar-card{position:absolute;left:18px;right:18px;bottom:18px;border-radius:22px;background:rgba(255,255,255,.12);padding:16px;color:#e0e7ff}.sidebar-card i{font-size:24px;margin-bottom:8px}.sidebar-card p{font-size:12px;margin:0}.content{margin-left:280px;padding:24px;transition:.35s ease}body.sidebar-collapsed .sidebar{transform:translateX(-110%)}body.sidebar-collapsed .content{margin-left:0}.topbar{background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border:1px solid rgba(226,232,240,.9);border-radius:26px;padding:16px 18px;display:flex;align-items:center;gap:14px;justify-content:space-between;box-shadow:0 18px 45px rgba(15,23,42,.08);margin-bottom:22px}.menu-btn{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:16px;background:#eff6ff;color:#2563eb}.top-actions{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#16a34a}.live-dot{width:10px;height:10px;background:#22c55e;border-radius:50%;box-shadow:0 0 0 6px rgba(34,197,94,.13);animation:pulse 1.5s infinite}.card-soft,.top-card{background:rgba(255,255,255,.88);border:1px solid rgba(226,232,240,.9);border-radius:26px;box-shadow:0 18px 45px rgba(15,23,42,.08)}.stat{padding:22px;border-radius:26px;color:#fff;position:relative;overflow:hidden;min-height:126px;box-shadow:0 16px 38px rgba(15,23,42,.13);transition:.3s}.stat:hover{transform:translateY(-5px)}.stat:after{content:'';position:absolute;width:130px;height:130px;border-radius:50%;background:rgba(255,255,255,.15);right:-32px;bottom:-42px}.stat i{font-size:30px;opacity:.92}.stat h2{font-weight:900;margin:10px 0 0}.stat-blue{background:linear-gradient(135deg,#2563eb,#60a5fa)}.stat-green{background:linear-gradient(135deg,#16a34a,#4ade80)}.stat-orange{background:linear-gradient(135deg,#f97316,#facc15)}.stat-red{background:linear-gradient(135deg,#ef4444,#fb7185)}.btn-brand{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;border:0;border-radius:16px;padding:11px 18px;font-weight:800;box-shadow:0 12px 25px rgba(37,99,235,.25)}.btn-brand:hover{color:#fff;filter:brightness(.95)}.btn-soft{background:#e0e7ff;color:#1d4ed8;border:0;border-radius:16px;padding:10px 15px;font-weight:800}.form-control,.form-select{border-radius:16px;padding:12px;border:1px solid var(--line)}.table{vertical-align:middle}.table thead th{color:#64748b;font-size:12px;text-transform:uppercase}.badge-pill{border-radius:999px;padding:8px 12px}.avatar{width:56px;height:56px;border-radius:20px;background:#dbeafe;color:#2563eb;display:grid;place-items:center;font-weight:900;font-size:22px}.doc-card{border:1px dashed #cbd5e1;border-radius:20px;padding:16px;background:#f8fafc}.login-bg{min-height:100vh;background:radial-gradient(circle at top left,#bfdbfe,transparent 32%),radial-gradient(circle at top right,#ddd6fe,transparent 30%),linear-gradient(135deg,#eff6ff,#ffffff);display:grid;place-items:center;padding:18px;position:relative;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(1px);opacity:.4;animation:float 5s ease-in-out infinite}.orb.one{width:170px;height:170px;background:#60a5fa;left:-70px;top:80px}.orb.two{width:130px;height:130px;background:#a78bfa;right:-45px;bottom:90px;animation-delay:1s}.login-card{width:100%;max-width:430px;background:rgba(255,255,255,.88);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.7);border-radius:32px;padding:28px;box-shadow:0 30px 80px rgba(37,99,235,.18);animation:pop .55s ease}.hero-title{font-weight:950;letter-spacing:-1px}.mobile-shell{max-width:480px;margin:auto;min-height:100vh;background:#f8fafc;box-shadow:0 0 60px rgba(15,23,42,.13);position:relative}.mobile-header{background:linear-gradient(135deg,#2563eb,#7c3aed);color:white;padding:24px;border-radius:0 0 34px 34px;position:relative;overflow:hidden}.mobile-header:after{content:'';position:absolute;width:180px;height:180px;border-radius:50%;right:-60px;top:-70px;background:rgba(255,255,255,.16)}.mobile-menu-btn{width:42px;height:42px;border:0;border-radius:15px;background:rgba(255,255,255,.18);color:white}.mobile-drawer{position:fixed;top:0;bottom:0;left:50%;transform:translateX(-50%) translateX(-105%);width:100%;max-width:480px;background:#fff;z-index:3000;padding:22px;transition:.32s ease;box-shadow:20px 0 60px rgba(15,23,42,.2)}.mobile-drawer.open{transform:translateX(-50%) translateX(0)}.drawer-link{display:flex;align-items:center;gap:12px;padding:14px;border-radius:18px;margin-bottom:8px;color:#0f172a;text-decoration:none;font-weight:850;background:#f8fafc}.drawer-link.active{background:#e0e7ff;color:#2563eb}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);max-width:480px;width:100%;background:rgba(255,255,255,.95);backdrop-filter:blur(15px);border-top:1px solid #e2e8f0;display:flex;justify-content:space-around;padding:10px 0;z-index:2000}.bottom-nav a{text-decoration:none;color:#64748b;font-size:11px;text-align:center;font-weight:750}.bottom-nav i{display:block;font-size:20px;margin-bottom:3px}.bottom-nav a.active{color:#2563eb}.scan-box{height:300px;border-radius:32px;background:radial-gradient(circle,#334155,#020617);display:grid;place-items:center;color:white;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(2,6,23,.25)}.scan-line{width:80%;height:3px;background:#22c55e;box-shadow:0 0 22px #22c55e;animation:scan 2s infinite;position:absolute}.qr-frame{width:190px;height:190px;border:4px solid rgba(255,255,255,.7);border-radius:26px;box-shadow:inset 0 0 28px rgba(255,255,255,.14)}.mini-card{border-radius:24px;background:white;border:1px solid #e2e8f0;padding:16px;box-shadow:0 14px 34px rgba(15,23,42,.07);transition:.3s}.mini-card:hover{transform:translateY(-4px)}.progress{height:10px;border-radius:999px}.reveal{animation:fadeUp .65s ease both}.delay1{animation-delay:.1s}.delay2{animation-delay:.2s}.delay3{animation-delay:.3s}.menu-backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:999}@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes pop{from{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:none}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.35)}70%{box-shadow:0 0 0 10px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}@keyframes scan{0%{top:45px}50%{top:245px}100%{top:45px}}@media(max-width:900px){.sidebar{transform:translateX(-110%)}.sidebar.open{transform:translateX(0)}body.sidebar-collapsed .sidebar{transform:translateX(-110%)}.menu-backdrop.show{display:block}.content{margin-left:0;padding:14px}.menu-btn{display:grid}.topbar{align-items:flex-start}.top-actions{display:none}.mobile-only-space{padding-bottom:76px}.stat{min-height:112px}.content .row.g-3>[class*=col-]{width:50%}}@media(max-width:480px){.content .row.g-3>[class*=col-]{width:100%}.topbar h3{font-size:20px}.login-card{padding:22px;border-radius:26px}.mobile-header{padding:20px}}
