/**
 * Site-wide primary CTA brand color (#00568a).
 * Loaded after page CSS so filled buttons and prominent CTAs stay consistent.
 */
:root {
  --kse-cta: #00568a;
  --kse-brand-text: #00568a;
  --kse-cta-light: #0077b6;
  --kse-cta-hover: #004770;
  --kse-cta-soft-bg: #e8f4fa;
  --kse-cta-soft-border: #b8d4e8;
  --kse-cta-shadow: rgba(0, 86, 138, 0.28);
}

.site-body {
  --kse-brand: #00568a;
}

/* Primary filled buttons */
.kse-btn-primary,
.kse-btn-signup,
.kse-search > button,
.lw-btn-primary,
.lw-pf-tool-btn-primary,
.lw-widget-empty-cta,
.ma-btn-primary,
.wl-btn-primary,
.wl-fab,
.wl-add-fab,
.kse-signup-submit,
.kse-login-submit,
.lw-adv-chart-btn--primary,
.tv-chart-retry-btn,
.kse-screener-page .kse-save-screener-modal .lw-btn-primary,
.so-filter-chip.so-chip-active {
  background: var(--kse-cta);
  border-color: var(--kse-cta);
  color: #fff;
}

.kse-btn-primary,
.kse-btn-signup,
.kse-search > button,
.kse-signup-submit,
.kse-login-submit,
.kse-screener-page .kse-save-screener-modal .lw-btn-primary {
  background: linear-gradient(180deg, var(--kse-cta-light), var(--kse-cta));
}

.kse-btn-primary:hover,
.kse-btn-signup:hover,
.lw-btn-primary:hover:not(:disabled),
.lw-pf-tool-btn-primary:hover,
.lw-widget-empty-cta:hover,
.ma-btn-primary:hover,
.wl-btn-primary:hover:not(:disabled),
.wl-fab:hover,
.wl-add-fab:hover,
.kse-signup-submit:hover:not(:disabled),
.kse-signup-submit:focus-visible:not(:disabled),
.kse-login-submit:hover,
.kse-login-submit:focus,
.lw-adv-chart-btn--primary:hover,
.tv-chart-retry-btn:hover,
.kse-screener-page .kse-save-screener-modal .lw-btn-primary:hover:not(:disabled) {
  background: var(--kse-cta-hover);
  border-color: var(--kse-cta-hover);
  color: #fff;
}

.kse-signup-submit,
.kse-login-submit,
.kse-screener-page .kse-save-screener-modal .lw-btn-primary {
  box-shadow: 0 10px 24px var(--kse-cta-shadow);
}

/* Soft / outline CTAs */
.lw-index-detail-alert,
.kse-annc-chip-primary {
  border-color: var(--kse-cta-soft-border);
  background: var(--kse-cta-soft-bg);
  color: var(--kse-cta);
}

.lw-index-detail-alert:hover,
.lw-index-detail-alert:focus-visible,
.kse-annc-chip-primary:hover {
  border-color: var(--kse-cta);
  background: #dceef8;
  color: var(--kse-cta-hover);
}

.ma-type-pill.is-active {
  background: var(--kse-cta);
  border-color: var(--kse-cta);
  color: #fff;
}

.lw-tab.is-active,
.lw-pf-seg-tab.is-active {
  background: var(--kse-cta);
  border-color: var(--kse-cta);
  color: #fff;
}

.lw-index-nav-item.is-active {
  border-color: var(--kse-cta);
  box-shadow: inset 3px 0 0 var(--kse-cta), 0 2px 8px rgba(0, 86, 138, 0.12);
}

.wl-view-btn.is-active {
  background: var(--kse-cta);
  border-color: var(--kse-cta);
  color: #fff;
}

.lw-range.is-active,
.kse-tab-btn.is-active {
  color: var(--kse-cta);
}

.kse-tab-btn.is-active {
  background: var(--kse-cta);
  border-color: var(--kse-cta);
  color: #fff;
}

/* Brand text (#00568a) */
a:not(.kse-btn):not(.lw-btn-primary):not(.ma-btn-primary):not(.wl-btn-primary):not(.kse-signup-submit):not(.kse-login-submit):hover,
.lw-view-all,
.lw-view-all:hover,
.lw-side-link.is-active,
.lw-row-link,
.lw-watch-chip,
.lw-feed-body a,
.lw-pf-name-link,
.lw-alerts-quick-link,
.kse-footer a:hover,
.kse-breadcrumb a,
.kse-link,
.kse-eyebrow,
.kse-markets-panel-desc a,
.kse-news-read-more,
.kse-research-read-more,
.ma-subtitle a,
.ma-alert-link,
.wl-compact-sym,
.wl-card-sym,
.wl-open-quote,
.scrn-result-link,
.so-symbol-link,
.so-company-name a,
.kse-quote-page a.so-link,
.lw-index-detail-page .lw-tool-eyebrow,
.lw-index-detail-label,
.lw-index-detail-stat span,
.lw-index-detail-metric span,
.lw-index-detail-page .lw-index-card-title,
.lw-index-detail-page .lw-index-volume > span:first-child,
.lw-index-detail-page .lw-card-head h2 {
  color: var(--kse-brand-text);
}

/* Link-style CTAs */
.kse-nav a:hover,
.kse-login-forgot,
.kse-login-footnote a,
.ma-quick-card:hover .ma-quick-title {
  color: var(--kse-cta);
}

/* Site-wide link color (#00568a) — loaded last to override legacy blues */
.site-body a[class*="-link"]:not(.knp-card-link):not(.knp-sidebar-link):not(.lw-news-link):not(.lw-row-link):not(.lw-side-link):not(.lw-mobile-nav-link):not(.lw-index-nav-item),
.site-body a[class*="-back"],
.site-body a[class*="viewall"],
.site-body a[class*="view-all"],
.site-body .lhm-ov-viewall,
.site-body a.kse-more-link,
.site-body a.kse-symbol-link,
.site-body a.kse-read-link,
.site-body a.kse-link-more,
.site-body a.kse-view-all-indices,
.site-body a.knp-sidebar-all,
.site-body .kse-signup-link-btn,
.site-body a.so-link,
.site-body a.kse-annc-img-link,
.site-body .knp-card:hover .knp-card-title,
.site-body .kse-news-item a:hover,
.site-body .lw-news-link:hover .lw-news-title,
.site-body .lw-news-link:hover .lw-news-arrow,
.site-body .knp-sidebar-link:hover .knp-sidebar-link-title,
.site-body .knp-sidebar-link:focus-visible .knp-sidebar-link-title,
.site-body .krd-breadcrumb a:hover {
  color: var(--kse-brand-text);
}

.site-body a[class*="-back"]:hover,
.site-body a.knp-article-back:hover,
.site-body .lhm-ov-viewall:hover,
.site-body a.kse-link-more:hover,
.site-body a.kse-more-link:hover,
.site-body a.kse-read-link:hover,
.site-body .kse-signup-link-btn:hover,
.site-body a.kse-annc-img-link:hover {
  color: var(--kse-cta-hover);
}

.lhm-ov-viewall {
  color: var(--kse-brand-text) !important;
}

.lhm-ov-viewall:hover {
  color: var(--kse-cta-hover) !important;
}
