/* Course index: original lesson content, URLs, and filter behavior remain intact. */
/* Shared hub icon ceiling, independent of body state. Content photos are not icons. */
svg,.brand-icon,.class-icon,.family-symbol svg,.ic,.icon,
[class$="-icon"],[class*="-icon "],img[role="img"][class~="icon"] {
  max-width:48px!important;max-height:48px!important;flex-shrink:0!important;
}
svg {width:48px;height:48px;display:inline-block;vertical-align:middle;}
.ic,.icon {width:48px;height:48px;font-size:32px;line-height:1;}
.course-view {--course:var(--accent);--tile:var(--accent-soft);}
.all-classes {display:flex;align-items:center;min-height:44px;margin:0 0 14px;font-size:14px;font-weight:600;color:var(--accent);text-decoration:none;}
.all-classes::before {content:'←';margin-right:10px;}
.all-classes:hover {text-decoration:underline;text-underline-offset:4px;}
.course-view .class-banner {display:block;}
.course-view .filters {background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 28px;box-shadow:none;margin-bottom:40px;}
.course-view .filters h2 {margin:0 0 24px;font-size:26px;}
.course-view .filter-grid {grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:20px;}
.course-view .filter-field {min-width:0;}
.course-view .filter-field label {font-size:14px;font-weight:600;color:var(--ink);}
.course-view .filter-status,.course-view .copy-feedback {font-size:14px;color:var(--ink-soft);}
.course-view .filter-field input,.course-view .filter-field select {width:100%;min-width:0;background:var(--surface);border-color:var(--input-line);border-radius:6px;color:var(--ink);color-scheme:dark;min-height:48px;}
.course-view .filter-field input::placeholder {color:var(--ink-soft);opacity:1;}
.course-view .filter-footer {gap:12px;align-items:flex-start;}
.course-view .filter-actions {gap:8px 18px;}
.course-view .clear-filters,.course-view .saved-filter {color:var(--accent);font-size:14px;padding:8px 0;}
.course-view .saved-filter[aria-pressed="true"] {background:var(--accent-soft);border-radius:6px;padding:8px 12px;}
.course-view .share-link {background:transparent;color:var(--accent);border-color:var(--line);font-size:14px;}
.course-view .copy-link {background:var(--accent);border-color:var(--accent);color:#0d1b34;font-size:14px;}
.course-view .copy-link:hover {background:var(--accent-dark);}
.course-view .filter-field input:focus,.course-view .filter-field select:focus,
.course-view .clear-filters:focus-visible,.course-view .saved-filter:focus-visible,
.course-view .copy-link:focus-visible,.course-view .share-link:focus-visible,
.course-view .bookmark-button:focus-visible {outline:3px solid var(--accent);outline-offset:3px;}
.course-view .course-group>h2 {font-size:26px;line-height:1.3;color:var(--ink);margin:48px 0 10px;}
.course-view .course-group>h2 .badge {font-size:14px;font-weight:500;letter-spacing:0;background:var(--accent-soft);color:var(--accent);border-radius:4px;padding:3px 8px;}
.course-view .sub {color:var(--ink-soft);font-size:16px;margin:0 0 24px;}
.course-view .group-title {font-size:20px;color:var(--ink);font-weight:600;margin:40px 0 16px;}
.course-view .grid {display:grid;grid-template-columns:1fr;gap:0;}
.course-view a.tile {display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:144px;padding:24px 64px 24px 0;
  background:transparent;border:0;border-top:1px solid var(--line-soft);border-radius:0;box-shadow:none;color:inherit;overflow-wrap:anywhere;}
.course-view .tile-kind-row {display:flex;align-items:center;gap:10px;padding:0;}
.course-view a.tile .ic {display:none;}
.course-view a.tile .act {font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;color:var(--ink-soft);text-align:left;}
.course-view a.tile h3 {margin:0;color:var(--ink);font:600 20px/1.4 var(--font-heading);letter-spacing:-.5px;}
.course-view a.tile p {max-width:820px;margin:0;font-size:16px;line-height:1.6;color:var(--ink-soft);}
.course-view a.tile .go {margin:0;font-size:14px;font-weight:600;color:var(--accent);}
.course-view a.tile:hover {transform:none;box-shadow:none;background:var(--surface-2);border-color:var(--line-soft);}
.course-view a.tile:hover h3 {text-decoration:underline;text-underline-offset:4px;}
.course-view a.tile:focus-visible {outline:3px solid var(--accent);outline-offset:3px;transform:none;box-shadow:none;}
.course-view .bookmark-button {top:18px;right:0;width:44px;height:44px;background:transparent;border:0;border-radius:6px;color:var(--accent);font-size:24px;}
.course-view .bookmark-button:hover {background:var(--accent-soft);transform:none;}
.course-view .bookmark-button[aria-pressed="true"] {background:var(--accent-soft);color:var(--accent);}
.course-view .no-results {background:var(--surface);color:var(--ink-soft);border-radius:6px;padding:24px;max-width:760px;margin:32px 0;}
@media(max-width:767px) {
  .course-view .filter-grid {grid-template-columns:1fr;gap:16px;}
  .course-view .filter-actions {width:100%;}
  .course-view .filter-footer {flex-direction:column;}
  .course-view .course-group>h2 {flex-wrap:wrap;}
  .course-view a.tile {padding:22px 52px 22px 0;}
  .course-view .bookmark-button {right:0;}
}
@media(prefers-reduced-motion:reduce) {
  .home a,.home button {transition:none;}
}
