/* The author's lesson and reference share one entry; no content reclassification. */
.topic-screen:not(.adaptive-session-topic) { display: grid; grid-template-rows: auto minmax(0, 1fr); }
.topic-screen:not(.adaptive-session-topic) > .topic-screen-content { height: auto; width: 100%; }
.topic-pager-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; padding-block: 10px; }
.topic-pager-tabs > button { min-width: 0; min-height: 52px; border-radius: 14px; font-size: .78rem; display: flex; align-items: center; justify-content: center; gap: 6px; }
.topic-pager-tabs > button > span { font-size: 1.1rem; }
.topic-back-button, .topic-header-actions > button { min-height: 44px; min-width: 44px; }
.topic-screen-header { gap: 9px; }
.topic-screen-progress { min-width: 36px; }
.topic-panel:has(> .structured-lesson) { background: #0c2442; }
.structured-lesson > .topic-section-heading { margin-bottom: 0; }
.lesson-intro { padding-bottom: 8px; }
.lesson-blocks { display: grid; gap: 18px; }
.lesson-block { padding: 14px 0 0; border-top: 1px solid var(--line); }
.topic-rule h3 { margin: 0 0 5px; color: var(--teal); font-size: .9rem; }
.topic-rule p { line-height: 1.65; }
.lesson-reference { margin: 0; padding: 0 12px; border: 1px solid #66e0d155; border-radius: 15px; background: #09203c; }
.lesson-reference > summary { min-height: 48px; padding-block: 12px; font-size: .87rem; color: var(--teal); font-weight: 750; cursor: pointer; }
.lesson-reference > section { padding-bottom: 12px; }
.lesson-reference > section > .topic-section-heading { display: none; }
.lesson-reference .topic-table { font-size: .82rem; }
.lesson-reference .topic-table :is(th, td) { white-space: normal; }
.lesson-narration-status:empty { display: none; }
.topic-screen :is(button, summary, input):focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.topic-screen :is(.topic-panel, .topic-table-wrap) { scroll-padding-bottom: 20px; }
@media (prefers-reduced-motion: reduce) {
  .topic-section-pager { scroll-behavior: auto !important; }
  .topic-screen * { animation: none !important; transition: none !important; }
}
