/* KASC Research: one brand blue, independent of viewport/device preference.
   Load LAST in the public, staff, partner and authentication base templates.
   No calculations, authentication, modal visibility or disabled state changes.
   Small text links keep accessible contrast; decorative brand blue is not text ink.
   Print styling and the other financial-series colours are left untouched. */
@media screen {
  :root {
    --kasc-brand-blue: #1E5EFF;
    --kasc-blue: var(--kasc-brand-blue);
    /* This site supplies its own dark palette, including form controls. */
    color-scheme: only dark;
  }

  .kasc-report {
    --chart-portfolio: var(--kasc-brand-blue);
    --chart-rolling-short: #1E5EFF;
    --chart-rolling-long: #F1C780;
  }

  /* Comparison JS sets the first series' colour as an SVG attribute. Keep
     its legend in sync without touching series data or the other colours. */
  .kc-chart svg path[stroke="#5594FF"],
  .kc-legend path[stroke="#5594FF"] {
    stroke: var(--kasc-brand-blue);
  }

  .kc-chart svg:focus {
    outline-color: var(--kasc-brand-blue);
  }

  input[data-comparison-cursor] {
    accent-color: var(--kasc-brand-blue);
  }

  .kasc-committee-chart,
  .kasc-slide li::marker {
    color: var(--kasc-brand-blue);
  }

  /* Editorial emphasis uses exactly the blue already present in the BrandKit.
     Do not apply opacity/filter to a container to mute its background. */
  .investment-public .ios-public-hero em,
  .partner-portal .pp-page-head h1 em,
  .hero-copy h1 em,
  .ios-hero h1 em,
  .ios-page-head h1 em {
    color: var(--kasc-brand-blue);
  }

  ::selection {
    color: #FFF8ED;
    background: var(--kasc-brand-blue);
  }

  .home-page .live-dot,
  .live-dot {
    background: var(--kasc-brand-blue);
  }

  /* Opaque navy behind the brand, not a light/glass layer over the image. */
  .site-header,
  .site-header.is-scrolled,
  .kasc-auth-header,
  .registration-header,
  .pp-topbar {
    background: #07131F;
    opacity: 1;
    filter: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  .site-header .brand,
  .kasc-auth-header .brand,
  .registration-header .brand,
  .pp-topbar .pp-brand {
    background: transparent;
    opacity: 1;
    filter: none;
    mix-blend-mode: normal;
    /* Suppress only the transient grey tap tint on logo links, not focus. */
    -webkit-tap-highlight-color: transparent;
  }

  .site-header .kasc-master-logo,
  .site-header .kasc-brand-header__mark,
  .kasc-auth-header .kasc-brand-header__mark,
  .registration-header .kasc-brand-header__mark,
  .pp-topbar .pp-brand img {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    opacity: 1;
    filter: none;
    mix-blend-mode: normal;
  }

  /* Authentication panels use the same solid surface on desktop and mobile.
     Only decorative pseudo-elements are removed. QR codes, validation errors,
     security dialogs, cookie consent and professional gates are not targeted. */
  .kasc-auth-card::before,
  .auth-card::before {
    content: none;
  }

  .kasc-registration-page .auth-card {
    background: #0B2033;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  .kasc-auth-header__inner,
  .registration-header__inner {
    gap: 1rem;
    min-width: 0;
  }

  /* Small copy must remain legible without introducing a pastel-blue variant.
     Off-white text + an electric-blue underline/edge, rather than low-contrast
     small blue lettering. Large headings, graphics and button fills stay blue. */
  .eyebrow,
  .pp-eyebrow,
  .pp-panel--hero .pp-eyebrow,
  .ios-evidence,
  .ios-proof span,
  .kasc-report-principles b,
  .kasc-chart-inspector__values div:nth-child(1) dd {
    color: #FFF8ED;
  }

  .text-link,
  .kasc-auth-meta .text-link,
  .auth-links a,
  .ios-public-card__link,
  .ios-panel__head > a,
  .kasc-metric-definition summary,
  .kasc-inspect-observation {
    color: #FFF8ED;
    text-decoration-line: underline;
    text-decoration-color: var(--kasc-brand-blue);
    text-decoration-thickness: 2px;
    text-underline-offset: .22em;
  }

  .kasc-slide-index,
  .market-import-table th,
  .staff-source,
  .staff-table code,
  .staff-event code,
  .staff-ranking code {
    color: #FFF8ED;
  }

  .staff-card-head a {
    color: #FFF8ED;
    text-decoration: underline var(--kasc-brand-blue) 2px;
    text-underline-offset: .22em;
  }

  .kasc-auth-secret code,
  .kasc-backup-tokens code {
    color: #FFF8ED;
    border-color: var(--kasc-brand-blue);
  }

  .partner-portal .pp-pill--blue {
    color: #FFF8ED;
    border-color: var(--kasc-brand-blue);
  }

  .kasc-language-switcher button:focus-visible,
  .pp-account .kasc-language-switcher button:focus-visible {
    outline-color: var(--kasc-brand-blue);
  }
}
