
:root{--sidebar:#1f2937;--accent:#198754;--soft:#f4f7f6}
body{background:var(--soft);font-family:Arial,Helvetica,sans-serif}
.sidebar{width:260px;min-height:100vh;background:var(--sidebar);position:fixed;top:0;left:0;padding:1rem;z-index:1000}
.sidebar .brand{color:#fff;font-size:1.25rem;font-weight:700;text-decoration:none;display:flex;align-items:center;gap:.6rem;margin-bottom:1.25rem}
.sidebar .brand-logo-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:clamp(72px,9vw,92px);background:#fff;border-radius:.65rem;padding:.4rem;overflow:hidden}
.sidebar .brand-logo{display:block;max-width:min(230px,100%);max-height:100%;width:auto;height:auto;object-fit:contain}
.sidebar .nav-link{color:#d1d5db;border-radius:.5rem;margin-bottom:.25rem}
.sidebar .nav-link:hover,.sidebar .nav-link.active{background:#374151;color:#fff}
.main{margin-left:260px;min-height:100vh}
.topbar{background:#fff;border-bottom:1px solid #e5e7eb;padding:.85rem 1.25rem;position:sticky;top:0;z-index:900}
.content{padding:1.5rem}
.card{border:0;box-shadow:0 2px 10px rgba(0,0,0,.06);border-radius:.85rem}
.stat-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#e8f5ee;color:var(--accent);font-size:1.4rem}
.table thead th{white-space:nowrap}
.form-section-title{font-size:1rem;font-weight:700;color:#374151;margin-bottom:1rem}
.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e8f5ee,#f8fafc)}
.login-card{width:min(430px,92vw)}
.login-logo{display:block;width:min(330px,100%);height:auto;margin:0 auto}
@media(max-width:991px){.sidebar{left:-260px;transition:.25s}.sidebar.show{left:0}.main{margin-left:0}.content{padding:1rem}}
