.learning-course-grid,.learning-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.learning-course-card,.learning-progress-card,.progress-explainer,.learning-report,.lesson-lab{min-width:0;border:1px solid #ccdce2;border-radius:22px;background:#fff;padding:28px}.learning-course-card{display:flex;flex-direction:column;align-items:flex-start}.learning-course-card .button{margin-top:auto}.learning-card-actions{display:flex;justify-content:space-between;gap:16px}.learning-progress-card dl>div{margin:12px 0}.learning-progress-card dd{margin:0;font-size:1.2rem;font-weight:700}.learning-progress-card small{font-weight:400}.progress-explainer{margin:26px 0;background:#f1f8f6}.learning-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.learning-filters label{display:grid;gap:8px;min-width:180px}.learning-filters select{padding:12px;min-height:48px}.learning-report{max-width:780px;margin:auto}.learning-report .form-field{display:grid;gap:8px;margin:20px 0}.learning-report textarea,.learning-report select{max-width:100%;padding:12px}.learning-report-link{font-size:.9rem;text-decoration:underline}.lesson-lab{margin:30px 0;padding:clamp(16px,3vw,36px);background:linear-gradient(140deg,#f0f8f6,#fff8e9)}.lab-phases,.lab-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.lab-phases button,.lab-controls button,.lab-paint-grid button,.lab-net button{font:inherit;min-height:44px;min-width:44px;padding:10px;border:1px solid #a9c6c8;border-radius:10px;background:white;color:#18344f;cursor:pointer}.lab-phases [aria-pressed=true],.lab-controls [aria-pressed=true],.lab-net [aria-pressed=true]{background:#18344f;color:white}.lesson-lab button:focus-visible,.lesson-lab input:focus-visible{outline:3px solid #a66604;outline-offset:3px}.lesson-lab button:disabled{cursor:default;opacity:.65}.lab-model{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;min-height:180px;border-radius:16px;background:#fff;padding:20px;max-width:100%;overflow:hidden}.lab-model>svg{display:block;width:min(100%,440px);height:auto}.lab-caption{width:100%;text-align:center;font-size:1.1rem;font-weight:600;color:#18344f}.lab-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:20px 0}.lab-number-control{max-width:100%;text-align:center}.lab-number-control label{display:block;margin-bottom:8px}.lab-number-control>div{display:flex;justify-content:center;gap:5px}.lab-number-control input{width:76px;min-height:44px;text-align:center;font:inherit;border:1px solid #a9c6c8;border-radius:6px}.lab-feedback{min-height:28px;color:#934b00;font-weight:600}.lab-success{color:#175c4a}.lab-counter-grid{display:grid;grid-template-columns:repeat(var(--lab-cols),minmax(0,1fr));width:min(100%,350px);gap:3px}.lab-counter-grid>span{display:block;aspect-ratio:1;border:1px solid #18344f;border-radius:3px;min-height:16px}.lab-counter-grid>span.filled{background:var(--cell-colour)}.lab-place-columns{display:flex;gap:10px;flex-wrap:wrap}.lab-place-columns>div{background:#e5f3ee;border:1px solid #a9c6c8;border-radius:12px;padding:14px;text-align:center}.lab-place-columns strong{display:block;font-size:2rem}.lab-place-columns small{display:block}.lab-equation,.lab-machine{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;width:100%;font-size:1.2rem}.lab-fraction{display:inline-flex;flex-direction:column;text-align:center;line-height:1.4;vertical-align:middle;min-width:2ch}.lab-fraction>span:first-child{border-bottom:2px solid currentColor}.lab-dots{display:flex;gap:20px;flex-wrap:wrap}.lab-dots>div{display:flex;gap:5px;flex-wrap:wrap;max-width:190px}.lab-dots i{width:25px;height:25px;border:1px solid #18344f;border-radius:50%}.lab-coins{display:flex;flex-wrap:wrap;gap:8px}.lab-coins span{display:grid;place-items:center;border:2px solid #715a27;background:#ffe09b;width:50px;height:50px;border-radius:50%}.lab-machine>*{border:1px solid #a9c6c8;padding:16px;border-radius:10px}.lab-word-answer{width:100%;padding:20px;text-align:center;border:1px dashed #287e7d;font-size:1.35rem;overflow-wrap:anywhere}.lab-given,.lab-grid-editor{max-width:100%;text-align:center}.lab-given strong,.lab-grid-editor strong{display:block;margin-bottom:10px}.lab-paint-grid{display:grid;grid-template-columns:repeat(var(--lab-cols),minmax(0,1fr));width:240px;max-width:100%;margin:auto;border:1px solid #b7cad3;position:relative;gap:0}.lab-paint-grid>span,.lab-paint-grid>button{display:block;aspect-ratio:1;border:1px solid #c6d5dd;border-radius:0;min-width:0;min-height:0;padding:0;background:#fff}.lab-paint-grid>.painted{background:#287e7d}.lab-paint-grid>.target-cell{box-shadow:inset 0 0 0 3px #a66604}.lab-fold-grid:before,.lab-fold-grid:after{content:'';position:absolute;pointer-events:none}.lab-fold-grid:before{left:50%;top:0;height:100%;border-left:2px dashed #a66604}.lab-fold-grid:after{top:50%;left:0;width:100%;border-top:2px dashed #a66604}.lab-net{display:grid;grid-template-columns:repeat(3,54px);grid-template-rows:repeat(4,54px);gap:3px}.lab-net button{border-radius:0}.lesson-lab [hidden]{display:none!important}
@media(max-width:1000px){.learning-course-grid,.learning-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.learning-course-grid,.learning-progress-grid{grid-template-columns:1fr}.learning-course-card,.learning-progress-card,.progress-explainer,.learning-report{padding:20px}.lab-model{padding:12px;gap:16px}.lab-actions .button{flex:1 1 120px;padding:10px}.lab-phases button{flex:1 1 80px;font-size:.85rem}.lab-place-columns{gap:5px}.lab-place-columns>div{padding:10px;font-size:.85rem}.lab-counter-grid{gap:2px}.lab-counter-grid>span{min-height:10px}.lab-machine{gap:8px}.lab-machine>*{padding:10px}.lab-equation{gap:10px}.learning-filters label{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.lesson-lab *{transition:none!important;animation:none!important}}
.lesson-lab,[id^="core-"],[id^="walkthrough-"]{scroll-margin-top:110px}
.pictogram-visual .pictogram-half{clip-path:inset(0 50% 0 0)}
.reasoning-diagram.revised-diagram>svg.format-compact{min-width:0;max-width:455px;display:block;margin:auto}@media(min-width:651px){.learning-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1200px){.learning-course-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.lab-stage-note{padding:12px 16px;border-left:3px solid #287e7d;background:#e5f3ee;color:#18344f}.lab-model-help{width:100%;margin:0;text-align:center;font-size:.9rem;color:#345669}.lab-model svg[data-lab-interactive]{touch-action:none;cursor:crosshair}.lab-counter-grid>button{display:block;aspect-ratio:1;border:1px solid #18344f;border-radius:3px;padding:0;min-width:0;min-height:0;background:#fff;cursor:pointer;touch-action:manipulation}.lab-counter-grid>button.filled{background:var(--cell-colour)}.lab-counter-grid>button:disabled{cursor:default;opacity:1}.lab-counter-grid>button:focus-visible{position:relative;z-index:1}.lab-number-control input[aria-invalid=true]{border:2px solid #a33b21}.lab-model [data-lab-shade]{transition:none}
.format-passage,.format-chunks{padding:20px;background:#f2f7f6;border:1px solid #c6dade;border-radius:12px;margin:20px 0;line-height:1.8;overflow-wrap:break-word}.format-passage p{white-space:pre-line}.format-chunks p{margin:8px 0}.format-chunks strong{display:inline-block;min-width:2ch;color:#216e6e}.reasoning-diagram.revised-diagram{overflow-x:auto}.reasoning-diagram.revised-diagram>svg{min-width:420px;max-width:100%;height:auto}@media(max-width:650px){.format-passage,.format-chunks{padding:14px}.format-passage{font-size:1rem}.reasoning-diagram.revised-diagram{border:1px solid #c6dade;border-radius:8px}.learning-course-grid{grid-template-columns:1fr}}
