:root { --bg:#f5f7fb; --card:#fff; --ink:#1b2330; --muted:#5b6678; --brand:#0d3b66; --accent:#1d7a5f; --line:#dbe3ee; --err:#b3261e; }
@media (prefers-color-scheme: dark) { :root { --bg:#0f141c; --card:#171e29; --ink:#e8eef7; --muted:#9aa7bb; --brand:#8ab6ff; --accent:#5fd0a8; --line:#2a3545; --err:#ff8a80; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font:17px/1.65 "Noto Sans Bengali","Kalpurush","Siyam Rupali",system-ui,-apple-system,"Segoe UI",sans-serif; }
.wrap { max-width: 860px; margin: 0 auto; padding: 0 16px; }
.top { background:var(--card); border-bottom:1px solid var(--line); }
.top .wrap { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; padding-top:10px; padding-bottom:10px; }
.brand { color:var(--brand); text-decoration:none; } .brand span { color:var(--muted); font-size:.9em; margin-left:6px; }
nav a { margin-left:14px; color:var(--brand); text-decoration:none; font-weight:600; }
.hero h1 { color:var(--brand); font-size:1.6rem; margin:22px 0 4px; } .lead { color:var(--muted); margin-top:0; }
.card { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:16px; margin:14px 0; }
label { font-weight:600; display:block; margin-bottom:6px; }
textarea, input[type=search] { width:100%; font:inherit; color:inherit; background:var(--bg); border:1px solid var(--line); border-radius:8px; padding:10px; }
textarea:focus, input:focus { outline:2px solid var(--brand); }
.row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; } .row input[type=search] { flex:1 1 220px; }
.btn { display:inline-block; background:var(--brand); color:#fff; border:0; border-radius:8px; padding:10px 18px; font:inherit; font-weight:600; cursor:pointer; text-decoration:none; }
@media (prefers-color-scheme: dark) { .btn { color:#0f141c; } }
.btn.ghost { background:transparent; color:var(--brand); border:1px solid var(--line); }
.muted { color:var(--muted); font-size:.92em; } .err { color:var(--err); font-weight:600; }
.note { color:var(--muted); font-size:.9em; border-left:3px solid var(--accent); padding-left:10px; }
.section header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; align-items:baseline; }
.section h3 { margin:0; color:var(--brand); } .section h3 small { color:var(--muted); font-weight:400; margin-left:6px; }
.bar { width:120px; height:8px; background:var(--line); border-radius:6px; overflow:hidden; } .bar i { display:block; height:100%; background:var(--accent); }
dl { display:grid; grid-template-columns: 110px 1fr; gap:4px 12px; margin:12px 0 6px; } dt { color:var(--muted); font-weight:600; } dd { margin:0; }
.chips .chip { display:inline-block; background:var(--bg); border:1px solid var(--line); border-radius:99px; padding:0 10px; margin:2px 4px 2px 0; font-size:.9em; }
.list { list-style:none; padding:0 16px; } .list li { padding:10px 0; border-bottom:1px solid var(--line); } .list li:last-child { border-bottom:0; } .list .muted { display:block; }
details.sec summary { cursor:pointer; font-weight:600; } details.sec p { margin:10px 0 0; white-space:normal; }
.num { color:var(--muted); } .pager { display:flex; gap:12px; align-items:center; justify-content:center; margin:16px 0; } .actions { display:flex; gap:10px; flex-wrap:wrap; margin:16px 0; }
.foot { color:var(--muted); font-size:.85em; padding-bottom:28px; }
@media print { .top, .foot, .actions, form { display:none !important; } body { background:#fff; color:#000; font-size:12pt; } .card { border:1px solid #999; break-inside:avoid; } .bar { display:none; } }
