/* Wakeel v1.2: reusable learning and scientific experiment surfaces */
.wu-unit{display:grid;gap:14px;margin:24px 0 32px;min-width:0}.wu-status{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.78rem;color:#365c70}.wu-review{border:1px solid #e1c9a1;background:#fff8eb;color:#72532b;border-radius:20px;padding:6px 10px}.wu-section{background:#fff;border:1px solid #dfe8ee;border-radius:16px;padding:21px;line-height:1.85;min-width:0}.wu-section p{margin:10px 0 0}.wu-section h3{margin:0!important;font-size:1.09rem!important}.wu-subheading{display:flex;gap:10px;align-items:center}.wu-number{display:inline-flex;align-items:center;justify-content:center;flex:none;background:#e4f5f1;color:#116d63;border-radius:8px;min-width:34px;height:32px;font:700 .75rem ui-monospace,monospace}.wu-example{background:#f7fafc;border-inline-start:4px solid #357d96}.wu-investigation{background:#f5fbf9}.wu-protocol{margin-top:16px;background:white;border-radius:12px;padding:13px 17px;border:1px solid #d9ebe8}.wu-protocol ol{padding-inline-start:24px;line-height:1.8;margin:8px 0}.wu-choices{display:grid;gap:9px;margin:14px 0}.wu-choice{background:#fff;border:1px solid #becfda;border-radius:10px;padding:12px 16px;text-align:start;cursor:pointer;font:inherit;color:#1a3650;transition:border-color .15s,background .15s}.wu-choice:hover,.wu-choice:focus-visible{outline:2px solid #2f8175;outline-offset:1px}.wu-choice.selected{border-color:#147d72;background:#eaf7f4}.wu-feedback{padding:11px 13px;border-radius:9px;margin:10px 0;background:#fff7ea;color:#73532c}.wu-feedback.is-right{background:#e6f7ef;color:#136a48}.wu-note{font-size:.8rem;color:#607588;line-height:1.65}.wu-sources{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.wu-source{display:inline-block;padding:8px 12px;border:1px solid #b7d7d1;background:#f5fcfa;border-radius:9px;text-decoration:none;color:#0e7068;overflow-wrap:anywhere}.wu-labguide{border:1px solid #d1e5e4;border-radius:17px;background:#f4faf9;padding:22px;margin:18px 0 24px;min-width:0}.wu-labguide h2{font-size:1.25rem;margin:0 0 15px}.wu-guidegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wu-guidegrid>div{border-radius:11px;background:white;border:1px solid #e0ecec;padding:14px;min-width:0}.wu-guidegrid b{color:#15594f}.wu-guidegrid p{color:#37556a;line-height:1.7;margin:6px 0 0;overflow-wrap:anywhere}.runner .wu-labguide{background:#f1f9f7}.runner .wu-guidegrid{font-size:.88rem}@media(max-width:680px){.wu-section{padding:15px}.wu-guidegrid{grid-template-columns:1fr}.wu-labguide{padding:15px}.wu-subheading{gap:7px}}

/* v1.8 bilingual transfer assessment: semantic, keyboard-accessible controls */
.wu-transfer{border-color:#bedacf;background:#f6fbfa}.wu-scenario{background:#fff;border:1px solid #d5e6e2;border-inline-start:3px solid #148675;padding:14px;border-radius:9px;margin-top:14px;line-height:1.75}.wu-scenario p{margin:6px 0 0}.wu-transfer .wu-choice{max-width:100%;overflow-wrap:anywhere}.wu-transfer [aria-pressed="true"]{border-color:#087d68;background:#e8f6f0}.wu-transfer .wu-note{margin-top:12px}

.wu-evidence{border:1px solid #d7e4ef;background:#fbfcff}.wu-source-list{display:grid;gap:12px;margin-top:15px}.wu-source-entry{background:#fff;border:1px solid #dce7ee;border-radius:10px;padding:12px 15px}.wu-source-entry p{margin:0 0 7px}.wu-source-entry a{font-weight:600;color:#0e7068;overflow-wrap:anywhere}.wu-source-entry small{display:block;color:#607588;margin-top:7px}
/* v1.11 lesson-specific mathematical investigation */
.wu-lesson-experiment{border-color:#b9dcd8;background:#f6fbfa}.lesson-exp-claim{font-weight:600;color:#204e55}.lesson-exp-control{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) 70px;align-items:center;gap:12px;margin:19px 0;padding:14px;background:white;border:1px solid #dce9e8;border-radius:11px}.lesson-exp-control input{width:100%;accent-color:#138577}.lesson-exp-control output{font-variant-numeric:tabular-nums;text-align:center}.lesson-exp-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:14px 0}.lesson-exp-results>div{background:white;border:1px solid #dce7e6;border-radius:10px;padding:15px;min-width:0}.lesson-exp-results span{font-size:.77rem;display:block;color:#5a7480}.lesson-exp-results strong{font-size:1.25rem;display:block;margin-top:7px;overflow-wrap:anywhere}.lesson-exp-reflections{display:grid;gap:14px;margin:20px 0}.lesson-exp-reflections label{display:grid;gap:8px;color:#34515b}.lesson-exp-reflections textarea{width:100%;box-sizing:border-box;border:1px solid #b6d0d0;border-radius:9px;padding:12px;font:inherit;min-height:78px;resize:vertical;color:#123449;background:white}.lesson-exp-reflections textarea:focus-visible{outline:2px solid #148577;outline-offset:1px}@media(max-width:680px){.lesson-exp-control{grid-template-columns:1fr 65px}.lesson-exp-control>span{grid-column:1/-1}.lesson-exp-results{grid-template-columns:1fr}}
/* v1.12 transparent scoped evidence, shared Arabic/English design */
.lesson-evidence-v112{border-inline-start:3px solid var(--accent, #167f72);margin-top:22px}
.evidence-v112-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:13px 0}
.evidence-v112-cell{border:1px solid var(--border,#d8e0e7);border-radius:12px;padding:14px;background:var(--surface,#fff)}
.evidence-v112-cell p{line-height:1.85;margin:8px 0 0;overflow-wrap:anywhere}
.evidence-v112-source{padding:12px 14px;background:var(--surface-secondary,#f3f6f8);border-radius:12px;line-height:1.8;overflow-wrap:anywhere}
.evidence-v112-source p{margin:3px 0 0}.evidence-primary{display:inline-block;margin-inline-start:8px}
@media(max-width:670px){.evidence-v112-grid{grid-template-columns:1fr}}
/* v1.13 editorial scope; neutral indications avoid suggesting certification. */
.v113-reviewed{border:1px solid var(--border,#ccd6e5);border-radius:12px;padding:1rem;margin-block:1rem}
.v113-pending,.v113-stale{border:1px solid var(--border,#ccd6e5);border-radius:10px;padding:.85rem 1rem;margin-block:1rem;font-size:.92rem}
.v113-stale{border-style:dashed}
.v113-table-wrap{max-width:100%;overflow-x:auto}
.v113-audit-table{width:100%;min-width:440px;border-collapse:collapse;font-size:.88rem;text-align:start}
.v113-audit-table th,.v113-audit-table td{padding:.75rem .5rem;border-bottom:1px solid var(--border,#ccd6e5);text-align:start;vertical-align:top}
.v113-audit-table tbody th{font-weight:600}
.v113-audit-table a{text-decoration:underline;text-underline-offset:2px}
@media (max-width:560px){
 .v113-audit-table{min-width:0;table-layout:auto}
 .v113-audit-table thead{display:none}
 .v113-audit-table tbody tr{display:block;padding:.55rem 0;border-bottom:1px solid var(--border,#ccd6e5)}
 .v113-audit-table tbody th,.v113-audit-table tbody td{display:block;border:0;padding:.22rem 0;overflow-wrap:anywhere}
 .v113-audit-table tbody td span[dir="ltr"]{unicode-bidi:plaintext;display:inline-block;max-width:100%;overflow-wrap:anywhere;white-space:normal}
}

/* v1.14 structural scientific trace; educational and not independently validated. */
.v114-trace{border:1px solid var(--border,#ccd6e5);border-radius:12px;padding:1rem;margin-block:1rem}
.v114-trace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.8rem 0}
.v114-trace-grid>div{min-width:0;background:var(--card,#fff);border:1px solid var(--border,#ccd6e5);border-radius:9px;padding:.75rem}
.v114-trace-grid dt{font-size:.8rem;opacity:.75;margin-block-end:.3rem}
.v114-trace-grid dd{margin:0;overflow-wrap:anywhere;unicode-bidi:plaintext}
@media(max-width:700px){.v114-trace-grid{grid-template-columns:1fr}}

/* v1.40: free-response scientific reasoning, no automated semantic grading. */
.wu-reasoning-inputs{display:grid;gap:.6rem;margin:1rem 0;}
.wu-reasoning-inputs label{font-weight:650;line-height:1.6;}
.wu-reasoning-inputs textarea{width:100%;min-height:5rem;padding:.65rem;border:1px solid var(--line, #66778c);border-radius:.55rem;font:inherit;line-height:1.65;color:inherit;background:var(--surface,transparent);resize:vertical;box-sizing:border-box;}
.wu-reasoning-inputs textarea:focus-visible{outline:2px solid #548ed6;outline-offset:2px;}
/* WKL-024AD: invalid reasoning is identified by text and border, not color alone. */
.wu-reasoning-inputs textarea[aria-invalid="true"]{border:2px solid #aa2434;}
.wu-reasoning-inputs textarea[aria-invalid="true"]:focus-visible{outline:3px solid #aa2434;outline-offset:2px;}
[data-numeric-entry-status]:not(:empty){margin:.5rem 0;font-weight:600;}
.wu-scientific-review{padding:.75rem;margin:.85rem 0;border:1px solid var(--line,#66778c);border-radius:.65rem;overflow-wrap:anywhere;}
.wu-scientific-review details{margin:.65rem 0;}
.wu-scientific-review summary{cursor:pointer;font-weight:600;}

/* v1.53 lesson-specific bilingual foundations, loaded only on lesson route */
.lf-intro{border:1px solid #c0deda;border-radius:18px;background:#f6fcfb;padding:22px;margin:18px 0 26px;line-height:1.85;min-width:0}
.lf-intro h2,.lf-intro h3{color:#21455a;margin:10px 0;font-size:1.12rem}
.lf-heading h2{font-size:1.35rem}.lf-heading p{margin:.4rem 0 1rem}.lf-prior{border-inline-start:4px solid #27856c;background:#fff;border-radius:10px;padding:12px 17px;margin:13px 0}
.lf-prior p{margin:3px 0}.lf-glossary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 22px}
.lf-glossary>div{background:#fff;border:1px solid #d7e5e5;border-radius:10px;padding:11px;min-width:0;overflow-wrap:anywhere}
.lf-glossary dt{font-weight:700;color:#185a56}.lf-glossary dd{margin:4px 0;font-size:.89rem}
.lf-modes{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.lf-modes button{cursor:pointer;background:#fff;border:1px solid #8eaea9;border-radius:9px;padding:10px 14px;color:#194f52;font:inherit}
.lf-modes button.is-current,.lf-modes button[aria-pressed="true"]{background:#1a6f66;color:#fff}
.lf-modes button:focus-visible{outline:3px solid #268fbe;outline-offset:2px}
.lf-mode-content,.lf-walkthrough{background:#fff;border:1px solid #d7e5e5;border-radius:11px;padding:12px 16px}
.lf-walkthrough{margin-top:14px}.lf-walkthrough ol{padding-inline-start:24px}
@media(max-width:720px){.lf-intro{padding:14px}.lf-glossary{grid-template-columns:1fr}.lf-modes{display:grid;grid-template-columns:1fr}}

/* v1.57: concept primer is content-first, no control-surface metaphor. */
.cf-foundation{background:#f5f9f9;border:1px solid #cde2df;border-radius:17px;padding:clamp(18px,2.4vw,30px);margin:18px 0 25px;color:#203949}
.cf-head h2{font-size:clamp(1.35rem,2vw,1.8rem);margin:0 0 8px}
.cf-head p{font-size:.84rem;color:#54736f;margin:0 0 16px}
.cf-modes{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 21px}
.cf-mode{padding:9px 14px;border-radius:10px;background:white;border:1px solid #c1d9d4;color:#245d54;font-size:.83rem;font-weight:700}
.cf-mode.active{background:#167d6e;color:white;border-color:#167d6e}
.cf-body{display:grid;gap:16px;line-height:1.85}
.cf-body p{margin:0;max-width:90ch}.cf-why{font-size:1.08rem;font-weight:650;color:#224e48}
.cf-glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.cf-glossary>div{padding:14px 16px;border-radius:11px;background:#fff;border:1px solid #e0ebe8;min-width:0}
.cf-glossary dt{font-size:.9rem;font-weight:800;color:#234a43}
.cf-glossary dd{margin:5px 0 0;font-size:.85rem;color:#405b59;overflow-wrap:anywhere}
.cf-steps{margin:0;padding-inline-start:25px;display:grid;gap:10px}
.cf-example,.cf-limit{background:white;border-inline-start:3px solid #48a894;padding:17px 18px;border-radius:9px}
.cf-example h3,.cf-limit strong{font-size:.94rem;margin:0 0 9px;display:block}
.cf-limit{border-inline-start-color:#b1844f}
.cf-provenance{border-top:1px solid #d9e6e3;margin:16px 0 0;padding-top:10px;font-size:.75rem;color:#617a78}
.cf-source{font-size:.8rem;color:#43766d;overflow-wrap:anywhere}
.cf-source a{color:#116f60;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.cf-glossary{grid-template-columns:1fr}.cf-modes{gap:5px}.cf-mode{font-size:.76rem;padding:8px 10px}}

/* WKL-024AS: interpretation is guidance, not a mastery or scientific-verification badge. */
.lesson-exp-expected{display:grid;gap:7px;max-width:45ch;margin:12px 0;color:#244e55;font-weight:600}
.lesson-exp-expected select{min-height:42px;padding:8px 10px;background:#fff;color:#173b42;border:1px solid #a8c9c8;border-radius:8px;font:inherit}
.lesson-exp-interpretation{margin:14px 0 17px;padding:14px 16px;background:#fff;border:1px solid #bcd9d4;border-inline-start:3px solid #138577;border-radius:10px;line-height:1.7}
.lesson-exp-interpretation h4{margin:0 0 10px;font-size:1rem}.lesson-exp-interpretation p{margin:8px 0}
.lesson-exp-prediction{white-space:pre-wrap;overflow-wrap:anywhere}
.lesson-exp-expected select:focus-visible{outline:3px solid #148577;outline-offset:2px}
/* WKL-024AT: bounded in-session experiment series (no statistical claims). */
.lesson-series{margin:17px 0;padding:16px;background:#f8fcfb;border:1px solid #bbd8d2;border-radius:12px;line-height:1.65}
.lesson-series h4{margin:0 0 8px;font-size:1.04rem}.lesson-series p{margin:9px 0}
.lesson-series-scroll{max-width:100%;overflow-x:auto;border-radius:9px;border:1px solid #ccdddc}
.lesson-series-scroll:focus-visible{outline:3px solid #148577;outline-offset:3px}
.lesson-series table{border-collapse:collapse;width:100%;min-width:420px;background:white;font-variant-numeric:tabular-nums}
.lesson-series caption{padding:8px 12px;text-align:start;font-weight:600;color:#34515b}
.lesson-series th,.lesson-series td{padding:9px 12px;border-top:1px solid #d8e7e4;text-align:start}
.lesson-series thead th{background:#eaf5f2}.lesson-series tbody th{font-weight:600}
.lesson-series-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}

/* WKL-024AU: preregistered, scoped falsifiability notebook; no badge or grade. */
.lesson-hypothesis{margin:18px 0;padding:16px;background:#fff;border:1px solid #b3d3cc;border-radius:12px;line-height:1.75;min-width:0}
.lesson-hypothesis h4{margin:0 0 10px;font-size:1.04rem}
.lesson-hypothesis label{display:grid;gap:6px;margin:12px 0;color:#214b50;font-weight:600}
.lesson-hypothesis textarea,.lesson-hypothesis select{box-sizing:border-box;width:100%;max-width:70ch;padding:10px 12px;background:white;color:#163e46;border:1px solid #9fbfb8;border-radius:8px;font:inherit}
.lesson-hypothesis textarea:focus-visible,.lesson-hypothesis select:focus-visible,.lesson-hypothesis button:focus-visible{outline:3px solid #167f72;outline-offset:2px}
.lesson-hypothesis-statement{white-space:pre-wrap;overflow-wrap:anywhere}
.lesson-hypothesis-result{border-inline-start:3px solid #307e72;padding:9px 12px;background:#f0f7f5}
.lesson-hypothesis-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}

/* WKL-024AV — compact, keyboard-accessible two-rule comparison panel. */
.lesson-competing{margin:12px 0;padding:13px 15px;border:1px solid #b5d3c8;border-radius:10px;background:#f8fbfa;overflow-wrap:anywhere}
.lesson-competing h5{margin:0 0 8px;font-size:1rem}
.lesson-competing label{display:grid;gap:6px;max-width:68ch}
.lesson-competing select{box-sizing:border-box;width:100%;padding:9px 12px;font:inherit;color:#163e46;border:1px solid #90bcb0;border-radius:8px;background:white}
.lesson-competing select:focus-visible{outline:3px solid #167f72;outline-offset:2px}
.lesson-competing table{width:100%;border-collapse:collapse;margin:10px 0}
.lesson-competing th,.lesson-competing td{border-bottom:1px solid #d0e3de;padding:8px;text-align:start}
.lesson-competing [role="status"]{border-inline-start:3px solid #307e72;padding:8px 12px;background:#eaf5f1}
/* WKL-024AX: assumption audit keeps explanation and scope distinct from numeric checks. */
.lesson-assumption-audit{margin:14px 0;padding:16px;border:1px solid #b9d7cf;border-radius:12px;background:#f5faf9;min-width:0;overflow-wrap:anywhere;line-height:1.75}
.lesson-assumption-audit h5{margin:0 0 10px;font-size:1.02rem;color:#1a4a4d}
.lesson-assumption-audit label{display:grid;gap:6px;margin:12px 0;color:#17464c;font-weight:600}
.lesson-assumption-audit textarea,.lesson-assumption-audit select{box-sizing:border-box;width:100%;max-width:75ch;padding:10px 12px;font:inherit;color:#143e43;background:#fff;border:1px solid #8db9ad;border-radius:9px}
.lesson-assumption-audit textarea:focus-visible,.lesson-assumption-audit select:focus-visible,.lesson-assumption-audit button:focus-visible{outline:3px solid #147e73;outline-offset:3px}
.lesson-assumption-plan{border-inline-start:3px solid #237d73;padding-inline-start:14px;white-space:normal}
.lesson-assumption-plan p:not(.wu-note){white-space:pre-wrap;overflow-wrap:anywhere}
.lesson-assumption-plan [role="status"]{border:1px solid #b5d8ce;background:#e6f4ef;border-radius:8px;padding:10px}
.lesson-assumption-audit .btn{margin:4px 6px 4px 0}

/* WKL-024AY: stage scientific tools on demand without hiding the actual
 * observation, inference boundary, notes, or official lesson sources. */
.lesson-tool-intro{margin-block:1.2rem .55rem}
.lesson-tool-disclosure{margin:.65rem 0;border:1px solid #b7d7d2;background:#fff;border-radius:12px;overflow-wrap:anywhere;min-width:0}
.lesson-tool-disclosure>summary{list-style-position:inside;cursor:pointer;padding:12px 15px;font-weight:650;color:#1d5552;line-height:1.7;user-select:none}
.lesson-tool-disclosure>summary:focus-visible{outline:3px solid #1b817a;outline-offset:-3px;border-radius:10px}
.lesson-tool-disclosure[open]>summary{background:#eaf5f2;border-bottom:1px solid #cbdeda}
.lesson-tool-disclosure>.lesson-tool-content{padding:6px 12px 12px;min-width:0}
.lesson-tool-disclosure .lesson-series,.lesson-tool-disclosure .lesson-competing,.lesson-tool-disclosure .lesson-assumption-audit{max-width:100%}
@media(max-width:680px){.lesson-tool-disclosure>summary{padding:12px}.lesson-tool-disclosure>.lesson-tool-content{padding:6px 8px 10px}}

.lesson-tool-related{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;margin:1rem 0 .3rem}
#lesson-source-reading,#lesson-connected-concepts{scroll-margin-top:85px}

/* WKL-024AZ: small on-demand evidence trace; source and toy are not conflated. */
.lesson-source-trace{margin:12px 0 18px;border:1px solid #b7d2da;border-radius:12px;background:#f8fbfd;min-width:0;overflow-wrap:anywhere}
.lesson-source-trace>summary{padding:12px 14px;color:#1c5363;font-weight:650;cursor:pointer;line-height:1.7}
.lesson-source-trace>summary:focus-visible,.lesson-source-trace a:focus-visible{outline:3px solid #157e77;outline-offset:2px}
.lesson-source-trace[open]>summary{border-bottom:1px solid #cedfe5}
.lesson-source-trace-body{display:grid;gap:10px;padding:12px}
.lesson-source-trace-body>section{padding:12px 14px;border:1px solid #e2ebef;background:white;border-radius:9px;min-width:0}
.lesson-source-trace-body h4{font-size:.98rem;margin:0 0 4px;color:#21495b}
.lesson-source-trace-body p{margin:6px 0 9px;line-height:1.75}
.lesson-source-trace-body .wu-source{margin:5px 0;max-width:100%;box-sizing:border-box}
@media(max-width:680px){.lesson-source-trace-body{padding:8px}.lesson-source-trace-body>section{padding:10px}}
/* WKL-024BA: bounded, nested claim decomposition inside optional source card. */
.lesson-claim-decomposition{background:#f6faf9;border:1px solid #cbded9;border-radius:8px;padding:10px 12px}
.lesson-claim-decomposition h5{font-size:.96rem;margin:0 0 8px;color:#21495b}
.lesson-claim-check-list{padding-inline-start:1.5rem;margin:5px 0 8px;line-height:1.75}
.lesson-claim-check-list li{margin-bottom:8px;overflow-wrap:anywhere}
.lesson-claim-check-list .wu-note{display:block;margin:4px 0}
