/* no comments per instruction */
:root{--app-bg:#f7f9fc;--app-primary:#2563eb;--app-muted:#6b7280;--brand-start:#d6a57c;--brand-end:#b07c5f;--brand-text:#ffffff;--sidebar-bg:#fbf4ef;--sidebar-hover-bg:#f5ede7;--sidebar-active-bg:#b07c5f;--sidebar-active-border:#9a6b52}
body{background:var(--app-bg)}
.login-body{min-height:100vh}
.login-wrapper{min-height:100vh;display:grid;place-items:center;padding:16px}
.login-card{max-width:420px;width:100%;border:1px solid #e5e7eb}
.navbar{border-bottom:0;background:linear-gradient(90deg,var(--brand-start),var(--brand-end));box-shadow:0 4px 20px rgba(0,0,0,.12)}
.navbar .navbar-brand span{color:var(--brand-text);font-weight:600}
.list-group-item-action{padding:.75rem 1rem}
.table th,.table td{vertical-align:middle}
.is-invalid{border-color:#dc3545}
.list-group .list-group-item-action{border:0;border-radius:10px;margin:4px 10px;transition:background-color .15s ease,color .15s ease}
.list-group .list-group-item-action:hover{background:var(--sidebar-hover-bg)}
.list-group .list-group-item-action.active{background:var(--sidebar-active-bg);color:#fff;font-weight:600;border:1px solid var(--sidebar-active-border)}
.list-group .list-group-item-action.ps-4{margin-left:18px}
.badge{border-radius:999px;padding:.35rem .6rem;font-weight:600}
.badge.bg-secondary{background-color:#9ca3af}
.badge.bg-warning{background-color:#f59e0b}
.badge.bg-info{background-color:#06b6d4;color:#0b4a5a}
.card{border-radius:12px}
.btn{border-radius:8px}
.table{--bs-table-striped-bg:#f9fafb}
.table thead th{color:var(--app-muted);font-weight:600}
.offcanvas{position:fixed;top:0;left:0;width:320px;max-width:80vw;height:100vh;background:#fff;border-right:1px solid #e5e7eb;transform:translateX(-100%);transition:transform .3s ease;z-index:1045}
.offcanvas.show{transform:translateX(0)}
.navbar .btn-outline-primary{color:var(--brand-text);border-color:rgba(255,255,255,.7)}
.navbar .btn-outline-primary:hover{background:rgba(255,255,255,.15);color:var(--brand-text)}
.card,.list-group{box-shadow:0 6px 20px rgba(0,0,0,.06)}
.list-group{background-color:var(--sidebar-bg);border-radius:12px;padding:8px 0}
.sidebar-panel{background-color:var(--sidebar-bg)}
.login-card .card-header{background:linear-gradient(90deg,var(--brand-start),var(--brand-end));color:var(--brand-text);font-weight:600;display:flex;align-items:center;gap:.5rem}
.btn-primary{background-color:var(--brand-end);border-color:var(--brand-end);color:var(--brand-text)}
.btn-primary:hover{background-color:#9a6b52;border-color:#9a6b52}
