/* One quiet system for menus, questions and mathematical representations. */
:root{--paper:#f7f8f5;--surface:#fff;--ink:#26342e;--muted:#65716a;--line:#dce2da;--soft:#edf1e9;--accent:#355b4d;--focus:#355b4d}
body{font-family:Arial,Helvetica,sans-serif}
.topbar{height:68px;max-width:1080px;padding:0 28px;border-color:transparent}
.brand{font-size:19px;letter-spacing:-.65px;font-weight:600}
.menu-trigger{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 0 8px 16px;font-size:13px;color:var(--muted)}
.menu-trigger svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.button.primary:hover,.screen-primary:hover{background:#27483c;border-color:#27483c}
main{max-width:1000px;padding-top:38px}.hero{margin-bottom:30px}.hero h1{font-size:clamp(30px,4vw,44px);line-height:1.15;letter-spacing:-1.4px;margin:12px 0 16px;max-width:660px}
.hero>p:last-child{font-size:15px;line-height:1.6;max-width:440px}
.eyebrow{font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.search-wrap{background:#fff;border-color:#d1d9cf;border-radius:6px}.home-search .button{border-radius:6px}
.continue{color:var(--accent);font-size:13px}.topic-grid{column-gap:52px}.topic-card{padding:20px 0;gap:20px}.topic-card h3{font-size:17px;font-weight:500;line-height:1.35}.topic-card p{font-size:12px;margin-top:6px}.topic-number{color:#8a958c;font-size:11px;padding-top:3px}.topic-card .arrow{opacity:.5}.topic-card:hover .arrow{opacity:1}.section-head{margin-top:36px;margin-bottom:10px}.section-head h2{color:var(--muted);font-size:12px}.site-footer{border-color:var(--line);font-size:11px;padding:20px 0}
dialog{border:1px solid #d3dcd0;border-radius:12px;background:var(--paper);box-shadow:0 20px 70px #20352a16;padding:24px}dialog::backdrop{background:#1e2e2559;backdrop-filter:blur(3px)}
.main-menu{width:min(390px,calc(100vw - 28px))}.main-menu .dialog-top{margin-bottom:12px}.main-menu h2{font-size:19px;margin:0}.main-menu .screen-menu-list{display:grid}.main-menu .screen-menu-list>a,.main-menu .screen-menu-list>button{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:12px 2px;min-height:48px;font-size:15px;text-align:left}.main-menu .screen-menu-list span{color:var(--muted)}
.language-choices{border:0;padding:0;margin:20px 0;display:grid;gap:8px}.language-choices label{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:50px;background:var(--surface);border:1px solid var(--line);border-radius:6px;margin:0;font-size:17px}.language-choices label:has(input:checked){border-color:var(--accent);background:#edf2e9}.language-choices input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--accent);margin:0;padding:0}.language-note{font-size:12px!important;color:var(--muted);line-height:1.5}.access-gate :is(#language-error,#language-status){min-height:20px;margin:8px 0;font-size:13px;color:#85432f}.access-gate input[type=password],#answer-code{border-color:#b9c6b5;border-radius:5px}.access-gate h2{font-size:23px}.access-gate .button{border-radius:5px;white-space:normal}.access-gate :is(#think-error,#gate-error){color:#85432f}
@media screen{
 .screen-reader{max-width:860px;padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
 .screen-top{position:relative;border:0}.screen-top:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(to right,#91a48d 0 var(--progress,0%),var(--line) var(--progress,0%) 100%);opacity:.8}
 .screen-top p{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.screen-icon{color:#4e6155;border-radius:6px}
 .screen-stage{padding:24px 2px 14px}.screen-content{gap:18px}.screen-question{font-weight:500;letter-spacing:-.55px;line-height:1.36}.screen-given{color:#58685d}.screen-reason{color:#3b5143}
 .screen-bottom{gap:9px}.screen-caption{font-size:11px;color:#728071}.screen-primary,.screen-secondary{min-height:48px;border-radius:6px;font-size:15px;line-height:1.2;padding:11px 12px;gap:12px}.screen-primary{box-shadow:0 1px 0 #24433116}.screen-secondary{border-color:#d3ddce;background:#ffffff80;color:#405b49}
 .screen-lesson-title{font-size:19px;line-height:1.4;font-weight:500}.screen-menu-list>button,.screen-menu-list>a{min-height:48px;padding:12px 0;font-size:15px}.screen-menu-intro{font-size:18px}.screen-content input[type=range]{accent-color:var(--accent)}.screen-content label{font-size:22px}.screen-question-grid a{border-radius:5px;background:#fff}.screen-question-grid [aria-current]{background:var(--accent);border-color:var(--accent)}
 .screen-hint{font-size:18px;line-height:1.5;color:#344d3e}.screen-help-content .model-note,.screen-help-content .model-caption{color:#667a6b;font-size:13px;line-height:1.45}
 .learning-model{--shade:#8fa78a;--second:#dbc294}.learning-model .counter{background:#809a79;border-color:#60795a}.learning-model .counter.second{background:#dbc294;border-color:#b19b73}.learning-model .counter.blank{background:transparent}.learning-model .fraction-strip .shaded{background:var(--shade,#8fa78a)}.learning-model .fraction-strip .second{background:var(--second,#dbc294)}.learning-model .fraction-strip .partial{background:linear-gradient(to right,var(--shade,#8fa78a) var(--fraction-fill),#fff var(--fraction-fill))}.learning-model .math-table th{background:#e9efe4}.learning-model .math-table th,.learning-model .math-table td{border-color:#b8c7af}
 .calendar-weeks{display:grid;gap:6px;max-width:460px;margin:auto}.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-week span{border:1px solid #bdcbb6;background:#fff;text-align:center;padding:7px 2px;font-size:15px;min-height:33px}.calendar-week .calendar-start{background:#dce7d4;border-color:#839d79}.calendar-head span{border:0;background:none;font-size:11px;color:var(--muted);padding:4px 0}.calendar-week .calendar-empty{border-color:transparent;background:none}.calendar-week:nth-child(even):not(.calendar-head) span:not(.calendar-empty){background:#eef3e8}
 .large-text .screen-hint{font-size:23px}
 @media(min-width:800px){.screen-reader{padding-left:44px;padding-right:44px}.screen-stage{padding:32px 0 24px}.screen-bottom>div{grid-template-columns:180px 180px}.screen-top p{font-size:13px}}
 @media(max-height:500px){.screen-reader{padding-left:18px;padding-right:18px}.screen-stage{padding:14px 2px 10px}.screen-content{gap:14px}.screen-primary,.screen-secondary{min-height:44px;font-size:14px;padding:9px 10px}.screen-hint{font-size:17px}.screen-menu-list>button,.screen-menu-list>a{min-height:44px;font-size:14px;padding:10px 0}.screen-lesson-title{font-size:16px}.screen-top p{font-size:12px}}
 @media(max-width:380px){.screen-primary,.screen-secondary{font-size:14px;gap:8px}.screen-caption{font-size:10px}}
}
@media(max-width:600px){.topbar{height:60px;padding:0 22px}main{padding:25px 22px 48px}.hero h1{font-size:32px;letter-spacing:-1px}.hero>p:last-child{font-size:14px}.topic-grid{gap:0}.topic-card{padding:18px 0}.site-footer{margin:0 22px}.continue{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.menu-trigger,.main-menu,#language-gate{display:none!important}}
@media screen{
 .learning-model .digit-table{table-layout:fixed}.learning-model .digit-table th{font-size:12px;font-weight:400;padding:8px 2px;min-width:0}.learning-model .digit-table td{font-size:22px;padding:8px 2px;min-width:0;line-height:1.25}.learning-model .digit-table+*{margin-top:12px}.learning-model .conversion-pair{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);align-items:center;gap:10px}.conversion-pair>div{display:grid;gap:12px;text-align:center;padding:16px 6px;border:1px solid #b9c9b0;background:#fff;border-radius:4px}.conversion-pair>div>span{font-size:13px;color:var(--muted)}.conversion-pair strong{font-size:23px;font-weight:400;white-space:normal;line-height:1.4}.conversion-pair>span{text-align:center;color:var(--muted)}.coin-collection{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:340px;margin:auto}.money-coin{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#f3f1e5;border:1.5px solid #a89a73;font-size:16px;font-style:normal;color:#4d4938}.money-coin.pound-coin{background:#e8e8d9;border-color:#828c74}.comparison-expression{font-size:13px;margin-left:14px;color:var(--muted)}.calendar-week:nth-child(even):not(.calendar-head) span.calendar-start{background:#dce7d4;border-color:#839d79}
}
@media screen{.car-symbol{width:28px;height:24px;flex-shrink:0;display:inline-block}.pic-symbol.star-symbol{width:27px;height:27px;border-radius:0;border:0;background:linear-gradient(to right,#809a79 var(--portion,100%),#f7f8f5 var(--portion,100%));clip-path:polygon(50% 0,61% 34%,98% 35%,68% 58%,79% 94%,50% 72%,21% 94%,32% 58%,2% 35%,39% 34%)}.pictogram-key{gap:8px}.pictogram-row>div{align-items:center}}
@media screen{.parts-key{display:grid;gap:8px;margin:14px 0 0;font-size:13px}.parts-key>div{display:flex;justify-content:space-between;align-items:center;gap:14px}.parts-key dt{color:var(--muted)}.parts-key dt>span{display:inline-block;width:22px;font-size:11px;color:#7d8c77}.parts-key dd{margin:0;font-size:18px;color:var(--ink)}.parts-bar:has(+.parts-key)>div{min-width:0}.parts-bar:has(+.parts-key)>div>span{font-size:12px}.screen-help-content .fraction-whole>span{font-size:13px}}
@media print{.coin-collection{display:flex;flex-wrap:wrap;gap:6px}.money-coin{display:inline-grid;place-items:center;min-width:30px;min-height:30px;border:1px solid #777;border-radius:50%;font-size:10pt}.conversion-pair{display:flex;justify-content:space-between;gap:12px}.conversion-pair>div{display:grid;gap:8px}.parts-key>div{display:flex;justify-content:space-between;gap:12px}.parts-key dd{margin:0}.car-symbol{width:24px;height:20px}}

@media screen{.screen-lesson-link{display:flex;align-items:center;gap:14px;text-align:left;min-height:44px;padding:0;font-size:17px;line-height:1.35;color:var(--ink)}.screen-lesson-link>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.screen-lesson-link>i{font-size:15px;color:var(--muted);font-style:normal;margin-left:auto}.screen-lesson-link:hover>span{text-decoration:underline;text-underline-offset:3px}}
/* Colour carries mathematical roles: blue = given, amber = focus/change,
   purple + dashed outline = unknown. Shape and labels carry the same meaning. */
:root{--paper:#fafaf7;--ink:#172b40;--muted:#627386;--line:#dae2e9;--soft:#edf3f8;--accent:#244f9b;--focus:#b46a12;--given:#285c9b;--given-soft:#e9f1fc;--change:#b86d12;--change-soft:#fff0cf;--unknown:#7650a3;--unknown-soft:#f3edf9}
.screen-top:after{background:linear-gradient(to right,var(--accent) 0 var(--progress,0%),var(--line) var(--progress,0%) 100%);height:3px;opacity:1}
.screen-given{color:#42586c}.screen-question{color:var(--ink);font-weight:600}.math-number{color:var(--given)}.math-blank{color:var(--unknown)}.screen-reason{color:#4c5b69;border-left:3px solid #dda745;padding-left:14px}
.screen-primary,.button.primary{background:var(--accent);border-color:var(--accent)}.screen-primary:hover,.button.primary:hover{background:#193e7e;border-color:#193e7e}.screen-secondary{background:white;border-color:#c8d5e2;color:#325375}.screen-icon{color:#385a7c}.screen-caption{color:#627386}.screen-top p{color:#526a80}
.learning-model{--shade:#77a2db;--second:#efc16b;color:var(--ink)}.learning-model .counter{background:#77a2db;border-color:#3667a5}.learning-model .counter.second{background:#efc16b;border-color:#af741f}.learning-model .counter.blank{background:transparent;border:1.5px dashed var(--unknown)}.learning-model .shaded{background:var(--shade)}.learning-model .second{background:var(--second)}.learning-model .unknown-part{background:var(--unknown-soft);border:2px dashed #9675b8;color:var(--unknown)}
.learning-model .math-table th{background:#e9f1fc;color:#294f7c}.learning-model .math-table th,.learning-model .math-table td{border-color:#b7cbe0}.learning-model .group-box,.learning-model .unit-tiles span{background:#edf4fd;border-color:#a4bfdf;color:#285c9b}.learning-model .model-focus,.learning-model .focus-place{background:#fff0cf!important;border-color:#bf821f!important;color:#70450b}.learning-model .written-result{color:var(--unknown)}.learning-model .write-space{border-color:#997bb7}.learning-model .value-heading{background:#e9f1fc}.learning-model .value-coin{background:#e9f1fc;border-color:#8cafd4;color:#285c9b}.learning-model .ten-rod,.learning-model .one-block{background:#82aadc;border-color:#386da6}.learning-model .ten-rod i{border-color:#487cb9}.learning-model .fraction-strip .shaded{background:var(--shade,#77a2db)}.learning-model .fraction-strip .second{background:var(--second,#efc16b)}.learning-model .fraction-strip .partial{background:linear-gradient(to right,var(--shade,#77a2db) var(--fraction-fill),#fff var(--fraction-fill))}
.learning-model .known-whole strong,.learning-model .whole-label strong{color:var(--given)}.learning-model .model-note,.learning-model .model-caption{color:#52677a}.screen-hint{padding-left:13px;border-left:3px solid #dfa943;color:#3a5269}
.complete-number-line{width:100%;padding:4px 0}.precision-axis{display:block;width:100%;height:auto;overflow:visible}.precision-axis text{font:15px Arial,sans-serif}.axis-rail{fill:none;stroke:#6b8097;stroke-width:2}.axis-tick{stroke:#6b8097;stroke-width:1}.axis-end{stroke:#285c9b;stroke-width:2}.axis-focus{stroke:#dc9c2f;stroke-width:6}.axis-number{fill:#285c9b}.axis-unknown{fill:#7650a3;font-weight:bold}.axis-point{fill:#b86d12;stroke:white;stroke-width:1.5}.axis-leader{stroke:#b2bfce;stroke-width:1;fill:none}.axis-unit{text-align:center;margin:0;font-size:13px;color:#627386}
.interval-path{width:100%;max-width:520px;margin:auto}.path-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:13px;color:#627386}.path-total strong{font-size:22px;color:#285c9b;font-weight:500}.interval-path svg{width:100%;display:block}.interval-path svg text{font:18px Arial,sans-serif}.path-post{fill:#e9f1fc;stroke:#285c9b;stroke-width:2}.axis-break{fill:none;stroke:#8b9baa;stroke-width:1.5}.gap-bracket{fill:none;stroke:#bd791b;stroke-width:2}.interval-path .gap-label{fill:#8b570c;font-size:17px}.path-key{display:flex;justify-content:center;gap:26px;margin-top:14px;font-size:13px;color:#52677a}.path-key>span{display:flex;align-items:center;gap:7px}.key-sign{display:inline-block;width:10px;height:13px;border-left:2px solid #285c9b;border-top:5px solid #285c9b}.key-gap{display:inline-block;width:20px;height:7px;border:2px solid #bd791b;border-top:0}.path-equation{text-align:center;font-size:23px;color:#285c9b;margin:12px 0 0}.path-equation>span{color:#7650a3}.interval-path .model-note{font-size:12px;text-align:center;margin:12px 0 0}.screen-help-content .interval-path{max-width:440px}
@media print{.precision-axis,.interval-path svg{max-width:420px}.path-key i{print-color-adjust:exact}.screen-reason{border-left:0}}
/* Preserve whole quantities while using compact, labelled representations. */
.complete-exchange{display:grid!important;gap:8px!important;width:100%;max-width:480px;margin:0 auto}.complete-exchange.exchange-detailed{grid-template-columns:1fr}.complete-exchange.exchange-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.complete-exchange .exchange-group{padding:7px;border:1px solid #9db5d6;border-radius:6px;min-width:0}.complete-exchange .unit-tiles{gap:4px}.complete-exchange .unit-tiles span{font-size:16px;min-height:26px;padding:3px;line-height:1.15;border:1px solid #9db5d6}.complete-exchange .exchange-equivalence{font-size:13px;padding:4px 0 0;gap:6px;justify-content:center}.group-multiplicity{font-size:18px;font-weight:500;color:var(--given)}.exchange-kept{display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px}.kept-value{padding:6px 16px;border:2px solid var(--given);border-radius:5px;color:var(--given);font-size:18px;font-weight:500}.nested-orders{display:grid;gap:12px}.nested-orders section{border:1px solid #9db5d6;border-radius:6px;padding:8px}.nested-orders p{margin:0 0 7px;font-size:14px}.nested-packs{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.nested-packs span{border:1px solid var(--unknown);padding:8px 0;color:var(--unknown);text-align:center}.rate-bar{display:flex;gap:2px;border:1px solid var(--given)}.rate-bar>div{display:grid;gap:8px;padding:12px 2px;background:var(--given-soft);border-right:1px solid var(--given);font-size:15px;text-align:center}.combined-comparison{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:12px}.comparison-row{margin:12px 0}.comparison-row>span{display:block;font-size:14px;margin-bottom:5px}.comparison-row>div{display:flex}.comparison-row b{flex:1;background:var(--given-soft);border:1px solid var(--given);padding:10px 0;font-size:18px;font-weight:400;text-align:center}.combined-brace{border-right:2px solid var(--given);border-block:2px solid var(--given);display:flex;align-items:center;justify-content:center;font-size:13px}.combined-brace strong{display:inline-block;font-size:18px;margin-top:5px}.amount-parts{display:flex;gap:8px}.amount-parts>div{flex:1;border:1px solid var(--line);padding:12px 4px;display:grid;gap:8px;text-align:center}.amount-parts span{font-size:13px}.amount-parts strong{font-size:18px;font-weight:500}.model-claim-label{font-size:14px!important;border-left:3px solid var(--focus);padding:8px 10px;background:var(--change-soft);color:var(--ink)}
.sharing-cakes{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.sharing-cake{width:104px;flex:none}.sharing-cake>span{display:block;font-size:12px;margin-bottom:4px}.sharing-cake>div{display:grid;grid-template-columns:repeat(var(--parts),1fr);height:34px;border:1px solid var(--given)}.sharing-cake i{border-right:1px solid var(--given);background:white}.sharing-cake i.selected-share{background:var(--given)}
.collection-range{font-size:13px!important;text-align:center;color:var(--muted);margin:0 0 8px!important}
.counter.named-blue{background:#4b96b8!important}.counter.named-red{background:#d68079!important}
/* Every shown group retains its value; matched bar units share one scale. */
.place-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:380px;margin:auto}.place-groups>div{display:flex;flex-wrap:wrap;gap:5px;align-items:center;border:1px solid #becbdf;padding:12px;border-radius:8px}.place-groups b,.place-groups span{display:grid;place-items:center;color:#304f8f;border:1px solid #91acd7;background:#eef3fb;font-weight:500}.place-groups b{width:30px;height:48px}.place-groups span{width:22px;height:22px;border-radius:50%}.difference-bars{width:min(100%,430px);margin:auto}.difference-bars section>span{display:block;margin:12px 0 6px;color:#53677e}.difference-bars section>div{display:flex;height:48px}.difference-bars b{flex:1;display:grid;place-items:center;border:1px solid #506987;font-weight:500;color:#27374d}.difference-bars .red b{background:#f4d9d7}.difference-bars .blue b{background:#d4e7f4}.difference-given{border-top:2px solid #b9832c;text-align:center;padding-top:6px;color:#71511e;font-size:16px;margin-top:12px;white-space:nowrap}
.factor-context{margin:0 auto 18px;width:min(100%,430px);display:grid;gap:8px}.factor-context>div{display:grid;grid-template-columns:1fr 50px;gap:12px;align-items:center;padding:8px 12px;background:var(--given-soft);border-radius:5px}.factor-context dt{font-size:16px;color:var(--muted)}.factor-context dd{margin:0;text-align:center;font-size:22px;color:var(--given)}.complete-exchange+.exchange-equivalence{font-size:14px;padding-top:7px;gap:10px}.complete-exchange+.exchange-equivalence strong{font-size:16px;padding:3px 9px}
