:root{--oes-font:'Hind Siliguri','Noto Sans Bengali','Kalpurush','SolaimanLipi','Nirmala UI','Vrinda',system-ui,sans-serif;--oes-navy:#082f63;--oes-navy-deep:#062449;--oes-green:#14834b;--oes-orange:#f5a900;--oes-ink:#172b45;--oes-muted:#6b7a90;--oes-line:#e4eaf1;--oes-soft:#f4f7fb}
.oes-account,.oes-account *,.oes-account-shell,.oes-account-shell *,.oes-exam,.oes-exam *,.oes-catalog,.oes-catalog *,.oes-packages,.oes-packages *,.oes-dashboard,.oes-dashboard *,.oes-leaderboard,.oes-start,.oes-start *,.oes-result,.oes-result *,.oes-lb,.oes-lb *,.oes-package,.oes-package *{font-family:'Hind Siliguri',sans-serif}
.oes-account-shell{max-width:1180px;margin:28px auto 44px;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(500px,1.45fr);gap:28px;align-items:stretch;color:var(--oes-ink)}
.oes-auth-intro{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:540px;padding:44px 38px;border-radius:24px;background:linear-gradient(145deg,var(--oes-navy),var(--oes-navy-deep));color:#fff;box-shadow:0 20px 55px #082f632b}
.oes-auth-intro:after{content:"";position:absolute;width:300px;height:300px;right:-145px;bottom:-150px;border:42px solid #16a3655c;border-radius:50%;pointer-events:none}
.oes-auth-logo{display:block;width:210px;height:125px;object-fit:contain;object-position:left center;margin:0 0 18px;border-radius:10px}
.oes-auth-kicker{display:inline-flex;align-self:flex-start;margin:2px 0 12px;padding:7px 12px;border:1px solid #ffffff45;border-radius:99px;color:#d9f7e7;font-size:14px}
.oes-auth-intro h1{margin:4px 0 12px;color:#fff;font-size:clamp(28px,3vw,40px);line-height:1.25;font-weight:700}
.oes-auth-intro p{max-width:370px;color:#e5edf8;font-size:17px;line-height:1.7}
.oes-auth-intro ul{list-style:none;margin:18px 0 32px;padding:0;display:grid;gap:12px;color:#fff;font-size:16px}
.oes-auth-intro li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;margin-right:10px;border-radius:50%;background:var(--oes-green);color:white;font-size:13px}
.oes-auth-mark{margin-top:auto;color:#b9cce3;font-size:13px;letter-spacing:.05em}.oes-auth-mark b{color:var(--oes-orange)}
.oes-auth-content{display:flex;flex-direction:column;justify-content:center;min-width:0}
.oes-account{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.oes-auth-card{padding:26px 23px;border:1px solid var(--oes-line);border-radius:20px;background:#fff;box-shadow:0 14px 40px #17395c12}
.oes-auth-card-top{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px}.oes-auth-card h2{margin:0 0 3px;color:var(--oes-navy);font-size:23px;font-weight:700;line-height:1.35}.oes-auth-card-top p{margin:0;color:var(--oes-muted);font-size:14px}
.oes-auth-number{display:grid;place-items:center;flex:0 0 37px;height:37px;border-radius:12px;background:#eaf1fc;color:var(--oes-navy);font-weight:700}.oes-auth-number.oes-accent{background:#fff3d5;color:#8d5d00}
.oes-field{display:block;margin:0 0 14px}.oes-field>span{display:block;margin-bottom:5px;color:#283d56;font-size:14px;font-weight:600}.oes-field small{color:#7e8da2;font-size:12px;font-weight:400}
.oes-input{box-sizing:border-box;width:100%;min-height:46px;padding:10px 12px;border:1px solid #d9e1eb;border-radius:10px;background:#fff;color:var(--oes-ink);font-size:15px;transition:border-color .15s,box-shadow .15s}.oes-input::placeholder{color:#9aa7b7}.oes-input:focus{outline:0;border-color:#3578bd;box-shadow:0 0 0 3px #3578bd20}
.oes-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 18px;border:0;border-radius:11px;text-decoration:none;font-size:16px;font-weight:600;cursor:pointer;transition:transform .15s,filter .15s}.oes-button:hover{filter:brightness(1.04);transform:translateY(-1px)}.oes-button-primary{width:100%;margin-top:4px;background:var(--oes-navy);color:#fff}.oes-button-accent{width:100%;margin-top:8px;background:var(--oes-green);color:#fff}.oes-auth-footnote{margin:13px 0 0;color:var(--oes-muted);font-size:13px;line-height:1.55}
.oes-privacy-details{margin:0 0 8px;padding:10px 0;border-top:1px solid var(--oes-line);border-bottom:1px solid var(--oes-line)}.oes-privacy-details summary{color:var(--oes-navy);font-size:13px;font-weight:600;cursor:pointer}.oes-consent{display:flex;gap:8px;align-items:flex-start;color:var(--oes-muted);font-size:12px}.oes-consent input{margin-top:4px}
.oes-message{margin:0 0 16px;padding:12px 15px;border:1px solid #b8e1c6;border-left:4px solid var(--oes-green);border-radius:10px;background:#effaf2;color:#205b38;font-size:14px}
.oes-account-logged{display:flex;align-items:center;gap:16px;padding:18px;border-radius:14px;background:var(--oes-soft)}
.oes-packages article,.oes-catalog article{padding:20px;border:1px solid var(--oes-line);border-radius:14px;margin:12px 0;background:#fff}.oes-packages input,.oes-packages select{box-sizing:border-box;max-width:100%;width:100%;padding:10px;border:1px solid #d9e1eb;border-radius:9px}
.oes-packages button{padding:10px 18px;border:0;border-radius:9px;background:var(--oes-navy);color:#fff;cursor:pointer}
.oes-practice{margin:24px 0;padding:24px;border:1px solid var(--oes-line);border-radius:18px;background:linear-gradient(135deg,#f4f8ff,#fff);box-shadow:0 12px 32px #17395c0c}.oes-practice h2{margin:0 0 8px;color:var(--oes-navy);font-size:24px}.oes-practice form{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-top:18px}.oes-practice label{display:grid;gap:6px;min-width:160px;color:#283d56;font-weight:600}.oes-practice select{box-sizing:border-box;min-height:44px;max-width:100%;padding:9px 12px;border:1px solid #d9e1eb;border-radius:10px;background:#fff;color:var(--oes-ink);font:inherit}.oes-practice button{min-height:44px;padding:10px 18px;border:0;border-radius:10px;background:var(--oes-green);color:#fff;font:inherit;font-weight:600;cursor:pointer}.oes-practice button:hover{filter:brightness(1.05)}
@media(max-width:1000px){.oes-account-shell{grid-template-columns:1fr;max-width:760px}.oes-auth-intro{min-height:0;padding:32px}.oes-auth-intro ul{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:12px}.oes-auth-mark{margin-top:10px}}
@media(max-width:620px){.oes-account-shell{margin:14px auto 26px;gap:14px}.oes-auth-intro{padding:25px 22px;border-radius:18px}.oes-auth-logo{width:170px;height:98px}.oes-auth-intro h1{font-size:29px}.oes-auth-intro p{font-size:15px}.oes-account{grid-template-columns:1fr;gap:14px}.oes-auth-card{padding:22px 18px;border-radius:16px}.oes-auth-card h2{font-size:21px}}

/* ===================== Exam start, exam run & result ===================== */
:root{--oes-red:#c62828;--oes-red-soft:#fdeeee;--oes-green-soft:#effaf2}
.oes-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Start card */
.oes-start{max-width:560px;margin:20px auto;padding:26px;border:1px solid var(--oes-line);border-radius:18px;background:#fff;box-shadow:0 14px 40px #17395c12;color:var(--oes-ink)}
.oes-start-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.oes-chip-info{padding:6px 12px;border-radius:99px;background:var(--oes-soft);color:var(--oes-navy);font-size:14px;font-weight:600}
.oes-start-note{margin:0 0 14px;color:var(--oes-muted);font-size:14px}

/* Exam run */
.oes-exam{max-width:820px;margin:20px auto 40px;color:var(--oes-ink)}
.oes-exam-title{margin:0 0 14px;color:var(--oes-navy);font-size:24px;font-weight:700}
.oes-examhead{flex-wrap:wrap;position:sticky;top:var(--oes-sticky-top,10px);z-index:20;display:flex;align-items:center;gap:18px;margin:0 0 18px;padding:10px 16px;border:1px solid var(--oes-line);border-radius:14px;background:#fffffff2;box-shadow:0 8px 24px #17395c14}
.oes-timer{display:flex;flex-direction:column;flex:0 0 auto;min-width:96px;padding:6px 14px;border-radius:10px;background:#fff4d4;color:#6a4a00;line-height:1.2;transition:background .2s,color .2s}
.oes-timer small{font-size:12px;font-weight:500}
.oes-timer span{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}
.oes-timer.is-warn{background:#ffe3b3;color:#7a3d00}
.oes-timer.is-danger{background:#fde0e0;color:#a31515}
.oes-progress{flex:1;min-width:0}
.oes-progress-text{display:block;margin-bottom:6px;color:var(--oes-muted);font-size:14px}
.oes-progress-text b{color:var(--oes-navy)}
.oes-progress-bar{height:8px;border-radius:99px;background:#e8eef6;overflow:hidden}
.oes-progress-bar i{display:block;width:0;height:100%;border-radius:99px;background:var(--oes-green);transition:width .2s}

.oes-question{scroll-margin-top:calc(var(--oes-head-h,90px) + var(--oes-sticky-top,10px) + 14px);min-width:0;margin:0 0 16px;padding:0;border:1px solid var(--oes-line);border-radius:16px;background:#fff;overflow:hidden;transition:border-color .2s}
.oes-question.is-answered{border-color:#a9d9bf}
.oes-q-head,.oes-rq-head{display:flex;align-items:center;gap:10px;padding:11px 18px;border-bottom:1px solid var(--oes-line);background:#f8fafc}
.oes-q-num{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:var(--oes-navy);color:#fff;font-size:15px;font-weight:700}
.oes-q-type{color:var(--oes-muted);font-size:14px}
.oes-q-marks{margin-left:auto;color:var(--oes-muted);font-size:14px;font-weight:600}
.oes-q-body{padding:18px 20px 6px;font-size:18px;line-height:1.8}
.oes-q-body p{margin:0 0 12px}
.oes-q-body img{max-width:100%;height:auto;border-radius:8px}
.oes-q-answer,.oes-rq-answer{padding:6px 20px 20px}

/* MCQ options */
.oes-options{display:grid;gap:10px}
.oes-option{position:relative;display:flex;align-items:center;gap:12px;margin:0;padding:12px 14px;border:1px solid var(--oes-line);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
.oes-option:hover{border-color:#b7c9e0;background:#fafcff}
.oes-option input{position:absolute;opacity:0;pointer-events:none}
.oes-opt-letter{display:grid;place-items:center;flex:0 0 32px;height:32px;border:1.5px solid #b7c4d6;border-radius:50%;background:#fff;color:var(--oes-navy);font-size:15px;font-weight:700;transition:background .15s,border-color .15s,color .15s}
.oes-opt-text{flex:1;min-width:0;font-size:17px;line-height:1.6}
.oes-option input:checked+.oes-opt-letter{border-color:var(--oes-navy);background:var(--oes-navy);color:#fff}
.oes-option:has(input:checked){border-color:var(--oes-navy);background:#f1f6fd}
.oes-option input:focus-visible+.oes-opt-letter{outline:2px solid #3578bd;outline-offset:2px}

/* Written / creative answers */
.oes-textarea{min-height:130px;line-height:1.7;resize:vertical}
.oes-file input[type=file]{display:block;width:100%;box-sizing:border-box;padding:9px 12px;border:1px dashed #b7c4d6;border-radius:10px;background:#fafcff;color:var(--oes-muted);font-size:14px}
.oes-creative-parts{display:grid;gap:14px}
.oes-creative-part{padding:16px;border:1px solid var(--oes-line);border-radius:12px;background:#fff}
.oes-creative-part h4{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;color:var(--oes-ink);font-size:17px;font-weight:600;line-height:1.7}
.oes-part-badge{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--oes-navy);color:#fff;font-size:15px;font-weight:700}
.oes-part-q{flex:1;min-width:0}
.oes-creative-part h4 small{margin-left:auto;color:var(--oes-muted);font-size:13px;font-weight:600;white-space:nowrap}

/* Submit bar */
.oes-submitbar{position:sticky;bottom:0;z-index:15;margin-top:8px;padding:12px 0;background:linear-gradient(to top,#fff 70%,#fff0)}
.oes-submitbar .oes-button{margin:0}

/* Result */
.oes-result{max-width:860px;margin:20px auto 40px;color:var(--oes-ink)}
.oes-result-head{margin-bottom:20px;padding:24px;border:1px solid var(--oes-line);border-radius:18px;background:#fff;box-shadow:0 14px 40px #17395c12}
.oes-result-head h2{margin:0;color:var(--oes-navy);font-size:26px;font-weight:700}
.oes-result-title{margin:4px 0 18px;color:var(--oes-muted);font-size:16px}
.oes-score-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.oes-stat{padding:14px 16px;border-radius:12px;background:var(--oes-soft)}
.oes-stat b{display:block;color:var(--oes-navy);font-size:26px;font-weight:700;line-height:1.2}
.oes-stat span{color:var(--oes-muted);font-size:14px}
.oes-stat-main{background:var(--oes-navy)}
.oes-stat-main b,.oes-stat-main span{color:#fff}
.oes-stat.is-correct{background:var(--oes-green-soft)}.oes-stat.is-correct b{color:var(--oes-green)}
.oes-stat.is-wrong{background:var(--oes-red-soft)}.oes-stat.is-wrong b{color:var(--oes-red)}
.oes-result-note{margin:14px 0 0;padding:10px 14px;border-radius:10px;background:#fff8e1;color:#6a4a00;font-size:14px;line-height:1.6}
.oes-review{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.oes-rq{border:1px solid var(--oes-line);border-radius:16px;background:#fff;overflow:hidden}
.oes-rq.is-correct{border-color:#a9d9bf}.oes-rq.is-wrong{border-color:#efb8b8}
.oes-badge{padding:3px 10px;border-radius:99px;background:#e8eef6;color:#43546b;font-size:13px;font-weight:600}
.oes-rq.is-correct .oes-badge{background:#d8f1e2;color:#176a3d}
.oes-rq.is-wrong .oes-badge{background:#fbdada;color:#a31515}
.oes-rq.is-pending .oes-badge{background:#fff0c7;color:#7a5200}
.oes-rq.is-graded .oes-badge{background:#dce9fb;color:var(--oes-navy)}
.oes-ropts{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.oes-ropt{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--oes-line);border-radius:12px;background:#fff}
.oes-ropt em{margin-left:auto;font-size:13px;font-style:normal;font-weight:600;color:var(--oes-muted);white-space:nowrap}
.oes-ropt.is-chosen{border-color:var(--oes-navy);background:#f1f6fd}
.oes-ropt.is-chosen .oes-opt-letter{border-color:var(--oes-navy);background:var(--oes-navy);color:#fff}
.oes-ropt.is-right{border-color:#7fc9a0;background:var(--oes-green-soft)}
.oes-ropt.is-right .oes-opt-letter{border-color:var(--oes-green);background:var(--oes-green);color:#fff}
.oes-ropt.is-right em{color:var(--oes-green)}
.oes-ropt.is-miss{border-color:#eba3a3;background:var(--oes-red-soft)}
.oes-ropt.is-miss .oes-opt-letter{border-color:var(--oes-red);background:var(--oes-red);color:#fff}
.oes-ropt.is-miss em{color:var(--oes-red)}
.oes-explain,.oes-comment,.oes-answerbox{margin:0 0 12px;padding:12px 16px;border-radius:12px;font-size:15px;line-height:1.7}
.oes-explain{background:var(--oes-soft)}
.oes-answerbox{border:1px solid var(--oes-line);background:#fafcff}
.oes-answerbox p{margin:4px 0 0}
.oes-comment{border-left:4px solid var(--oes-orange);background:#fff9e6}
.oes-explain strong,.oes-comment strong,.oes-answerbox strong{display:block;margin-bottom:2px;color:var(--oes-navy);font-size:14px}
.oes-overall{margin-top:16px}

@media(max-width:620px){
  .oes-examhead{gap:12px;padding:8px 12px}.oes-timer{min-width:80px;padding:5px 10px}.oes-timer span{font-size:19px}
  .oes-q-body{padding:14px 14px 4px;font-size:17px}.oes-q-answer,.oes-rq-answer{padding:4px 14px 16px}
  .oes-q-head,.oes-rq-head{padding:10px 14px}.oes-result-head{padding:18px}.oes-start{padding:20px}
  .oes-ropt em{display:none}.oes-ropt.is-right em,.oes-ropt.is-chosen em{display:block;font-size:12px}
  .oes-creative-part h4{flex-wrap:wrap}.oes-creative-part h4 small{margin-left:40px}
}
@media(prefers-reduced-motion:reduce){.oes-exam *,.oes-start *{transition:none!important}}

/* ===================== Shared bits ===================== */
.oes-ico{flex:0 0 auto;vertical-align:-3px}
.oes-empty{margin:8px 0;padding:18px;border:1px dashed #c9d6e6;border-radius:12px;background:#fafcff;color:var(--oes-muted);font-size:15px}
.oes-empty a{color:var(--oes-navy);font-weight:600}
.oes-link-btn{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:1px solid #c9d6e6;border-radius:10px;background:#fff;color:var(--oes-navy);font-size:14px;font-weight:600;text-decoration:none}
.oes-link-btn:hover{border-color:var(--oes-navy);background:var(--oes-soft)}
.oes-q-body mjx-container[display="true"],.oes-rq-answer mjx-container[display="true"],.oes-opt-text mjx-container[display="true"]{max-width:100%;overflow-x:auto;overflow-y:hidden}

/* ===================== Model test catalog ===================== */
.oes-catalog{max-width:1000px;margin:20px auto;color:var(--oes-ink)}
.oes-catalog>h2{margin:0 0 14px;color:var(--oes-navy);font-size:24px;font-weight:700}
.oes-exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.oes-catalog .oes-exam-card{display:flex;flex-direction:column;gap:14px;margin:0;padding:18px;border:1px solid var(--oes-line);border-radius:16px;background:#fff}
.oes-exam-card.is-locked{background:#fafbfd}
.oes-exam-card-top{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.oes-exam-card h3{margin:0;font-size:19px;line-height:1.45;font-weight:700}
.oes-exam-card h3 a{color:var(--oes-navy);text-decoration:none}.oes-exam-card h3 a:hover{text-decoration:underline}
.oes-lock{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:99px;font-size:13px;font-weight:600}
.oes-lock.is-free{background:var(--oes-green-soft);color:#176a3d}
.oes-lock.is-open{background:#dce9fb;color:var(--oes-navy)}
.oes-lock.is-locked{background:#fff0c7;color:#7a5200}
.oes-exam-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;list-style:none;color:var(--oes-muted);font-size:14px}
.oes-exam-meta li{display:inline-flex;align-items:center;gap:6px}
.oes-exam-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:auto;padding:8px 16px;border-radius:11px;background:var(--oes-navy);color:#fff;font-size:15px;font-weight:600;text-decoration:none}
.oes-exam-cta:hover{filter:brightness(1.08);color:#fff}
.oes-exam-cta.is-ghost{border:1px solid #c9d6e6;background:#fff;color:var(--oes-navy)}.oes-exam-cta.is-ghost:hover{background:var(--oes-soft);color:var(--oes-navy)}

/* ===================== Packages ===================== */
.oes-packages{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px;max-width:1000px;margin:20px auto;color:var(--oes-ink)}
.oes-packages .oes-package{display:flex;flex-direction:column;gap:14px;margin:0;padding:22px;border-radius:18px;box-shadow:0 12px 32px #17395c0c}
.oes-package.is-active{border-color:#7fc9a0}
.oes-package-head{display:flex;flex-direction:column;gap:14px}
.oes-package-kind{display:inline-block;margin-bottom:6px;padding:3px 10px;border-radius:99px;background:var(--oes-soft);color:var(--oes-navy);font-size:13px;font-weight:600}
.oes-package-head h3{margin:0;color:var(--oes-ink);font-size:20px;line-height:1.4;font-weight:700}
.oes-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;padding:12px 0;border-top:1px solid var(--oes-line);border-bottom:1px solid var(--oes-line)}
.oes-price b{color:var(--oes-navy);font-size:40px;font-weight:700;line-height:1.1}
.oes-price b i{margin-right:2px;font-size:26px;font-style:normal;font-weight:600}
.oes-price b.is-free{color:var(--oes-green)}
.oes-price small{color:var(--oes-muted);font-size:14px}
.oes-package-desc{color:#2c4059;font-size:15px;line-height:1.7}.oes-package-desc>*:first-child{margin-top:0}.oes-package-desc>*:last-child{margin-bottom:0}
.oes-package-note{display:flex;align-items:flex-start;gap:8px;margin:0;padding:11px 14px;border-radius:10px;background:var(--oes-soft);color:#2c4059;font-size:14px;line-height:1.6}
.oes-package-note.is-active{background:var(--oes-green-soft);color:#176a3d}
.oes-package-note.is-pending{background:#fff8e1;color:#6a4a00}
.oes-packages .oes-button-accent{background:var(--oes-green);color:#fff}
.oes-packages .oes-button{border-radius:11px;font-size:16px}
.oes-pay{margin-top:auto}
.oes-pay>summary{box-sizing:border-box;list-style:none;cursor:pointer;margin:0}.oes-pay>summary::-webkit-details-marker{display:none}
.oes-pay[open]>summary{background:#fff;color:var(--oes-navy);border:1px solid #c9d6e6}
.oes-steps{counter-reset:oes-step;list-style:none;margin:16px 0 0;padding:0;display:grid;gap:18px}
.oes-steps>li{counter-increment:oes-step;position:relative;margin:0;padding:0 0 0 44px}
.oes-steps>li:before{content:counter(oes-step,bengali);position:absolute;left:0;top:0;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--oes-navy);color:#fff;font-size:15px;font-weight:700}
.oes-steps>li:not(:last-child):after{content:"";position:absolute;left:15px;top:36px;bottom:-14px;width:2px;background:var(--oes-line)}
.oes-step-title{margin:4px 0 10px;color:var(--oes-navy);font-size:16px;font-weight:700;line-height:1.4}
.oes-step-note{margin:0 0 12px;color:var(--oes-muted);font-size:14px;line-height:1.6}
.oes-payment-instructions{margin:0 0 8px;color:#2c4059;font-size:14px;line-height:1.7;white-space:pre-line}
.oes-payment-instructions:empty{display:none}
.oes-payment-instructions:not(:empty){padding:10px 14px;border-radius:10px;background:#fff8e1}
.oes-pay-amount{margin:6px 0 0;color:var(--oes-ink);font-size:15px}.oes-pay-amount b{color:var(--oes-navy);font-size:19px}

/* ===================== Dashboard ===================== */
.oes-dashboard{max-width:900px;margin:20px auto 40px;color:var(--oes-ink)}
.oes-dash-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.oes-dash-head h2{margin:0;color:var(--oes-navy);font-size:26px;font-weight:700}
.oes-chip-info .oes-ico{margin-right:6px}
.oes-dash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:26px}
.oes-dash-stats .oes-stat{padding:20px 22px}
.oes-dash-stats .oes-stat b{font-size:38px}
.oes-dash-stats .oes-stat span{display:block;margin-top:2px;font-size:14px}
.oes-dash-block{margin:0 0 26px}
.oes-dash-block h3,.oes-dash-settings h3{margin:0 0 12px;color:var(--oes-navy);font-size:20px;font-weight:700}
.oes-subj-bars{list-style:none;margin:0;padding:16px 18px;display:grid;gap:12px;border:1px solid var(--oes-line);border-radius:14px;background:#fff}
.oes-subj-bars li{display:grid;grid-template-columns:minmax(80px,170px) 1fr 62px;align-items:center;gap:12px;margin:0}
.oes-subj-name{font-size:15px;font-weight:600}
.oes-subj-track{height:10px;border-radius:99px;background:#e8eef6;overflow:hidden}.oes-subj-track i{display:block;height:100%;border-radius:99px;background:var(--oes-green)}
.oes-subj-bars b{color:var(--oes-navy);font-size:15px;text-align:right}
.oes-result-list,.oes-pay-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.oes-result-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px 18px;margin:0;padding:14px 18px;border:1px solid var(--oes-line);border-left-width:5px;border-radius:14px;background:#fff}
.oes-pay-list .oes-result-item{grid-template-columns:auto minmax(0,1fr) auto}
.oes-result-item.is-graded{border-left-color:var(--oes-green)}.oes-result-item.is-pending{border-left-color:var(--oes-orange)}.oes-result-item.is-late{border-left-color:var(--oes-red)}
.oes-result-mark{display:inline-flex;align-items:center;gap:6px;min-width:128px;font-size:14px;font-weight:600}
.oes-result-item.is-graded .oes-result-mark{color:#176a3d}.oes-result-item.is-pending .oes-result-mark{color:#7a5200}.oes-result-item.is-late .oes-result-mark{color:var(--oes-red)}
.oes-result-name{color:var(--oes-ink);font-size:16px;font-weight:600;line-height:1.5}
.oes-result-date{color:var(--oes-muted);font-size:13px}
.oes-result-score{text-align:right;line-height:1.3}.oes-result-score b{color:var(--oes-navy);font-size:22px}.oes-result-score b small{color:var(--oes-muted);font-size:14px;font-weight:500}.oes-result-score span{display:block;color:var(--oes-muted);font-size:13px}
.oes-result-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.oes-recheck{position:relative;text-align:right}.oes-recheck summary{color:var(--oes-muted);font-size:13px;cursor:pointer;list-style:none}.oes-recheck summary::-webkit-details-marker{display:none}.oes-recheck summary:hover{color:var(--oes-navy);text-decoration:underline}
.oes-recheck form{display:grid;gap:8px;width:min(280px,70vw);margin-top:8px;padding:12px;border:1px solid var(--oes-line);border-radius:12px;background:#fff;text-align:left}
.oes-recheck form .oes-button{width:100%;margin:0;min-height:40px}
.oes-recheck-state{color:#7a5200;font-size:13px}
.oes-dash-settings{margin-top:34px;padding:22px;border:1px solid var(--oes-line);border-radius:18px;background:var(--oes-soft)}
.oes-dash-settings h3 .oes-ico{margin-right:8px}
.oes-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.oes-setting-card{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--oes-line);border-radius:14px;background:#fff}
.oes-setting-card h4{margin:0 0 6px;color:var(--oes-ink);font-size:16px;font-weight:700}
.oes-setting-card .oes-button{margin-top:auto;width:auto;align-self:flex-start}
.oes-setting-card .oes-consent{margin:0 0 10px;font-size:14px}

/* ===================== Leaderboard ===================== */
.oes-lb{max-width:760px;margin:20px auto 40px;color:var(--oes-ink)}
.oes-lb-me{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:0 0 18px;padding:14px 20px;border:2px solid var(--oes-navy);border-radius:16px;background:#f1f6fd}
.oes-lb-me-rank{display:flex;flex-direction:column;line-height:1.2}.oes-lb-me-rank small{color:var(--oes-muted);font-size:13px}.oes-lb-me-rank b{color:var(--oes-navy);font-size:34px}
.oes-lb-me-main{display:flex;flex-direction:column;line-height:1.3}.oes-lb-me-main b{font-size:22px;color:var(--oes-ink)}.oes-lb-me-main span{color:var(--oes-muted);font-size:14px}
.oes-lb-me-note{flex:1 1 100%;margin:0;color:#6a4a00;font-size:13px}
.oes-lb-me-none{margin:0 0 18px;padding:12px 16px;border-radius:12px;background:var(--oes-soft)}
.oes-podium{list-style:none;margin:0 0 20px;padding:0;display:flex;justify-content:center;align-items:flex-end;gap:14px}
.oes-podium-item{flex:1 1 0;max-width:230px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;margin:0;padding:18px 12px 16px;border:1px solid var(--oes-line);border-radius:18px;background:#fff;text-align:center}
.oes-podium-item.is-r1{order:2;padding-top:30px;padding-bottom:24px;border-color:#f0c35a;background:linear-gradient(#fff9e6,#fff)}
.oes-podium-item.is-r2{order:1}.oes-podium-item.is-r3{order:3}
.oes-podium-item.is-me{box-shadow:0 0 0 2px var(--oes-navy)}
.oes-podium-rank{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e8eef6;color:var(--oes-navy);font-size:16px;font-weight:700}
.oes-podium-item.is-r1 .oes-podium-rank{background:var(--oes-orange);color:#3a2800}
.oes-podium-item.is-r2 .oes-podium-rank{background:#c9d2de}.oes-podium-item.is-r3 .oes-podium-rank{background:#e6c3a0;color:#4a2b0a}
.oes-avatar{display:grid;place-items:center;width:52px;height:52px;margin:6px 0 2px;border-radius:50%;background:var(--oes-navy);color:#fff;font-size:22px;font-weight:700}
.oes-podium-item.is-r1 .oes-avatar{width:62px;height:62px;font-size:26px}
.oes-podium-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.oes-podium-name em{color:var(--oes-muted);font-size:13px;font-style:normal;font-weight:500}
.oes-podium-pct{color:var(--oes-navy);font-size:24px;font-weight:700;line-height:1.2}
.oes-podium-item small{color:var(--oes-muted);font-size:13px}
.oes-leaderboard{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--oes-line);border-radius:14px;overflow:hidden;background:#fff}
.oes-leaderboard th{padding:10px 16px;background:#f8fafc;color:var(--oes-muted);font-size:14px;font-weight:600;text-align:left}
.oes-leaderboard td{padding:12px 16px;border-top:1px solid var(--oes-line);font-size:16px}
.oes-leaderboard td:first-child{width:76px;color:var(--oes-navy);font-weight:700}
.oes-leaderboard small{color:var(--oes-muted);font-size:13px}
.oes-leaderboard tr.is-me td{background:#f1f6fd;font-weight:600}
.oes-leaderboard em{color:var(--oes-muted);font-size:13px;font-style:normal}

/* ===================== In-exam navigator and flags ===================== */
.oes-navtoggle{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;min-height:44px;padding:6px 14px;border:1px solid #c9d6e6;border-radius:11px;background:#fff;color:var(--oes-navy);font:inherit;font-size:15px;font-weight:600;cursor:pointer}
.oes-navtoggle[hidden],.oes-flag[hidden],.oes-navnext[hidden],.oes-navpanel[hidden]{display:none}
.oes-navtoggle:hover,.oes-navtoggle[aria-expanded="true"]{border-color:var(--oes-navy);background:var(--oes-soft)}
.oes-navtoggle.has-flags{box-shadow:inset 0 -3px 0 var(--oes-orange)}
.oes-navpanel{flex:0 0 100%;max-height:44vh;overflow:auto;padding-top:12px;border-top:1px solid var(--oes-line)}
.oes-navgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:8px}
.oes-nav-btn{min-height:44px;padding:0;border:1.5px solid #c9d6e6;border-radius:10px;background:#fff;color:var(--oes-ink);font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
.oes-nav-btn:hover{border-color:var(--oes-navy)}
.oes-nav-btn.is-answered{border-color:#7fc9a0;background:var(--oes-green-soft);color:#176a3d}
.oes-nav-btn.is-flagged{border-color:var(--oes-orange);background:#fff4d4;color:#6a4a00;box-shadow:inset 0 -4px 0 var(--oes-orange)}
.oes-nav-btn.is-current{outline:2.5px solid var(--oes-navy);outline-offset:1px}
.oes-navfoot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-top:12px}
.oes-navlegend{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 14px;color:var(--oes-muted);font-size:13px}
.oes-navlegend i{display:inline-block;width:14px;height:14px;margin-right:4px;vertical-align:-2px;border:1.5px solid #c9d6e6;border-radius:4px;background:#fff}
.oes-navlegend i.is-answered{border-color:#7fc9a0;background:var(--oes-green-soft)}.oes-navlegend i.is-flagged{border-color:var(--oes-orange);background:#fff4d4}
.oes-navnext{min-height:40px;padding:6px 14px;border:0;border-radius:10px;background:var(--oes-orange);color:#3a2800;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.oes-flag{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 12px;border:1px solid #c9d6e6;border-radius:99px;background:#fff;color:var(--oes-muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.oes-flag:hover{border-color:var(--oes-orange);color:#6a4a00}
.oes-flag[aria-pressed="true"]{border-color:var(--oes-orange);background:#fff4d4;color:#6a4a00}
.oes-flag[aria-pressed="true"] .oes-ico{fill:var(--oes-orange)}
.oes-question.is-flagged{border-color:var(--oes-orange);box-shadow:inset 5px 0 0 var(--oes-orange)}
.oes-nav-btn:focus-visible,.oes-navtoggle:focus-visible,.oes-flag:focus-visible,.oes-navnext:focus-visible,.oes-exam-cta:focus-visible,.oes-link-btn:focus-visible{outline:2px solid #3578bd;outline-offset:2px}

@media(max-width:720px){
  .oes-result-item{grid-template-columns:1fr auto;gap:8px 12px}
  .oes-result-mark{grid-column:1 / -1;min-width:0}
  .oes-result-actions{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between}
  .oes-pay-list .oes-result-item{grid-template-columns:1fr}
  .oes-subj-bars li{grid-template-columns:1fr 54px;gap:6px 10px}.oes-subj-track{grid-column:1 / -1;order:3}
  .oes-podium{gap:8px}.oes-podium-item{padding:14px 6px 12px}.oes-avatar{width:42px;height:42px;font-size:18px}.oes-podium-item.is-r1 .oes-avatar{width:50px;height:50px}.oes-podium-pct{font-size:19px}.oes-podium-name{font-size:14px}
  .oes-navtoggle span{display:none}.oes-navtoggle{padding:6px 12px}
  .oes-flag span{display:none}.oes-flag{padding:4px 10px}
  .oes-navpanel{max-height:38vh}
  .oes-price b{font-size:34px}
}
@media(prefers-reduced-motion:reduce){.oes-nav-btn,.oes-flag{transition:none!important}}

.oes-setting-card .oes-button,.oes-recheck .oes-button,.oes-exam-cta{box-sizing:border-box}

/* Written-answer photo: required; typed answer: optional */
.oes-req-tag{color:#c62828;font-style:normal;font-weight:700;font-size:13px;margin-left:6px}
.oes-opt-tag{color:var(--oes-muted);font-style:normal;font-weight:400;font-size:13px}
.oes-file-note{display:block;margin-top:6px;color:var(--oes-muted);font-size:13px}
.oes-file.is-missing input[type=file]{border:2px solid #c62828;background:#fff6f6}
.oes-file.is-missing .oes-file-note{color:#c62828}

/* ---------- Bengali typography: one good font everywhere in the student panel ---------- */
[class*="oes-"],[class*="oes-"] *:not(mjx-container):not(mjx-container *){font-family:var(--oes-font)}
[class*="oes-"] :is(input,select,textarea,button){font-family:var(--oes-font)}
[class*="oes-"] :is(h1,h2,h3,h4,h5){line-height:1.45;letter-spacing:0;font-feature-settings:"liga" 1,"kern" 1}
[class*="oes-"] :is(p,li,label,td,th,span){letter-spacing:0}
.oes-account-shell,.oes-exam,.oes-start,.oes-result,.oes-dashboard,.oes-catalog,.oes-packages,.oes-practice,.oes-lb,.oes-leaderboard{line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.oes-practice label,.oes-practice select,.oes-practice input,.oes-practice button,.oes-practice p,.oes-practice h2{font-size:16px}
.oes-practice h2{font-size:24px}

/* ---------- Per-type question counts ---------- */
.oes-practice-counts{flex:1 1 100%}
.oes-counts{margin:4px 0 2px;padding:16px 18px;border:1px solid var(--oes-line);border-radius:14px;background:#fff}
.oes-counts-title{margin:0 0 10px;color:var(--oes-navy);font-size:16px;font-weight:700}
.oes-count-row{display:flex!important;align-items:center;justify-content:space-between;gap:14px;padding:8px 0;border-top:1px solid var(--oes-line);min-width:0!important}
.oes-counts-title+.oes-count-row{border-top:0}
.oes-count-name{font-size:16px;font-weight:600;color:var(--oes-ink)}
.oes-count-name small{color:var(--oes-muted);font-weight:400;font-size:13px}
.oes-count-input{width:96px!important;flex:0 0 96px;text-align:center;font-size:17px;font-weight:600}
.oes-count-total{margin:10px 0 0;padding:9px 12px;border-radius:10px;background:var(--oes-soft);color:var(--oes-navy);font-size:15px;font-weight:600}
.oes-count-total.is-warn{background:#fff4f4;color:#9b1c1c}
.oes-count-empty{margin:0;color:var(--oes-muted);font-size:15px}
.oes-practice-actions{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:10px}
.oes-practice-actions .oes-secondary{background:#fff;color:var(--oes-navy);border:1px solid #c9d6e6}
.oes-practice-actions button:disabled{opacity:.5;cursor:not-allowed}
.oes-practice.oes-js .oes-js-hide{display:none}
.oes-start .oes-counts{margin:0 0 14px}
@media(max-width:520px){.oes-count-row{align-items:flex-start;flex-direction:column;gap:6px}.oes-count-input{width:100%!important;flex:1 1 auto}}

/* Dashboard section buttons */
.oes-dash-nav{display:flex;gap:8px;margin:0 0 22px;padding:0 0 4px;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.oes-dash-tab{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;min-height:44px;padding:9px 18px;border:1px solid var(--oes-line);border-radius:999px;background:#fff;color:var(--oes-navy);font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.oes-dash-tab:hover{background:var(--oes-soft)}
.oes-dash-tab:focus-visible{outline:3px solid #3578bd40;outline-offset:2px}
.oes-dash-tab.is-active{background:var(--oes-navy);border-color:var(--oes-navy);color:#fff}
.oes-dash-tab .oes-ico{width:1.1em;height:1.1em}
.oes-dash-badge{min-width:22px;padding:0 7px;border-radius:999px;background:var(--oes-orange);color:#3a2a00;font-style:normal;font-size:12px;font-weight:700;line-height:22px;text-align:center}
.oes-dash-panel[hidden]{display:none!important}
.oes-dash-nav{display:none}.oes-dash-js .oes-dash-nav{display:flex}
@media(max-width:620px){.oes-dash-tab{padding:8px 15px;font-size:14px}}

/* Practice: multi-select question categories */
.oes-tagpick{margin:14px 0 0;padding:0;border:0}
.oes-tagpick legend{padding:0;margin-bottom:8px;color:var(--oes-navy);font-weight:600}
.oes-tagpick legend small{color:var(--oes-muted);font-weight:400}
.oes-tagchip{display:inline-flex;margin:0 8px 8px 0;cursor:pointer}
.oes-tagchip input{position:absolute;opacity:0;pointer-events:none}
.oes-tagchip span{display:inline-block;padding:6px 15px;border:1px solid var(--oes-line);border-radius:999px;background:#fff;color:var(--oes-ink);font-size:14px;transition:background .15s,color .15s}
.oes-tagchip input:checked+span{background:var(--oes-navy);border-color:var(--oes-navy);color:#fff;font-weight:600}
.oes-tagchip input:focus-visible+span{outline:3px solid #3578bd40;outline-offset:2px}

/* Dashboard: progress chart, weak chapters, mistakes hint */
.oes-chart-wrap{padding:16px 16px 10px;border:1px solid var(--oes-line);border-radius:16px;background:#fff}
.oes-chart{display:block;width:100%;height:auto}
.oes-chart .g{stroke:var(--oes-line);stroke-width:1}
.oes-chart .l{fill:none;stroke:var(--oes-navy);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.oes-chart .a{fill:var(--oes-navy);opacity:.07}
.oes-chart .d{fill:#fff;stroke:var(--oes-navy);stroke-width:2.5}
.oes-chart .d.last{fill:var(--oes-green);stroke:var(--oes-green)}
.oes-chart text{fill:var(--oes-muted);font-size:11px;font-family:inherit}
.oes-chart-note{margin:8px 2px 2px;color:var(--oes-muted);font-size:14px}
.oes-chart-note b.up{color:var(--oes-green)}.oes-chart-note b.down{color:#b3261e}
.oes-weak-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.oes-weak-item{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center;padding:14px 16px;border:1px solid var(--oes-line);border-radius:14px;background:#fff}
.oes-weak-name{color:var(--oes-ink);font-weight:600}.oes-weak-name small{display:block;color:var(--oes-muted);font-weight:400;font-size:13px}
.oes-weak-bar{grid-column:1/2;height:8px;border-radius:99px;background:var(--oes-soft);overflow:hidden}
.oes-weak-bar i{display:block;height:100%;border-radius:99px;background:var(--oes-orange)}
.oes-weak-stat{grid-column:1/2;color:var(--oes-muted);font-size:13px}
.oes-weak-item .oes-link-btn{grid-column:2/3;grid-row:1/4;align-self:center;white-space:nowrap}
.oes-hint-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 0 26px;padding:14px 18px;border:1px solid #f1d38a;border-radius:14px;background:#fff8e6;color:#5c4300}
.oes-hint-card button{min-height:40px;padding:8px 16px;border:0;border-radius:10px;background:var(--oes-navy);color:#fff;font:inherit;font-weight:600;cursor:pointer}
@media(max-width:520px){.oes-weak-item{grid-template-columns:1fr}.oes-weak-item .oes-link-btn{grid-column:1;grid-row:auto}}
.oes-setting-card .oes-textarea{min-height:84px}
.oes-print-link{margin:4px 0 14px}

.oes-package-subjects{margin:8px 0 0;color:var(--oes-muted);font-size:14px}.oes-package-subjects b{color:var(--oes-navy)}

/* Dashboard quick actions */
.oes-dash-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0 0 20px}
.oes-action{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:14px;text-decoration:none;color:#fff;transition:transform .15s,filter .15s,box-shadow .15s;box-shadow:0 6px 18px #082f6322}
.oes-action:hover{transform:translateY(-2px);filter:brightness(1.05);color:#fff}
.oes-action:focus-visible{outline:3px solid #3578bd66;outline-offset:2px}
.oes-action-exam{background:linear-gradient(135deg,var(--oes-navy),#0d4a94)}
.oes-action-pkg{background:linear-gradient(135deg,var(--oes-green),#1ba35f)}
.oes-action-ico{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:#ffffff26;font-size:20px;line-height:1}
.oes-action b{display:block;font-size:17px;font-weight:700;line-height:1.3}
.oes-action small{display:block;font-size:13px;opacity:.85}

/* Student login / sign-up as tabs */
.oes-account.oes-tabs{display:block;padding:12px 12px 6px;border:1px solid var(--oes-line);border-radius:22px;background:#fff;box-shadow:0 14px 40px #17395c12}
.oes-tablist{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 18px;padding:6px;border-radius:16px;background:#eef2f7}
.oes-tab{display:block;padding:13px 10px;border-bottom:3px solid transparent;border-radius:12px;color:#51627a;font-size:18px;font-weight:700;text-align:center;text-decoration:none!important;transition:background .15s,color .15s}
.oes-tab:hover{color:var(--oes-navy)}
.oes-tab.is-active{background:#fff;border-bottom-color:var(--oes-orange);color:var(--oes-ink);box-shadow:0 2px 8px #17395c14}
.oes-tabs .oes-tabpanel{display:none;padding:6px 8px 14px;border:0;border-radius:0;background:transparent;box-shadow:none}
.oes-tabs .oes-tabpanel.is-active{display:block}
.oes-remember{display:flex;align-items:center;gap:8px;margin:0 0 16px;color:var(--oes-ink);font-size:15px;font-weight:600;cursor:pointer}
.oes-remember input{width:18px;height:18px;margin:0}
.oes-tabs .oes-auth-footnote{margin:16px 0 0;text-align:center}.oes-tabs .oes-auth-footnote a{color:#b34a00;font-weight:600}
.oes-tabs .oes-button{width:100%}
@media(max-width:620px){.oes-account.oes-tabs{padding:8px 8px 2px;border-radius:18px}.oes-tab{font-size:16px;padding:11px 6px}}
