/* Site theme: an OMR answer sheet, like the home page. Linked after each page's own <style>, so it wins.
   One light look everywhere: the !important tokens override every page's light and dark palettes. */
:root{--paper:#f8f5ee!important;--ink:#1d1f21!important;--muted:#5d5a55!important;--rule:#e6d3d9!important;--card:#fffdf7!important;
  --navy:#13294b!important;--accent:#13294b!important;--accent-ink:#fff!important;--sel:#f7e6ec!important;--gold:#c8326a!important;--gold-hi:#f3cbd8!important;
  --soft:#f4ede3!important;--good:#1e7a46!important;--good-bg:#e5f3ea!important;--bad:#b3261e!important;--bad-bg:#fbe9e7!important;--warn:#8a5a00!important;
  --pink:#c8326a;color-scheme:only light!important}
body{background:#f8f5ee!important;color:#1d1f21;position:relative;overflow-x:hidden;min-height:100vh}
.omr{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.omr svg{position:absolute;left:0;top:0}

/* header: stacked লি logo, ক খ গ ঘ bubble nav */
.sitebar,body>.bar{background:transparent!important;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));border-bottom:1.4px solid rgba(200,50,106,.45);box-shadow:none}
/* কম্পিউটারে: হোমের মতো লোগো আর মেনু মাঝের ~১০০০px-এর কিনারে, বাঁয়ে OMR দাগের ওপর নয় */
@media (min-width:900px){.sitebar,body>.bar{padding-left:max(72px,calc((100% - 1000px)/2));padding-right:max(24px,calc((100% - 1000px)/2))}}
.sitebar>a:first-child,body>.bar>a:first-child{display:flex;flex-direction:column;align-items:center;text-decoration:none}
.sitebar>a:first-child img,body>.bar>a:first-child img{width:auto!important;height:44px!important;display:block}
.lgn-n{font:500 11.5px/1.2 'Lyanna Wordmark','Noto Sans Bengali',sans-serif;color:#2f6b3a;white-space:nowrap;margin-top:1px}
.sitebar nav,body>.bar nav.sec{display:flex;gap:4px 14px;flex-wrap:wrap}
.sitebar nav a,body>.bar nav.sec a{display:flex;align-items:center;gap:6px;color:#1d1f21!important;background:none!important;text-decoration:none;font:500 15px/1.3 'Noto Sans Bengali',sans-serif;padding:4px 0;border-radius:0}
.sitebar nav a::before,body>.bar nav.sec a::before{width:22px;height:22px;border:1.4px solid #c8326a;border-radius:50%;display:grid;place-items:center;font:12px/1 'Noto Sans Bengali',sans-serif;color:#c8326a;flex:none;transition:background .2s}
.sitebar nav a:nth-child(1)::before,body>.bar nav.sec a:nth-child(1)::before{content:"ক"}
.sitebar nav a:nth-child(2)::before,body>.bar nav.sec a:nth-child(2)::before{content:"খ"}
.sitebar nav a:nth-child(3)::before,body>.bar nav.sec a:nth-child(3)::before{content:"গ"}
.sitebar nav a:nth-child(4)::before,body>.bar nav.sec a:nth-child(4)::before{content:"ঘ"}
.sitebar nav a[aria-current]::before,.sitebar nav a:hover::before,body>.bar nav.sec a[aria-current]::before,body>.bar nav.sec a:hover::before{background:#1d1d1f;border-color:#1d1d1f;color:#f8f5ee}
@media (max-width:420px){.sitebar>a:first-child img,body>.bar>a:first-child img{height:38px!important}.sitebar nav,body>.bar nav.sec{gap:4px 9px}
  .sitebar nav a,body>.bar nav.sec a{font-size:13.5px;gap:4px}.sitebar nav a::before,body>.bar nav.sec a::before{width:19px;height:19px;font-size:10.5px}}
@media (max-width:350px){.lgn-n{display:none}.sitebar nav a,body>.bar nav.sec a{font-size:12.5px}}

/* type and links */
h1,h2,h3{color:#13294b;font-weight:600}
a{color:#13294b}

/* buttons: square-cornered like printed boxes */
.btn,.cta{border-radius:3px!important}
.btn:not(.ghost),.cta{background:#13294b;border-color:#13294b;color:#fff}
.btn.ghost{background:#fffdf7!important;border:1.4px solid #c8326a!important;color:#13294b!important}
.cta:hover,.btn:not(.ghost):hover{background:#1d3a66}

/* boxes: pink printed frames */
.fact,.tile,.card,.score{border-radius:3px!important;border-color:rgba(200,50,106,.45)!important;background:#fffdf7}
.fact b{color:#13294b}
.q{border-color:var(--rule)}
.chip{border-color:rgba(200,50,106,.45)}

/* navy bands become printed boxes on the sheet */
.hero,.card.big,.ch2,.pre,.end{background:#fffdf7!important;color:#13294b!important;border:1.6px solid #c8326a!important;border-radius:3px!important;box-shadow:0 2px 0 rgba(200,50,106,.12)}
.hero h1,.hero p,.card.big .m,.ch2 small,.pre h2,.pre p,.end h2,.end p{color:#13294b!important}
.hero p,.card.big .m,.ch2 small,.pre p,.end p{color:#5d5a55!important}
.card.big .go{color:#c8326a!important}
.ch2 .ic{background:#fffdf7!important;border:1.6px solid #c8326a;color:#c8326a!important}
.ch2:hover .ic{background:#1d1d1f!important;border-color:#1d1d1f;color:#fffdf7!important}
.ch2[aria-expanded="true"]{box-shadow:0 0 0 3px rgba(200,50,106,.3)!important}
.hero .fact,.card.big .fact{background:#f8f5ee}

/* answer options as OMR bubbles */
.opt{border-radius:3px!important;background:#fffdf7;align-items:center}
.opt .k{width:26px;height:26px;min-width:26px!important;border:1.4px solid #c8326a;border-radius:50%;display:inline-grid;place-items:center;color:#c8326a!important;font:13px/1 'Noto Sans Bengali',sans-serif!important;flex:none;transition:background .2s}
.opt:hover:not(:disabled){border-color:#c8326a!important}
.opt:hover:not(:disabled) .k{background:rgba(29,29,31,.1)}
.opt.sel{background:#fffdf7!important;border-color:#1d1d1f!important}
.opt.sel .k{background:#1d1d1f;border-color:#1d1d1f;color:#fffdf7!important}
.opt.right .k{background:#1e7a46;border-color:#1e7a46;color:#fff!important}
.opt.wrong .k{background:#b3261e;border-color:#b3261e;color:#fff!important}
.opt.right{background:var(--good-bg)!important}.opt.wrong{background:var(--bad-bg)!important}

/* sticky exam bar sits on paper */
#exam .bar,.bar{background:#f8f5ee}
@media (prefers-reduced-motion:reduce){.opt .k,.sitebar nav a::before{transition:none}}
.stats3 span{background:#f8f5ee!important;border:1px solid rgba(200,50,106,.3);border-radius:3px!important;color:#5d5a55!important}
.stats3 b{color:#13294b!important}
/* subject and exam tiles: the initials sit in answer bubbles */
.tile .ic{border-radius:50%!important;background:#fffdf7!important;border:1.4px solid #c8326a;color:#c8326a!important}
.tile.live .ic,.tile:hover .ic{background:#1d1d1f!important;border-color:#1d1d1f;color:#fffdf7!important}
.tile.off .ic{opacity:.6}
/* book and sample pages: undo their dark-mode text colours */
.tag,.tot,.price b{color:#13294b!important}

/* loading: a pencil goes straight to গ and fills it (js/omr.js swaps it in for "লোড হচ্ছে…") */
.omr-ld{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 0;color:#13294b;font:500 14px/1.4 'Noto Sans Bengali',sans-serif}
.omr-ld .lb{position:relative;display:inline-flex;gap:8px}
.omr-ld .b{position:relative;width:28px;height:28px;border:1.5px solid #c8326a;border-radius:50%;display:grid;place-items:center;font:13px/1 'Noto Sans Bengali',sans-serif;color:#c8326a}
.omr-ld .b::after{content:"";position:absolute;inset:2px;border-radius:50%;background:repeating-linear-gradient(118deg,#26262b 0 2px,#3b3b42 2px 3.2px,#2d2d33 3.2px 5px);clip-path:inset(0 100% 0 0)}
.omr-ld .b.g::after{animation:omrFill 2.4s infinite}
.omr-ld .pen{position:absolute;width:34px;height:34px;left:-7px;top:-27px;pointer-events:none;animation:omrPen 2.4s infinite}
@keyframes omrPen{0%{transform:translate(64px,-6px)}8%{transform:translate(86px,-4px)}10%{transform:translate(80px,9px)}15%{transform:translate(82px,19px)}20%{transform:translate(83px,9px)}25%{transform:translate(85px,19px)}30%{transform:translate(87px,9px)}35%{transform:translate(89px,19px)}40%{transform:translate(90px,9px)}45%{transform:translate(92px,19px)}55%,80%{transform:translate(100px,-10px)}100%{transform:translate(64px,-6px)}}
@keyframes omrFill{0%,9%{clip-path:inset(0 100% 0 0);opacity:1}45%,80%{clip-path:inset(0 0 0 0);opacity:1}100%{clip-path:inset(0 0 0 0);opacity:0}}
@media (prefers-reduced-motion:reduce){.omr-ld .pen,.omr-ld .b.g::after{animation:none}.omr-ld .b.g::after{clip-path:none}.omr-ld .pen{transform:translate(100px,-10px)}}
/* results: jump to the explanations */
.exp-jump{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0;padding:11px 14px;border:1.6px dashed #c8326a;border-radius:3px;background:#fbe7ef;color:#13294b!important;font:500 15px/1.4 'Noto Sans Bengali',sans-serif;text-decoration:none;text-align:center}
.exp-jump span{font-size:18px;color:#c8326a}
.exp-pill{position:fixed;z-index:40;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom,0px));border:0;border-radius:99px;background:#13294b;color:#fff;font:500 15px/1 'Noto Sans Bengali',sans-serif;padding:12px 20px;box-shadow:0 6px 16px rgba(19,41,75,.35);cursor:pointer}
.exp-pill span{margin-right:4px}
@media (prefers-reduced-motion:no-preference){.exp-pill:not([hidden]){animation:expUp .25s ease-out}}
@keyframes expUp{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}
/* বন্ধুকে চ্যালেঞ্জ (js/challenge.js): ফলের নিচের কার্ড */
.chx{margin:12px 0;border:1.6px solid #13294b;border-radius:3px;background:#fffdf7;padding:14px 14px 12px;box-shadow:4px 4px 0 #c8326a;text-align:left;font-family:'Noto Sans Bengali',sans-serif}
.chx-h{display:flex;gap:12px;align-items:flex-start}
.chx-h b{display:block;color:#13294b;font-size:18px;font-weight:600;line-height:1.35}
.chx-h small{display:block;color:#5d5a55;font-size:14px;line-height:1.5;margin-top:2px}
.chx-i{flex:none;width:38px;height:38px;border-radius:50%;border:1.6px solid #c8326a;color:#c8326a;display:grid;place-items:center;font-size:19px;line-height:1}
.chx-f{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:12px}
.chx-f label{flex:1 1 180px;display:flex;flex-direction:column;gap:3px;font-size:13px;color:#5d5a55;min-width:0}
.chx-f input{font:inherit;font-size:16px;color:#1d1f21;background:#fff;border:1.4px solid rgba(200,50,106,.55);border-radius:3px;padding:9px 10px;min-width:0}
.chx-f input:focus{outline:2px solid #c8326a;outline-offset:1px}
.chx-go,.chx-b{font:600 15px/1.2 'Noto Sans Bengali',sans-serif;border-radius:3px;padding:11px 16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.chx-go{background:#13294b;color:#fff;border:0;flex:1 1 140px}
.chx-go:disabled{opacity:.6}
.chx-e{margin:8px 0 0;color:#b3261e;font-size:14px}
.chx-s{margin-top:10px}
.chx-link{margin:0 0 8px;padding:8px 10px;border:1.3px dashed #c8326a;border-radius:3px;background:#fbe7ef;font:500 14px/1.4 ui-monospace,Menlo,monospace;color:#13294b;overflow-wrap:anywhere}
.chx-btns{display:flex;flex-wrap:wrap;gap:8px}
.chx-b{flex:1 1 120px;border:1.4px solid #13294b;background:#fff;color:#13294b!important}
.chx-b.wa{background:#1e7a46;border-color:#1e7a46;color:#fff!important}
.chx-b.fb{background:#1b4ea0;border-color:#1b4ea0;color:#fff!important}

/* হোভার: মাউস নিলে বোঝা যাবে কোনটা চাপা যায় (হাতের কার্সর + রং/উঁচু হওয়া); ফোনে ছোঁয়ার পর .btn একটু ডুবে যায় */
a,button,summary,[role=button],.chip,.tile,.oc,.tl,.ch2,.opt:not(:disabled){cursor:pointer}
button:disabled{cursor:default}
.btn,.chip,.tile,.oc,.tl,.ch2,.more,.cta,.chx-b,.sitebar nav a{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s}
.btn.ghost:hover{background:#fff1f5!important;border-color:#c8326a!important}
.btn:hover,.cta:hover,.more:hover,.chx-b:hover{box-shadow:0 2px 0 rgba(19,41,75,.25);transform:translateY(-1px)}
.btn:active,.cta:active,.more:active,.chx-b:active{transform:translateY(1px);box-shadow:none}
.chip:hover:not([aria-pressed="true"]){border-color:#c8326a!important;background:#fff1f5!important}
.tile:hover,.oc:hover,.tl:hover,.ch2:hover{border-color:#c8326a!important;box-shadow:0 3px 12px rgba(19,41,75,.1);transform:translateY(-1px)}
.more:hover{border-color:#c8326a!important;background:#fff1f5!important}
.exp .bl:hover,.sub a:hover,.crumb a:hover,.lh a:hover,p a:hover{text-decoration:underline}

/* সব লিংক-বোতামে একটাই সাধারণ হোভার (শ্রেণি যা-ই হোক): গোলাপি আভা + এক পিক্সেল উঁচু; লেখার ভেতরের সাধারণ লিংকে শুধু রং আর আন্ডারলাইন */
a,button,summary,[role=button]{transition:box-shadow .15s,transform .15s,color .15s,background-color .15s,border-color .15s}
a:hover,button:hover:not(:disabled),summary:hover,[role=button]:hover{box-shadow:0 0 0 3px rgba(200,50,106,.22)!important;transform:translateY(-1px)}
a:not([class]):hover,p a:hover,li a:hover,.exp a:hover,.sub a:hover,.crumb a:hover,.sitebar a:hover,.sitebar nav a:hover,footer a:hover{box-shadow:none!important;transform:none;color:#c8326a!important;text-decoration:underline;text-underline-offset:3px}
.sitebar nav a:hover,.sitebar a:hover{text-decoration:none;color:#fff!important}
.opt:hover:not(:disabled){transform:none}
