/* Shared course navigation and compact course homes. Activity styles stay local. */
.math-library-shell { max-width: 1100px; padding-block: var(--space-5); }
.page-view[data-page^="math"] .page-shell:has(.math-home) { max-width: 1100px; padding-top: var(--space-4); padding-bottom: var(--space-3); }
.math-home { display: grid; gap: var(--space-3); color: var(--ink); }
.math-home h1, .math-home h2, .math-home h3 { font-family: var(--font-display); font-weight: 600; }
.math-home * { box-sizing: border-box; min-width: 0; }
.math-home-heading h1 { font-size: clamp(26px, 3vw, 36px); line-height: 1.15; margin: 0; }
.math-home p { margin: 0; line-height: 1.5; }
.math-home-heading { display: grid; gap: var(--space-1); }
.math-bank-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: var(--space-2); }
.math-home .kicker { color: var(--blue-dark); font-size: 13px; font-weight: 700; letter-spacing: .04em; }
.math-home-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-4); }
.math-home-card { display: grid; align-content: start; gap: var(--space-3); background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--space-4); }
.math-home-card h2, .math-home-card h3 { font-size: 24px; margin: 0; line-height: 1.2; }
.math-home-select { display: grid; gap: var(--space-1); font-size: 14px; font-weight: 700; }
.math-home-select select, .math-home input, .math-home select { width: 100%; min-height: 44px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--paper); color: var(--ink); padding: var(--space-2); font: inherit; text-overflow: ellipsis; }
.math-home-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.math-home .button, .math-home .rsm-button { min-height: 44px; padding: var(--space-2) var(--space-3); white-space: normal; }
.math-home :is(.button-primary, .rsm-primary, .hn-primary) { background: var(--blue-dark); color: var(--paper); box-shadow: var(--elevation-button); }
.math-home :is(.button-secondary, .rsm-secondary) { border: 1px solid var(--line); box-shadow: var(--elevation-button-soft); }
.math-home-pager { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); border-top: 1px solid var(--line); padding-top: var(--space-3); }
.math-home-pager span { text-align: center; font-size: 14px; }
.math-home-note { color: var(--muted); font-size: 14px; }
.math-home-progress { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); font-size: 14px; }
.math-catalog-body { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-6); padding-block: var(--space-4); }
.math-catalog-body > div { display: grid; align-content: start; gap: var(--space-3); }
.math-catalog-start { border-left: 1px solid var(--line); padding-left: var(--space-5); }
.math-home .study-privacy { margin: 0; font-size: 13px; }
.math-home .topic-card { cursor: default; }
.math-home .rsm-filters { margin: 0; }
.math-home .rsm-problem-list { display: block; }
.math-home .rsm-problem-list article { display: grid; gap: var(--space-3); padding: var(--space-4); }
.math-home .rsm-problem-list h3 { margin: var(--space-2) 0; font-family: var(--font-reading); font-weight: 500; font-size: 21px; }
.math-home #rsm-problem-list { display: grid; gap: var(--space-3); }
.math-home .rsm-breadcrumb { margin: 0; }
@media (max-width: 700px) {
  .math-home-grid, .math-catalog-body { grid-template-columns: 1fr; gap: var(--space-3); }
  .math-home-card { padding: var(--space-3); }
  .math-catalog-start { border-left: 0; border-top: 1px solid var(--line); padding: var(--space-3) 0 0; }
  .math-home-actions > * { flex: 1 1 auto; }
  .math-home-pager .button, .math-home-pager .rsm-button { padding-inline: var(--space-2); }
}
