/* A sunny storybook forest, with real, accessible controls. */
:root{--ink:#633b23;--muted:#80634a;--cream:#fff8e7;--white:#fffdf5;--line:#eed4a8;--green:#4c813c;--accent:#ffc958;--serif:ui-rounded,'Arial Rounded MT Bold','PingFang SC','Microsoft YaHei',sans-serif;--sans:ui-rounded,'Arial Rounded MT Bold','PingFang SC','Microsoft YaHei',system-ui,sans-serif}
body{background-color:var(--cream);background-image:radial-gradient(#e3b85819 .8px,transparent .8px);background-size:7px 7px}.top{background:#fffcef;border-bottom:3px solid #d9e7af;position:relative;z-index:2;box-shadow:0 3px 14px #87632b0c}.header{min-height:94px;gap:20px}.brand img{width:62px;height:62px;border:3px solid #fff;box-shadow:0 2px 0 #dbb677}.brand strong{font-size:22px;color:#75401f}.brand small{color:#a36b40;letter-spacing:.09em}.nav{gap:12px}.nav a{border:2px solid #e7c8a4;border-radius:48% 44% 45% 40% / 48% 50% 44% 47%;padding:9px 18px;background:#ffeed2;box-shadow:inset 0 0 0 3px #fff9,0 3px 0 #ead0ab}.nav a:first-child{background:#ffe0dc;border-color:#f4a79d}.nav a:nth-child(2){background:#f0e6fb;border-color:#c9addd}.nav a:nth-child(3){background:#e0f0ff;border-color:#a3cbe5}.nav a:before{content:'⌂';margin-right:7px;font-size:20px}.nav a:nth-child(2):before{content:'▤'}.nav a:nth-child(3):before{content:'♫'}.nav a:hover{text-decoration:none;transform:translateY(-2px)}.language{background:#fff3cf;border:2px solid #e6bd7c;box-shadow:inset 0 0 0 3px #fff9;min-height:44px}
.hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;width:100%;min-height:555px;padding:65px 20px 86px;background:#ddefd4 url('media/forest-girl-hero.webp') center 55%/cover no-repeat;border-bottom:5px solid #bad687;gap:0}.hero-copy{width:min(520px,100%);text-align:center;position:relative;padding:25px 24px 23px;background:#fffbebee;border:2px dashed #e8bb61;border-radius:43% 40% 36% 34% / 20% 24% 22% 26%;box-shadow:0 0 0 9px #fffbedc9,0 7px 24px #98703412}.hero h1,html[lang=en] .hero h1{font-size:clamp(36px,4.4vw,60px);line-height:1.22;letter-spacing:0;text-shadow:0 2px 0 #fff}.hero h1 em{color:#b16b2f}.eyebrow{justify-content:center;letter-spacing:.055em;font-size:12px}.sun-dot{background:#ffc23d;box-shadow:0 0 0 4px #ffefb0}.intro{max-width:420px;margin:16px auto;font-size:15px;line-height:1.85;color:#79543a}.hero-actions{justify-content:center;gap:10px}.button,.text-button{border:2px solid #eda59c;border-radius:30px;background:#ffded8;color:#743b2b;box-shadow:inset 0 0 0 3px #fff7,0 4px 0 #e5b6a2;padding:10px 14px;min-height:48px}.main-button:hover{background:#ffd0c4}.text-button{background:#e8f1d4;border-color:#b9cd8a}.text-button:hover{text-decoration:none;background:#deedbc}.hero-meta{justify-content:center;margin-top:16px;color:#805e41}.hero-visual{position:absolute;right:30px;bottom:20px}.hero-art,.edition{display:none}.feature{position:static;max-width:320px;background:#fff6dfea;border:2px solid #d6aa67;border-radius:24px;box-shadow:0 3px 0 #d6aa6744}.feature small{color:#88613d}.feature-play{background:#e7a649;color:#fff}.feature strong{font-size:14px}.forest-spark{position:absolute;color:#e8a922;font-size:42px;pointer-events:none;animation:float-leaf 5s ease-in-out infinite}.spark-one{top:19%;left:28%}.spark-two{right:25%;top:27%;animation-delay:-2s}
.activity-path{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:24px 0 32px;position:relative}.activity{display:flex;justify-content:center;align-items:center;gap:13px;min-height:86px;padding:14px 16px;border:2px solid #efa8a1;border-radius:39% 33% 37% 34% / 45% 48% 44% 46%;background:#ffe1de;box-shadow:inset 0 0 0 4px #fff9,0 5px 0 #efd3ad;transition:transform .2s}.activity:hover{transform:translateY(-4px)}.activity>span{font-size:30px;line-height:1}.activity strong{font-size:18px;line-height:1.3}.activity b{display:grid;place-items:center;background:#f397a0;color:white;border:2px solid white;width:28px;height:28px;border-radius:50%;flex:none}.activity-listen{background:#fff0bc;border-color:#eec766}.activity-listen b{background:#eebd3c}.activity-watch{background:#dcefff;border-color:#9fcbe7}.activity-watch>span{font-size:24px;background:#fcaaaa;color:white;border:3px solid #fff;border-radius:10px;padding:9px}.activity-watch b{background:#65b8e4}.activity-words{background:#e7f1cb;border-color:#b2cd80}.activity-words b{background:#8fbb51}
.shelf{border:0;background:transparent;padding:26px 0 55px;position:relative}.shelf:before{content:'';position:absolute;top:0;left:7%;right:7%;height:2px;background:repeating-linear-gradient(90deg,#d4ad6e 0 8px,transparent 8px 17px);transform:rotate(-.4deg)}.section-top{align-items:center}.section-top h2,.guide h2{display:inline-block;font-size:32px;border:2px solid #bb8448;border-radius:10px 16px 12px 8px;padding:12px 26px;background:linear-gradient(2deg,#f5d39c,#ffeac2 50%,#f0ce96);box-shadow:inset 0 0 0 4px #fff3,0 4px 0 #c99c6140;position:relative}.section-top h2:before,.guide h2:before{content:'❀';color:#77a545;position:absolute;left:-22px;top:6px;font-size:38px}.section-kicker{font-size:11px;letter-spacing:.14em;justify-content:flex-start;color:#946c37}.muted{font-size:15px}.search{border:2px solid #d8b689;border-radius:30px;background:#fffdf5;box-shadow:inset 0 0 0 3px #fdf2dc;min-height:48px}.filters{gap:12px;margin:24px 0}.filter{border:2px solid #dfc293;background:#fff6df;min-height:44px;padding:8px 20px;box-shadow:inset 0 0 0 3px #fff8,0 3px 0 #e9d6b5}.filter:nth-child(2){background:#edf2ce}.filter:nth-child(3){background:#ece2f6}.filter:nth-child(4){background:#dceffa}.filter[aria-pressed=true]{background:#648d44;color:#fff;border-color:#648d44;box-shadow:inset 0 0 0 3px #ffffff38,0 3px 0 #b8ca8e}.cards{gap:24px}.card{border:2px solid #e7c798;border-radius:25px 21px 24px 20px;background:#fffdf2;padding:7px;box-shadow:0 5px 0 #ead5ad,0 9px 20px #b8945e10;position:relative}.card:nth-child(3n+2){border-color:#c3d49c}.card:nth-child(3n+3){border-color:#b7d6e7}.card-image{border-radius:18px 16px 12px 12px;aspect-ratio:1.65}.card-image .time{background:#fff9e9f2;color:#795139;border:1px solid #eacb95;border-radius:16px;padding:3px 9px}.card-content{padding:13px 8px 10px;gap:8px}.card strong{font-size:18px}.country{color:#9d713b;font-size:11px}.card-sub{font-size:12px;margin-top:5px;color:#8a765b}.card-play{background:#ffcd58;color:#8e5526;border:3px solid #fff;box-shadow:0 0 0 1px #efcb78;width:38px;height:38px}.card:hover{box-shadow:0 5px 0 #dec28e,0 12px 25px #b8945e25;transform:translateY(-4px)}
.guide{border-top:2px dashed #dfc08c;gap:40px}.guide h2{font-size:28px}.steps{gap:12px}.steps li,.steps li:first-child{background:#fffdf3;border:2px solid #ecd5ad;padding:15px;border-radius:20px;box-shadow:0 3px 0 #ecdfc5}.steps li:nth-child(2){background:#f2f4df}.steps li:nth-child(3){background:#eff5fb}.steps li>span{font-family:var(--sans);background:#ffe6a6;color:#92622c;border:2px solid #fff;width:46px;height:46px}.steps strong{font-size:17px}.steps p{font-size:14px}.footer{background:#eaf1d6;border-top:5px solid #b9cf8c}.foot-content{padding:24px 0}.footer-social a{border:2px solid #d9be8b;background:#fff9e9;box-shadow:0 3px 0 #ddc99c}.footer-social{padding:0}.reader{border:4px solid #e2bd83;border-radius:28px;background:#fffbee}.reader::backdrop{background:#46321cbf;backdrop-filter:blur(4px)}.reader-header{border-bottom:2px dashed #e2c697;background:#fff2ce}.reader-header h2{font-size:28px}.close{background:#ffded3;border:2px solid #dea494;color:#7a3c27}.tabs button{border:2px solid #ddc28e;border-radius:18px;background:#fff0c8;min-height:44px}.tabs button[aria-selected=true]{background:#72964c;border-color:#72964c;color:#fff}.line{border-bottom:1px dashed #e4d1ae;border-radius:12px;padding:12px 7px}.line:hover,.line.active{background:#eef2d6}.word{border:2px solid #ccdaae;border-radius:15px;background:#eef4da;padding:14px}.word:nth-child(2n){border-color:#e9cd96;background:#fff0ce}.read-aloud-script{background:#fff1ce;border:2px solid #e9cd96;border-radius:16px}
@keyframes float-leaf{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-9px) rotate(8deg)}}
@media(min-width:1500px){.hero{min-height:650px;background-position:center 56%}}
@media(max-width:1000px){.header{gap:12px;flex-wrap:wrap;padding:15px 0}.nav{order:3;justify-content:center;width:100%;gap:14px}.hero{min-height:540px;background-position:42% center}.hero-copy{max-width:470px}.activity-path{gap:12px}.activity{gap:8px;padding:15px 10px}.activity strong{font-size:16px}.activity>span{font-size:26px}.activity b{display:none}.hero-visual{right:18px;bottom:15px}.cards{gap:18px}}
@media(max-width:680px){.wrap{width:calc(100% - 30px)}.header{min-height:80px;padding:12px 0;gap:12px}.header .brand img{width:49px;height:49px}.brand strong{font-size:19px}.brand small{font-size:8px}.language{padding:7px 10px;font-size:12px}.nav{display:flex;gap:8px}.nav a{font-size:12px;padding:5px 13px;flex:1;text-align:center;white-space:nowrap}.nav a:before{font-size:16px;margin-right:5px}.hero{width:100%;min-height:610px;padding:35px 18px 160px;background-position:23% center;justify-content:flex-start}.hero-copy{padding:25px 16px 20px;width:100%;max-width:410px;background:#fffbebf0;box-shadow:0 0 0 7px #fffbedc9;border-radius:32% 30% 28% 27% / 13% 16% 15% 18%}.hero h1,html[lang=en] .hero h1{font-size:37px;line-height:1.25}.hero .eyebrow{font-size:11px}.hero .intro{font-size:14px;line-height:1.8;max-width:310px}.hero .hero-actions{gap:8px}.hero .button,.hero .text-button{font-size:12px;padding:9px 10px;min-height:44px}.hero .hero-meta{font-size:10px;gap:10px}.hero-visual{right:12px;bottom:15px}.feature{max-width:280px;padding:8px 12px}.feature strong{font-size:12px}.feature small{font-size:10px}.spark-one{left:4%;top:70%}.spark-two{right:8%;top:64%}.activity-path{grid-template-columns:repeat(2,1fr);gap:13px;padding:22px 0 26px}.activity{min-height:73px;padding:12px;gap:10px}.activity strong{font-size:17px}.activity>span{font-size:29px}.activity b{display:grid;width:22px;height:22px;font-size:13px}.section-top{gap:20px}.section-top h2{font-size:27px;padding:13px 20px}.section-top h2:before{left:-15px;font-size:30px}.section-top .muted{font-size:13px}.search{width:100%}.filters{gap:9px;margin:20px 0}.filter{padding:7px 13px;font-size:12px;min-height:42px}.cards{gap:14px 11px}.card{padding:5px;border-radius:20px 16px}.card-image{aspect-ratio:1.28;border-radius:14px}.card-content{padding:10px 3px 8px;align-items:flex-end}.card strong{font-size:14px}.card-sub{font-size:10px;line-height:1.45}.card-play{width:26px;height:26px;border-width:2px}.card-image .time{font-size:10px;padding:1px 7px;right:6px;bottom:6px}.country{font-size:10px}.guide{padding:32px 0;gap:25px}.guide h2{font-size:25px}.reader-header h2{font-size:23px}.reader-body{padding:12px}.foot-content .brand img{width:45px;height:45px}.footer-email{font-size:12px}.footer-social{gap:10px}.footer-social>span{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:681px){.hero-copy{margin-left:24%;max-width:500px}.hero h1,html[lang=en] .hero h1{font-size:clamp(36px,4.2vw,57px)}}
@media(max-width:680px){.hero{min-height:790px;padding-bottom:370px;background-size:auto 465px;background-position:18% bottom;background-color:#fff8e7}.hero-copy{margin-left:0}.hero-visual{bottom:12px}.hero .intro{margin:12px auto}.hero .hero-meta{margin-top:13px}}
/* Each book opens into the landscape and palette of its own cover. */
.reader{background:var(--story-paper,#fffbee);border-color:var(--story-border,#e2bd83);color:var(--story-ink,#633b23)}
.reader::backdrop{background-image:linear-gradient(#30261770,#302617a6),var(--story-image);background-size:cover;background-position:center;backdrop-filter:blur(3px)}
.reader-header{background:var(--story-paper,#fff2ce);border-color:var(--story-border,#e2c697)}
.reader-header .section-kicker,.reader .line .ico{color:var(--story-ink,#633b23)}
.story-scene{height:145px;background-image:var(--story-image);background-size:cover;background-position:center 43%;border-bottom:3px solid var(--story-border);position:relative}
.story-switcher {
  position: absolute;
  inset: auto 0 0;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 14px;
  background: linear-gradient(transparent, #2e241d67);
}
.story-switcher button {
  min-height: 42px;
  padding: 6px 13px;
  border: 2px solid var(--story-border);
  border-radius: 22px;
  background: var(--story-paper);
  color: var(--story-ink);
  font-size: 13px;
  font-weight: 750;
  box-shadow: 0 2px 8px #0002;
}
.story-switcher button:hover { background: #fffdf5; }
.reader .tabs button{background:#ffffffb8;border-color:var(--story-border);color:var(--story-ink)}
.reader .tabs button[aria-selected=true]{background:var(--story-ink);border-color:var(--story-ink);color:#fff}
.reader .line{border-color:var(--story-border)}
.reader .line:hover,.reader .line.active{background:#ffffffb8}
.reader .word,.reader .word:nth-child(2n){background:#ffffffb5;border-color:var(--story-border)}
.reader .word:nth-child(2n){background:var(--story-paper)}
.reader .line small,.reader .word span{color:var(--story-ink);opacity:.9}
.reader .read-aloud-script{background:#ffffffb8;border-color:var(--story-border)}
.reader .close{background:#ffffffb8;border-color:var(--story-border);color:var(--story-ink)}
@media(max-width:680px){.story-scene{height:105px}.reader-body .video-wrap video{max-height:42dvh}}

.hero-copy.hero-story-copy {
  background-color: #fff8e7;
  background-image: linear-gradient(180deg, #fff9e9e6, #fff9e9c9 50%, #fff9e99e), var(--story-image, url('media/magic-flamingo-lake.webp'));
  background-position: center;
  background-size: cover;
}
.hero-cover-controls {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  align-items: center;
  gap: 7px;
  max-width: 340px;
  margin: 13px auto 0;
  color: var(--story-ink, #99495e);
}
.hero-cover-arrow,
.hero-story-current {
  min-height: 44px;
  padding: 3px 8px;
  border: 2px solid var(--story-border, #e8a2af);
  border-radius: 18px;
  background: #fff9eb;
}
.hero-cover-arrow { border-radius: 50%; font-size: 26px; line-height: 1; }
.hero-cover-arrow:hover,
.hero-story-current:hover { background: var(--story-paper, #fff1f0); }
.hero-story-current strong,
.hero-story-current small { display: block; line-height: 1.35; }
.hero-story-current strong { font-size: 14px; overflow-wrap: anywhere; }
.hero-story-current small { font-size: 11px; }

@media (max-width: 600px) {
  .story-switcher { padding-inline: 9px; }
  .story-switcher button { padding-inline: 9px; font-size: 12px; }
}

.header-actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.share-site { background: #e0f0ff; border-color: #a3cbe5; }
.subscribe-site { background: #ffe0dc; border-color: #efa8a1; }
.share-site:hover { background: #d2eaff; }
.subscribe-site:hover { background: #ffd3cd; }
.share-feedback {
  position: absolute;
  z-index: 3;
  top: calc(100% + 7px);
  right: 0;
  max-width: min(100%, 320px);
  padding: 8px 12px;
  background: #fffdf5;
  border: 2px solid #e6bd7c;
  border-radius: 13px;
  box-shadow: 0 3px 8px #785b3020;
  font-size: 13px;
}
.share-feedback:has(p:empty) {
  padding: 0;
  border: 0;
  box-shadow: none;
}
.share-feedback p { margin: 0; }
.share-feedback input { width: 100%; margin-top: 5px; }
@media (max-width: 1100px) and (min-width: 1001px) {
  .header { flex-wrap: wrap; padding: 15px 0; }
  .header .nav { order: 3; justify-content: center; width: 100%; }
}
@media (max-width: 680px) {
  .header-actions { width: 100%; justify-content: center; }
  .share-feedback { right: 0; left: 0; margin-inline: auto; }
}

.word-hint,.word-status{margin:0 0 4px;color:var(--story-ink,var(--ink));font-size:13px}
.word-status{margin-top:8px}
.reader .word-pronunciation{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:2px 6px;align-content:start;text-align:left;cursor:pointer;color:inherit}
.word-pronunciation strong{overflow-wrap:anywhere}
.word-pronunciation span{grid-column:1/-1}
.word-pronunciation .ico{width:18px;height:18px;color:var(--story-ink,var(--ink))}
.reader .word-pronunciation:hover,.reader .word-pronunciation.speaking{background:var(--story-paper,#fff0ce);box-shadow:inset 0 0 0 1px var(--story-ink,var(--ink))}
.word-pronunciation:focus-visible{outline:2px solid var(--story-ink,var(--ink));outline-offset:-3px}

.reader-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding-block: 10px;
  background: radial-gradient(circle, #bd8d6729 1px, transparent 1.5px) 0 0 / 16px 16px,
    linear-gradient(105deg, #fffaf0 12%, var(--story-paper, #fff2ce) 85%);
}
.reader-heading { min-width: 0; padding-block: 4px; }
.reader-header .section-kicker {
  display: inline-block;
  max-width: 100%;
  padding: 4px 9px;
  background: #fffdf3;
  border: 1px solid var(--story-border, #e2c697);
  border-radius: 999px;
  letter-spacing: .04em;
  line-height: 1.35;
}
.reader .tabs button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
.reader .tabs button .ico { flex: 0 0 16px; width: 16px; height: 16px; }
@media (max-width: 520px) {
  .reader-header { gap: 8px; padding: 10px 12px; }
  .reader-header .section-kicker { padding-inline: 6px; letter-spacing: 0; }
}

.hero .latest-play, .button.video-start {
  min-height: 53px;
  padding-inline: 21px;
  font-size: clamp(16px, 2.2vw, 20px);
  font-weight: 850;
  color: #4e260f;
  border-color: #c8823c;
  background: #ffe2a1;
  box-shadow: inset 0 0 0 3px #fff6d6, 0 4px 0 #cc945d;
}
.hero .latest-play { flex-basis: min(100%, 270px); margin-inline: max(0px, calc((100% - 270px) / 2)); }
.hero .latest-play .ico, .video-start .ico { width: 23px; height: 23px; }
.hero .latest-play:hover, .video-start:hover { background: #ffd78a; }
.parent-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: clamp(16px, 4vw, 32px);
  margin: 0 auto 40px;
  background: #fff9e8;
  border: 2px dashed #d5b277;
  border-radius: 26px;
}
.parent-note h2 { margin: 0 0 6px; font-size: clamp(22px, 3vw, 28px); color: #715133; }
.parent-note p { max-width: 56ch; margin: 0; line-height: 1.7; }
.parent-actions { display: grid; justify-items: center; gap: 12px; flex-shrink: 0; }
.print-link { text-decoration: underline; text-underline-offset: 3px; }

.episode-page {
  width: min(930px, calc(100% - 30px));
  max-height: none;
  margin: 22px auto 36px;
  overflow: hidden;
  box-shadow: 0 12px 28px #6a4c3621;
}
.episode-shelf { font-size: 14px; font-weight: 750; text-align: right; }
.episode-shelf:hover { text-decoration: underline; }
#reader-title {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin: 3px 0 0;
  font-family: "Nunito", "Arial Rounded MT Bold", "Microsoft YaHei UI", var(--sans);
  font-weight: 850;
  line-height: 1.2;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
.reader-title-zh { font-size: clamp(26px, 5vw, 40px); }
.reader-title-en { font-size: clamp(18px, 3.6vw, 27px); }
html[lang="en"] .reader-title-en { order: -1; font-size: clamp(23px, 4.5vw, 36px); }
html[lang="en"] .reader-title-zh { font-size: clamp(18px, 3.6vw, 26px); }
#reader-title span span:nth-child(4n+1) { color: #8b3d55; }
#reader-title span span:nth-child(4n+2) { color: #24634f; }
#reader-title span span:nth-child(4n+3) { color: #315e8c; }
#reader-title span span:nth-child(4n) { color: #795089; }
.reader-watch { min-width: 0; }
.episode-page .video-wrap { border: 2px solid var(--story-border, #e2bd83); border-radius: 20px; background: #1a302d; }
.episode-page .video-wrap video { object-fit: contain; }
.video-start { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); white-space: nowrap; }
.button.video-start[hidden] { display: none; }
.reader-companions {
  overflow: hidden;
  margin-top: 12px;
  border: 2px dashed #c3ca9b;
  border-radius: 20px;
  background: #f4f7dc;
  color: #385443;
  text-align: center;
}
.reader-companions-art {
  height: 158px;
  background: #e8f0cd url('media/forest-girl-hero.webp') left 73% / 190% auto no-repeat;
}
.reader-companions p { margin: 0; padding: 8px; font-weight: 750; }
.youtube-alternative { margin-top: 9px; }
.youtube-alternative summary { padding: 8px 10px; font-size: 14px; font-weight: 700; cursor: pointer; }
.youtube-frame iframe { display: block; width: 100%; min-height: 200px; aspect-ratio: 9 / 16; border: 0; border-radius: 12px; }
.episode-page .reader-body { gap: 20px; }
.reader .tabs button { min-height: 44px; font-size: 15px; }
.reader .line-list, .reader .word-list { max-height: min(72dvh, 680px); }
.reader .line-list { display: grid; gap: 8px; align-content: start; }
.reader .line-list[hidden], .reader .word-list[hidden] { display: none; }
.reader .line, .reader .word {
  --line-english: #294c74;
  --line-chinese: #74354f;
  --line-paper: #fff8e7;
  background: var(--line-paper);
  border: 1px solid #78604d30;
  border-radius: 16px;
  padding: 11px 12px;
}
.reader .line:nth-of-type(3n+2), .reader .word:nth-child(3n+2) {
  --line-english: #325849;
  --line-chinese: #694687;
  --line-paper: #f3f8e5;
  background: var(--line-paper);
}
.reader .line:nth-of-type(3n), .reader .word:nth-child(3n) {
  --line-english: #644282;
  --line-chinese: #305a77;
  --line-paper: #f4f0fc;
  background: var(--line-paper);
}
.reader .line:hover, .reader .line.active, .reader .word-pronunciation:hover, .reader .word-pronunciation.speaking {
  background: var(--line-paper);
  box-shadow: inset 0 0 0 2px var(--line-english);
}
.reader .line strong, .reader .word strong, .reader .read-aloud-script li strong {
  color: var(--line-english, #294c74);
  font-size: clamp(17px, 2.6vw, 21px);
  line-height: 1.36;
  font-weight: 800;
}
.reader .line small, .reader .word span, .reader .read-aloud-script li span {
  color: var(--line-chinese, #74354f);
  opacity: 1;
  font-size: clamp(16px, 2.2vw, 18px);
  line-height: 1.5;
}
.reader .line .ico, .reader .word .ico { color: var(--line-english); }
.episode-end {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 18px;
  padding: 16px 20px 20px;
  border-top: 2px dashed var(--story-border, #e2bd83);
}
.episode-next { display: grid; grid-template-columns: 1fr 24px; gap: 2px 9px; min-height: 54px; }
.episode-next > span { grid-column: 1; font-size: 12px; }
.episode-next > strong { grid-column: 1; font-size: 16px; }
.episode-next > .ico { grid-area: 1 / 2 / 3 / 3; }
.episode-follow > strong { display: block; margin-bottom: 5px; }
.episode-follow > div { display: flex; flex-wrap: wrap; gap: 6px; }
.episode-follow a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 40px;
  padding: 4px 10px;
  border: 1px solid var(--story-border, #e2bd83);
  border-radius: 16px;
  background: #fffdf4;
  font-size: 13px;
  font-weight: 750;
}
.episode-follow a:hover { background: #fff1d2; }
@media (max-width: 680px) {
  .parent-note { flex-wrap: wrap; }
  .parent-actions { justify-items: start; }
  .episode-page { margin-top: 12px; }
  .episode-page .reader-body { gap: 12px; }
  .reader-companions { display: flex; align-items: center; margin-top: 8px; }
  .reader-companions-art { flex: 0 0 min(36%, 135px); height: 66px; }
  .reader-companions p { flex: 1; text-align: left; font-size: 14px; }
  .reader .line-list, .reader .word-list { max-height: 50dvh; }
}
