/* หน้าคลังคำ + หน้าตามวัย (สร้างโดย tools/gen_learn_pages.py) · ต่อยอด legal.css */
.learn-page { max-width: 960px; }
.learn-crumbs { font-size: 14px; color: var(--muted, #5b6b64); margin-bottom: 8px; }
.learn-crumbs a { color: inherit; }
.learn-count { font-weight: 600; margin-top: 16px; }
.learn-page ul.learn-grid, .learn-page ul.learn-words, .learn-page ul.learn-games { list-style: none; padding: 0; margin: 20px 0; display: grid; gap: 12px; }
.learn-page ul.learn-grid > li, .learn-page ul.learn-words > li, .learn-page ul.learn-games > li { margin: 0; }
.learn-page h2 { margin-top: 32px; }
.learn-page .learn-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
.learn-page .learn-words { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.learn-page .learn-games { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.learn-card, .learn-game, .learn-word {
  display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center;
  padding: 12px; border: 1px solid var(--line, #dfe6d8); border-radius: 16px; background: #fff;
  color: inherit; text-decoration: none; height: 100%;
}
.learn-card:hover, .learn-game:hover { border-color: #8fb99a; }
.learn-card img, .learn-word img, .learn-game img { width: 120px; height: 120px; object-fit: contain; }
.learn-word img { width: 110px; height: 110px; }
.learn-page a.learn-card, .learn-page a.learn-game, .learn-page a.learn-card *, .learn-page a.learn-game * { text-decoration: none; }
.learn-card span, .learn-game span { font-size: 14px; color: var(--muted, #5b6b64); line-height: 1.5; }
.learn-word strong { font-size: 22px; }
.learn-listen { display: flex; gap: 6px; margin-top: 6px; flex-wrap: wrap; justify-content: center; }
.learn-listen button {
  min-height: 44px; padding: 6px 10px; border-radius: 999px; border: 1px solid var(--line, #dfe6d8);
  background: #f4f8f1; font: inherit; font-size: 14px; cursor: pointer;
}
.learn-listen button.playing { background: #dcefd9; border-color: #6fae7c; }
.learn-offscreen { margin: 20px 0; padding: 16px; border-radius: 16px; background: #f4f8f1; }
.learn-cta { margin: 24px 0; display: flex; gap: 10px; flex-wrap: wrap; }
.learn-pager { display: flex; justify-content: space-between; gap: 8px; margin: 24px 0; flex-wrap: wrap; }
.learn-tips li { line-height: 1.85; }
.learn-faq { border-top: 1px solid var(--line, #dfe6d8); padding: 12px 0; }
.learn-faq summary { font-weight: 600; cursor: pointer; min-height: 32px; }
.learn-other { margin-top: 16px; }
