:root{--red:#d71920;--red2:#a80f17;--black:#090d12;--black2:#111820;--panel:#151d26;--panel2:#1b2530;--text:#eef3f8;--muted:#91a0ae;--line:#293542;--gold:#d8ae32;--bg:#edf0f3}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#202833;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{text-decoration:none}.topbar{height:76px;background:linear-gradient(100deg,#070a0e 0%,#111820 68%,#27090d 100%);border-bottom:2px solid var(--red);color:#fff;position:sticky;top:0;z-index:1000;display:flex;align-items:center;padding:0 22px;gap:18px}.brand-mark{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,#e5c65a,#8b6a11);display:grid;place-items:center;color:#111;font-weight:900;box-shadow:0 0 0 2px #30250c}.brand-title{font-weight:800;letter-spacing:.2px;font-size:19px}.brand-sub{font-size:11px;color:#d8ae32;text-transform:uppercase;letter-spacing:.7px}.top-spacer{flex:1}.top-pill{border:1px solid #33414f;background:#111a23;border-radius:12px;padding:8px 12px;color:#dbe3ea;font-size:12px}.date-box{background:linear-gradient(135deg,#c7111a,#8e0b12);padding:9px 16px;border-radius:10px;font-weight:700;text-align:center;line-height:1.05}.app-shell{display:flex;min-height:calc(100vh - 76px)}.sidebar{width:245px;background:linear-gradient(180deg,#0b1015,#0d141b);color:#fff;flex:0 0 245px;padding:18px 12px;position:sticky;top:76px;height:calc(100vh - 76px);overflow:auto;border-right:1px solid #202a34}.menu-title{font-size:10px;color:#9aa8b4;text-transform:uppercase;letter-spacing:1.3px;padding:6px 12px 10px;border-bottom:1px solid #27313b;margin-bottom:8px}.side-link{display:flex;align-items:center;gap:11px;color:#b9c5cf;padding:11px 12px;border-radius:9px;margin:3px 0;font-size:13px;font-weight:600;transition:.15s}.side-link i{width:20px;text-align:center;color:#9eacb8}.side-link:hover{background:#18222c;color:#fff}.side-link.active{background:linear-gradient(90deg,#df1720,#a50d14);color:#fff;box-shadow:0 5px 15px #7c0b122e}.side-link.active i{color:#fff}.side-section{margin-top:18px}.side-badge{margin-left:auto;min-width:24px;padding:2px 7px;border-radius:999px;background:#2a3440;color:#fff;text-align:center;font-size:10px}.content{flex:1;padding:24px 28px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:18px}.page-title{font-size:25px;font-weight:800;margin:0;color:#151b22}.page-sub{color:#75818d;margin:5px 0 0;font-size:13px}.btn-primary{--bs-btn-bg:var(--red);--bs-btn-border-color:var(--red);--bs-btn-hover-bg:#b80f17;--bs-btn-hover-border-color:#b80f17}.btn-outline-primary{--bs-btn-color:var(--red);--bs-btn-border-color:var(--red);--bs-btn-hover-bg:var(--red);--bs-btn-hover-border-color:var(--red)}.card{border:1px solid #dfe4e8;border-radius:13px;box-shadow:0 5px 18px rgba(14,22,30,.07);overflow:hidden}.stat-card{background:#fff;position:relative;padding:18px 20px;border-top:3px solid var(--red);height:100%}.stat-card.gold{border-top-color:var(--gold)}.stat-icon{width:44px;height:44px;border-radius:11px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-size:18px}.stat-card.gold .stat-icon{background:#fbf4df;color:#a47d17}.stat-label{font-size:11px;color:#788490;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:28px;font-weight:800;line-height:1;margin:5px 0}.stat-note{font-size:11px;color:#9aa5af}.panel{background:#fff;border:1px solid #dfe4e8;border-radius:13px;box-shadow:0 5px 18px rgba(14,22,30,.07);overflow:hidden}.panel-head{background:linear-gradient(90deg,#b90f17,#df1b23);color:#fff;padding:12px 16px;font-weight:800;font-size:13px;display:flex;align-items:center;gap:8px}.panel-body{padding:16px}.table thead th{background:#f4f6f8;color:#5e6974;font-size:11px;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid #e1e6ea}.table td{vertical-align:middle;font-size:13px}.table>:not(caption)>*>*{padding:11px 12px}.form-control,.form-select{border-radius:9px;border-color:#d6dde4;padding:.65rem .75rem}.form-control:focus,.form-select:focus{border-color:#d71920;box-shadow:0 0 0 .2rem #d7192018}.form-label,label{font-size:12px;font-weight:700;color:#58636e}.empty-state{text-align:center;padding:35px;color:#8a96a1}.badge-soft{display:inline-flex;align-items:center;gap:5px;background:#f1f3f5;border-radius:999px;padding:5px 9px;font-size:11px;color:#596572}.badge-red{background:#fff0f1;color:#c51119}.badge-gold{background:#fff7df;color:#8b6914}.info-list{margin:0;padding:0;list-style:none}.info-list li{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #edf0f2;font-size:13px}.info-list li:last-child{border-bottom:0}.progress{height:8px;background:#edf0f2}.progress-bar{background:var(--red)}.chart-wrap{height:285px;padding:18px}.chart-grid{height:100%;display:flex;align-items:flex-end;gap:12px;border-bottom:1px solid #dce2e7;background:repeating-linear-gradient(to bottom,transparent 0,transparent 54px,#edf0f2 55px)}.bar-group{flex:1;height:100%;display:flex;align-items:flex-end;gap:3px}.bar{flex:1;border-radius:5px 5px 0 0;background:var(--red);min-height:4px}.bar.gold{background:var(--gold)}.bar.dark{background:#202a34}.chart-label{font-size:9px;color:#87929d;text-align:center;margin-top:7px}.staff-group{border:1px solid #e0e5e9;border-radius:12px;margin-bottom:14px;overflow:hidden;background:#fff}.staff-group-head{padding:12px 15px;background:#111820;color:#fff;font-weight:800;display:flex;align-items:center;justify-content:space-between}.staff-row{padding:12px 15px;border-top:1px solid #edf0f2;display:flex;align-items:center;gap:12px}.avatar{width:34px;height:34px;border-radius:50%;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-weight:800}.footer-note{font-size:11px;color:#8c98a3;text-align:center;padding:18px}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 15%,#3a0a0e 0,#0a0e13 40%,#05070a 100%)}.login-card{width:min(430px,92vw);background:#101720;color:#fff;border:1px solid #27323d;border-radius:18px;padding:30px!important;box-shadow:0 25px 70px #0008}.login-card .text-secondary{color:#99a7b4!important}.login-card .form-control{background:#0b1117;border-color:#2c3843;color:#fff}.login-card label{color:#b8c3cd}.login-logo{display:flex;align-items:center;gap:13px;margin-bottom:22px}.login-logo .brand-mark{width:55px;height:55px}.login-card h3{font-size:24px}.alert{border-radius:10px}.pagination .page-link{color:var(--red)}@media(max-width:900px){.sidebar{width:76px;flex-basis:76px;padding:12px 8px}.side-link{justify-content:center;padding:12px}.side-link span,.menu-title,.side-badge{display:none}.content{padding:18px}.brand-title{font-size:15px}.brand-sub{display:none}}@media(max-width:640px){.topbar{height:64px;padding:0 12px}.app-shell{min-height:calc(100vh - 64px)}.sidebar{position:fixed;left:0;top:64px;bottom:0;height:auto;z-index:900}.content{margin-left:76px;padding:15px 12px}.date-box{display:none}.top-pill{display:none}.page-title{font-size:21px}.stat-value{font-size:24px}}
@media print{.topbar,.sidebar,.page-head .btn,.no-print{display:none!important}.content{margin:0!important;padding:0!important}.panel,.card{box-shadow:none;border:1px solid #ccc}.app-shell{display:block}.content{width:100%}}
