@font-face{font-family:"Kalpurush";src:local("Kalpurush"),url("fonts/Kalpurush.woff2") format("woff2"),url("fonts/Kalpurush.ttf") format("truetype");font-display:swap}
:root{--bg:#0b1e33;--card:#10294a;--card2:#0e2340;--line:#24507d;--tx:#e6edf5;--mut:#8fb4d9;--ac:#4cc3ff;--ok:#3ddc97;--warn:#ffb454;--bad:#ff6b6b}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(1200px 600px at 10% -10%,#16406b 0,transparent 60%),var(--bg);color:var(--tx);font-family:"Kalpurush","Noto Sans Bengali","Nirmala UI",system-ui,sans-serif;line-height:1.6;font-size:16px}
header{padding:28px 18px 8px;max-width:1240px;margin:auto}
h1{margin:0;font-size:clamp(22px,4vw,32px)}h1 small{display:block;font-size:14px;color:var(--mut);font-weight:400;margin-top:4px}
h2{font-size:18px;margin:0 0 12px;color:var(--ac)}
.wrap{max-width:1240px;margin:auto;padding:12px 18px 60px;display:grid;grid-template-columns:340px 1fr;gap:18px}
@media(max-width:900px){.wrap{grid-template-columns:1fr}}
.card{background:linear-gradient(180deg,var(--card),var(--card2));border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:16px}
aside .card{position:relative}
@media(min-width:901px){aside{position:sticky;top:12px;align-self:start;max-height:calc(100vh - 24px);overflow:auto}}
label{display:block;font-size:13px;color:var(--mut);margin:10px 0 4px}
input,select{width:100%;padding:9px 10px;border-radius:10px;border:1px solid var(--line);background:#0a1a30;color:var(--tx);font:inherit}
input:focus,select:focus{outline:2px solid var(--ac)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.chk{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--tx);margin:10px 0 0}.chk input{width:auto;margin-top:5px}
button{cursor:pointer;border:1px solid var(--ac);background:#12406a;color:#fff;border-radius:10px;padding:8px 14px;font:inherit;font-weight:600}
button.ghost{background:transparent;border-color:var(--line);color:var(--mut)}
.seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.seg button{padding:8px 4px;font-size:13px;background:transparent;border-color:var(--line);color:var(--mut)}.seg button.on{background:#12406a;color:#fff;border-color:var(--ac)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.kpi{background:#0a1a30;border:1px solid var(--line);border-radius:14px;padding:12px}.kpi b{display:block;font-size:22px}.kpi span{font-size:12px;color:var(--mut)}
.kpi.main b{color:var(--ok);font-size:26px}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:8px 8px;border-bottom:1px solid #1b3d63;text-align:right;vertical-align:top}
th:first-child,td:first-child{text-align:left}thead th{color:var(--mut);font-weight:500;font-size:12px}
td small{display:block;color:var(--mut);font-size:11px}
tfoot td{font-weight:700;border-top:2px solid var(--line)}
.scroll{overflow-x:auto}
tr.jump td{background:rgba(255,180,84,.12)}tr.base td{background:rgba(76,195,255,.14);font-weight:600}
.up{color:var(--bad)}.dn{color:var(--ok)}
.tip{border-left:3px solid var(--warn);background:rgba(255,180,84,.08);padding:10px 12px;border-radius:8px;font-size:13px;margin:10px 0}
.tip.ok{border-color:var(--ok);background:rgba(61,220,151,.08)}.tip.bad{border-color:var(--bad);background:rgba(255,107,107,.08)}
.lev{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.lev>div{background:#0a1a30;border:1px solid var(--line);border-radius:12px;padding:12px;font-size:13px}.lev b{color:var(--ac)}
svg{width:100%;height:auto}.note{font-size:12px;color:var(--mut)}
details summary{cursor:pointer;color:var(--ac);margin-top:10px}
@media print{aside,button{display:none}.wrap{display:block}body{background:#fff;color:#000}}

.hint{font-size:13px;color:var(--ok);margin-top:4px;min-height:18px}.hint.bad{color:var(--bad)}
.kpi b{white-space:nowrap}input,select{font-size:16px}th,td{font-size:15px}

.brand{display:flex;gap:14px;align-items:center}.brand img{border-radius:14px;box-shadow:0 4px 14px #0008}
.tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.tools button[hidden]{display:none}
footer{max-width:1240px;margin:0 auto;padding:18px 18px 40px;border-top:1px solid var(--line);display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:14px}
footer img{border-radius:10px}footer span{color:var(--mut);font-size:12px}footer details{flex-basis:100%;font-size:13px;color:var(--mut)}
dialog{background:var(--card);color:var(--tx);border:1px solid var(--ac);border-radius:16px;padding:18px;max-width:360px;width:90%}dialog::backdrop{background:#000a}
.shg{display:grid;grid-template-columns:1fr 1fr;gap:10px}.shg a,.shg button{display:block;text-align:center;padding:10px;border:1px solid var(--ac);border-radius:10px;color:#fff;text-decoration:none;background:#12406a;font:inherit}
body{padding-top:env(safe-area-inset-top)}
