:root{--ink:#293b35;--muted:#596a60;--paper:#faf5ec;--white:#fffdf8;--line:#d8d5c7;--green:#285e50;--pale:#edf2e8;--warm:#a8472e;--focus:#c07b18;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-size:17px;line-height:1.65}
*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--green);background:var(--green);color:white;padding:.55rem 1rem;border-radius:3px;line-height:1.5}button:hover{background:#124c41}button.secondary{background:transparent;color:var(--green)}button:disabled{opacity:.55;cursor:default}input:not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid #8b9d9c;background:var(--white);border-radius:2px;padding:.5rem .65rem;max-width:100%;color:var(--ink)}textarea{width:100%;min-height:180px;resize:vertical}input[type=checkbox],input[type=radio]{accent-color:var(--green);width:18px;height:18px;vertical-align:middle}label{display:block}label.choice{display:flex;gap:.6rem;align-items:baseline;padding:.25rem 0}label.choice input{flex:none}fieldset{border:1px solid var(--line);padding:1rem;min-width:0}legend{font-weight:600;padding:0 .3rem}
.skip{position:absolute;left:1rem;top:-100px;background:white;padding:.6rem;z-index:4}.skip:focus{top:.5rem}.site-header{background:var(--white);border-bottom:1px solid var(--line)}.header-inner{max-width:1220px;padding:1.15rem 2rem .8rem;margin:auto}.brand{font:700 1.55rem Georgia,serif;color:var(--ink);text-decoration:none}.brand span{font:400 .9rem system-ui;color:var(--muted);margin-left:.2rem}nav{display:flex;flex-wrap:wrap;gap:.25rem 1.2rem;margin-top:.65rem;font-size:.91rem}nav a{color:var(--ink);text-decoration:none;padding:.2rem 0;border-bottom:2px solid transparent}nav a[aria-current=page]{border-color:var(--green);color:var(--green)}nav a:hover{text-decoration:underline}
main{max-width:1180px;margin:auto;padding:2.4rem 2rem 4rem;min-height:65vh}h1,h2,h3{line-height:1.2;color:var(--ink)}h1{font:400 clamp(2rem,4.6vw,3rem)/1.12 Georgia,serif;margin:.1rem 0 1.1rem;max-width:900px}h2{font:400 1.7rem/1.2 Georgia,serif;margin:2.1rem 0 .85rem}h3{font-size:1.1rem;font-weight:650;margin:1.4rem 0 .5rem}p{margin:.65rem 0 1rem}.lede{font-size:1.12rem;max-width:760px}.reading{max-width:820px}.muted,.meta{color:var(--muted);font-size:.91rem}.meta{margin:.4rem 0}.breadcrumb{font-size:.87rem;margin-bottom:1rem}.home-start{display:grid;grid-template-columns:minmax(250px, .85fr) minmax(400px,1.15fr);gap:3rem;align-items:start;margin:1rem 0 2.5rem}.home-start h1{margin-top:.3rem;letter-spacing:-.025em}.home-start .activity{margin:0}.task-links{list-style:none;padding:0;margin:1.4rem 0}.task-links li{padding:.6rem 0;border-bottom:1px solid var(--line)}.task-links a{font-weight:600}.task-links p{margin:.1rem 0;color:var(--muted);font-size:.94rem}.directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2.5rem}.directory article{border-top:1px solid var(--line);padding:1rem 0}.directory h2,.directory h3{font:400 1.45rem/1.25 Georgia,serif;margin:0 0 .3rem}.directory p{margin:0}.columns{display:grid;grid-template-columns:1.55fr 1fr;gap:2.4rem}.filter-bar{display:flex;flex-wrap:wrap;gap:1rem;align-items:end;margin:1.4rem 0}.filter-bar label{font-size:.91rem}.filter-bar input,.filter-bar select{display:block}.context{padding:.8rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:1.2rem 0;font-size:.92rem}.context label{display:inline-block;margin-right:.6rem}.context select{max-width:340px}.activity{background:var(--white);border:1px solid var(--line);padding:1.4rem;margin:1.5rem 0}.activity h2{font:600 1.1rem system-ui;margin:0 0 .6rem}.resource{margin:1rem 0}.resource svg{width:100%;height:auto;max-height:580px;display:block;background:#fff}.resource figure{margin:0}figcaption{color:var(--muted);font-size:.88rem;padding:.5rem 0}.table-wrap{max-width:100%;overflow-x:auto;margin:1rem 0}table{border-collapse:collapse;width:100%;background:#fff;font-size:.94rem}th,td{text-align:left;padding:.65rem .75rem;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--pale);font-weight:600}caption{text-align:left;color:var(--muted);padding:.4rem 0}.question{padding:1rem 0;border-top:1px solid var(--line)}.question p{margin:0 0 .6rem}.question input[type=text],.question input[type=number]{width:280px}.actions{display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0 .2rem}.feedback{border-left:3px solid var(--green);padding:.6rem .9rem;background:var(--pale);margin:.8rem 0}.feedback.error{border-color:var(--warm);background:#faf0eb}.feedback p{margin:.2rem 0}.feedback:empty{display:none}.feedback-summary{font-weight:600}.notice{padding:.8rem 1rem;border-left:3px solid #8b9d9c;background:#f0f2ed;font-size:.94rem;margin:1.1rem 0}.evidence td:first-child{min-width:220px}.evidence td:nth-child(2){min-width:140px}.source-link{font-size:.88rem}.source-note{font-size:.9rem}.saved-control{margin:1rem 0}.requirements li{margin-bottom:.7rem}.requirements strong{display:block}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.form-grid label>select,.form-grid label>input:not([type=checkbox]):not([type=radio]){display:block;width:100%}.checkbox-list{max-height:310px;overflow-y:auto}.pack-section{border-top:1px solid var(--line);padding:1.2rem 0}.pack-section h2{margin:.2rem 0 .7rem}.pack-question{padding:.8rem 0}.pack-question textarea{min-height:90px}.marks{float:right;color:var(--muted);font-size:.88rem;margin-left:1rem}.pack-meta{display:flex;gap:1.3rem;flex-wrap:wrap;font-size:.93rem}.answer-space{height:80px;border-bottom:1px dotted var(--line)}.teacher-guide{margin-top:2rem}.teacher-guide details{border-top:1px solid var(--line);padding:.75rem 0}summary{cursor:pointer}.progress-list{list-style:none;padding:0}.progress-list li{padding:.7rem 0;border-top:1px solid var(--line)}footer{border-top:1px solid var(--line);padding:1.6rem 2rem;color:var(--muted);font-size:.87rem}footer .footer-inner{max-width:1116px;margin:auto}footer a{margin-right:1rem}.empty{padding:1rem 0}.method-help{max-width:780px}.method-help ul{padding-left:1.2rem}.page-search{max-width:480px;width:100%}[hidden]{display:none!important}.flow-options{padding-left:1.25rem}.flow-options li{margin:.4rem 0}
.home-intro,.page-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem;align-items:center;margin:.4rem 0 2.6rem}.home-intro h1{font-size:clamp(2.5rem,4.6vw,3.6rem);letter-spacing:-.025em}.page-intro{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:2.5rem}.page-intro h1{margin-bottom:1rem}.editorial-art{margin:0}.editorial-art img{display:block;width:100%;height:auto;border-radius:4px}.editorial-art figcaption{font-size:.78rem;line-height:1.4;padding:.4rem 0;color:var(--muted)}.start-link a{font-weight:600;font-size:1.06rem}.home-start>section>h2{margin-top:0}.reading a{overflow-wrap:anywhere}
@media(max-width:800px){main{padding:1.7rem 1.1rem 3rem}.header-inner{padding:1rem 1.1rem .65rem}.home-start,.columns,.home-intro,.page-intro{grid-template-columns:1fr;gap:1rem}.home-intro,.page-intro{margin-bottom:1.8rem}.page-intro .editorial-art{max-width:520px}.directory{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}nav{gap:.2rem 1rem}.activity{padding:1rem}.home-start .activity{margin-top:.2rem}.resource svg{max-height:none}h1,.home-intro h1{font-size:2.3rem}footer{padding:1.4rem 1.1rem}.context select{max-width:100%;width:100%}.question input[type=text],.question input[type=number]{width:100%}}
.home-search{display:flex;align-items:end;gap:1rem;margin:1.5rem 0}.home-search label{flex:1}.home-search input{display:block;width:100%;max-width:none}.search-results{list-style:none;padding:0}.search-results li,.lesson,.diagnostic-question{border-top:1px solid var(--line);padding:1.5rem 0}.search-results h2{margin:.3rem 0}.lesson{scroll-margin-top:1rem}.lesson form button{margin-top:.6rem}[data-model] form{margin:1.5rem 0}[data-model] input{display:block;width:100%}[data-model] input[type=checkbox]{width:auto}[data-model-output] svg{width:100%;height:auto;max-height:none}.display-question{font-size:1.35rem}.classroom-large [data-display]{font-size:1.35rem}.classroom-large [data-display] .display-question{font-size:1.8rem}[data-share-link]{width:100%;display:block}.classroom-large .site-header,.classroom-large footer{display:none}[data-mistakes] li{margin:1rem 0}[data-problem-form] input{display:block;width:100%}@media(max-width:600px){.home-search{display:block}.home-search button{margin-top:.7rem}.classroom-large [data-display]{font-size:1.1rem}}
@media print{.editorial-art{display:none}.home-intro,.page-intro{display:block}}
@media print{body{background:#fff;font-size:11pt;color:#000}.site-header,footer,.skip,.no-print,nav,.pack-question textarea,.actions{display:none!important}main{max-width:none;padding:0}.activity{border:none;padding:0}.pack-section{break-inside:auto}.resource,figure,.question,.pack-question{break-inside:avoid}h1{font-size:24pt}h2{font-size:17pt}a{color:#000}table{font-size:10pt}.teacher-guide{break-before:page}.answer-space{height:90px}.table-wrap{overflow:visible}.feedback{background:white}details>summary{display:none}details>*{display:block!important}}

.diagram-scroll{overflow-x:auto}.diagram-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.diagram-scroll-note{display:none}@media(max-width:700px){.resource svg{min-width:640px;max-height:none}.diagram-scroll-note{display:block;font-size:.85rem}[data-model-output]{overflow-x:auto}}@media print{.resource svg{min-width:0}.diagram-scroll{overflow:visible}.diagram-scroll-note{display:none}}

.more-nav{position:relative}.more-nav summary{padding:.2rem 0;color:var(--green);text-decoration:underline;text-underline-offset:.15em}.more-nav>div{position:absolute;z-index:5;top:100%;left:0;min-width:230px;background:var(--white);border:1px solid var(--line);padding:.7rem 1rem;box-shadow:0 4px 12px #0001}.more-nav>div a{display:block;padding:.35rem 0}.home-routes{max-width:850px}.home-routes .task-links p{max-width:760px}@media(max-width:800px){.more-nav>div{left:auto;right:0}.home-intro .editorial-art{max-width:520px}}

@media(max-width:800px){.site-header nav{position:relative}.more-nav{position:static}.more-nav>div{left:0;right:0;top:100%;min-width:0}}

.source-note,.teacher-guide p{overflow-wrap:anywhere}
