
* { box-sizing: border-box; }
body { font-family: Kalpurush, sans-serif; background:#f5f7fb; margin:0; color:#1f2937; }
.topbar { display:flex; justify-content:space-between; align-items:center; padding:12px 16px; background:#003366; color:#fff; }
.topbar nav a { color:#fff; margin-right:12px; text-decoration:none; }
.topbar nav a.danger { color:#ffdddd; }
.container { max-width:1100px; margin:20px auto; padding:0 12px; }
.card { background:#fff; padding:16px; border-radius:12px; box-shadow:0 4px 14px rgba(0,0,0,.05); margin-bottom:16px; }
.grid { display:grid; gap:16px; }
.grid.two { grid-template-columns: 1fr 1fr; }
.grid .stat { text-align:center; }
.stat-num { font-size:32px; font-weight:700; }
.stat-label { color:#6b7280; }
label { display:block; margin:8px 0; }
input, select, textarea, button { width:100%; padding:10px; border:1px solid #d1d5db; border-radius:8px; }
button { background:#2563eb; color:#fff; cursor:pointer; border:none; }
button.danger, a.danger { background:#b91c1c; color:#fff; padding:8px 10px; border-radius:8px; text-decoration:none; }
.error { color:#b91c1c; }
.info { color:#065f46; }
.inline input, .inline select { width:auto; }
fieldset { border:1px dashed #cbd5e1; border-radius:8px; margin-bottom:12px; padding:12px; }
.chip { display:inline-block; border:1px solid #cbd5e1; padding:6px 8px; margin:4px; border-radius:999px; }
.footer { text-align:center; padding:16px; color:#6b7280; }
@media (max-width: 900px){ .grid.two { grid-template-columns: 1fr; } }
/* ---- Print helpers ---- */
.no-print{ display:none !important; }
@media print { .no-print{ display:none !important; } }

/* Screen preview sizes */
.sheet { background:#fff; margin:0 auto; padding:12mm; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.sheet.A4 { width:210mm; }
.sheet.A5 { width:148mm; }
.sheet header h1 { margin:0 0 4px 0; font-size:20px; }
.sheet table { width:100%; border-collapse:collapse; }
.sheet th, .sheet td { border:1px solid #e5e7eb; padding:8px; text-align:left; }
.sheet tfoot td { font-weight:600; }
.print-toolbar { position:sticky; top:8px; display:flex; gap:8px; justify-content:flex-end; margin-bottom:8px; }
.print-toolbar a, .print-toolbar button{ padding:8px 10px; border-radius:8px; border:1px solid #d1d5db; background:#f8fafc; cursor:pointer; text-decoration:none; color:#111; }
.print-toolbar a.active{ background:#111827; color:#fff; border-color:#111827; }

/* Hide toolbar on paper */
@media print { .print-toolbar{ display:none !important; } }

/* Page size will be injected per page (A4/A5) */
/* --- Reports dropdown nav (scoped) --- */
/* Reports dropdown */
.mainnav { display:flex; align-items:center; gap:12px; }
.topbar .nav-dropdown { position:relative; }
.topbar .nav-btn {
  background:transparent; border:none; color:#fff; cursor:pointer;
  padding:8px 10px; border-radius:8px; font:inherit;
}
.topbar .nav-btn:hover { background:rgba(255,255,255,.12); }

/* ডিফল্টে হাইড */
.topbar .nav-dropdown .dropdown{
  position:absolute; top:100%; right:0; min-width: 540px;
  display:none !important;
  padding:12px; gap:18px;
  background:#fff; color:#111; border:1px solid #e5e7eb; border-radius:12px;
  box-shadow:0 16px 36px rgba(0,0,0,.12); z-index:1000;
}
.topbar .nav-dropdown.open .dropdown{ display:flex !important; }

.dd-col { min-width: 180px; }
.dd-head{ font-weight:700; font-size:12px; color:#374151; margin:4px 0 8px; text-transform:uppercase; }
.topbar .nav-dropdown .dropdown a{
  display:block; padding:8px 10px; border-radius:8px; color:#111827; text-decoration:none;
}
.topbar .nav-dropdown .dropdown a:hover{ background:#f3f4f6; }
