:root{
  --brand-blue:#0d47a1;
  --brand-red:#d32f2f;
  --brand-white:#ffffff;
  --brand-soft:#f5f7fb;
}
body{background:var(--brand-soft);font-family:Arial,Helvetica,sans-serif;}
.login-page{background:linear-gradient(135deg,#0d47a1,#d32f2f);}
.brand-header{background:linear-gradient(135deg,#0d47a1,#d32f2f);color:#fff;}
.btn-brand{background:#0d47a1;color:#fff;border:none;}
.btn-brand:hover{background:#09367c;color:#fff;}
.app-shell{display:flex;min-height:100vh;}
.sidebar{width:260px;background:linear-gradient(180deg,#0d47a1,#d32f2f);color:#fff;padding:18px 14px;position:sticky;top:0;height:100vh;overflow:auto;}
.sidebar-brand{font-size:1.3rem;font-weight:700;margin-bottom:18px;color:#fff;}
.sidebar .nav-link{color:rgba(255,255,255,.95);border-radius:10px;padding:10px 12px;margin-bottom:4px;}
.sidebar .nav-link:hover{background:rgba(255,255,255,.12);}
.main-content{flex:1;padding:20px;}
.topbar{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:16px;padding:16px 18px;margin-bottom:18px;box-shadow:0 4px 12px rgba(0,0,0,.05);}
.stat-card{border:none;border-radius:16px;box-shadow:0 4px 10px rgba(0,0,0,.05);}
.stat-number{font-size:1.5rem;font-weight:700;color:#0d47a1;}
.card{border:none;border-radius:16px;}
.table td,.table th{vertical-align:middle;}
.form-section{background:#fff;padding:18px;border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.05);}
.badge-status{padding:8px 10px;border-radius:20px;}
.action-btns .btn{margin-right:4px;margin-bottom:4px;}
@media (max-width: 991px){
  .app-shell{flex-direction:column;}
  .sidebar{width:100%;height:auto;position:relative;}
}
