:root{--lesson-kaiti:"Kaiti SC","STKaiti","KaiTi","BiauKai","楷体",serif}

body{font-family:var(--lesson-kaiti);font-synthesis:none}
.scene-copy,.copy,.passage,.story-copy,.story-text,.story-paragraphs,.poem-copy,.poem-lines,
.learning-shell,.learning-scroll,.study,.detail,.overview,.context,.wordbanks,.understand-grid,
.practice-layout,.culture-copy,.exhibit-copy,.topic-copy,dialog h1,dialog h2,dialog h3,dialog p{
  font-family:var(--lesson-kaiti)!important;
  font-synthesis:none;
}
.scene-copy.original .passage,.story-text,.story-paragraphs{
  font-size:clamp(22px,2vw,34px)!important;
  line-height:1.95!important;
  letter-spacing:.04em!important;
}
.passage{line-height:1.9}
.big-character,.big-char,.hanzi,.hanzi-grid,.character strong,.character-tile b,
.char-grid b,.char-choice b,.poly-grid b,[data-char] b,.word-grid b,.word-choice b{
  font-family:var(--lesson-kaiti)!important;
  font-synthesis:none;
  font-weight:400!important;
}
.big-character,.big-char{font-size:clamp(92px,9vw,124px)!important;line-height:1.08!important}
.hanzi,.hanzi-grid,.char-grid b,.char-choice b,[data-char] b{font-size:clamp(38px,3.4vw,52px)!important;line-height:1.3!important}

.lesson-autoplay{
  position:fixed;z-index:650;left:50%;bottom:max(72px,calc(env(safe-area-inset-bottom) + 62px));
  transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:min(88vw,520px);
  padding:7px 12px;border:1px solid #7d8e7655;border-radius:999px;background:#f7f3e8e8;
  box-shadow:0 8px 28px #3948381c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  color:inherit;font:13px/1.35 system-ui,-apple-system,"PingFang SC",sans-serif;
}
.lesson-autoplay button{min-height:34px;padding:6px 12px;border:0;border-radius:999px;background:#526b50;color:#fff;font:inherit;white-space:nowrap;cursor:pointer}
.lesson-autoplay button:focus-visible{outline:3px solid #b86a45;outline-offset:3px}
.lesson-autoplay-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667061;font-size:11px}
.lesson-autoplay[data-state="paused"] button{background:#76694f}
.lesson-autoplay[data-state="complete"] button{background:#687564}

@media(max-width:700px){
  .scene-copy.original .passage,.story-text,.story-paragraphs{font-size:20px!important;line-height:1.9!important;letter-spacing:.02em!important}
  .passage{font-size:max(20px,1em)!important;line-height:1.9!important}
  .big-character,.big-char{font-size:92px!important}
  .hanzi,.hanzi-grid,.char-grid b,.char-choice b,[data-char] b{font-size:38px!important}
  .lesson-autoplay{bottom:max(64px,calc(env(safe-area-inset-bottom) + 54px));max-width:92vw;padding:6px 9px;gap:7px}
  .lesson-autoplay button{min-height:32px;padding:5px 10px}
  .lesson-autoplay-status{max-width:38vw}
}

@media(prefers-reduced-motion:reduce){.lesson-autoplay{backdrop-filter:none;-webkit-backdrop-filter:none}}
