:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17303a;background:#f6f7f4;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:#145f71}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #d37938;outline-offset:3px}.skip-link{position:absolute;left:-10000px;top:0;background:#fff;padding:1rem;z-index:10}.skip-link:focus{left:1rem}.site-header{background:#12343d;color:#fff}.site-header nav{max-width:1080px;margin:auto;padding:1rem 1.5rem;display:flex;align-items:center;gap:2rem}.site-header a{color:#e7f2ee;text-decoration:none}.site-header .brand{font-weight:800;font-size:1.2rem;margin-right:auto}main{max-width:900px;margin:auto;padding:1.5rem 1.5rem 5rem}.breadcrumb{display:flex;gap:.65rem;flex-wrap:wrap;font-size:.9rem;color:#52676c;margin-bottom:2rem}.breadcrumb a{color:inherit}.hero{background:#12343d;color:#fff;padding:clamp(2rem,5vw,4rem);border-radius:1.5rem;margin-bottom:1.5rem}.eyebrow{font-size:.76rem;letter-spacing:.13em;font-weight:800;color:#8a5732;text-transform:uppercase}.hero .eyebrow{color:#f5bf7a}.hero h1{font-size:clamp(2.5rem,6vw,4.8rem);line-height:1.08;letter-spacing:-.05em;margin:.7rem 0 1rem}.lede{font-size:1.22rem;max-width:55ch;color:#d4e4e1}h2{line-height:1.22;letter-spacing:-.025em;font-size:clamp(1.5rem,3vw,2rem);margin:.4rem 0 1rem}p{max-width:70ch}.card{background:#fff;border:1px solid #dce5df;border-radius:1.2rem;padding:clamp(1.4rem,4vw,2.3rem);margin:1.3rem 0;box-shadow:0 7px 28px #1638420a}.objectives ul,.prerequisites ul{padding-left:1.4rem}.objectives li{margin:.45rem 0}.prerequisites{margin:1.2rem 0;border:1px solid #dce5df;background:#fff;border-radius:.8rem;padding:1rem 1.4rem}.prerequisites summary{cursor:pointer;font-weight:700}.lesson-content{margin:2.6rem 0}.explanation{border-left:4px solid #81a69c;padding:.2rem 0 .4rem 1.5rem;margin:2rem 0}.activity-controls{display:grid;grid-template-columns:minmax(160px,2fr) minmax(90px,1fr) auto;column-gap:.7rem;row-gap:.35rem;align-items:end}.activity-controls label{font-size:.86rem;font-weight:700}.activity-controls label:first-child{grid-column:1}.activity-controls label:nth-of-type(2){grid-column:2;grid-row:1}.activity-controls input{grid-column:1;grid-row:2}.activity-controls select{grid-column:2;grid-row:2}.activity-controls button{grid-column:3;grid-row:2}.activity-controls input,.activity-controls select{width:100%;border:1px solid #9cb5b4;background:#fff;color:#17303a;border-radius:.5rem;padding:.8rem;font:inherit;min-height:48px}button,.primary,.secondary{font:inherit;border-radius:.55rem;border:1px solid #12343d;padding:.8rem 1rem;min-height:48px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-weight:700}button,.primary{background:#12343d;color:#fff}button:hover,.primary:hover{background:#235663}.secondary{background:#fff;color:#12343d}.secondary:hover{background:#e7f1ed}.result-summary{font-weight:800;margin:1.7rem 0 .1rem}.activity-explanation{color:#3c5a60;margin:.1rem 0 1.2rem}.result-list{padding:0;list-style:none;display:grid;gap:.65rem;max-height:480px;overflow:auto}.result-list li{padding:1rem;border:1px solid #d5e2df;background:#f9fbf8;border-radius:.7rem}.result-list strong{display:block}.result-list p{margin:.4rem 0 0}.matched{display:inline-block;font-size:.8rem;color:#306e55;font-weight:800;margin-top:.2rem}.checks fieldset{border:0;border-top:1px solid #dce5df;margin:1.5rem 0 0;padding:1.5rem 0 0}.checks legend{font-size:1.08rem;font-weight:800;padding-top:1rem}.checks .answer{display:block;width:100%;text-align:left;justify-content:flex-start;margin:.45rem 0;color:#17303a;background:#f8faf8;border:1px solid #b8ccc6;font-weight:500}.checks .answer:hover{background:#e7f1ed}.feedback{min-height:1.7rem;color:#8c422e;font-weight:700}.feedback.correct{color:#1c6b4b}.next{background:#e4ede8;border-radius:1rem;padding:clamp(1.4rem,4vw,2.4rem);margin-top:2rem}.lesson-status{font-weight:800;color:#8c422e}.lesson-status.passed{color:#1c6b4b}.next-links{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}.source{font-size:.85rem;color:#496169;margin-top:2rem;border-top:1px solid #d5e2df;padding-top:1rem}.source p{margin-bottom:.2rem}@media(max-width:600px){main{padding:1rem 1rem 3rem}.site-header nav{padding:1rem;gap:1rem}.activity-controls{display:block}.activity-controls label,.activity-controls input,.activity-controls select,.activity-controls button{display:block;width:100%;margin:.45rem 0}.next-links>*{width:100%}}@media(prefers-reduced-motion:no-preference){button,.primary,.secondary{transition:background .15s ease}}[role="region"]:focus-visible{outline:3px solid #d37938;outline-offset:3px}.checks .answer[aria-pressed="true"]{border-color:#12343d;box-shadow:inset 0 0 0 1px #12343d;background:#e7f1ed}

.vector-corpus{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.55rem;list-style:none;padding:0;margin:1.2rem 0}.vector-corpus li{background:#f5f8f5;border:1px solid #d5e2df;border-radius:.6rem;padding:.7rem .85rem;font-size:.92rem;overflow-wrap:anywhere}.vector-prediction,.vector-experiment,.vector-results{border-top:1px solid #dce5df;padding-top:1rem;margin-top:1.3rem}.vector-pick{margin:.75rem 0}.vector-pick label,.vector-experiment>label{display:block;font-weight:700;margin-bottom:.35rem}.vector-pick select{display:block;width:min(100%,36rem);min-height:48px;padding:.7rem;border:1px solid #9cb5b4;border-radius:.55rem;background:#fff;color:#17303a;font:inherit}.vector-experiment>input[type="range"]{display:block;width:min(100%,36rem);min-height:40px;margin:0 0 1.2rem;accent-color:#145f71}.vector-feedback{color:#31575e;font-weight:700;min-height:1.5rem}.vector-experiment button{margin:.3rem .5rem .4rem 0}.vector-ranking-list{display:grid;gap:.4rem;padding-left:1.7rem}.vector-ranking-list li{background:#f5f8f5;border:1px solid #d5e2df;border-radius:.55rem;padding:.45rem .7rem;overflow-wrap:anywhere}.vector-worked{background:#e4ede8;border-radius:.7rem;padding:1rem;overflow-wrap:anywhere}
.benchmark-corpus strong{display:block;line-height:1.3;margin-bottom:.3rem}.benchmark-corpus span{color:#31575e}
.nested-interval-figure{margin:1.2rem 0;padding:1rem;background:#f5f8f5;border:1px solid #d5e2df;border-radius:.7rem}.nested-interval-number-line{display:block;width:100%;height:auto;max-width:34rem;margin:auto}.nested-interval-figure figcaption{max-width:60ch;margin:.35rem auto 0;color:#496169;font-size:.9rem}.nested-interval-choices{border:0;padding:0;margin:1.3rem 0}.nested-interval-choices legend{font-weight:800;margin-bottom:.4rem}.nested-interval-complete{display:grid;gap:.7rem}.nested-interval-complete button{justify-self:start}
.interval-choices{display:grid;gap:.55rem;max-width:32rem;margin:.65rem 0}
.continuity-choices{border:0;padding:0;margin:1.2rem 0;min-width:0}.continuity-choices legend{font-weight:800;margin-bottom:.7rem}.continuity-choices .answer{display:flex;width:100%;justify-content:flex-start;text-align:left;margin:.55rem 0;background:#f8faf8;color:#17303a;border-color:#b8ccc6;font-weight:500}.continuity-choices .answer:hover{background:#e7f1ed}
.quantifier-controls{display:grid;gap:.55rem;max-width:42rem}.quantifier-controls label{font-weight:700}.quantifier-controls select{width:100%;min-height:48px;padding:.65rem;border:1px solid #9cb5b4;border-radius:.55rem;background:#fff;color:#17303a;font:inherit}.quantifier-controls button{justify-self:start;margin:.5rem 0}.quantifier-choice{display:grid;gap:.35rem}.quantifier-table-scroll{overflow-x:auto;max-width:100%}.quantifier-table-scroll table{border-collapse:collapse;width:min(100%,42rem);margin:1rem 0}.quantifier-table-scroll table caption{text-align:left;font-weight:700;margin-bottom:.4rem}.quantifier-table-scroll table th,.quantifier-table-scroll table td{border-bottom:1px solid #dce5df;text-align:left;padding:.5rem}.quantifier-table-scroll table th{font-weight:700}
/* Keep dynamically revealed activity controls out of both view and tab order. */
[hidden]{display:none!important}
.sequence-practice{margin:1.5rem 0;padding:1.25rem;background:#fff;border:1px solid #dce5df;border-radius:.9rem}.sequence-practice h3{margin:.1rem 0 .5rem}.sequence-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;align-items:end;margin:1rem 0}.sequence-field{min-width:0}.sequence-field label{display:block;font-size:.9rem;font-weight:700;margin-bottom:.3rem}.sequence-field input,.sequence-field select,.sequence-draft textarea{display:block;width:100%;min-height:48px;padding:.75rem;border:1px solid #9cb5b4;border-radius:.5rem;background:#fff;color:#17303a;font:inherit}.sequence-draft{margin:1rem 0;padding:1rem;background:#f4f8f5;border-radius:.7rem}.sequence-draft[hidden],.sequence-field[hidden]{display:none!important}.sequence-draft h4{margin:.2rem 0}.sequence-draft textarea{min-height:8rem;resize:vertical}.sequence-draft details{margin-top:.8rem}.sequence-draft summary{cursor:pointer;font-weight:700}.sequence-draft li{margin:.4rem 0}.sequence-action button{width:100%}.sequence-practice .activity-explanation{overflow-wrap:anywhere}@media(max-width:600px){.sequence-controls{grid-template-columns:1fr}.sequence-action button{width:100%}}

/* Keep lesson content usable when readers enlarge text without widening the viewport. */
main{min-width:0;padding:clamp(12px,4vw,24px) clamp(12px,4vw,24px) 48px}.hero{min-width:0;padding:clamp(20px,5vw,64px)}.card{min-width:0;padding:clamp(16px,4vw,36px)}.site-header nav{min-width:0;flex-wrap:wrap;gap:clamp(12px,4vw,32px);padding:clamp(12px,4vw,20px)}.site-header .brand{min-width:0;max-width:100%}:where(main,nav,section,article,aside,footer,li,fieldset,legend,p,h1,h2,h3,h4,a,button,label,summary){min-width:0;overflow-wrap:anywhere}.sequence-controls>*{min-width:0}.sequence-field input,.sequence-field select,.sequence-draft textarea{max-width:100%}.prerequisite-links ul{padding-left:1.3em}.prerequisite-links li{margin:.8em 0}.prerequisite-links p{margin:.25em 0;color:#496169}#activity,#checks,.next{scroll-margin-top:20px}.hero h1,h2{text-wrap:balance}

/* Audit polish: checkbox hit areas + reduced motion */
.predict-options label,.check-options label{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 4px}.predict-options input[type=checkbox],.check-options input[type=checkbox]{width:22px;height:22px;flex:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Batch 4: native radio check options (lesson.js) with 44px targets */
.checks fieldset{border:0;padding:0;margin:1.3rem 0;min-width:0}.checks fieldset legend{font-weight:800;margin-bottom:.4rem}.checks label.answer{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:10px 12px;margin:.55rem 0;background:#f8faf8;border:1px solid #b8ccc6;border-radius:.6rem;cursor:pointer;font-weight:500}.checks label.answer:hover{background:#e7f1ed}.checks label.answer input[type=radio]{width:22px;height:22px;flex:none;margin-top:2px;accent-color:#145f71}.checks label.answer:has(input:checked){border-color:#145f71;background:#e7f1ed}


/* Batch 5: chapter kicker, section TOC, reading rhythm */
.hero .chapter{color:#d4e4e1;margin:0 0 .4rem}.hero .eyebrow+.eyebrow{margin-top:0}.breadcrumb [aria-current]{color:inherit;text-decoration:none}.toc{background:#fff;border:1px solid #dce5df;border-radius:.9rem;padding:1rem 1.4rem;margin:0 0 1.5rem}.toc .eyebrow{margin:0 0 .4rem}.toc ol{margin:.2rem 0;padding-left:1.3em;display:grid;gap:.35rem}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.lesson-content{margin-top:2rem}.lesson-content .explanation{margin:2.2rem 0}.lesson-content .explanation h2{margin-top:0}.lesson-content .explanation p{max-width:65ch;margin:.9em 0}.explanation[id]{scroll-margin-top:20px}.objectives li{margin:.6rem 0}


/* Skip-link and unavailable-view focus target: keyboard users keep the indicator */
#main-content:focus:not(:focus-visible){outline:none}


.lesson-content .explanation p{font-family:Georgia,"Times New Roman",serif;line-height:1.55}
.lesson-content .explanation h2{font-family:Georgia,"Times New Roman",serif}
.hero .lede{font-family:Georgia,"Times New Roman",serif;font-style:italic}
aside.key{background:#eef6ee;border-left:4px solid #779977;padding:10px 12px;margin:12px 0}
aside.warn{background:#faf7ee;border-left:4px solid #b3954b;padding:10px 12px;margin:12px 0}
.table-wrap{overflow-x:auto;margin:12px 0}
table.results{border-collapse:collapse;width:100%;font-size:.93rem}
table.results th,table.results td{border:1px solid #cfd3d8;padding:7px 8px;text-align:left;vertical-align:top}
table.results th{background:#eef1f4}
.lesson-toolbar{position:sticky;top:0;z-index:30;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;background:rgba(255,255,255,.96);border-bottom:1px solid #d8d5d1;padding:.6rem 2px}
.tool-button{min-height:44px;min-width:44px;border:1px solid #bbb;background:#fff;border-radius:7px;padding:.5rem .8rem;cursor:pointer;font-size:.9rem;color:#222}
.tool-button:hover{background:#f3f3f3}
.tool-button:focus-visible{outline:2px solid #244b7a;outline-offset:2px}
@media print{.lesson-toolbar,.toc,.next-links,.site-header{display:none}.hero,.hero .eyebrow,.hero h1,.hero .lede{background:none;color:#000}details,aside.key,aside.warn,table.results,.explanation{break-inside:avoid}.result-list{max-height:none;overflow:visible}.table-wrap{overflow:visible}body{background:#fff}main#main-content{box-shadow:none;max-width:none;margin:0;padding:0;border-radius:0}}

body{background:#ecebea;color:#181818}
main#main-content{max-width:980px;margin:28px auto 60px;padding:66px 72px 58px;background:#fff;box-shadow:0 6px 30px rgba(0,0,0,.12);border-radius:4px}
#main-content .hero{background:none;color:#181818;text-align:center;padding:0 0 .5rem;margin-bottom:1rem}
#main-content .hero .eyebrow,#main-content .hero .chapter{color:#244b7a}
#main-content .hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4.5vw,3.1rem);letter-spacing:0;color:#181818}
#main-content .hero .lede{color:#333;margin-left:auto;margin-right:auto}
#main-content .breadcrumb{color:#555}
#main-content .card{background:#f6f8fb;border:1px solid #cfd7e3;box-shadow:none}
#main-content .prerequisites{border:1px solid #cfd7e3;background:#f6f8fb;font-family:Arial,Helvetica,sans-serif}
#main-content .prerequisites summary{color:#183a66}
#main-content .toc{background:#fff;border:1px solid #d8d5d1}
.tool-label{margin-right:.4rem}
@media(max-width:720px){main#main-content{padding:42px 25px;margin:12px auto 40px}}
