:root{--ink:#18363d;--muted:#526b70;--bg:#f3faf8;--paper:#fff;--teal:#147b70;--teal2:#d9f2eb;--blue:#e3efff;--gold:#fff0c5;--line:#c9dad9;--wrong:#a63d30;--right:#166951}
[hidden]{display:none!important}
.position-sketch{flex-direction:column}
.position-drawing{width:126px;height:95px;position:relative;display:block}
.position-table{position:absolute;top:6px;left:3px;width:120px;border-top:13px solid #895e40;border-bottom:0;color:#355c5f;text-align:center;font-size:.8rem;padding-top:4px}
.position-table::before,.position-table::after{content:'';position:absolute;top:-1px;width:8px;height:63px;background:#895e40}
.position-table::before{left:12px}.position-table::after{right:12px}
.position-ball{position:absolute;bottom:0;left:49px;color:#ef8a2d;font-size:2.4rem;line-height:1}
.coverage{margin-top:24px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.coverage summary{cursor:pointer;font-weight:900}
.coverage p{margin:12px 0}.coverage a{color:#0f675f;font-weight:900}
.coverage-group{border-top:1px solid var(--line);padding-top:12px;margin-top:16px}
.coverage-group h3{font-size:1rem;margin:0}.coverage-group ol{columns:2;column-gap:30px;padding-left:24px;margin:8px 0}
.coverage-group li{break-inside:avoid;padding:2px 0}.coverage-scope{display:block;color:var(--muted);font-size:.84rem}
.trail.extra{grid-column:1/-1;background:#fff8e8;border-color:#e7ce8f}
.play-source,.unit-source{font-size:.82rem;color:#735617;font-weight:800}
.technique{margin-top:20px;padding:12px 15px;border-radius:12px;background:#fff4cf;border:1px solid #e7d08a}
.write-label{display:block;font-weight:900;margin:12px 0}
.write-box{display:block;width:100%;min-height:125px;margin:8px 0 12px;padding:12px;border:2px solid #adc8c7;border-radius:12px;font-weight:400}
.write-guide{margin-top:15px;padding:14px 16px;border-radius:12px;background:#e5f5ed;border-left:5px solid var(--teal)}
.write-guide p{margin:6px 0 0}
#playAction>.secondary,#playAction>.quiet{margin:5px 8px 5px 0}
@media(max-width:650px){.coverage-group ol{columns:1}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.5 Nunito,Arial,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid #db8e00;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.1}h2{font-size:clamp(1.6rem,3vw,2.3rem)}h3{font-size:1.35rem}main{max-width:1000px;margin:auto;padding:20px 18px 65px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#173d3d;color:#fff;padding:10px max(18px,calc((100vw - 1000px)/2));font-weight:800}.back{color:#fff;text-decoration:none;padding:8px 10px;border-radius:10px}.back:hover{background:#ffffff22}.brand{font-size:clamp(14px,2vw,18px)}.hero,.panel{background:var(--paper);border:1px solid var(--line);border-radius:24px;box-shadow:0 8px 28px #1b514414;padding:clamp(20px,4vw,38px);margin:12px 0 24px}.hero{background:linear-gradient(125deg,#e6fbf5,#fff 63%,#fff2d4)}.hero>p:not(.eyebrow){max-width:740px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#31746b;font-size:.8rem;margin-bottom:8px}.hero-actions,.paper-controls,.play-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.primary,.secondary,.quiet{border-radius:14px;padding:12px 18px;font-weight:900;border:2px solid var(--teal);min-height:48px}.primary{background:var(--teal);color:#fff}.secondary{background:var(--teal2);color:var(--ink)}.quiet{border-color:var(--line);background:#fff;color:var(--ink)}.source-note,.section-note,.paper-help{font-size:.94rem;color:var(--muted);margin:16px 0 0}.section-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.section-head h2{margin-bottom:0}.trail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.trail,.unit{border:2px solid var(--line);border-radius:18px;background:#fff;text-align:left;padding:18px;color:var(--ink)}.trail:hover,.unit:hover{border-color:var(--teal);background:#f3fcf9}.trail strong,.unit strong{display:block;font-size:1.18rem}.trail span,.unit span{display:block;color:var(--muted);font-size:.9rem;margin-top:5px}.unit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0}.unit-list .unit:first-child{grid-column:1/-1;background:var(--teal2)}.play-card{background:#fbfefd;border:2px solid var(--teal);padding:clamp(18px,3vw,30px);border-radius:20px;margin-top:20px}.play-top{display:flex;justify-content:space-between;gap:10px}.teach{background:var(--gold);padding:13px 16px;border-radius:12px}.sketch{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:20px;background:#f0f7ff;border-radius:14px;margin:12px 0}.sketch .piece{padding:8px 15px;border-radius:12px;background:#fff;border:2px solid #8cb8df;font-weight:900;font-size:1.3rem}.sketch .symbol{font-size:1.4rem;font-weight:900}.sketch .caption{width:100%;text-align:center;color:var(--muted);font-size:.9rem}.sketch.bn,.bn{font-family:'Baloo Da 2','Noto Sans Bengali',sans-serif}.passage{background:#eef7f5;padding:16px 18px;border-left:5px solid var(--teal);border-radius:10px;white-space:pre-line;margin:14px 0}.prompt{font-weight:900;font-size:1.17rem;white-space:pre-line;margin:18px 0 12px}.answer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.answer-btn,.tile,.bin{border:2px solid #adc8c7;border-radius:13px;background:#fff;padding:11px 13px;color:var(--ink);text-align:left;min-height:48px}.answer-btn:hover,.tile:hover,.bin:hover{border-color:var(--teal)}.answer-btn[disabled],.tile[disabled]{opacity:.7;cursor:default}.tile-row,.tile-built,.bin-row{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0}.tile-built{min-height:54px;padding:8px;background:#e8f5f1;border:2px dashed #76a99e;border-radius:12px}.tile{font-weight:900}.bin{min-width:150px;text-align:center}.bin[aria-pressed=true],.tile[aria-pressed=true]{background:#c7ebe0;border-color:var(--teal)}.sort-card{font-size:1.22rem;font-weight:900;padding:12px 15px;background:var(--blue);border-radius:12px;display:inline-block}.type-box{width:min(100%,480px);border:2px solid #adc8c7;border-radius:12px;padding:12px}.feedback{min-height:1.6em;font-weight:800;margin:15px 0}.feedback.right{color:var(--right)}.feedback.wrong{color:var(--wrong)}.play-actions{justify-content:space-between}.paper-controls{margin:20px 0}.timer{font-weight:900;font-variant-numeric:tabular-nums;padding:8px 14px;border-radius:12px;background:#e9f5f1}.timer.over{background:#ffe2d8;color:#8b3528}.paper-section{margin:26px 0 38px}.paper-section h3{background:#e1f2ed;padding:13px 16px;border-radius:12px;margin-bottom:6px}.paper-section .section-instruction{color:var(--muted);font-size:.9rem}.paper-question{break-inside:avoid;border-bottom:1px solid var(--line);padding:12px 0 18px}.paper-question header{display:flex;justify-content:space-between;gap:15px}.paper-question h4{font-size:1rem;margin:0 0 7px}.marks{white-space:nowrap;color:#376d67;font-weight:800}.paper-prompt{white-space:pre-line;margin:6px 0}.paper-question textarea{width:100%;min-height:73px;resize:vertical;border:1px solid #a8c4bf;border-radius:10px;padding:11px;margin-top:8px}.paper-question textarea[rows="4"]{min-height:100px}.print-lines{display:none}.finish-bar{padding:20px 0}.paper-done{border:2px solid var(--teal);background:#f1faf6;padding:20px;border-radius:16px}.key-item{border-bottom:1px solid var(--line);padding:10px 0}.key-item p{white-space:pre-line;margin:4px 0}.math-figure{font-family:monospace;white-space:pre;font-size:1.1rem;background:#f3f7fd;padding:10px 15px;border-radius:10px;display:inline-block}.paper-figure{margin:8px 0}.paper-figure svg{max-width:100%;height:auto}.paper-done button{margin-bottom:12px}@media(max-width:650px){.trail-list,.unit-list{grid-template-columns:1fr}.section-head{align-items:center}.section-head .quiet{padding:8px}.brand{max-width:45%;text-align:right}}@media print{body{background:#fff;color:#000;font:12pt/1.35 Arial,sans-serif}.topbar,.hero,#practice,.section-head button,.paper-controls,.paper-help,.finish-bar,.paper-done,.source-note{display:none!important}main{max-width:none;padding:0}.panel{border:0;box-shadow:none;padding:0;margin:0}#paper{display:block!important}#paper>.section-head{display:block;margin-bottom:10px}#paper>.section-head .eyebrow{color:#000}#paper>.section-note{font-size:10pt;color:#000}.paper-section{margin:14px 0}.paper-section h3{background:#eee;color:#000;font-size:13pt}.paper-question{padding:7px 0 11px;border-color:#888}.paper-question textarea{display:none}.print-lines{display:block;height:44px;border-bottom:1px dotted #999;background:repeating-linear-gradient(to bottom,transparent 0 21px,#bbb 22px,transparent 23px)}.paper-question.long .print-lines{height:75px}.paper-question h4{font-size:11pt}.paper-prompt{margin:4px 0}.paper-section{break-before:page}.paper-section:first-child{break-before:auto}}

.series-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}
.series-card{position:relative;border:2px solid var(--line);border-radius:18px;padding:22px;background:linear-gradient(140deg,#fff,#eefaf5)}
.series-card:last-child{grid-column:1/-1;background:linear-gradient(120deg,#e6f6ff,#fff4d5)}
.series-card h3{margin:0 0 7px}.series-card p{margin:6px 0 12px}.stage-number{display:inline-block;background:#173d3d;color:#fff;border-radius:99px;padding:4px 12px;font-weight:900;margin-bottom:10px}
.series-progress{font-weight:900;color:#11675b}.series-card button{margin-top:5px}
.answer-line{display:block;margin:13px 0;font-weight:800}.answer-line span{display:block;margin-bottom:5px}
.written-input{display:block;width:100%;min-height:47px;padding:9px 11px;border:2px solid #a8c4bf;border-radius:10px;background:#fff}
.written-input:disabled{background:#f4f7f6;color:#334d4a}.extra-question{background:#fff8e6;border:1px solid #ead391;padding:12px 16px;border-radius:13px;margin-top:14px}
.stretch-heading{margin:30px 0 9px;color:#71500b}.key-item.right{border-left:5px solid #2b9473;padding-left:12px}.key-item.pending{border-left:5px solid #4287a1;padding-left:12px;background:#f1f9fc}.key-item.missed{border-left:5px solid #b67a21;padding-left:12px}.key-item button{margin:8px 8px 8px 0}
.collect-link{display:inline-block;text-decoration:none;margin:0 0 12px}.paper-done #coinResult{font-weight:900;color:#795213}.paper-done #nextPractice{font-weight:800;color:#146455}
@media(max-width:650px){.series-list{grid-template-columns:1fr}.series-card:last-child{grid-column:auto}}
@media print{#series{display:none!important}.answer-line{font-size:10.5pt;margin:8px 0}.written-input{display:none}.paper-question .print-lines{height:72px}.extra-question{background:#fff;border-color:#888}.collect-link{display:none!important}}
.pdf-link{display:block;color:#105f54;font-weight:900;margin-top:12px;text-decoration:underline}
.parent-key{margin-top:9px;color:#63521d;font-size:.92rem}.parent-key summary{cursor:pointer;font-weight:800}
.book-list,.chapter-list,.topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 26px}
.book-card,.chapter-card,.topic-card{display:block;width:100%;border:2px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);padding:15px 17px;text-align:left}
.book-card:hover,.chapter-card:hover,.topic-card:hover{border-color:var(--teal);background:#effaf5}
.book-card strong,.chapter-card strong,.topic-card strong{display:block;font-size:1.05rem;line-height:1.35}
.book-card span,.chapter-card span,.topic-card span{display:block;color:var(--muted);font-size:.88rem;margin-top:6px}
.book-topics{border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin:22px 0;background:#f7fbf9}
.book-topics>summary{cursor:pointer;font-weight:900}
.book-topics .topic-list{margin-bottom:4px}
.topic-card.extra{background:#fff7e5;border-color:#e7d08a}
#bookDetail>h3{margin:18px 0 5px}
#bookDetail>#bookStart{margin:15px 0 3px}
#showAllBooks{margin-top:16px}
.ar{font-family:'Noto Naskh Arabic',serif;direction:rtl;word-break:keep-all}
.feedback.reveal{color:#315c63}
#books .bn,#play .bn{word-break:keep-all}
@media(max-width:650px){.book-list,.chapter-list,.topic-list{grid-template-columns:1fr}}
@media print{#books{display:none!important}}
.coach-today{background:#e6f6ef;border:2px solid var(--teal);border-radius:16px;padding:22px;margin:22px 0}
.coach-heading{margin-top:30px}.coach-weeks{padding-left:23px}.coach-weeks li{margin:14px 0}
#coachDrills .unit:first-child{grid-column:auto}.demand-label{font-size:.85rem;color:#486862;margin:2px 0 10px}
.coach-visual{padding:18px;background:#edf4fb;border-radius:12px;margin:12px 0}.coach-visual p{text-align:center;font-weight:900;margin-bottom:8px}
.model-bar{display:flex;border:2px solid #305c77;max-width:420px;margin:auto}.model-bar span{width:44%;text-align:center;background:#c5e5f1;padding:12px}.model-bar span+span{width:56%;background:#fff0c5;border-left:2px solid #305c77}
.counter-groups{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.counter-groups span{border:2px solid #448d80;padding:10px;border-radius:12px;color:#246457}.counter-groups .loose{border:0}
.composition-input{font:inherit;line-height:1.8}.composition-lines{display:none}.bn{word-break:normal;overflow-wrap:normal;letter-spacing:normal}
#repairActions{margin:14px 0}.composition{padding:20px 0}
.answer-key-group,.repair-more{border:1px solid var(--line);border-radius:12px;padding:12px 15px;margin:14px 0;background:#fff}
.answer-key-group>summary,.repair-more>summary,.key-source>summary{cursor:pointer;font-weight:900}
.answer-key-group[open]>summary,.repair-more[open]>summary{margin-bottom:12px}
.key-source{font-size:.9rem;color:var(--muted);margin:8px 0}
.key-source .teach{margin-top:8px}.answer-review-now>.key-item{margin:12px 0}
.repair-more button{display:block;margin:9px 0;width:100%;text-align:left}
@media print{#coach,#books,#practice,#intro{display:none!important}.composition-lines{display:block;height:145px;background:repeating-linear-gradient(to bottom,transparent 0 27px,#aaa 28px,transparent 29px)}.demand-label{display:none}.paper-question .answer-line{break-inside:avoid}.answer-line:has(input){padding-bottom:28px;border-bottom:1px solid #aaa}.paper-question>.print-lines{display:none}}
