/* Quiet, responsive learning interface. Only the current step is accented. */
:root{--ink:#203d33;--muted:#61716a;--line:#dbe5df;--accent:#236442;--paper:#f6f8f5}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;background:var(--paper);line-height:1.55}
header{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 16px #153b2610;gap:1rem}
.brand{display:inline-flex;align-items:center;gap:.65rem;font-size:1.45rem;letter-spacing:-.04em;color:#214d35}
.brand:before{content:"";display:block;background:url('/favicon.svg') center/contain no-repeat;width:38px;height:38px;flex:none}
header nav{gap:.4rem}header nav a{border-radius:8px;padding:.5rem .7rem;font-size:.94rem}
header nav a:hover{background:#edf4eb}
main{max-width:1280px;margin-inline:auto}
h1,h2,h3,.chapter-tile h3{font-family:inherit;letter-spacing:-.025em}h1{font-weight:740;line-height:1.16;max-width:24ch}h2{line-height:1.25}p{max-width:72ch}
.chapter-grid{gap:1.1rem}.chapter-tile{border:1px solid #d8e3da;border-top:3px solid #639975;border-radius:16px;padding:1.5rem;min-height:215px;box-shadow:0 3px 12px #1d402708;transition:box-shadow .15s,transform .15s}
.chapter-tile:hover{transform:translateY(-2px);box-shadow:0 8px 24px #1d402711;background:#fff}
.chapter-tile h3{font-size:1.4rem;font-weight:680;max-width:25ch}.chapter-code{background:#edf4e9;font-size:.9rem;letter-spacing:.03em;border-radius:7px}.chapter-planned{border-top-color:#d8e1d9;box-shadow:none}
.chapter-tabs{gap:.4rem;border-bottom:1px solid var(--line)}.chapter-tabs a{border-radius:8px}.chapter-tabs [aria-current]{background:#e6f0e4;color:#235638}
.lesson-tile{border-color:#dce5df;border-radius:12px;background:#fff;padding:1.15rem;min-height:82px;font-weight:560;font-size:1.03rem}.lesson-number{width:2.25rem;height:2.25rem;border-radius:50%;background:#edf3e9;color:#335a40}.lesson-tile:hover{background:#f0f6ed}
.lesson-sidebar{min-width:0}.lesson-picker{border-color:var(--line);border-radius:12px}.lesson-picker a{padding:.7rem .4rem}.lesson-picker [aria-current]{background:#edf4e9;border-radius:6px;color:#235638}
.lesson-heading{max-width:65ch}.lesson-heading h1{font-size:clamp(1.65rem,3.3vw,2.6rem)}.lesson-heading .lead{color:var(--muted);max-width:58ch}
.lesson-deck,.resource-link,.chapter-review{border-radius:12px}.lesson-deck p{font-size:.97rem}.resource-link{border-color:var(--line)}
button,.button{border-radius:9px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #2f7251;outline-offset:3px}
.fraction-lab{padding:clamp(.75rem,2vw,1.4rem);border:1px solid #cbded0;border-radius:16px;background:#fbfdf9;max-width:100%}.fraction-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem}.fraction-controls label{display:grid;grid-template-columns:1fr auto;gap:.4rem;font-size:.9rem;font-weight:600}.fraction-controls input{grid-column:1/-1;width:100%;min-height:30px;accent-color:#286c48}.fraction-controls output{font-variant-numeric:tabular-nums;color:#236442}.fraction-controls select{width:100%;max-width:100px}.fraction-diagram svg{display:block;width:100%;max-height:480px;margin:1.1rem 0;overflow:visible}.fraction-result{min-height:3rem;padding:.75rem 1rem;margin-bottom:1rem;border-radius:8px;background:#edf4e9;font-weight:600;overflow-wrap:anywhere}.fraction-lab .actions{display:flex;flex-wrap:wrap;gap:.6rem}.fraction-lab button{min-height:44px}
.curriculum-note{margin:1rem 0;padding:.8rem 1rem;border-left:3px solid #89a67a;background:#f2f5ee;font-size:.95rem}
@media(max-width:700px){header{align-items:flex-start;flex-wrap:wrap;padding:1rem}header nav{width:100%;display:flex;flex-wrap:wrap}header nav a{padding:.4rem;font-size:.86rem}.brand{font-size:1.3rem}.chapter-tile{min-height:180px}.fraction-controls{gap:.8rem}.lesson-tile{min-height:72px}}
@media(prefers-reduced-motion:reduce){.chapter-tile{transition:none}.chapter-tile:hover{transform:none}}
