/* v1.45.0 คลังเกมตามระดับชั้นและกลุ่มสาระ */
.topic-hero{padding:42px 0 26px;background:linear-gradient(135deg,#eef6ff 0%,#fff6e9 100%);border-bottom:1px solid rgba(15,23,42,.06)}
.topic-hero h1{margin:.3em 0 .25em;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.2;color:#14213d}
.topic-hero p{max-width:760px;margin:0;color:#475569;font-size:1.02rem}
.topic-crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.9rem;color:#64748b}
.topic-crumbs a{color:#2563eb;text-decoration:none}.topic-crumbs a:hover{text-decoration:underline}
.topic-body{padding-top:28px}
.topic-band{margin:28px 0 14px;font-size:1.25rem;color:#14213d}
.topic-band:first-child{margin-top:0}
.topic-grade-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.topic-grade-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:14px;box-shadow:0 4px 14px rgba(15,23,42,.04)}
.topic-grade-card.is-empty{opacity:.6}
.topic-grade-head{display:flex;justify-content:space-between;align-items:baseline;text-decoration:none;color:#14213d;margin-bottom:8px}
.topic-grade-head b{font-size:1.35rem}.topic-grade-head span{font-size:.88rem;color:#64748b}
.topic-subject-links,.topic-chips{display:flex;flex-wrap:wrap;gap:6px}
.topic-subject-links a,.topic-chips a{display:inline-flex;gap:4px;align-items:center;padding:5px 10px;border-radius:999px;background:#f1f5f9;color:#1e293b;text-decoration:none;font-size:.88rem;line-height:1.3}
.topic-subject-links a:hover,.topic-chips a:hover{background:#dbeafe}
.topic-subject-links small,.topic-chips small{color:#64748b}
.topic-chips{margin-bottom:20px}
.topic-subject-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.topic-subject-card{display:flex;flex-direction:column;gap:2px;padding:16px;border-radius:18px;background:#fff;border:1px solid #e2e8f0;text-decoration:none;color:#14213d;transition:transform .15s,box-shadow .15s}
.topic-subject-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.08)}
.topic-subject-card span{font-size:1.7rem}.topic-subject-card small{color:#64748b}
.topic-subject-card.is-empty{opacity:.55}
.topic-empty{text-align:center;padding:36px 20px}.topic-empty>span{font-size:2.4rem}
.topic-empty div{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.topic-pager{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:26px 0}
.topic-pager a{min-width:40px;padding:8px 12px;text-align:center;border-radius:12px;background:#f1f5f9;color:#1e293b;text-decoration:none}
.topic-pager a.is-active{background:#2563eb;color:#fff}
.topic-teacher{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-top:30px;flex-wrap:wrap}
.topic-teacher h2{margin:0 0 6px;font-size:1.15rem}.topic-teacher p{margin:0;color:#475569;max-width:680px}
.topic-hub-chip{background:#fef3c7!important;color:#92400e!important}
@media (max-width:560px){.topic-grade-grid{grid-template-columns:1fr}.topic-subject-grid{grid-template-columns:1fr 1fr}.topic-hero{padding:28px 0 18px}}

/* v1.48.0 ธีมพาสเทล: หัวหน้าโปร่ง การ์ดขาวมุมโค้ง ชั้นที่ยังไม่มีเกมเป็นกรอบเส้นประเล็ก ๆ */
.topic-hero{background:transparent;border-bottom:0}
.topic-hero h1{font-family:var(--pt-display,"Mitr",sans-serif);font-weight:600;color:var(--pt-ink,#1B2559)}
.topic-crumbs a{color:var(--pt-accent-text,#B9500F)}
.topic-grade-card{border:0;border-radius:24px;box-shadow:0 10px 30px rgba(27,37,89,.08)}
.topic-grade-card.is-empty{opacity:1;background:transparent;box-shadow:none;border:2px dashed #CDD6DE;padding:10px 14px}
.topic-grade-card.is-empty .topic-grade-head{margin:0;color:var(--pt-muted,#5E6786)}
.topic-grade-card.is-empty .topic-grade-head b{font-size:1.05rem}
.topic-grade-card.is-empty .topic-subject-links{display:none}
.topic-subject-links a,.topic-chips a{background:var(--pt-ground,#EEF7F2)}
.topic-subject-links a:hover,.topic-chips a:hover{background:var(--pt-peach-wash,#FFE8D6)}
.topic-subject-card{border:0;border-radius:24px;box-shadow:0 10px 30px rgba(27,37,89,.08)}
.topic-subject-card.is-empty{opacity:1;background:transparent;box-shadow:none;border:2px dashed #CDD6DE}
.topic-pager a.is-active{background:var(--pt-ink,#1B2559)}
.topic-band{font-family:var(--pt-display,"Mitr",sans-serif);font-weight:500}
