:root{--navy:#172554;--blue:#2563eb;--bg:#f4f6fb;--ink:#172033;--muted:#64748b;--line:#e5eaf2}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,-apple-system,"Noto Sans Bengali",sans-serif}
.topbar{background:var(--navy);color:white;padding:14px 4%;display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.brand{font-size:20px;font-weight:800;color:white;text-decoration:none}.topbar nav{display:flex;gap:16px;flex-wrap:wrap}.topbar nav a{color:#dbeafe;text-decoration:none;font-size:14px}
.container{max-width:1200px;margin:26px auto;padding:0 18px}.footer{text-align:center;color:var(--muted);padding:30px}
h1{font-size:26px;margin:0 0 18px}h2{font-size:19px;margin:0 0 12px}.muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.card,.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:0 4px 18px #17255408}
.metric{font-size:28px;font-weight:800;color:var(--navy)}.btn{border:0;border-radius:9px;background:var(--blue);color:white;padding:10px 15px;cursor:pointer;text-decoration:none;display:inline-block;font-weight:650}.btn.secondary{background:#eaf0ff;color:var(--navy)}.btn.danger{background:#b91c1c}
input,select,textarea{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:9px;background:white;font:inherit;margin:5px 0 12px}
label{font-weight:650;font-size:14px}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line)}th{background:#f8fafc}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.notice{padding:12px;border-radius:10px;background:#eff6ff;color:#1e40af;margin:12px 0}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.login{max-width:430px;margin:7vh auto}.pill{background:#e0f2fe;color:#075985;border-radius:99px;padding:3px 9px;font-size:12px}
@media(max-width:650px){.topbar{align-items:flex-start}.topbar nav{gap:10px}.container{margin:18px auto}h1{font-size:22px}}
