/* WeTeachMath v1.5.5 readability scale.
   Principle: never solve compact-laptop layout by shrinking instructional text below a comfortable reading size.
   Panels may scroll internally; mathematical content remains readable. */

:root{
  --wtm-body-readable:13px;
  --wtm-body-readable-compact:12.5px;
  --wtm-small-readable:11px;
  --wtm-small-readable-compact:10.5px;
  --wtm-notebook-readable:14.5px;
  --wtm-notebook-readable-compact:13.5px;
}

/* Shared scene hierarchy */
.lesson-breadcrumbs{font-size:12px}
.scene-kicker{font-size:10.5px}
.scene-sub{font-size:13px;line-height:1.42}
.scene-counter,.listen-button{font-size:12.5px}
.panel-label,.phase3-card-kicker,.phase3-visual-caption span{font-size:10.5px}
.phase3-visual-caption strong{font-size:12px;line-height:1.35}

/* Horizontal journey must remain readable instead of becoming a row of tiny labels. */
.journey-nav-horizontal .journey-copy strong{font-size:12px;line-height:1.1}
.journey-nav-horizontal .journey-count{font-size:10px}
.journey-nav-horizontal .journey-icon{font-size:11px}

/* General teaching / Learn / Try / Challenge text */
.phase3-teach-card h3{font-size:19px}
.phase3-teach-card p,
.phase3-stage-note,
.solve-intro,
.phase3-feedback span,
.progressive-step p,
.solve-step p{font-size:var(--wtm-body-readable);line-height:1.48}
.progressive-step strong,.solve-step strong,.phase3-feedback strong{font-size:13.5px;line-height:1.35}
.solve-step-label,.phase3-result-strip span,.phase3-focus-card span,.challenge-level{font-size:9.5px}
.step-action,.choice-letter{font-size:11.5px}
.phase3-result-strip strong{font-size:18px}
.phase3-focus-card strong{font-size:19px}

/* Learn example-bank controls */
.phase5-bank-kicker{font-size:9.5px}
.phase5-learn-bank strong{font-size:13px;line-height:1.42}
.phase5-learn-bank small{font-size:10.5px;line-height:1.4}
.bank-random{font-size:10.5px}
.worked-bank-toolbar>span{font-size:10.5px}
.worked-bank-toolbar>span strong{font-size:11.5px}

/* Worked-example overview. Keep descriptions available and readable; scroll instead of shrinking. */
.worked-overview-column .worked-method-card h3{font-size:17px;line-height:1.3}
.worked-overview-column .worked-static-step strong,
.worked-static-step strong{font-size:12px;line-height:1.28}
.worked-overview-column .worked-static-step p,
.worked-static-step p{font-size:11.25px;line-height:1.38}
.worked-overview-column .phase3-stage-note{font-size:11px;line-height:1.4}

/* The full solution is the main reading surface. */
.worked-notebook-large .notebook-top span,
.solve-full-notebook .notebook-top span{font-size:10px}
.worked-notebook-large .notebook-top small,
.solve-full-notebook .notebook-top small{font-size:10px}
.worked-notebook-large .notebook-question,
.solve-full-notebook .notebook-question{font-size:15.5px;line-height:1.55}
.worked-notebook-large .notebook-step-number,
.solve-full-notebook .notebook-step-number{width:25px;height:25px;font-size:11px}
.worked-notebook-large .notebook-line,
.solve-full-notebook .notebook-line{grid-template-columns:29px minmax(0,1fr);gap:11px;margin:10px 0 13px}
.worked-notebook-large .notebook-line strong,
.worked-notebook-large .notebook-line p,
.solve-full-notebook .notebook-line strong,
.solve-full-notebook .notebook-line p{font-size:var(--wtm-notebook-readable);line-height:1.55}
.worked-notebook-large .notebook-answer span,
.solve-full-notebook .notebook-answer span{font-size:9px}
.worked-notebook-large .notebook-answer strong,
.solve-full-notebook .notebook-answer strong{font-size:20px;line-height:1.35}

/* Generic lesson cards and helper text must not fall into 8-10px territory. */
.teach-panel p{font-size:13px}
.formula-legend,.equation-notes{font-size:11.5px}
.word-chip{font-size:11.5px}
.keep-card,.insight-card,.quick-observation,.visual-explanation{font-size:12px}

/* Compact laptop. Preserve font size and let the content areas scroll if necessary. */
@media (min-width:1101px) and (max-width:1365px){
  .lesson-breadcrumbs{font-size:11.5px}
  .journey-nav-horizontal .journey-copy strong{font-size:11.5px}
  .journey-nav-horizontal .journey-count{font-size:9.5px}
  .scene-kicker{font-size:10px}
  .scene-sub{font-size:12.5px;line-height:1.38}
  .phase3-teach-card h3{font-size:18px}
  .phase3-teach-card p,
  .phase3-stage-note,
  .solve-intro,
  .phase3-feedback span,
  .progressive-step p,
  .solve-step p{font-size:var(--wtm-body-readable-compact);line-height:1.44}
  .progressive-step strong,.solve-step strong{font-size:13px}
  .phase3-visual-caption strong{font-size:11.5px}

  .worked-overview-column .worked-static-step strong{font-size:11.5px}
  .worked-overview-column .worked-static-step p{font-size:10.75px;line-height:1.34}
  .worked-overview-column .phase3-stage-note{font-size:10.75px}
  .worked-overview-column .worked-method-card{overflow:auto}

  .worked-notebook-large .notebook-question,
  .solve-full-notebook .notebook-question{font-size:14.5px}
  .worked-notebook-large .notebook-line strong,
  .worked-notebook-large .notebook-line p,
  .solve-full-notebook .notebook-line strong,
  .solve-full-notebook .notebook-line p{font-size:var(--wtm-notebook-readable-compact);line-height:1.5}
  .worked-notebook-large .notebook-answer strong,
  .solve-full-notebook .notebook-answer strong{font-size:19px}
}

/* Short laptop screens: do not hide explanations or collapse to micro-text. */
@media (min-width:1101px) and (max-height:680px){
  .journey-nav-horizontal .journey-copy strong{font-size:11px}
  .scene-sub{font-size:12px}
  .worked-overview-column .worked-static-step p{display:block;font-size:10.5px;line-height:1.3}
  .worked-overview-column .phase3-stage-note{display:block;font-size:10.5px}
  .worked-overview-column .worked-bank-toolbar .bank-random{font-size:10px}
  .worked-overview-column .worked-bank-toolbar>span{font-size:10px}
  .worked-overview-column .worked-bank-toolbar>span strong{font-size:10.5px}
  .worked-notebook-large .notebook-question,
  .solve-full-notebook .notebook-question{font-size:14px}
  .worked-notebook-large .notebook-line strong,
  .worked-notebook-large .notebook-line p,
  .solve-full-notebook .notebook-line strong,
  .solve-full-notebook .notebook-line p{font-size:13px;line-height:1.46}
  .phase5-learn-bank strong{font-size:12px}
  .phase5-learn-bank small{font-size:10px}
}

/* Tablet/mobile: favour comfortable reading over desktop density. */
@media (max-width:1100px){
  .journey-nav-horizontal .journey-copy strong{font-size:11.5px}
  .scene-sub{font-size:13px}
  .phase3-teach-card p,.phase3-stage-note,.progressive-step p,.solve-step p{font-size:13px}
  .worked-overview-column .worked-static-step strong{font-size:12.5px}
  .worked-overview-column .worked-static-step p{font-size:12px}
  .worked-notebook-large .notebook-question,.solve-full-notebook .notebook-question{font-size:15px}
  .worked-notebook-large .notebook-line strong,.worked-notebook-large .notebook-line p,
  .solve-full-notebook .notebook-line strong,.solve-full-notebook .notebook-line p{font-size:14px;line-height:1.52}
  .worked-notebook-large .notebook-answer strong,.solve-full-notebook .notebook-answer strong{font-size:20px}
}

@media (max-width:640px){
  .scene-sub{font-size:13.5px}
  .journey-nav-horizontal .journey-copy strong{font-size:12px}
  .phase3-teach-card p,.phase3-stage-note,.progressive-step p,.solve-step p{font-size:13.5px}
  .worked-notebook-large .notebook-question,.solve-full-notebook .notebook-question{font-size:15.5px}
  .worked-notebook-large .notebook-line strong,.worked-notebook-large .notebook-line p,
  .solve-full-notebook .notebook-line strong,.solve-full-notebook .notebook-line p{font-size:14.5px}
}
