/* Stable Customizer color ownership. PHP emits ONLY sanitized custom
 * properties, keeping all pre-existing color controls and cascade priorities.
 * Keep work availability colors after the general work-spec color rule.
 */

  .site-brand-text,
  .lf-preloader-text { color: var(--lf-wordmark-text-color, #000000) !important; }

  .site-nav,
  .site-nav a,
  .site-nav a:visited,
  .site-menu-toggle { color: var(--lf-navigation-text-color, #000000) !important; }

  .work-filters,
  .work-filters a,
  .work-filters a:visited { color: var(--lf-works-filter-color, #000000) !important; }

  .work-caption,
  .work-caption * {
  color: var(--lf-bp-works-list-title-color,
         var(--lf-bp-works-list-year-color,
         var(--lf-bp-works-list-details-color,
         var(--lf-works-caption-color, #000000)))) !important;
}

  .work-single .work-name { color: var(--lf-work-title-color, #000000) !important; }

  .work-single .work-specs,
  .work-single .work-navigation,
  .work-single .work-navigation a {
  color: var(--lf-bp-works-single-navigation-color, var(--lf-work-specs-color, #000000)) !important;
}

  .work-single .work-text,
  .work-single .work-text * { color: var(--lf-work-description-color, #000000) !important; }

  .journal-entry .post-title,
  .editorial-single .post-title,
  .exhibition-single .post-title,
  .post-single .post-title,
  .entry-title { color: var(--lf-bp-news-list-title-color, var(--lf-bp-news-single-title-color, var(--lf-post-title-color, #000000))) !important; }

  .journal-entry .journal-orientation-summary,
  .journal-entry .journal-orientation-summary .entry-learn-more,
  .journal-entry .editorial-text,
  .journal-entry .editorial-text *,
  .editorial-single .editorial-text,
  .editorial-single .editorial-text *,
  .exhibition-text,
  .exhibition-text *,
  .journal-entry .entry-content,
  .journal-entry .entry-content *,
  .post-single .post-content,
  .post-single .post-content *,
  .entry-date,
  .entry-kicker,
  .post-meta,
  .post-pagination,
  .journal-navigation,
  .featured-image-credit { color: var(--lf-bp-news-list-text-color, var(--lf-bp-news-single-text-color, var(--lf-news-body-text-color, #000000))) !important; }
  /* Journal list credit may be independently colored without touching single views. */
  .journal .journal-entry .featured-image-credit {
    color: var(--lf-bp-news-list-credits-color, var(--lf-news-body-text-color, #000000)) !important;
  }

  /* Component owner: Learn more hover and keyboard-focus styling.
   * Defaults preserve the original no-underline, black-text presentation. */
  .journal .journal-entry a.entry-learn-more {
    font-size: var(--lf-bp-news-list-more-font-size, inherit);
    font-weight: var(--lf-bp-news-list-more-font-weight, inherit);
    color: var(--lf-bp-news-list-more-color, var(--lf-news-body-text-color, #000000)) !important;
    letter-spacing: var(--lf-bp-news-list-more-letter-spacing, inherit);
    line-height: var(--lf-bp-news-list-more-line-height, inherit);
    text-transform: var(--lf-bp-news-list-more-text-transform, inherit);
    font-style: var(--lf-bp-news-list-more-font-style, inherit);
    /* A transparent underline exists before hover: its colour can now fade.
       Switching text-decoration itself from none to underline cannot animate. */
    text-decoration-line: var(--lf-bp-news-list-more-hover-decoration, none) !important;
    text-decoration-color: transparent !important;
    text-underline-offset: var(--lf-bp-news-list-more-hover-offset, auto);
    transition: color var(--lf-bp-news-list-more-hover-duration, 0ms) ease,
                opacity var(--lf-bp-news-list-more-hover-duration, 0ms) ease,
                text-decoration-color var(--lf-bp-news-list-more-hover-duration, 0ms) ease;
  }
  .journal .journal-entry a.entry-learn-more:hover,
  .journal .journal-entry a.entry-learn-more:focus-visible {
    color: var(--lf-bp-news-list-more-hover-color, var(--lf-news-body-text-color, #000000)) !important;
    text-decoration-color: currentColor !important;
    opacity: var(--lf-bp-news-list-more-hover-opacity, 1) !important;
  }

  .page-wrap .page-content,
  .page-wrap .page-content * { color: var(--lf-standard-page-body-color, #000000) !important; }

  .page-title,
  .archive-title,
  .page-wrap h1,
  .page-wrap h2,
  .page-wrap h3,
  .entry-content h2,
  .entry-content h3,
  .post-content h2,
  .post-content h3,
  .editorial-text h2,
  .editorial-text h3,
  .exhibition-text h2:not(.exhibition-subtitle),
  .exhibition-text h3,
  .work-single .work-text h2,
  .work-single .work-text h3 { color: var(--lf-general-heading-color, #000000) !important; }

  /* Subtitles belong separately to the journal list and the post single.
   * Both retain the original shared color until an individual value is saved. */
  .journal .journal-entry .entry-subtitle,
  .journal .journal-entry .lf-post-deck { color: var(--lf-bp-news-list-subtitle-color, var(--lf-news-subtitle-color, #000000)) !important; }

  .post-single .entry-subtitle,
  .post-single .post-content .lf-post-deck,
  .editorial-single .lf-post-deck,
  .exhibition-single:not(.journal-entry) .exhibition-text .exhibition-subtitle {
    color: var(--lf-bp-news-single-subtitle-color, var(--lf-news-subtitle-color, #000000)) !important;
  }

  .exhibition-events,
  .exhibition-events * {
    color: var(--lf-bp-news-single-data-headlines-color,
          var(--lf-bp-news-single-data-text-color,
          var(--lf-event-text-color, #000000))) !important;
  }

  .vita-page .vita-content,
  .vita-page .vita-content * { color: var(--lf-vita-body-color, #000000) !important; }

  .vita-page .lf-managed-section-heading,
  .vita-page .vita-section h2 { color: var(--lf-vita-heading-color, #000000) !important; }

  .info-page .info-intro,
  .info-page .info-intro *,
  .info-page .info-item,
  .info-page .info-item * { color: var(--lf-bp-info-data-text-color, var(--lf-info-body-color, #000000)) !important; }

  .info-page .lf-info-section-heading { color: var(--lf-info-heading-color, #000000) !important; }

  .site-footer,
  .site-footer a,
  .site-footer p,
  .site-footer label,
  .site-footer input,
  .site-footer button,
  .site-footer input::placeholder { color: var(--lf-footer-text-color, #000000) !important; }

  .site-footer .footer-column-title { color: var(--lf-footer-heading-color, #000000) !important; }

  .lf-lightbox-caption { color: var(--lf-lightbox-caption-color, #000000) !important; }

  .lf-lightbox button { color: var(--lf-lightbox-controls-color, #000000) !important; }

/* Component owner: status colors. CSS variables accept explicitly saved
 * Customizer values, with the original colors as their fallback. */
.work-single .work-specs .work-availability-sold,
.work-single .work-specs .work-availability-not-available {
  color: var(--lf-bp-works-single-sold-color, #c00000) !important;
}
.work-single .work-specs .work-availability-available {
  color: var(--lf-bp-works-single-available-color, #168238) !important;
}

/* Lightbox caption typography uses the same bounded option values as before. */
.lf-lightbox-caption {
  font-size: var(--lf-lightbox-caption-size, 10px);
  line-height: var(--lf-lightbox-caption-line-height, 1.3);
  letter-spacing: var(--lf-lightbox-caption-letter-spacing, 0em);
  font-weight: var(--lf-lightbox-caption-weight, 400);
}
