/* resource-links.css */
.resource-links {display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:22px;font-size:15px;line-height:1.4;}
.resource-links a {display:inline-flex;align-items:center;gap:9px;color:#246f69;font-weight:650;text-decoration:none;text-underline-offset:4px;}
.resource-links a:hover {text-decoration:underline;}
.resource-links a:focus-visible {outline:3px solid #297d77;outline-offset:5px;border-radius:3px;}
.resource-links .resource-direct {padding:10px 14px;border:1px solid #bad2c9;border-radius:8px;background:#f4faf7;}
.resource-links .resource-overview {font-weight:500;}
@media (max-height:800px) and (min-width:901px) {.resource-links{margin-top:12px;font-size:14px;gap:9px 18px}.resource-links .resource-direct{padding:8px 12px}}

/* everyday-showcase.css */
/* The curriculum opener presents a range of complete lessons beneath its story. */
.selected-storyboard[data-layout="2"] .screen.everyday-showcase {
  display:flex;
  flex-direction:column;
  justify-content:safe center;
  align-items:stretch;
  gap:34px;
  max-width:1540px;
  padding:32px 38px;
  margin-inline:auto;
}
.everyday-heading {text-align:center;flex:none}
.everyday-intro {display:flex;justify-content:center;align-items:center;gap:24px;margin-bottom:18px}
.everyday-intro .eyebrow {margin:0}
.everyday-scope {display:flex;gap:20px;font:400 13px/1.5 Inter,Arial,sans-serif;color:var(--muted)}
.everyday-scope strong {font-weight:600;color:var(--teal)}
.everyday-intro .eyebrow + .everyday-scope {border-left:1px solid #cad9d1;padding-left:24px}
.selected-storyboard[data-layout="2"] .everyday-showcase h1 {
  font-size:clamp(38px,4.1cqw,58px);
  max-width:1100px;
  margin-inline:auto;
  text-wrap:balance;
}
.everyday-showcase .lead {max-width:none;font-size:clamp(18px,1.7cqw,24px);margin:18px auto 0;text-wrap:balance}
.everyday-examples {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start;flex:none}
.everyday-example {min-width:0;margin:0}
.everyday-example .image-button {border-radius:10px;transition:box-shadow .18s ease}
.everyday-example .image-button:hover {box-shadow:0 5px 18px #153d2f20}
.everyday-example .product-shot,.everyday-lesson-frame {
  display:block;
  width:100%;
  padding:9px;
  --shot-padding:9px;
  background:white;
  border-radius:10px;
  box-shadow:0 4px 16px #1c2d2514;
}
.everyday-lesson-frame {border:1px solid #dce4df;padding:8px}
.everyday-lesson-frame img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.everyday-example figcaption {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;font:500 14px/1.4 Inter,Arial,sans-serif;color:var(--ink)}
.everyday-example .image-enlarge {flex:none;font-size:12px;padding:7px 8px}
@media (min-width:901px) and (max-width:1499px) {
  .selected-storyboard[data-layout="2"] .screen.everyday-showcase {max-width:1220px;gap:27px;padding:26px 36px}
  .everyday-examples {grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,calc((100cqh - 290px)*2.6667));margin-inline:auto;gap:24px}
  .everyday-example:nth-child(3) {display:none}
  .selected-storyboard[data-layout="2"] .everyday-showcase h1 {font-size:clamp(36px,4.1cqw,48px)}
  .everyday-showcase .lead {font-size:20px;margin-top:15px}
  .everyday-intro {margin-bottom:14px}
}
@media (min-width:1500px) and (max-height:800px) {
  .selected-storyboard[data-layout="2"] .screen.everyday-showcase {gap:24px;padding-block:24px}
  .everyday-examples {max-width:calc((100cqh - 285px)*4);margin-inline:auto}
  .selected-storyboard[data-layout="2"] .everyday-showcase h1 {font-size:46px}
}
@media (max-width:900px) {
  .selected-storyboard[data-layout="2"] .screen.everyday-showcase {height:auto;min-height:100%;padding:32px 26px;gap:28px;justify-content:safe center}
  .selected-storyboard[data-layout="2"] .everyday-showcase h1 {font-size:clamp(32px,5.3vw,44px)}
  .everyday-intro {gap:16px;margin-bottom:16px}
  .everyday-intro .eyebrow + .everyday-scope {padding-left:16px}
  .everyday-scope {font-size:12px;gap:13px}
  .everyday-showcase .lead {font-size:20px;max-width:40ch;margin-top:16px}
  .everyday-examples {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .everyday-example:nth-child(3) {display:none}
  .everyday-example figcaption {font-size:12px;flex-wrap:wrap;gap:4px}
}
@media (max-width:580px) {
  .selected-storyboard[data-layout="2"] .screen.everyday-showcase {justify-content:flex-start;align-self:flex-start;flex-shrink:0;padding:28px 20px;gap:28px}
  .everyday-heading {text-align:left}
  .everyday-intro {justify-content:flex-start;gap:12px}
  .everyday-intro .eyebrow + .everyday-scope {padding-left:12px}
  .everyday-scope {gap:10px;font-size:11px}
  .everyday-intro .eyebrow {font-size:10px;letter-spacing:.07em}
  .everyday-examples {grid-template-columns:1fr;gap:22px}
  .everyday-example:nth-child(3) {display:block}
  .everyday-example figcaption {font-size:13px;flex-wrap:nowrap}
}
@media (prefers-reduced-motion:reduce) {.everyday-example .image-button {transition:none}}

/* apt-showcase.css */
/* APT opens with the story above a large, centered demonstration. */
.selected-storyboard[data-layout="2"] .screen.overview.apt-overview {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto;
  max-width:1520px;
  padding:24px 40px;
  gap:22px;
  align-items:stretch;
  align-content:safe center;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview>.copy {
  width:100%;
  max-width:none;
  align-self:start;
  text-align:center;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview h1 {
  max-width:none;
  font-size:clamp(32px,min(3.15cqw,5.2cqh),48px);
  line-height:1.1;
  text-wrap:balance;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .eyebrow {
  margin-bottom:9px;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .lead {
  max-width:none;
  margin-top:12px;
  font-size:clamp(18px,2.8cqh,24px);
  line-height:1.4;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .motion-apt {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:minmax(0,1fr) auto;
  align-self:stretch;
  width:100%;
  max-width:none;
  min-height:0;
  height:auto;
  aspect-ratio:2.05;
  max-height:calc(100cqh - 270px);
  padding:18px 28px 16px;
  gap:10px 24px;
  background:#f0f5ec;
  border:1px solid #dce6d8;
  border-radius:14px;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .motion-art {
  grid-column:1/-1;
  grid-row:1;
  height:100%;
  min-height:0;
  container-type:size;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .motion-controls {
  grid-column:2;
  grid-row:2;
  align-self:center;
  justify-content:flex-end;
  margin:0;
  gap:22px;
  min-height:0;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .motion-button {
  font-size:13px;
  padding:6px 0;
}
.selected-storyboard[data-layout="2"] .screen.apt-overview .motion-apt>figcaption {
  grid-column:1;
  grid-row:2;
  align-self:center;
  margin:0;
  text-align:left;
  font-size:13px;
  line-height:1.4;
}
#presentation .screen.apt-overview .apt-selected {
  width:100%;
  height:100%;
}
#presentation .screen.apt-overview .refinement { overflow:hidden; }
/* The route uses the middle of its SVG; preserve its proportions while
   letting the unused top and bottom margins sit outside the visible stage. */
#presentation .screen.apt-overview .r-scene {
  inset:auto 0;
  top:calc(50% - 20px);
  width:100%;
  height:calc(100cqw * 300 / 580);
  translate:0 -50%;
}
#presentation .screen.apt-overview .r-results {
  inset:12px 0 43px;
  max-width:1240px;
  margin-inline:auto;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(24px,3cqw,48px);
}
#presentation .screen.apt-overview .r-results h4 {
  margin-bottom:14px;
  font-size:clamp(17px,2cqw,25px);
  line-height:1.3;
}
#presentation .screen.apt-overview .r-levels,
#presentation .screen.apt-overview .r-lessons {
  gap:9px;
}
#presentation .screen.apt-overview .r-level {
  height:clamp(36px,7.5cqh,65px);
  padding:0 17px;
  border-radius:9px;
  font-size:clamp(15px,1.7cqw,22px);
}
#presentation .screen.apt-overview .r-level strong { gap:7px; }
#presentation .screen.apt-overview .r-level i { width:6px;height:6px; }
#presentation .screen.apt-overview .r-lesson {
  min-height:clamp(62px,13.5cqh,115px);
  padding:10px 17px;
  border-radius:9px;
}
#presentation .screen.apt-overview .r-lesson>span,
#presentation .screen.apt-overview .r-lesson small {
  font-size:clamp(12px,1.35cqw,17px);
}
#presentation .screen.apt-overview .r-lesson strong {
  font-size:clamp(18px,2.1cqw,27px);
  margin:4px 0;
}
#presentation .screen.apt-overview .r-caption,
#presentation .screen.apt-overview .refinement-3[data-phase] .r-caption {
  bottom:5px;
  font-size:clamp(15px,1.65cqw,21px);
  font-weight:600;
}
@media (min-width:901px) and (max-height:790px) {
  .selected-storyboard[data-layout="2"] .screen.overview.apt-overview {
    padding:18px 30px;
    gap:16px;
  }
  .selected-storyboard[data-layout="2"] .screen.apt-overview h1 { font-size:32px; }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .eyebrow { margin-bottom:7px; }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .lead { margin-top:9px;font-size:18px; }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .motion-apt { max-height:calc(100cqh - 200px);padding:12px 22px;gap:8px 18px; }
  #presentation .screen.apt-overview .r-results { inset-block:7px 34px;gap:26px; }
  #presentation .screen.apt-overview .r-results h4 { margin-bottom:9px;font-size:17px; }
  #presentation .screen.apt-overview .r-levels,
  #presentation .screen.apt-overview .r-lessons { gap:7px; }
  #presentation .screen.apt-overview .r-level { height:35px;padding-inline:12px;font-size:14px; }
  #presentation .screen.apt-overview .r-lesson { min-height:63px;padding:7px 12px; }
  #presentation .screen.apt-overview .r-lesson>span,
  #presentation .screen.apt-overview .r-lesson small { font-size:11px; }
  #presentation .screen.apt-overview .r-lesson strong { font-size:18px;margin:2px 0; }
}
@media (max-width:900px) {
  .selected-storyboard[data-layout="2"] .screen.apt-overview>.copy { text-align:left; }
  .selected-storyboard[data-layout="2"] .screen.overview.apt-overview {
    display:flex;
    flex-direction:column;
    height:auto;
    min-height:100%;
    padding:25px 21px;
    gap:24px;
  }
  .selected-storyboard[data-layout="2"] .screen.apt-overview h1 { font-size:32px; }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .lead { font-size:19px; }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .motion-apt {
    height:390px;
    max-height:none;
    aspect-ratio:auto;
    flex:none;
    padding:14px;
    grid-template-columns:1fr;
    grid-template-rows:minmax(0,1fr) auto auto;
    gap:10px;
  }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .motion-controls {
    grid-column:1;
    grid-row:3;
    justify-content:center;
  }
  .selected-storyboard[data-layout="2"] .screen.apt-overview .motion-apt>figcaption {
    grid-column:1;
    text-align:center;
    font-size:11px;
  }
  #presentation .screen.apt-overview .apt-selected { width:100%; }
  #presentation .screen.apt-overview .r-results { inset:8px 0 37px;gap:12px; }
  #presentation .screen.apt-overview .r-results h4 { margin-bottom:10px;font-size:13px; }
  #presentation .screen.apt-overview .r-levels,
  #presentation .screen.apt-overview .r-lessons { gap:6px; }
  #presentation .screen.apt-overview .r-level { height:34px;padding:0 6px;font-size:11px; }
  #presentation .screen.apt-overview .r-level strong { gap:4px; }
  #presentation .screen.apt-overview .r-level i { display:none; }
  #presentation .screen.apt-overview .r-lesson { min-height:59px;padding:6px; }
  #presentation .screen.apt-overview .r-lesson>span,
  #presentation .screen.apt-overview .r-lesson small { font-size:9px; }
  #presentation .screen.apt-overview .r-lesson strong { font-size:14px;margin:2px 0; }
  #presentation .screen.apt-overview .r-caption,
  #presentation .screen.apt-overview .refinement-3[data-phase] .r-caption { font-size:13px; }
}

/* preview-scopes.css */
/* The same presentation shell, with an explicit end before another collection. */
#finish-dialog {width:min(650px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;overflow:auto}
#finish-dialog header {padding:18px 26px;display:flex;align-items:center;justify-content:space-between}
#finish-dialog header .menu-eyebrow {margin:0}
.finish-body {padding:28px 40px 36px;text-align:center}
.finish-mark {display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#e7f1e8;color:#297d77;font-size:29px;margin-bottom:21px}
#finish-title {font:700 clamp(30px,4vw,42px)/1.12 Lato,Arial,sans-serif;letter-spacing:-.025em;margin:0 0 16px}
#finish-copy {font-size:17px;line-height:1.55;color:var(--muted);max-width:38ch;margin:0 auto}
.finish-roadmap {display:flex;align-items:center;justify-content:space-between;gap:25px;text-align:left;width:100%;padding:24px;margin-top:30px;border:1px solid #bed3c6;border-radius:12px;background:#eef5ef;color:var(--ink)}
.finish-roadmap:hover {background:#e1eee3;border-color:#297d77}
.finish-roadmap>span:first-child {display:grid;gap:8px}
.finish-roadmap small {font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--teal)}
.finish-roadmap strong {font-size:23px;line-height:1.2}
.finish-roadmap span span {font-size:14px;line-height:1.5;color:var(--muted)}
.finish-roadmap>span:last-child {font-size:26px}
#finish-dialog footer {padding:18px 26px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:18px}
.roadmap-story-note {font:400 12px/1.5 Inter,Arial,sans-serif;color:var(--muted);margin:0;text-align:center;max-width:85ch;justify-self:center}
.selected-storyboard[data-layout="2"] .roadmap-editorial {display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:38px;max-width:1130px;margin:auto;width:100%;text-align:center}
.roadmap-editorial header {max-width:960px}
.roadmap-editorial .lead {max-width:56ch;margin:20px auto 0}
.roadmap-priorities {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;gap:26px;width:100%;margin:0;text-align:left}
.roadmap-priorities li {padding:26px;border-top:2px solid #b6cbbd;background:#f1f6f0;border-radius:0 0 9px 9px}
.roadmap-priorities li>span {font:700 35px Lato,Arial,sans-serif;color:var(--teal)}
.roadmap-priorities p {font-size:21px;line-height:1.45;margin:22px 0 0}
.roadmap-metrics {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:800px;border-block:1px solid var(--line);padding:32px 0}
.roadmap-metrics>div {display:grid;gap:14px}
.roadmap-metrics>div+div {border-left:1px solid var(--line)}
.roadmap-metrics strong {font:700 clamp(80px,12cqh,135px)/1 Lato,Arial,sans-serif;letter-spacing:-.045em;color:var(--teal)}
.roadmap-metrics span {font-size:19px;color:var(--muted)}
.selected-storyboard[data-layout="2"] .roadmap-handout-expansion {grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:1180px;width:100%;margin:auto;gap:48px;--visual-height:clamp(200px,calc(100cqh - 165px),760px)}
.roadmap-handout-expansion .roadmap-story-note {margin-top:28px;text-align:left}
.roadmap-handout-expansion .document-view {width:fit-content;max-width:100%;justify-self:center}
.roadmap-handout-expansion .document-view .product-figure {max-width:590px}
.roadmap-handout-expansion figcaption>span {max-width:30ch}
.selected-storyboard[data-layout="2"] :is(.guidesExpansion-overview,.handoutsExpansion-overview) {--gallery-image-height:calc(100cqh - 320px);gap:18px}
.selected-storyboard[data-layout="2"] .handoutsExpansion-overview .image-button>img {width:auto;max-width:100%;margin:auto}
@media(min-width:901px) and (max-height:790px){
 .selected-storyboard[data-layout="2"] .roadmap-editorial {gap:24px}
 .roadmap-priorities li {padding:20px}.roadmap-priorities p {font-size:18px;margin-top:14px}
 .roadmap-editorial .lead {font-size:21px}
 .roadmap-metrics {padding:24px 0}
}
@media(max-width:900px){
 .selected-storyboard[data-layout="2"] .roadmap-handout-expansion {grid-template-columns:1fr;gap:26px;--visual-height:610px}
 .selected-storyboard[data-layout="2"] .roadmap-editorial {height:auto;min-height:100%;justify-content:flex-start;flex-shrink:0;gap:28px}
 .roadmap-priorities {gap:15px}.roadmap-priorities li {padding:19px}.roadmap-priorities p {font-size:18px;margin-top:15px}
 .roadmap-story-note {text-align:left}
 .roadmap-metrics strong {font-size:86px}.roadmap-metrics span {font-size:16px}
}
@media(max-width:540px){
 .finish-body {padding:24px}.finish-roadmap {padding:20px;gap:14px}.finish-roadmap strong {font-size:21px}
 #finish-dialog footer {padding:18px;gap:12px;flex-wrap:wrap}#finish-dialog footer button {font-size:13px}
 .roadmap-priorities {grid-template-columns:1fr}.roadmap-priorities li {display:flex;gap:20px;align-items:center}.roadmap-priorities p {margin:0}
 .roadmap-metrics {padding:24px 0}.roadmap-metrics strong {font-size:72px}
}

/* import-content.css */
/* A complete, relatively tall product screenshot needs more space than the copy. */
.selected-storyboard[data-layout="2"] .screen.overview.studentImport {
  max-width:1320px;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
  gap:36px;
  padding:26px 30px;
  align-items:center;
}
.selected-storyboard[data-layout="2"] .studentImport h1 {
  max-width:none;
  font-size:clamp(34px,min(3.6cqw,6.1cqh),51px);
  line-height:1.12;
  text-wrap:balance;
}
.selected-storyboard[data-layout="2"] .studentImport .lead {
  max-width:38ch;
  font-size:clamp(18px,min(2cqw,3.1cqh),24px);
  line-height:1.45;
}
.selected-storyboard[data-layout="2"] .studentImport .feature-points {
  font-size:clamp(14px,1.4cqw,18px);
  line-height:1.45;
  gap:13px;
  margin-top:25px;
  padding-top:22px;
}
.selected-storyboard[data-layout="2"] .studentImport .feature-media {
  height:auto;
  max-height:min(740px,calc(100cqh - 66px));
  aspect-ratio:calc(var(--media-ratio) * .90);
  padding:14px;
  gap:13px;
}
.studentImport .feature-media-canvas .image-button>img {
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:5px;
  box-shadow:none;
}
.studentImport .feature-media-footer>span {max-width:30ch}
@media (min-width:901px) and (max-height:790px) {
  .selected-storyboard[data-layout="2"] .screen.overview.studentImport {padding-block:20px;gap:28px}
  .selected-storyboard[data-layout="2"] .studentImport h1 {font-size:34px}
  .selected-storyboard[data-layout="2"] .studentImport .lead {font-size:18px;margin-top:17px}
  .selected-storyboard[data-layout="2"] .studentImport .feature-points {font-size:14px;gap:11px;margin-top:20px;padding-top:18px}
  .selected-storyboard[data-layout="2"] .studentImport .feature-media {max-height:calc(100cqh - 48px);padding:12px;gap:10px}
}
@media (max-width:900px) {
  .selected-storyboard[data-layout="2"] .screen.overview.studentImport {
    grid-template-columns:minmax(0,1fr);
    height:auto;
    min-height:100%;
    align-self:flex-start;
    flex-shrink:0;
    padding:27px 24px;
    gap:28px;
    align-content:start;
  }
  .selected-storyboard[data-layout="2"] .studentImport h1 {font-size:clamp(34px,5.6vw,44px)}
  .selected-storyboard[data-layout="2"] .studentImport .lead {font-size:21px}
  .selected-storyboard[data-layout="2"] .studentImport .feature-points {font-size:16px;gap:11px;margin-top:21px;padding-top:19px}
  .selected-storyboard[data-layout="2"] .studentImport .feature-media {
    height:min(680px,calc((100vw - 102px) * 1874 / 2270 + 78px));
    max-height:none;
    aspect-ratio:auto;
    padding:13px;
    gap:11px;
  }
}

/* homework-review-content.css */
/* Keep the complete homework queue and review actions visible beside concise context. */
@media(min-width:901px){
  html.selected-storyboard[data-layout="2"] .expanded-overview.homeworkReview{max-width:1460px;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:34px;align-items:center;padding:28px 30px}
  .expanded-overview.homeworkReview h1{max-width:none;font-size:clamp(34px,min(3.55cqw,6.2cqh),52px);line-height:1.09;text-wrap:balance}
  .expanded-overview.homeworkReview .lead{max-width:none;font-size:clamp(20px,min(1.8cqw,3.6cqh),25px);line-height:1.48}
  .expanded-overview.homeworkReview .feature-points{font-size:clamp(14px,1.2cqw,16px);line-height:1.5;margin-top:24px;padding-top:20px}
  html.selected-storyboard[data-layout="2"] .expanded-overview.homeworkReview .feature-media{aspect-ratio:1.34;max-height:min(760px,calc(100cqh - 72px));padding:15px;gap:13px;background:#f0f5f2}
  .expanded-overview.homeworkReview .feature-media-canvas .image-button>img{border-radius:7px;max-height:100%;object-fit:contain}
}
@media(min-width:901px) and (max-height:790px){
  html.selected-storyboard[data-layout="2"] .expanded-overview.homeworkReview{padding:22px 26px;gap:28px;grid-template-columns:minmax(290px,.76fr) minmax(0,1.24fr)}
  .expanded-overview.homeworkReview h1{font-size:clamp(32px,5.8cqh,40px)}
  .expanded-overview.homeworkReview .lead{font-size:20px;margin-top:18px}
  .expanded-overview.homeworkReview .feature-points{font-size:14px;margin-top:18px;padding-top:16px}
}
@media(max-width:900px){
  .expanded-overview.homeworkReview h1{max-width:none;text-wrap:balance}
  .expanded-overview.homeworkReview .lead{max-width:none}
  .expanded-overview.homeworkReview .feature-points{font-size:15px;margin-top:20px;padding-top:17px}
  .expanded-overview.homeworkReview .feature-media{height:calc((100vw - 108px)/1.5 + 78px);max-height:600px;padding:14px;gap:12px}
  .expanded-overview.homeworkReview .feature-media-footer>span{max-width:32ch}
}
@media(max-width:480px){
  .expanded-overview.homeworkReview .lead{font-size:20px}
  .expanded-overview.homeworkReview .feature-points{font-size:14px;line-height:1.5}
  .expanded-overview.homeworkReview .feature-media{height:calc((100vw - 80px)/1.5 + 82px);padding:12px}
  .expanded-overview.homeworkReview .feature-media-footer{gap:10px}
}

/* announcement-content.css */
/* Real lesson examples retain their entire screenshot and a readable source caption. */
.selected-storyboard[data-layout="2"] .expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) {
  max-width:1400px;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(28px,3.3vw,48px);
}
.expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) .feature-facts {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) .feature-facts>div {
  display:grid;
  align-content:start;
  gap:8px;
}
.expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) .feature-facts span {
  line-height:1.4;
  max-width:21ch;
}
.expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) .feature-media {
  padding:14px;
  gap:12px;
  background:#f2f6f1;
}
.expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) .feature-media-canvas .image-button>img {
  border-radius:3px;
  object-fit:contain;
}
@media(min-width:901px) {
  .selected-storyboard[data-layout="2"] .expanded-overview.unitChecks {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    max-width:1300px;
  }
  .selected-storyboard[data-layout="2"] .expanded-overview.unitChecks .feature-media {
    max-width:650px;
    justify-self:center;
  }
}
@media(max-width:900px) {
  .selected-storyboard[data-layout="2"] .expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) {
    grid-template-columns:minmax(0,1fr);
    gap:26px;
    flex-shrink:0;
  }
  .selected-storyboard[data-layout="2"] .expanded-overview:is(.toefl,.unitChecks,.widaAccess,.coreScienceSocial,.schoolsCurriculum,.coreLanguageMath,.foundationalLiteracy,.newcomerReadingSpeaking) .feature-media {
    height:auto;
    min-height:0;
    aspect-ratio:calc(var(--media-ratio,1.333) * .82);
    max-height:none;
  }
}

/* announcement-showcase.css */
/* Keep the heading, complete lesson examples and captions in one centered group.
   Bound image size on short screens without stretching the gaps on tall screens. */
.selected-storyboard[data-layout="2"] .announcement-showcase{--announcement-image-height:max(120px,calc(100cqh - 290px));display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-items:start;align-content:safe center;gap:28px;max-width:1440px;height:100%;padding:28px 32px;min-height:0}
.announcement-heading{display:block;border:0;padding:0;min-width:0}
.announcement-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.announcement-intro .eyebrow{margin:0}
.announcement-facts{display:flex;align-items:center;gap:20px;font:400 13px/1.5 Inter,Arial,sans-serif;color:#547062}
.announcement-facts span+span{border-left:1px solid #d2dfd2;padding-left:20px}
.announcement-facts strong{font-weight:650;color:#245542}
.announcement-heading h1{font-size:clamp(34px,5.4cqh,48px);line-height:1.1;letter-spacing:-.035em;margin:0;text-align:center}
.announcement-heading .lead{font-size:clamp(20px,3cqh,25px);line-height:1.4;text-align:center;max-width:none;margin:14px 0 0}
.announcement-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;min-height:0;min-width:0}
.announcement-example{display:grid;grid-template-rows:auto auto;gap:13px;min-height:0;min-width:0;width:min(100%,calc((var(--announcement-image-height) - 22px)*var(--example-ratio) + 22px));justify-self:center;margin:0}
.announcement-image-area{display:flex;align-items:flex-start;justify-content:center;min-height:0;min-width:0}
.announcement-image-area>.announcement-image{display:block;width:100%;height:auto;border:1px solid #d6e2d5;border-radius:11px;padding:10px;background:#fff;box-shadow:0 5px 16px #244b3810;line-height:0}
.announcement-image img{display:block;width:100%;height:auto;max-width:100%;max-height:none;border:0;object-fit:contain;border-radius:0;box-shadow:none}
.announcement-example figcaption{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:#547062;min-width:0}
.announcement-example figcaption>div{min-width:0;display:grid;gap:5px}
.announcement-example figcaption strong{font:600 14px/1.4 Inter,Arial,sans-serif;color:#285a43}
.announcement-example figcaption span{font:400 11px/1.45 Inter,Arial,sans-serif}
.announcement-example .image-enlarge{flex-shrink:0;font-size:11px;padding:8px 9px}
@media(min-width:901px) and (max-height:790px){
 .selected-storyboard[data-layout="2"] .announcement-showcase{--announcement-image-height:max(120px,calc(100cqh - 250px));padding:22px 28px;gap:24px}
 .announcement-heading h1{font-size:34px}
 .announcement-heading .lead{font-size:20px;margin-top:10px}
 .announcement-intro{margin-bottom:12px}
 .announcement-examples{gap:22px}
 .announcement-example figcaption strong{font-size:13px}
}
@media(max-width:900px){
 .selected-storyboard[data-layout="2"] .announcement-showcase{height:auto;min-height:100%;grid-template-rows:auto auto;align-content:center;align-self:start;flex-shrink:0;overflow:visible;padding:28px;gap:26px}
 .announcement-heading h1{font-size:34px}
 .announcement-heading .lead{font-size:21px}
 .announcement-intro{align-items:flex-start}
 .announcement-facts{gap:12px;font-size:12px}
 .announcement-facts span+span{padding-left:12px}
 .announcement-examples,.announcement-example,.announcement-image-area{min-height:auto}
 .announcement-examples{gap:20px}
 .announcement-example{grid-template-rows:auto auto;gap:12px;width:100%}
 .announcement-image-area{container-type:normal}
 .announcement-image-area>.announcement-image{width:100%;height:auto;padding:8px}
 .announcement-example figcaption{flex-wrap:wrap;gap:10px}
}
@media(max-width:600px){
 .selected-storyboard[data-layout="2"] .announcement-showcase{padding:25px 20px;align-content:start}
 .announcement-examples{grid-template-columns:1fr;gap:28px}
 .announcement-heading h1,.announcement-heading .lead{text-align:left}
 .announcement-heading h1{font-size:32px}
 .announcement-heading .lead{font-size:20px}
 .announcement-intro{flex-direction:column;gap:12px;margin-bottom:18px}
 .announcement-facts{flex-wrap:wrap;font-size:13px}
 .announcement-example figcaption{flex-wrap:nowrap}
}

/* editor-preview.css */
/* The editor shows a real 16:9 slide, scaled as one canvas at every editor size. */
.editor-slide-preview{display:flex;flex-direction:column;flex:1 1 auto;gap:16px;width:100%;height:auto;max-height:100%;min-height:0;min-width:0;color:#173d36}
.pep-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0;padding:0;border:0;background:transparent}
.editor-slide-preview .pep-header>div,#presenter-tools .pep-header>div{display:block;min-width:0;flex:1}
.pep-eyebrow{font:650 11px/1.4 Inter,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#5b716b;margin:0 0 6px}
.pep-feature{font:700 22px/1.25 Lato,Arial,sans-serif;letter-spacing:-.015em;margin:0;max-width:34ch;color:#173d36}
.pep-story-count{font:400 12px/1.5 Inter,Arial,sans-serif;color:#5b716b;white-space:nowrap;margin:3px 0 0}
.pep-viewport{position:relative;isolation:isolate;flex:none;width:100%;aspect-ratio:16/9;min-width:0;min-height:0;overflow:hidden;border:1px solid #d8e3dc;border-radius:10px;background:#eaf0eb}
.pep-canvas{position:absolute;display:block;width:1280px!important;height:720px!important;max-width:none!important;max-height:none!important;border:0;transform-origin:top left;pointer-events:none;opacity:0;background:#fff;transition:opacity .15s ease}
.pep-canvas.is-ready{opacity:1}
.pep-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;text-align:center;font:400 15px/1.5 Inter,Arial,sans-serif;color:#5b716b;background:#f3f6f2}
.pep-message p{margin:0;max-width:34ch}
.pep-empty-mark{font-size:48px;line-height:1;color:#9fb8a9}
.pep-retry{font:600 13px/1.3 Inter,Arial,sans-serif;background:#fff;border:1px solid #bfd1c6;border-radius:6px;color:#226d63;padding:9px 14px;cursor:pointer}
.pep-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;min-width:0;margin:0;padding:0;border:0;background:transparent}
.pep-footer[hidden]{display:none!important}
.pep-current{min-width:0;flex:1}
.pep-label{font:650 11px/1.4 Inter,Arial,sans-serif;color:#287c74;margin:0 0 5px}
.pep-headline{font:500 15px/1.4 Inter,Arial,sans-serif;color:#173d36;margin:0;max-width:58ch;overflow-wrap:anywhere}
.pep-navigation{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:none}
.pep-navigation button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #cbdacf;border-radius:7px;background:#fff;color:#226d63;font:500 20px/1 Inter,Arial,sans-serif;cursor:pointer;flex:none}
.pep-navigation button:hover:not(:disabled),.pep-retry:hover{background:#e9f2eb;border-color:#90b29d}
.pep-navigation button:disabled{opacity:.35;cursor:default}
.pep-navigation button:focus-visible,.pep-retry:focus-visible{outline:3px solid #287c74;outline-offset:3px}
.pep-position{min-width:34px;text-align:center;font:600 12px/1.4 Inter,Arial,sans-serif;font-variant-numeric:tabular-nums;color:#5b716b}
@media(max-width:760px){.editor-slide-preview{gap:12px;max-height:none}.pep-feature{font-size:19px}.pep-header{gap:8px;flex-wrap:wrap}.pep-story-count{font-size:11px;margin:0}.pep-eyebrow{font-size:10px}.pep-footer{gap:14px;align-items:flex-start}.pep-headline{font-size:13px}.pep-navigation{gap:6px}.pep-navigation button{width:34px;height:34px}.pep-position{font-size:11px;min-width:30px}.pep-message{font-size:13px;padding:22px}}
@media(prefers-reduced-motion:reduce){.pep-canvas{transition:none}}

/* Only this nested canvas omits presentation navigation. Normal previews retain it. */
html.presentation-canvas,html.presentation-canvas body{width:100%;height:100%;min-width:0;min-height:0;margin:0;overflow:hidden;background:#fff}
html.presentation-canvas #presentation{display:block!important;position:relative!important;inset:auto!important;width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff;--review-height:0px;--header-height:0px;--footer-height:0px}
html.presentation-canvas #stage{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important;container-type:size}
html.presentation-canvas #presentation>.topbar,html.presentation-canvas #presentation>.storyboard,html.presentation-canvas #presentation>.review-controls,html.presentation-canvas #presentation>.progress-track,html.presentation-canvas .review-bar,html.presentation-canvas dialog,html.presentation-canvas noscript{display:none!important}

/* scoring-showcase.css */
/* Wide homework screenshots get a wide stage beneath their message. */
.selected-storyboard[data-layout="2"] .screen.overview:is(.writingScoring,.speakingScoring) {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto auto auto auto;
  align-items:stretch;
  align-content:safe center;
  max-width:1500px;
  padding:22px 32px;
  gap:0;
}
.selected-storyboard[data-layout="2"] .screen.overview:is(.writingScoring,.speakingScoring)>.copy {
  display:contents;
}
.selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .eyebrow {
  grid-row:1;
  margin:0 0 8px;
  text-align:center;
}
.selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) h1 {
  grid-row:2;
  max-width:none;
  width:100%;
  margin:0;
  text-align:center;
  font-size:clamp(31px,min(3.2cqw,5.6cqh),45px);
  line-height:1.12;
  text-wrap:balance;
}
.selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .lead {
  grid-row:3;
  width:100%;
  max-width:none;
  margin:12px 0 20px;
  text-align:center;
  font-size:clamp(18px,1.65cqw,23px);
  line-height:1.4;
  text-wrap:balance;
}
.selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .feature-media {
  grid-row:4;
  width:min(100%,calc((100cqh - 242px) * var(--media-ratio) + 32px));
  height:auto;
  min-height:0;
  max-height:calc(100cqh - 242px);
  aspect-ratio:calc(var(--media-ratio) * .9);
  justify-self:center;
  align-self:stretch;
  padding:14px 16px 12px;
  gap:11px;
}
.screen:is(.writingScoring,.speakingScoring) .feature-media-canvas .image-button>img {
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .feature-points {
  grid-row:5;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  width:min(100%,1180px);
  justify-self:center;
  margin:16px 0 0;
  padding:12px 0 0;
  font-size:clamp(13px,1.1cqw,16px);
  line-height:1.4;
}
.screen:is(.writingScoring,.speakingScoring) .feature-points li {padding-left:13px}
@media (min-width:901px) and (max-height:790px) {
  .selected-storyboard[data-layout="2"] .screen.overview:is(.writingScoring,.speakingScoring) {padding:18px 28px}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .eyebrow {margin-bottom:6px;font-size:10px}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) h1 {font-size:33px}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .lead {font-size:18px;margin:10px 0 15px}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .feature-media {width:min(100%,calc((100cqh - 204px) * var(--media-ratio) + 28px));max-height:calc(100cqh - 204px);padding:11px 14px 10px;gap:8px}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .feature-points {margin-top:12px;padding-top:10px;font-size:13px;gap:18px}
}
@media (max-width:900px) {
  .selected-storyboard[data-layout="2"] .screen.overview:is(.writingScoring,.speakingScoring) {
    height:auto;
    min-height:100%;
    align-self:flex-start;
    flex-shrink:0;
    grid-template-rows:auto auto auto auto auto;
    align-content:start;
    padding:27px 24px;
  }
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) :is(.eyebrow,h1,.lead) {text-align:left}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) h1 {font-size:clamp(33px,5vw,42px)}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .lead {font-size:21px;margin:16px 0 24px}
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .feature-media {
    width:100%;
    height:calc((100vw - 78px) / var(--media-ratio) + 70px);
    max-height:none;
    aspect-ratio:auto;
    padding:13px;
    gap:11px;
  }
  .selected-storyboard[data-layout="2"] .screen:is(.writingScoring,.speakingScoring) .feature-points {
    grid-template-columns:1fr;
    font-size:15px;
    margin-top:22px;
    padding-top:18px;
    gap:11px;
  }
}

