
:root{color-scheme:light;--blue:#1762ad;--ink:#172c44;--muted:#536a80;--line:#d9e6f2;--bg:#f2f7fb;--good:#145b48;--warn:#84510e}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 'Anek Bangla',sans-serif}button,input,select,textarea{font:inherit}
.wrap{max-width:900px;margin:0 auto;padding:16px 14px 65px}header{background:linear-gradient(115deg,#11509c,#287ac7);color:#fff;padding:23px;border-radius:18px;margin:8px 0 18px}
header h1{font-size:26px;margin:0}header p{margin:3px 0 0}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin:14px 0;box-shadow:0 3px 15px #133b6108}
h2{font-size:22px;line-height:1.35;margin:0 0 12px}h3{font-size:18px;margin:12px 0}p{margin:8px 0}.muted{color:var(--muted)}.hidden{display:none!important}
label{font-weight:600;display:block;margin:12px 0 5px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #afc4d6;border-radius:9px;background:#fff;color:var(--ink)}
button{border:0;background:var(--blue);color:#fff;border-radius:9px;padding:10px 16px;cursor:pointer;font-weight:700;min-height:44px}
button:disabled{opacity:.5;cursor:wait}.ghost{background:#e8f1fb;color:#125394}.danger{background:#9d3434}.row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.row>*{flex:none}
.notice{background:#fff3da;border-left:4px solid #bf842b;border-radius:8px;padding:12px 15px}.success{background:#e9f7ef;border-left-color:#2b8a5f}.error{background:#fff0ef;border-left-color:#ba3a3a}
.questionCard{border:1px solid var(--line);border-radius:13px;padding:18px;margin:15px 0;background:#fff;scroll-margin-top:12px}.questionCard h3{margin:0 0 10px}.questionCard.saved{border-color:#9bcdb5}.choice{display:flex;align-items:flex-start;gap:11px;width:100%;margin:8px 0;text-align:left;background:#fff;color:var(--ink);border:1px solid #b9cad9;font-weight:500}.choice:hover,.choice.selected{border-color:var(--blue);background:#e7f2fc}.choice.locked{background:#e5f4eb;border-color:#23805e}.radio{flex:none;width:21px;height:21px;margin-top:2px;border-radius:50%;border:2px solid #7692ac;background:#fff}.choice.selected .radio,.choice.locked .radio{border-color:#1762ad;background:#1762ad;box-shadow:inset 0 0 0 4px #fff}.questionStatus{font-size:13px;color:var(--muted);min-height:20px}.count{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}
.examTop{position:sticky;top:0;background:#fff;z-index:2;border-bottom:1px solid var(--line);padding:8px 0}.jump{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.jump button{width:38px;min-height:38px;padding:5px;border-radius:50%;background:#edf3f9;color:#174e92}.jump button.done{background:#145b48;color:#fff}.jump button.waiting{background:#fff1d8;color:#734c06}.jump button:disabled{opacity:1;cursor:pointer}
.pill{background:#e8f2fb;border-radius:20px;padding:3px 10px;color:#145793;font-size:13px}.exam{border-top:1px solid var(--line);padding:13px 0}.exam:first-child{border-top:0}
.resultItem{padding:12px 0;border-top:1px solid var(--line)}.correct{color:var(--good);font-weight:700}.wrong{color:#ac3333;font-weight:700}
.resultHero{background:linear-gradient(115deg,#e9f4ff,#f2faf6);border:1px solid var(--line);border-radius:14px;padding:18px;margin:12px 0 17px}.resultHero .count{font-size:36px;color:#145793}.resultHero p{margin:5px 0}.resultGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.resultStat{border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff}.resultStat strong{display:block;font-size:21px}.resultStat span{font-size:13px;color:var(--muted)}
.reportBrand{color:#125394;font-size:19px;font-weight:700;letter-spacing:.01em;border-bottom:2px solid #1762ad;padding:0 0 8px;margin:0 0 14px}
.adminGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
@media(max-width:550px){.card{padding:17px}header{padding:19px}.row button{flex:1}.resultGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@page{size:A4;margin:15mm}
@media print {body{background:#fff;color:#172c44}header,#message,#login,#adminLogin,#home,#instructions,#taking,#admin,#pdfBtn,.top button{display:none!important}.wrap{max-width:100%;padding:0}.card{border:0;box-shadow:none;padding:0;margin:0}.resultGrid,.resultHero{break-inside:avoid}.resultItem{break-inside:avoid;page-break-inside:avoid}.resultHero{background:#eaf2fc!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
/* Version 6: a calmer, clearer exam workspace. */
:root{--blue:#1767b4;--ink:#182d43;--muted:#53677a;--line:#dbe6ef;--bg:#f5f8fc;--good:#176347}
body{line-height:1.62;-webkit-font-smoothing:antialiased}
.wrap{max-width:1020px;padding:18px 20px 76px}
header{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:23px 28px;box-shadow:0 8px 28px #153e6610;display:flex;align-items:center;justify-content:space-between;gap:12px}
header h1{color:#175caa;font-size:26px;letter-spacing:-.025em}header p{color:var(--muted);font-size:14px}
.brandMark{width:45px;height:45px;display:grid;place-items:center;border-radius:12px;background:#e9f3ff;color:#1767b4;font-size:23px;font-weight:700;flex:none}
.brandText{flex:1}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#2b6eae}
.card{border-radius:20px;padding:26px;margin:16px 0;box-shadow:0 8px 30px #1439550c}
h2{font-size:24px;letter-spacing:-.025em}h3{letter-spacing:-.01em}
button{transition:background .15s ease,box-shadow .15s ease,transform .15s ease;border-radius:10px;padding:11px 18px}
button:not(:disabled):hover{filter:brightness(.95);box-shadow:0 4px 12px #143b6322}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #84bafa;outline-offset:2px}
input,select,textarea{border-radius:10px;min-height:46px;max-width:100%}.ghost{background:#ebf3fd}
.loginLayout{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;min-height:290px}.loginNote{padding:22px;border-radius:17px;background:linear-gradient(145deg,#e9f4ff,#f0f8f5);border:1px solid #dceaf3}
.loginNote h3{margin:0 0 10px}.loginNote ul{padding-left:22px;margin:8px 0}.loginNote li{margin:6px 0}
.exam{border:1px solid var(--line);border-radius:15px;padding:18px;margin:12px 0;background:#fff}.exam:first-child{border-top:1px solid var(--line)}.exam p{color:var(--muted)}
.examTitle{font-size:18px}.examMeta{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 14px}
.examMeta span{border-radius:8px;background:#f1f6fb;padding:5px 9px;font-size:13px;color:#36546f}
.ruleGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.ruleTile{border:1px solid var(--line);border-radius:14px;padding:15px;background:#f9fbfd}.ruleTile strong{display:block;font-size:21px;color:#175caa}.ruleTile span{color:var(--muted);font-size:13px}
.ruleCallout{border-left:4px solid #1767b4;background:#eff6ff;border-radius:8px;padding:13px 16px;margin:16px 0}
.examTop{top:0;margin:-26px -26px 14px;padding:12px 26px;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 5px 13px #16375312;z-index:4}
.timerBlock{text-align:right;white-space:nowrap}.timerBlock small{display:block;color:var(--muted);font-size:12px;font-weight:600}.timerBlock.urgent{color:#b84332}
.timerBlock .count{font-variant-numeric:tabular-nums;font-size:25px;line-height:1.1}
.progressTrack{width:100%;height:7px;border-radius:99px;background:#e6eef6;overflow:hidden;margin:13px 0 7px}.progressTrack i{display:block;height:100%;background:#258766;width:0;transition:width .3s}
.palette{margin:14px 0 22px;background:#f8fbfe;border:1px solid var(--line);border-radius:13px;padding:9px 13px}
.palette summary{cursor:pointer;font-weight:700;color:#195b9a;min-height:32px}.palette[open]{padding-bottom:16px}
.jump{gap:6px;margin:12px 0 0}.jump button{width:38px;min-height:38px;padding:4px;font-size:14px;border-radius:9px;border:1px solid #c8d8e8}.jump button.done{border-color:#176347}.jump button.waiting{border-color:#c58c2c}
.paletteLegend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin-top:8px}
.paletteLegend b{width:10px;height:10px;border-radius:2px;display:inline-block;margin-right:4px;background:#dbe8f4}.paletteLegend .green{background:#176347}.paletteLegend .amber{background:#d69a35}
.questionCard{border:1px solid var(--line);border-radius:16px;padding:21px;margin:13px 0;box-shadow:0 3px 12px #193e6209;scroll-margin-top:122px}
.questionCard h3{font-size:18px;line-height:1.5;margin:0 0 14px}.questionCard.saved{border-color:#b8d9c7;background:#fafffc}
.choice{padding:12px 14px;border-color:#d5e0e9;border-radius:11px;margin:8px 0;min-height:48px;align-items:center}.choice:hover,.choice.selected{background:#eef6ff}.choice.locked{background:#edf8f1}.radio{margin-top:0}
.questionStatus{font-weight:600;padding-top:4px}.questionCard.saved .questionStatus{color:#176347}
.submitBar{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.submitBar button{width:100%}.submitBar p{font-size:13px}
.resultHero{padding:24px;background:linear-gradient(125deg,#e7f2ff,#edf9f3);border-radius:16px}.resultHero .count{font-size:42px}
.resultItem{border:1px solid var(--line);border-radius:12px;padding:15px 18px;margin:10px 0;break-inside:avoid}.resultItem p{margin:4px 0}.resultGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.reportBrand{display:flex;justify-content:space-between;gap:10px}.reportBrand small{font-size:12px;color:var(--muted);font-weight:500}
.dialogBackdrop{position:fixed;inset:0;background:#0d263c99;z-index:30;display:grid;place-items:center;padding:18px}.dialogPanel{width:min(100%,480px);background:#fff;border-radius:19px;padding:25px;box-shadow:0 20px 70px #0b203947}.dialogPanel h2{margin:0 0 7px}.dialogPanel .row{margin-top:18px}.dialogPanel .row button{flex:1}
@media(max-width:650px){.wrap{padding:10px 10px 50px}header{padding:16px;gap:10px}header h1{font-size:21px}.brandMark{width:38px;height:38px;font-size:20px}.card{padding:17px;border-radius:16px}.loginLayout{grid-template-columns:1fr;gap:8px}.loginNote{padding:14px}.ruleGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ruleTile{padding:9px}.ruleTile strong{font-size:17px}.ruleTile span{font-size:11px}.examTop{margin:-17px -17px 12px;padding:9px 17px;border-radius:16px 16px 0 0}.questionCard{padding:16px}.resultHero .count{font-size:35px}.resultGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{body{font-size:11pt}.wrap{max-width:100%;padding:0}#result{display:block!important}#reviewDialog{display:none!important}.reportBrand{border-bottom:2px solid #1767b4;padding:0 0 8px}.resultHero{background:#edf5fc!important;print-color-adjust:exact;-webkit-print-color-adjust:exact;padding:15px}.resultHero .count{font-size:28pt}.resultGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.resultStat{padding:5px}.resultStat strong{font-size:14pt}.resultItem{border:1px solid #ccd9e4;padding:9px 11px;margin:7px 0;box-shadow:none}.resultItem p{margin:2px 0}.card{box-shadow:none}.reportBrand small{display:block}}

/* Portal v8 */
.wrap{max-width:1120px}.siteHeader{display:flex;align-items:center;justify-content:space-between;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:20px 24px;gap:16px}.brand{font-size:32px;font-weight:700;color:#111;text-decoration:none;line-height:1}.brand>span{color:#1e73d8}.brand small{display:block;font-size:13px;font-weight:500;color:var(--muted);margin-top:8px}.headerActions{display:flex;gap:16px}.headerActions a{color:#175caa;font-weight:600;text-decoration:none}.mainNav,.subjectNav{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0;margin-bottom:16px}.mainNav a,.subjectNav a{padding:8px 14px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);text-decoration:none;font-weight:600}.mainNav a.active,.subjectNav a.active{color:#fff;background:#1762ad;border-color:#1762ad}.portalHero{padding:28px;border-radius:18px;background:linear-gradient(120deg,#e4f0ff,#f4fbff);border:1px solid #cfe1f5}.portalHero h2{font-size:30px;line-height:1.3;margin:10px 0}.portalHero p{max-width:650px;color:var(--muted)}.buttonLink{display:inline-block;background:#1762ad;color:#fff;text-decoration:none;border-radius:9px;padding:10px 16px}.sectionHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px}.sectionHeading h2{font-size:22px;margin:0}.sectionHeading span{font-size:14px;color:var(--muted)}.categoryGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.categoryTile{padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#174b83;text-decoration:none;font-weight:600}.catalogGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.testCard{padding:20px;background:#fff;border:1px solid var(--line);border-radius:15px;display:flex;flex-direction:column;min-width:0;box-shadow:0 3px 10px #102b4510}.testCard h3{font-size:20px;line-height:1.4;margin:12px 0 6px}.testCard h3 a{color:var(--ink);text-decoration:none}.testCard p{color:var(--muted);margin:4px 0 12px}.cardTag{font-size:13px;display:flex;align-items:center;gap:8px;justify-content:space-between}.freeTag,.paidTag{padding:3px 8px;border-radius:6px;background:#eaf6ee;color:#146646}.paidTag{background:#fff3de;color:#7c4e08}.cardFacts{display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.cardFacts span{padding:5px 8px;background:#f2f6fb;border-radius:6px}.cardLink{margin-top:16px;color:#1762ad;font-weight:600;text-decoration:none}.testCard:hover{border-color:#94bce8}.emptyState,.detailPanel{background:#fff;padding:24px;border:1px solid var(--line);border-radius:16px}.emptyState{color:var(--muted)}.breadcrumbs{font-size:14px;margin:14px 0;line-height:1.8}.breadcrumbs a{color:#175caa}.searchForm{margin-bottom:18px}.searchForm input{flex:1;min-width:0}.pagination{display:flex;gap:12px;margin-top:20px}.siteFooter{margin:30px 0 0;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);text-align:center}.siteFooter a{margin:0 8px;color:#175caa;font-size:14px}.accountCards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.paymentEntry{padding:14px;border:1px solid var(--line);border-radius:12px;margin:10px 0;overflow-wrap:anywhere}.adminDetails{padding:12px;border:1px solid var(--line);border-radius:12px;margin-top:10px}.miniGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}button{touch-action:manipulation}button.choice{width:100%;display:flex;gap:12px;text-align:left}.choice[aria-checked=true] .radio{background:#1762ad;box-shadow:inset 0 0 0 4px #fff;border-color:#1762ad}.syncNotice{position:sticky;top:95px;z-index:3}.syncNotice button{padding:5px 10px;margin-left:10px}.resultHero p{overflow-wrap:anywhere}.questionCard h3{overflow-wrap:anywhere}input,textarea{width:100%}.row input{flex:1;width:auto}.mainNav a:focus-visible,.categoryTile:focus-visible,.buttonLink:focus-visible,a.cardLink:focus-visible{outline:3px solid #84bafa;outline-offset:2px}details>summary{cursor:pointer;font-weight:600;padding:12px 0}#googleSignIn{min-height:48px;margin:16px 0}#taking .examTop{position:sticky;top:0}.headerActions a{font-size:14px}.footerHidden{display:none}
@media(max-width:700px){.categoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.miniGrid,.accountCards{grid-template-columns:1fr}.mainNav{gap:5px}.mainNav a,.subjectNav a{padding:7px 9px;font-size:14px}.portalHero{padding:20px}.portalHero h2{font-size:25px}.siteHeader{padding:17px 14px}.brand{font-size:27px}.headerActions{gap:9px;flex-direction:column;text-align:right}.catalogGrid{gap:10px}.testCard{padding:12px}.testCard h3{font-size:17px}.testCard p{font-size:13px}.cardTag{align-items:flex-start;flex-wrap:wrap;font-size:11px}.cardFacts{gap:4px;font-size:12px}.cardFacts span{padding:3px 5px}.cardLink{font-size:14px}.sectionHeading{align-items:flex-start;flex-direction:column;gap:3px}.categoryTile{padding:13px}.detailPanel{padding:17px}}
@media(max-width:330px){.catalogGrid{grid-template-columns:1fr}}
@page{size:A4;margin:14mm 12mm}
@media print{.siteHeader,.mainNav,#portal,.siteFooter,#message,#pdfHelp,.top,.resultItem button{display:none!important}.wrap{max-width:none;padding:0}.resultItem{break-inside:avoid}#result{border:0;padding:0}#pdfBtn{display:none}.resultItem p{overflow-wrap:anywhere}.reportBrand{display:flex!important}.card.hidden{display:none!important}}
