/* Learn typography polish: calm reading rhythm on small screens. */
:root {
  --learn-reading-width: 68ch;
  --learn-display-leading: 1.04;
  --learn-body-leading: 1.62;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.learn-welcome h1,
.courses-intro h1,
.course-hero h1,
.utility-head h1,
.reader-title {
  font-family: var(--kb-display, var(--display, sans-serif));
  line-height: 1.12;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.learn-welcome p,
.courses-intro p,
.course-hero p,
.utility-head p,
.reader-deck {
  max-width: 54ch;
  line-height: 1.58;
  text-wrap: pretty;
}

.reader-body {
  min-width: 0;
}

.reader-content {
  max-width: var(--learn-reading-width);
}

.reader-content p,
.reader-content li,
.story-block p,
.worked-example p,
.exercise-box p,
.takeaway-box span,
.source-note-inline {
  font-family: var(--kb-body, var(--sans, sans-serif));
  font-size: 16px;
  line-height: var(--learn-body-leading);
  text-wrap: pretty;
}

.reader-content h2 {
  line-height: 1.18;
  text-wrap: balance;
}

.reader-content .story-label,
.reader-meta,
.source-note-inline,
.quiz-intro,
.quiz-explain,
.quiz-score {
  line-height: 1.5;
}

.reader-meta,
.result-module,
.term-pron,
.reader-crumbs,
.search-count {
  letter-spacing: 0;
  font-size: 12px;
}

.eyebrow {
  letter-spacing: .04em;
}

.quiz-q {
  max-width: 58ch;
  line-height: 1.42;
  text-wrap: pretty;
}

.quiz-option {
  line-height: 1.42;
  text-align: left;
}

.button,
.tool-button,
.reader-mobile-dock button,
.reader-mobile-dock a {
  letter-spacing: -0.01em;
}

.eyebrow,
.reader-meta,
.result-module,
.story-label,
.term-pron {
  letter-spacing: .11em;
}

.utility-head,
.courses-intro,
.learn-welcome {
  text-wrap: pretty;
}

@media (max-width: 560px) {
  .learn-welcome h1,
  .courses-intro h1,
  .utility-head h1 {
    line-height: 1.12;
    letter-spacing: -.025em;
  }

  .learn-welcome p,
  .courses-intro p,
  .utility-head p {
    font-size: 14px;
    line-height: 1.58;
  }

  .reader-title {
    line-height: 1.07;
    letter-spacing: -.045em;
  }

  .reader-deck {
    font-size: 17px;
    line-height: 1.52;
  }

  .reader-content p,
  .reader-content li,
  .story-block p,
  .worked-example p,
  .exercise-box p,
  .takeaway-box span,
  .source-note-inline {
    font-size: 16px;
    line-height: 1.68;
  }

  .reader-content h2 {
    margin-top: 32px;
    font-size: 20px;
  }

  .quiz-q {
    font-size: 15px;
    line-height: 1.48;
  }

  .quiz-option {
    font-size: 15px;
    line-height: 1.48;
  }
}

@media (prefers-reduced-motion: reduce) {
  .typography-app,
  .reader-content,
  .reader-title {
    scroll-behavior: auto;
  }
}

/* Compact home, course lists and utility views share a readable text hierarchy. */
.learn-welcome h1,.courses-intro h1,.utility-head h1{font-size:clamp(30px,7.8vw,42px)}.start-card-copy h2{font:750 clamp(24px,6.2vw,32px)/1.2 var(--kb-display);letter-spacing:-.025em}.start-card-copy p{font:500 14px/1.6 var(--kb-body)}.game-challenge strong,.game-challenge>span:last-child{font-size:14px;line-height:1.5}.course-strip-head h2{font:750 21px/1.25 var(--kb-display)}.course-chip strong{font:700 16px/1.4 var(--kb-body)}.course-chip small,.learn-glossary-link,.lesson-row p,.module-copy p,.source-check-meta{font-size:13px;line-height:1.5}.lesson-row h3,.module-copy h3{font:750 19px/1.3 var(--kb-display)}.side-card p,.term-desc,.search-result p,.source-note-inline{font-size:15px;line-height:1.65}.reader-toolbar,.reader-mobile-dock .button,.tool-button{font-size:13px;line-height:1.4}
