:root{--navy:#0b2b55;--blue:#155aa8;--gold:#d6a72f;--paper:#fff;--bg:#f3f6fb;--muted:#64748b;--border:#dbe3ee;--shadow:0 8px 28px rgba(16,43,82,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#172033;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px}.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;background:linear-gradient(180deg,#0a2a53,#103d72);color:#fff;position:fixed;inset:0 auto 0 0;z-index:1040;overflow-y:auto;transition:.25s}.brand{height:78px;padding:14px 18px;display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;border-bottom:1px solid #ffffff18}.brand-mark{width:45px;height:45px;border-radius:12px;background:var(--gold);display:grid;place-items:center;color:#102b4c;font-weight:900;font-size:18px}.brand b{font-size:16px;display:block}.brand small{display:block;color:#c6d6e8;font-size:11px}.sidebar nav{padding:15px 10px}.sidebar nav a{display:flex;gap:12px;align-items:center;color:#dbe8f6;text-decoration:none;padding:10px 12px;margin:3px 0;border-radius:9px}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff18;color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 var(--gold)}.main{margin-left:248px;min-width:0;flex:1}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 26px;gap:14px;position:sticky;top:0;z-index:1030}.topbar h1{font-size:20px;margin:0;font-weight:750}.topbar small{color:var(--muted)}.user-menu{margin-left:auto;display:flex;gap:15px;align-items:center}.user-menu a{color:var(--navy);font-size:20px}.menu-btn{border:0;background:none;font-size:24px;display:none}.content{padding:24px;min-height:calc(100vh - 122px)}.app-footer{padding:12px 24px;color:var(--muted);text-align:center}.card{border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px}.stat-card{padding:18px;height:100%;position:relative;overflow:hidden}.stat-card .icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#e9f2ff;color:var(--blue);font-size:20px}.stat-card h3{font-size:24px;margin:14px 0 2px}.stat-card p{margin:0;color:var(--muted)}.section-title{font-size:16px;font-weight:750;margin:0}.table-card{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.table-card .card-head{padding:16px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.table{margin:0}.table th{background:#f8fafc;color:#536274;text-transform:uppercase;font-size:11px;letter-spacing:.04em;white-space:nowrap}.table td{vertical-align:middle}.avatar{width:42px;height:42px;border-radius:10px;object-fit:cover;background:#e8edf4}.btn-primary{background:var(--blue);border-color:var(--blue)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#172033}.form-label{font-weight:650;color:#37465a}.form-control,.form-select{border-color:#ccd6e3;padding:.62rem .75rem}.form-section{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:var(--shadow)}.form-section h2{font-size:16px;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:18px;color:var(--navy)}.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.quick-action{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;text-decoration:none;color:#27364a;display:flex;align-items:center;gap:10px}.quick-action i{color:var(--blue);font-size:20px}.empty{text-align:center;padding:32px;color:var(--muted)}.print-only{display:none}.id-card{width:85.6mm;height:54mm;border:1px solid #bbb;border-radius:3mm;background:#fff;overflow:hidden;position:relative}.id-card-front{background:linear-gradient(145deg,#fff 62%,#eaf2fb)}.id-head{height:15mm;background:var(--navy);color:white;text-align:center;padding:2mm}.id-head strong{font-size:12px}.id-body{padding:3mm;display:flex;gap:3mm;font-size:8px}.id-photo{width:19mm;height:23mm;object-fit:cover;border:1px solid var(--gold)}.id-row{margin-bottom:1.2mm}.signature-line{border-top:1px solid #333;width:23mm;text-align:center;font-size:6px;position:absolute;right:3mm;bottom:3mm}.id-back{padding:4mm;font-size:8px}.id-back h4{text-align:center;color:var(--navy);font-size:10px}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#071f3d,#155aa8)}.login-card{width:min(430px,92vw);background:#fff;border-radius:20px;padding:34px;box-shadow:0 30px 80px #00142c66}.login-logo{width:66px;height:66px;border-radius:18px;background:var(--gold);display:grid;place-items:center;font-size:25px;font-weight:900;margin:0 auto 16px}.receipt{max-width:800px;margin:auto;background:#fff;padding:28px;border:1px solid #ccc}.receipt-head{text-align:center;border-bottom:2px solid var(--navy);padding-bottom:14px}.receipt-head h1{font-size:24px;color:var(--navy)}
@media(max-width:991px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:none;box-shadow:20px 0 50px #00142c44}.main{margin-left:0}.menu-btn{display:block}.content{padding:16px}.user-menu span{display:none}}
@media(max-width:575px){.topbar{padding:0 14px}.topbar h1{font-size:17px}.stat-card{padding:14px}.form-section{padding:15px}.table-card{overflow-x:auto}.btn-mobile-full{width:100%}}
@media print{body{background:#fff}.sidebar,.topbar,.app-footer,.no-print,.alert{display:none!important}.main{margin:0}.content{padding:0}.card,.table-card,.form-section{box-shadow:none;border:0}.print-only{display:block}.receipt{border:0;max-width:none}.id-card{break-inside:avoid}.table{font-size:11px}@page{margin:10mm}}

