@import url("https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@400;500;600;700;800&display=swap");
:root{--green:#385f4b;--dark:#284536;--sage:#dce9df;--light:#f4f8f5;--purple:#6f3f91;--orange:#d9872f;--yellow:#fff0b6;--ink:#17221c;--muted:#59665f;--line:#b9c4bd;--error:#9a2f2f;--body:19px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"Lexend Deca",Arial,sans-serif;font-size:var(--body);line-height:1.58}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,.sentence:focus-visible,.vocab:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.overlay{position:fixed;inset:0;background:#fff;z-index:999;display:flex;align-items:center;justify-content:center}.overlay.hidden{display:none!important;pointer-events:none!important}.access-card{width:min(900px,94vw);border:3px solid var(--green);border-radius:16px;padding:28px 36px 36px;text-align:center}.access-card img{height:220px;display:block;margin:0 auto 8px}.access-card h1{margin:0;color:var(--ink);font-size:clamp(1.65rem,2.9vw,2.55rem);line-height:1.12;font-weight:800}.opening-prompt{font-size:1.25rem;font-weight:650;color:var(--muted)}.pathway-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:18px auto 0}.pathway-choice{min-height:86px;border:2px solid var(--green);background:#fff;color:var(--dark);border-radius:12px;font-weight:800;font-size:1.15rem}.pathway-choice:hover{background:var(--sage)}.access-form{max-width:640px;margin:18px auto 0;text-align:left}.access-form label{display:block;font-weight:700}.access-form input{width:100%;padding:12px;border:2px solid var(--green);border-radius:8px;margin:8px 0}.access-actions{display:grid;grid-template-columns:1fr 2fr;gap:10px}.access-actions button{border:2px solid var(--green);border-radius:8px;padding:11px;font-weight:700}#unlockBtn{background:var(--green);color:#fff}#accessError{color:var(--error);font-weight:700;min-height:1.5em}
.brand-header{padding:12px 18px}.brand-lockup{max-width:1160px;margin:auto;display:flex;align-items:center;gap:12px;color:var(--dark);font-size:clamp(1.8rem,3.4vw,2.65rem);font-weight:800}.brand-lockup img{height:58px}.sticky-controls{position:sticky;top:0;z-index:50;background:#fff;border-bottom:3px solid var(--green)}.controls{max-width:1160px;margin:auto;padding:8px 16px;display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}.controls button,.support-actions button,.bottom-nav button,.margin-help-button{border:2px solid var(--green);background:#fff;color:var(--dark);border-radius:8px;padding:8px 12px;font-weight:700}.size-btn.active,.page-btn.active{background:var(--sage)}
.lesson-title,main{max-width:1160px;margin:18px auto;padding:0 18px}.lesson-title h1{color:var(--dark);font-size:clamp(1.65rem,2.8vw,2.25rem)}.student-fields{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.student-fields label{display:flex;flex-direction:column;font-weight:700}.student-fields input{border:2px solid var(--line);border-radius:7px;padding:8px}.screen-title{color:var(--dark);font-size:clamp(1.4rem,2.4vw,1.9rem);margin:1.1rem 0 .7rem}.block-heading{color:var(--dark);font-size:clamp(1.25rem,2.1vw,1.65rem);margin:1.2rem 0 .55rem}
.box{border:2px solid var(--line);border-radius:12px;padding:18px 20px;margin:0 0 18px;background:#fff}.reading-box{border-left:6px solid var(--green)}.reading-box p{margin:.55rem 0 1rem}.sentence{cursor:pointer;border-radius:5px;padding:2px 3px;user-select:text}.sentence:hover,.sentence.active{background:var(--yellow)}.vocab{color:var(--purple);font-weight:700;cursor:pointer;user-select:text}.question-box p:first-child{margin-top:0}.instructions-box{border-left:6px solid var(--orange)}
.response-shell{display:flex;align-items:flex-start;gap:8px;width:100%}.response-shell.inline{display:inline-flex;width:auto;vertical-align:middle}.response-input,.response-area,.gap-input,.table-input,.path-input,.chain-input,.sequence-input,.graph-input,.margin-note-textarea{background:#fff;border:2px solid var(--green);border-radius:7px;padding:8px;color:var(--ink);position:relative;z-index:1}.response-input{width:min(420px,100%)}.response-area{width:100%;resize:vertical}.choices{display:grid;gap:8px;margin-top:10px}.paper-table{border-collapse:collapse;width:100%}.paper-table th,.paper-table td{border:2px solid var(--line);padding:9px;vertical-align:top}.paper-table th{background:var(--light)}.table-input{width:100%}.image-box img{max-width:100%;height:auto;display:block;margin:auto}.pathway,.chain{display:flex;flex-direction:column;align-items:center;gap:8px}.path-step{width:min(780px,100%);border:2px solid var(--line);border-radius:10px;padding:12px;text-align:center}.arrow{font-size:1.5rem;color:var(--green);font-weight:800}
.margin-note-wrap{border:2px solid var(--green);border-left:6px solid var(--green);border-radius:12px;padding:14px 16px;margin:-4px 0 18px;background:var(--light)}.margin-note-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.margin-note-top strong{color:var(--dark)}
.support-panel{position:fixed;right:12px;top:88px;bottom:12px;width:min(430px,calc(100vw - 24px));background:#fff;border:3px solid var(--green);border-radius:12px;display:none;z-index:100;overflow:hidden}.support-panel.open{display:flex;flex-direction:column}.support-head,.review-head{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;border-bottom:2px solid var(--sage)}.support-head h2,.review-head h2 h2{margin:0;color:var(--dark)}.support-head button,.review-head button button{border:0;background:#fff;font-size:1.7rem}.support-actions{display:flex;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.support-content{padding:12px;overflow:auto;flex:1}.break-parts{display:flex;flex-direction:column;gap:10px}.break-part{background:var(--yellow);border:2px solid var(--orange);border-radius:999px;padding:8px 16px;font-weight:600}.coach-choice,.starter-button{display:block;width:100%;text-align:left;background:#fff;border:2px solid var(--green);border-radius:10px;padding:10px 12px;margin:8px 0;color:var(--ink)}
.review-modal{position:fixed;inset:0;background:#fff;z-index:150;display:none;overflow:auto}.review-modal.open{display:block}.review-inner{max-width:980px;margin:auto;padding:20px}.review-item{border:2px solid var(--line);border-radius:10px;padding:12px;margin:10px 0}.review-item.unanswered{border-color:var(--orange)}.bottom-nav{display:flex;justify-content:space-between;margin:24px 0 60px}
.paper-response,.paper-choices{display:none}html[data-pathway="paper"] .typed-response,html[data-pathway="paper"] .student-fields,html[data-pathway="paper"] #reviewBtn{display:none!important}html[data-pathway="paper"] .paper-response,html[data-pathway="paper"] .paper-choices{display:inline-block}html[data-pathway="paper"] .paper-response-lines{display:block;width:100%;min-height:calc(var(--paper-lines,3)*31px);margin-top:10px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 30px,#747d78 31px)}html[data-pathway="paper"] .paper-inline-blank{min-width:90px;height:1.25em;border-bottom:2px solid var(--ink);vertical-align:bottom;margin:0 6px}html[data-pathway="paper"] .paper-number-box{width:55px;height:42px;border:2px solid var(--ink)}.paper-choices{display:grid;gap:8px}.paper-choice{display:flex;gap:8px}.paper-check{width:21px;height:21px;border:2px solid var(--ink)}
.matching-box{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(360px,1.3fr);gap:28px}.matching-terms,.matching-definitions{display:grid;gap:14px}.matching-definition{display:grid;grid-template-columns:100px 1fr;gap:14px;align-items:center}.word-bank-items{display:flex;flex-wrap:wrap;gap:18px 42px;line-height:1.8}.venn-regions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.venn-region{border:2px solid var(--line);border-radius:12px;padding:12px}.compact-response-row{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;margin:12px 0}.follow-up-response{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:14px;align-items:start;margin:14px 0}
html[data-text-size="large"]{--body:21px}html[data-text-size="larger"]{--body:23px}html[data-text-size="largest"]{--body:25px}@media(max-width:760px){.pathway-choices{grid-template-columns:1fr}.support-panel{left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:72vh}.matching-box,.venn-regions,.follow-up-response{grid-template-columns:1fr}.response-shell{flex-wrap:wrap}.brand-lockup{font-size:1.4rem}.brand-lockup img{height:45px}}@media print{.brand-header,.sticky-controls,.support-panel,.overlay,.bottom-nav{display:none!important}.review-modal{position:static;display:block}.review-inner{max-width:none}}

.tts-status{border:2px solid var(--line);border-radius:8px;padding:10px;margin-top:10px}.tts-status.error{border-color:var(--error);color:var(--error);font-weight:700}

/* v0.11.1 lesson-build repair: approved stationary Focus behavior */
.reading-box.focus-active .sentence{opacity:.28;transition:opacity .12s ease}
.reading-box.focus-active .sentence.focus-selected{opacity:1;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
#focusButton[aria-pressed="true"]{background:var(--sage);border-width:3px}
#focusButton:disabled{opacity:.45;cursor:not-allowed}


/* v0.11.1 — Mark the Meaning controls and saved highlights (Typing pathway only). */
#markMeaningControls{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
#markMeaningControls [data-highlight-color]{min-width:78px}
#markMeaningControls [data-highlight-color][aria-pressed="true"]{border-width:3px}
#markMeaningControls [data-highlight-color="yellow"][aria-pressed="true"]{background:var(--yellow)}
#markMeaningControls [data-highlight-color="orange"][aria-pressed="true"]{background:#f4b183}
#markMeaningStatus{font-size:.86rem;color:var(--muted)}
#markMeaningDirections{border-left:6px solid var(--orange)}
#markMeaningDirections .block-heading{margin-top:0}
mark[data-bmd-highlight]{color:inherit;padding:0 .05em;border-radius:3px}
mark[data-bmd-highlight][data-highlight-color="yellow"]{background:var(--yellow)}
mark[data-bmd-highlight][data-highlight-color="orange"]{background:#f4b183}
html[data-pathway="paper"] #markMeaningControls,
html[data-pathway="paper"] #markMeaningDirections{display:none!important}
@media print{#markMeaningControls{display:none!important}}

.page-identity-fields{display:flex;justify-content:flex-end;gap:10px;margin:0 0 12px}.page-identity-fields label{font-size:.82rem;font-weight:700}.page-identity-fields input{display:block;width:82px;padding:6px 8px;background:#fff}.morphology-parts{display:grid;gap:14px;margin-top:12px}.morph-part{padding:12px 14px;border-left:6px solid var(--green);background:#f7faf8;border-radius:8px}.morph-part.morph-1{border-left-color:#df8a25}.morph-part.morph-2{border-left-color:#77509a}.morph-part strong,.morph-part span{display:block}.morph-part strong{font-size:1.05em;margin-bottom:5px}.instructions-box>.response-shell{margin-top:22px}.instructions-box .instruction-bullets{margin:.75rem 0 1.25rem 2.25rem;padding-left:1.25rem}.instructions-box .instruction-bullets li{padding-left:.35rem;margin:.4rem 0}
.cause-effect-pairs{
  display:grid;
  gap:1.15rem;
  margin-top:1.25rem;
}

.cause-effect-pair{
  border:2px solid var(--line);
  border-left:6px solid var(--orange);
  border-radius:10px;
  padding:0.9rem 1.15rem;
  background:var(--light);
}

.cause-effect-pair p{
  margin:0.25rem 0;
}

.cause-effect-pair p + p{
  margin-top:0.35rem;
}
.reading-numbered-list{
  margin:0.65rem 0 1.2rem 2.5rem;
  padding-left:1.1rem;
}

.reading-numbered-list li{
  margin:0.55rem 0;
  padding-left:0.35rem;
}