/**
 * Mobile P0 — global header only (<480px). Desktop unchanged.
 */
@media (max-width: 479px) {
  .zs-header-p0 .zs-header-bar {
    overflow-x: hidden;
  }

  .zs-header-p0 .zs-header-inner {
    padding-left: 8px;
    padding-right: 8px;
    gap: 4px;
    overflow-x: hidden;
    max-width: 100vw;
  }

  .zs-header-p0 .zs-header-left {
    gap: 6px;
    min-width: 0;
    flex: 0 0 auto;
    overflow: visible;
  }

  .zs-header-p0 .zs-header-right {
    gap: 6px;
    flex: 1 1 auto;
    justify-content: flex-end;
    min-width: 0;
    overflow: hidden;
  }

  .zs-header-p0 .zs-header-logo {
    flex-shrink: 0;
  }

  .zs-header-p0 .zs-simple-header {
    padding-inline-start: 0;
    gap: 4px;
    max-width: 100%;
    min-width: 0;
  }

  .zs-header-p0 .zs-login-text-link {
    display: none !important;
  }

  .zs-header-p0 .zs-login-icon-link {
    display: inline-flex !important;
  }

  .zs-header-p0 .zs-start-cta {
    min-height: 40px;
    height: 40px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 11px;
  }

  /* Icon controls: theme, language, search, menu */
  .zs-header-p0 .zs-header-touch,
  .zs-header-p0 button.h-8.w-8,
  .zs-header-p0 a.h-8.w-8 {
    min-height: 40px;
    min-width: 40px;
    height: 40px;
    width: 40px;
  }
}

/* Desktop: keep login text, hide icon-only link */
@media (min-width: 480px) {
  .zs-header-p0 .zs-login-icon-link {
    display: none !important;
  }
}

/**
 * ZeroSpread global main header — approved light TradingView-quality presentation.
 * Layout / type / light chrome for SiteHeader (.zs-header-p0).
 *
 * Header BACKGROUND follows actual page theme via site-header-theme.css.
 * Do not force a white bar on dark pages from this file.
 */

:root {
  --zs-header-height: 72px;
}

@media (max-width: 479px) {
  :root {
    --zs-header-height: 60px;
  }
}

/* ── Header shell ── */
.zs-header-p0 {
  /* Production zerospread.net desktop header tokens */
  --zs-header-nav-font-family: var(--zs-font-institutional, "Tajawal", sans-serif);
  --zs-header-nav-font-size: var(--zs-t-nav, 14px);
  --zs-header-nav-font-weight: 500;
  --zs-header-nav-line-height: 1.3;
  --zs-header-nav-letter-spacing: 0;
  --zs-hdr-h: 72px;
  --zs-hdr-pad-inline: clamp(24px, 2.3vw, 40px);
  --zs-hdr-zone-gap: clamp(16px, 2vw, 40px);
  --zs-hdr-nav-gap: clamp(14px, 1.35vw, 22px);
  --zs-hdr-control: 40px;
  --zs-hdr-icon: 20px;
  --zs-hdr-search-w: clamp(160px, 13vw, 220px);
  --zs-hdr-search-h: 38px;
  --zs-hdr-logo-w: 152px;
  --zs-hdr-logo-h: 40px;
  --zs-hdr-ink: #141715;
  --zs-hdr-ink-2: #2b302d;
  --zs-hdr-muted: #5f6561;
  --zs-hdr-line: transparent;
  --zs-hdr-control-bg: rgba(20, 23, 21, 0.055);
  --zs-hdr-control-line: transparent;
  --zs-hdr-hover: rgba(20, 23, 21, 0.05);
  --zs-hdr-active: #141715;
  --zs-hdr-focus: 0 0 0 2px #f8f8f6, 0 0 0 4px #141715;
  --zs-hdr-pop-ring: 0 0 0 1px rgba(17, 21, 18, 0.06);
  --zs-pop-offset: 8px;
  --zs-r-control: 10px;
  --zs-r-pill: 999px;
  --zs-dur-d-fast: 0.12s;
  --zs-dur-d: 0.18s;
  --zs-ease-d: cubic-bezier(0.2, 0, 0, 1);
  --zs-z-d-header-layer: 2;
}

.zs-header-p0 .zs-site-header {
  /* Paint (bg/color) is owned by site-header-theme.css + guest-hero overlay. */
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  outline: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Explicit physical zones — production zerospread.net:
   | CTA+ACCOUNT | 1fr | NAV | SEARCH | 1fr | WORDMARK | */
.zs-header-p0 .zs-light-pilot-inner {
  position: relative;
  display: grid;
  direction: ltr;
  grid-template-columns: auto minmax(var(--zs-hdr-zone-gap), 1fr) auto minmax(var(--zs-hdr-zone-gap), 1fr) auto;
  grid-template-areas: "actions . middle . brand";
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  height: var(--zs-hdr-h);
  padding-inline: var(--zs-hdr-pad-inline);
  column-gap: 0;
}

.zs-header-p0 .zs-light-pilot-actions {
  grid-area: actions;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  overflow: visible;
  z-index: 3;
}

.zs-header-p0 .zs-light-pilot-middle-group {
  grid-area: middle;
  display: none;
  align-items: center;
  gap: var(--zs-hdr-zone-gap);
  height: 100%;
  min-width: 0;
  z-index: 2;
}

@media (min-width: 1280px) {
  .zs-header-p0 .zs-light-pilot-middle-group {
    display: flex;
  }
}

.zs-header-p0 .zs-light-pilot-nav {
  position: static;
  display: flex;
  height: 100%;
  min-width: 0;
  overflow: visible;
}

.zs-header-p0 .zs-light-pilot-search-desktop {
  position: static;
  margin: 0;
  transform: none;
  z-index: 2;
}

.zs-header-p0 .zs-light-pilot-brand {
  grid-area: brand;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  z-index: 3;
}

.zs-header-p0 .zs-light-pilot-actions-bar {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  overflow: visible;
}

.zs-header-p0 .zs-light-pilot-account-cluster {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-shrink: 0;
  overflow: visible;
}

.zs-header-p0 .zs-light-pilot-user-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: var(--zs-hdr-control);
  height: var(--zs-hdr-control);
  flex-shrink: 0;
  line-height: 0;
}

/* ── Wordmark ── */
.zs-header-p0 .zs-light-pilot-wordmark,
.zs-header-p0 .zs-light-pilot-wordmark:hover,
.zs-header-p0 .zs-light-pilot-wordmark:focus {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
  width: var(--zs-hdr-logo-w);
  height: var(--zs-hdr-logo-h);
  color: var(--zs-hdr-ink);
  font-family: var(--zs-font-institutional, "Tajawal", sans-serif);
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
  overflow: visible;
  border-radius: var(--zs-r-control);
}

html:not(.light) .zs-header-p0 .zs-light-pilot-wordmark {
  color: var(--zs-page-fg, #f5f7fa);
}

html:not(.light) .zs-header-p0 .zs-light-pilot-wordmark:hover,
html:not(.light) .zs-header-p0 .zs-light-pilot-wordmark:focus {
  color: var(--zs-page-fg, #f5f7fa);
}

.zs-header-p0 .zs-laser-reveal {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
  color: currentColor;
}

.zs-header-p0 .zs-laser-reveal-art {
  display: block;
  width: 100%;
  height: 100%;
}

.zs-header-p0 .zs-laser-reveal-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.zs-header-p0 .zs-light-pilot-wordmark:focus-visible {
  outline: none;
  box-shadow: var(--zs-hdr-focus);
}

/* ── Nav cluster ── */
.zs-header-p0 .zs-mega-nav-row {
  justify-content: flex-start;
  height: 100%;
  flex-shrink: 0;
  gap: var(--zs-hdr-nav-gap) !important;
}

.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] {
  height: var(--zs-hdr-h);
}

/* Shared nav typography token (type only — surface triggers, not mega-menu panels) */
.zs-header-p0 .zs-header-nav-type,
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a,
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button {
  font-family: var(--zs-header-nav-font-family);
  font-size: var(--zs-header-nav-font-size);
  font-weight: var(--zs-header-nav-font-weight);
  font-synthesis: none;
  line-height: var(--zs-header-nav-line-height);
  letter-spacing: var(--zs-header-nav-letter-spacing);
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}

.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a,
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button {
  position: relative;
  gap: 5px;
  height: 100%;
  padding-inline: 0;
  color: var(--zs-hdr-ink-2);
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  transition: color var(--zs-dur-d-fast) var(--zs-ease-d);
}

.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a:hover,
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button:hover,
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button[aria-expanded="true"] {
  color: var(--zs-hdr-ink);
  background: transparent;
}

.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"],
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger][data-zs-current] > button {
  color: var(--zs-hdr-ink);
}

.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"]::after,
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger][data-zs-current] > button::after {
  content: "";
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: var(--zs-hdr-active);
}

/* Trigger chevrons only — never panel icons */
.zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button > svg {
  width: 10px;
  height: 10px;
  color: var(--zs-hdr-muted);
  stroke-width: 1.6;
  transition: transform var(--zs-dur-d) var(--zs-ease-d);
}

/* ── Search pill — compact (TradingView match) ── */
.zs-header-p0 .zs-light-pilot-search {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  direction: rtl;
  box-sizing: border-box;
  width: var(--zs-hdr-search-w);
  height: var(--zs-hdr-search-h);
  padding-inline: 14px;
  border: 1px solid var(--zs-hdr-control-line);
  border-radius: var(--zs-r-pill);
  background: var(--zs-hdr-control-bg);
  color: var(--zs-hdr-muted);
  box-shadow: none;
  outline: none;
  cursor: pointer;
  transition: background-color var(--zs-dur-d-fast) var(--zs-ease-d);
}

.zs-header-p0 .zs-light-pilot-search:hover,
.zs-header-p0 .zs-light-pilot-search[aria-expanded="true"] {
  background: color-mix(in srgb, var(--zs-hdr-control-bg) 88%, var(--zs-hdr-ink));
  color: var(--zs-hdr-ink);
}

.zs-header-p0 .zs-light-pilot-search:focus-visible {
  box-shadow: var(--zs-hdr-focus);
}

.zs-header-p0 .zs-light-pilot-search-label {
  font-family: var(--zs-font-institutional, "Tajawal", sans-serif);
  font-size: 12.5px;
  font-weight: 400;
  font-synthesis: none;
  color: inherit;
  line-height: 1;
  white-space: nowrap;
}

.zs-header-p0 .zs-light-pilot-search-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: inherit;
  stroke-width: 1.6;
}

/* ── Auth / utility controls on light header ── */
.zs-header-p0 .zs-light-pilot-login-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding-inline: 10px;
  border: none;
  border-radius: var(--zs-r-control);
  background: transparent;
  color: var(--zs-hdr-ink);
  font-family: var(--zs-font-institutional, "Tajawal", sans-serif);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
}

.zs-header-p0 .zs-light-pilot-login-link:hover {
  background: #f4f4f4;
  color: #111111;
  text-decoration: none;
}

.zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch,
.zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8 {
  color: #111111;
  border-color: #e6e6e6;
}

.zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch:hover,
.zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8:hover {
  background: #f4f4f4;
}

/* ── CTA — ticket (visual replacement only; same /school/pricing link) ── */
.zs-header-p0 .zs-light-pilot-cta {
  --zs-ticket-w: 158px;
  --zs-ticket-h: 40px;
  --zs-ticket-split: 116px;
  --zs-ticket-stub: 42px;
  --zs-ticket-notch: 6.5px;
  --zs-ticket-radius: 10px;
  --zs-ticket-offset: 4px;
  position: relative;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  box-sizing: border-box;
  width: var(--zs-ticket-w);
  height: var(--zs-ticket-h);
  padding: 0;
  border: none;
  color: #111111;
  text-decoration: none;
  overflow: visible;
  direction: ltr;
  unicode-bidi: isolate;
  align-self: center;
  /* Hard #A3FF12 — do not use --zs-green-primary (html.light remaps it to slate). */
  background: #A3FF12;
  border-radius: var(--zs-ticket-radius);
  margin-inline-end: var(--zs-ticket-offset);
  transform: translateY(0);
  transition: transform 140ms ease;
}

/* Brand green backing — offset down/right; full height so notches reveal green */
.zs-header-p0 .zs-light-pilot-cta::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: calc(var(--zs-ticket-offset) * -1);
  bottom: calc(var(--zs-ticket-offset) * -1);
  left: var(--zs-ticket-offset);
  border-radius: var(--zs-ticket-radius);
  background: #A3FF12;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
  pointer-events: none;
  transition:
    top 140ms ease,
    right 140ms ease,
    bottom 140ms ease,
    left 140ms ease,
    box-shadow 140ms ease;
}

.zs-header-p0 .zs-light-pilot-cta-face {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--zs-ticket-stub);
  box-sizing: border-box;
  width: var(--zs-ticket-w);
  height: var(--zs-ticket-h);
  overflow: visible;
  border: 1px solid #151515;
  border-radius: var(--zs-ticket-radius);
  background: #ffffff;
  /* Genuine ticket cutouts: punch top/bottom holes at the divider */
  -webkit-mask-image:
    radial-gradient(
      circle var(--zs-ticket-notch) at var(--zs-ticket-split) 0px,
      transparent var(--zs-ticket-notch),
      #000 calc(var(--zs-ticket-notch) + 0.5px)
    ),
    radial-gradient(
      circle var(--zs-ticket-notch) at var(--zs-ticket-split) 100%,
      transparent var(--zs-ticket-notch),
      #000 calc(var(--zs-ticket-notch) + 0.5px)
    );
  -webkit-mask-size: 100% 51%, 100% 51%;
  -webkit-mask-position: 0 0, 0 100%;
  -webkit-mask-repeat: no-repeat;
  mask-image:
    radial-gradient(
      circle var(--zs-ticket-notch) at var(--zs-ticket-split) 0px,
      transparent var(--zs-ticket-notch),
      #000 calc(var(--zs-ticket-notch) + 0.5px)
    ),
    radial-gradient(
      circle var(--zs-ticket-notch) at var(--zs-ticket-split) 100%,
      transparent var(--zs-ticket-notch),
      #000 calc(var(--zs-ticket-notch) + 0.5px)
    );
  mask-size: 100% 51%, 100% 51%;
  mask-position: 0 0, 0 100%;
  mask-repeat: no-repeat;
}

.zs-header-p0 .zs-light-pilot-cta-face::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--zs-ticket-split);
  width: 1px;
  background: #151515;
  transform: translateX(-50%);
  pointer-events: none;
}

.zs-header-p0 .zs-light-pilot-cta-label {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding-inline: 8px;
  color: #111111;
  /* Light ticket keeps its own size/weight; Guest overlay overrides via nav tokens */
  font-family: var(--zs-font-institutional, "Tajawal", sans-serif);
  font-size: 14px;
  font-weight: 700;
  font-synthesis: none;
  line-height: 1;
  white-space: nowrap;
}

.zs-header-p0 .zs-light-pilot-cta-stub {
  display: flex;
  align-items: center;
  justify-content: center;
}

.zs-header-p0 .zs-light-pilot-cta-sparkle {
  display: block;
  width: 19px;
  height: 19px;
  color: #111111;
  fill: currentColor;
  stroke: currentColor;
}

@keyframes zs-upgrade-spark-idle {
  0%,
  8%,
  100% {
    transform: rotate(0deg) scale(1);
  }

  3% {
    transform: rotate(8deg) scale(1.12);
  }

  5.5% {
    transform: rotate(-2deg) scale(0.98);
  }
}

.zs-header-p0 .zs-upgrade-spark {
  display: inline-block;
  transform-origin: 50% 50%;
  animation: zs-upgrade-spark-idle 10s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.zs-header-p0 .zs-light-pilot-cta:hover {
  color: #111111;
  text-decoration: none;
  transform: translateY(-1px);
}

.zs-header-p0 .zs-light-pilot-cta:hover::before {
  top: 0;
  right: -5px;
  bottom: -5px;
  left: 5px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.14);
}

.zs-header-p0 .zs-light-pilot-cta:active {
  transform: translateY(0);
}

.zs-header-p0 .zs-light-pilot-cta:active::before {
  top: 0;
  right: -3px;
  bottom: -3px;
  left: 3px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.zs-header-p0 .zs-light-pilot-cta:focus {
  outline: none;
}

.zs-header-p0 .zs-light-pilot-cta:focus-visible {
  outline: 2px solid #151515;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .zs-header-p0 .zs-light-pilot-cta,
  .zs-header-p0 .zs-light-pilot-cta::before {
    transition: none;
  }

  .zs-header-p0 .zs-light-pilot-cta:hover,
  .zs-header-p0 .zs-light-pilot-cta:active {
    transform: none;
  }

  .zs-header-p0 .zs-upgrade-spark {
    animation: none;
  }
}

/* ── Account avatar ── */
.zs-header-p0 .zs-light-pilot-user-trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  outline: none;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  line-height: 0;
}

.zs-header-p0 .zs-light-pilot-user-trigger:hover {
  background: #f4f4f4;
}

.zs-header-p0 .zs-light-pilot-user-trigger:focus {
  outline: none;
  box-shadow: none;
}

.zs-header-p0 .zs-light-pilot-user-trigger:focus-visible {
  outline: 2px solid rgba(41, 98, 255, 0.35);
  outline-offset: 1px;
}

.zs-header-p0 .zs-light-pilot-avatar,
.zs-header-p0 .zs-light-pilot-avatar-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  overflow: hidden;
  border: none;
  border-radius: 50%;
  background: #6f7c82;
  color: #ffffff;
  font-family: var(--zs-font-institutional, "IBM Plex Sans Arabic", sans-serif);
  font-size: 16px;
  font-weight: 500;
  font-synthesis: none;
  line-height: 1;
  box-shadow: none;
}

.zs-header-p0 .zs-light-pilot-avatar-fallback {
  opacity: 0.72;
}

.zs-header-p0 .zs-light-pilot-user-trigger:hover .zs-light-pilot-avatar:not(:has(img)) {
  background: #657178;
}

/* Account panel — production zerospread.net physical left + header offset */
@media (min-width: 1024px) {
  .zs-header-p0 .zs-account-menu-anchor {
    position: fixed;
    top: var(--zs-header-height, 72px);
    left: 4px;
    right: auto;
    bottom: auto;
    margin: 0;
    z-index: var(--zs-z-d-header-layer);
  }

  .zs-header-p0[dir="ltr"] .zs-account-menu-anchor,
  html[dir="ltr"] .zs-header-p0 .zs-account-menu-anchor {
    left: 4px;
  }

  .zs-header-p0 .zs-account-menu-anchor > aside[role="menu"] {
    margin: 0;
  }
}

/* Mobile trigger */
.zs-header-p0 .zs-header-touch {
  border-color: #e6e6e6;
  color: #111111;
  background: transparent;
}

.zs-header-p0 .zs-header-touch:hover {
  background: #f4f4f4;
}

.zs-header-p0 [role="dialog"].fixed.inset-x-0 {
  top: var(--zs-header-height, 72px);
}

/* ── Light dropdown panels (TradingView narrow desktop + legacy mobile cards) ── */
.zs-header-p0 .tv-nav-panel,
.zs-header-p0 .tv-nav-flyout {
  background: #ffffff !important;
  border: 1px solid rgba(17, 21, 18, 0.1) !important;
  border-radius: 12px !important;
  box-shadow:
    0 16px 40px -12px rgba(15, 18, 16, 0.22),
    0 2px 6px rgba(15, 18, 16, 0.06),
    0 0 0 1px rgba(17, 21, 18, 0.06) !important;
}

/*
 * Mega menu independent color context.
 * Header chrome (incl. hero-overlay white ink) must never inherit into white panels.
 */
.zs-header-p0 .mega-menu,
.zs-header-p0 [data-zs-nav-panel],
.zs-header-p0 .tv-nav-panel,
.zs-header-p0 .tv-nav-flyout {
  color: #111512 !important;
}

.zs-header-p0 .mega-menu a,
.zs-header-p0 .mega-menu button,
.zs-header-p0 [data-zs-nav-panel] a,
.zs-header-p0 [data-zs-nav-panel] button,
.zs-header-p0 .tv-nav-row,
.zs-header-p0 .tv-nav-flyout-row,
.zs-header-p0 .tv-nav-featured {
  color: #111512 !important;
}

.zs-header-p0 .tv-nav-row-label,
.zs-header-p0 .tv-nav-featured-title {
  color: #111512 !important;
}

.zs-header-p0 .tv-nav-section-label,
.zs-header-p0 .tv-nav-featured-desc,
.zs-header-p0 .tv-nav-row-desc {
  color: #646b67 !important;
}

.zs-header-p0 .tv-nav-bridge svg.tv-nav-solid-icon {
  color: #111512 !important;
  fill: currentColor !important;
  stroke: none !important;
}

/* Featured SVG size — explicit px beats react-icons 1em */
.zs-header-p0 .tv-nav-featured-icon svg,
.zs-header-p0 .mega-menu .tv-nav-featured-icon svg {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
}

/* Products solid icons — restore filled mass (TradingView-weight) */
.zs-header-p0 .tv-nav-panel--products .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--products .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--products .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--products .tv-nav-featured-icon svg.tv-nav-solid-icon {
  fill: currentColor !important;
  stroke: none !important;
  color: #111512 !important;
  opacity: 1 !important;
}

/* School / University / News / Trading / More — same solid fill override as Products */
.zs-header-p0 .tv-nav-panel--school .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--school .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--university .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--university .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--news .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--news .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--trading .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--trading .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--more .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--more .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--school .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--school .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--university .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--university .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--news .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--news .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--trading .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--trading .tv-nav-featured-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--more .tv-nav-row-icon svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--more .tv-nav-featured-icon svg.tv-nav-solid-icon {
  fill: currentColor !important;
  stroke: none !important;
  color: #111512 !important;
  opacity: 1 !important;
}

.zs-header-p0 .tv-nav-chevron,
.zs-header-p0 .mega-menu .tv-nav-chevron,
.zs-header-p0 .mega-menu .tv-nav-panel svg.tv-nav-chevron {
  width: 12px !important;
  height: 12px !important;
  color: #a3ff12 !important;
  stroke: #a3ff12 !important;
  opacity: 1 !important;
}

.zs-header-p0 .mega-menu-panel {
  background: #ffffff !important;
  border: 1px solid #eeeeee !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
}

.zs-header-p0 .mega-menu-link-card {
  background: #ffffff !important;
  border: 1px solid #f0f0f0 !important;
  box-shadow: none !important;
}

.zs-header-p0 .mega-menu-link-card:hover {
  background: #fafafa !important;
  border-color: #e8e8e8 !important;
}

.zs-header-p0 .mega-menu-link-card--trading {
  background: #ffffff !important;
  border: 1px solid #f0f0f0 !important;
  filter: none !important;
}

.zs-header-p0 .mega-menu-link-card--trading:hover {
  background: #fafafa !important;
  border-color: #e8e8e8 !important;
  filter: none !important;
}

.zs-header-p0 .mega-menu-link-card span.font-semibold {
  color: #111111 !important;
  font-family: var(--zs-font-institutional);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.zs-header-p0 .mega-menu-link-card span.font-medium {
  color: #6b7280 !important;
  font-family: var(--zs-font-institutional);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
}

.zs-header-p0 .mega-menu-icon-ring {
  background: #f4f4f4 !important;
  border: 1px solid #ececec !important;
  color: #374151 !important;
}

.zs-header-p0 .mega-menu-link-card:hover .mega-menu-icon-ring {
  background: #ececec !important;
  border-color: #e0e0e0 !important;
}

.zs-header-p0 .mega-menu-link-card--trading .mega-menu-icon-ring {
  background: #f4f4f4 !important;
  border: 1px solid #ececec !important;
  color: #374151 !important;
}

.zs-header-p0 .mega-menu-panel h3 {
  color: #6b7280 !important;
  font-family: var(--zs-font-institutional);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Production tablet compact chrome — do not rewrite Mobile V2 */
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .zs-header-p0 {
    --zs-header-nav-font-size: 13.5px;
    --zs-hdr-logo-w: 136px;
    --zs-hdr-logo-h: 36px;
  }

  .zs-header-p0 .zs-light-pilot-account-cluster {
    gap: 10px;
  }

  .zs-header-p0 .zs-light-pilot-search {
    width: var(--zs-hdr-search-h);
    padding-inline: 0;
    justify-content: center;
  }

  .zs-header-p0 .zs-light-pilot-search-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
  }

  .zs-header-p0 .zs-light-pilot-cta {
    --zs-ticket-w: var(--zs-ticket-stub);
  }

  .zs-header-p0 .zs-light-pilot-cta-face {
    grid-template-columns: var(--zs-ticket-stub);
    mask-image: none;
  }

  .zs-header-p0 .zs-light-pilot-cta-face::after {
    display: none;
  }

  .zs-header-p0 .zs-light-pilot-cta-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
  }
}

@media (max-width: 1023.98px) {
  .zs-header-p0 .zs-light-pilot-inner {
    display: flex;
    direction: rtl;
    justify-content: space-between;
    padding-inline: 16px;
  }

  .zs-header-p0 .zs-light-pilot-nav {
    display: none;
  }

  .zs-header-p0 .zs-light-pilot-wordmark {
    width: 146px;
    height: 38px;
    font-size: 22px;
  }

  .zs-header-p0 .zs-light-pilot-search-slot .zs-light-pilot-search {
    width: 38px;
    height: 38px;
    padding-inline: 0;
    justify-content: center;
  }

  .zs-header-p0 .zs-light-pilot-search-slot .zs-light-pilot-search-label {
    display: none;
  }
}

@media (max-width: 479px) {
  .zs-header-p0 .zs-light-pilot-inner {
    height: 60px !important;
    padding-inline: 8px;
  }

  .zs-header-p0 .zs-light-pilot-wordmark {
    width: 132px;
    height: 34px;
    font-size: 18px;
  }

  .zs-header-p0 .zs-light-pilot-cta {
    display: none;
  }

  .zs-header-p0 .zs-light-pilot-login-link.zs-login-text-link {
    display: none !important;
  }

  .zs-header-p0 .zs-light-pilot-login-link.zs-login-icon-link {
    display: inline-flex !important;
  }
}

@media (min-width: 480px) {
  .zs-header-p0 .zs-light-pilot-login-link.zs-login-icon-link {
    display: none !important;
  }
}

/**
 * ZeroSpread global header theme — follows actual page/header appearance.
 *
 * Light chrome lives in site-header-light.css (gated to light).
 * This file is the dark chrome + the light/dark paint switch.
 *
 * Do not use route lists. Paint from:
 *   html.light / html:not(.light)
 *   html[data-zs-header-theme]
 *   html[data-zs-page-appearance]
 *   html[data-zs-school-lesson][data-school-theme]  (School lesson overlay)
 *
 * Transparent hero-overlay is owned by site-header-guest-hero.css.
 */

/* ── Dark header shell (default site appearance is dark) ── */
html:not(.light):not([data-zs-header-variant="hero-overlay"]):not(
    :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
  )
  .zs-header-p0
  .zs-site-header,
html[data-zs-header-theme="dark"]:not([data-zs-header-variant="hero-overlay"]):not(
    :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
  )
  .zs-header-p0
  .zs-site-header,
html[data-zs-page-appearance="dark"]:not([data-zs-header-variant="hero-overlay"]):not(
    :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
  )
  .zs-header-p0
  .zs-site-header {
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  color: #f4f5f3 !important;
  border: none !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  box-shadow: none !important;
  outline: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Sticky / scrolled / fixed — never revert to white on dark */
html:not(.light) .zs-header-p0 .zs-site-header.scrolled,
html:not(.light) .zs-header-p0 .zs-site-header.is-stuck,
html:not(.light) .zs-header-p0 .zs-site-header.is-sticky,
html:not(.light) .zs-header-p0 .zs-site-header[data-scrolled="true"],
html:not(.light) .zs-header-p0 .zs-site-header.fixed,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-site-header.scrolled,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-site-header.is-stuck,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-site-header.is-sticky,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-site-header[data-scrolled="true"],
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-site-header.fixed,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-site-header.scrolled,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-site-header.is-stuck,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-site-header.is-sticky,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-site-header[data-scrolled="true"],
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-site-header.fixed {
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
}

/* After guest-hero overlay — restore DARK solid chrome (not white) */
html:not(.light)[data-zs-guest-hero-past="1"] .zs-header-p0 .zs-site-header,
html[data-zs-header-theme="dark"][data-zs-guest-hero-past="1"] .zs-header-p0 .zs-site-header {
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  color: #f4f5f3 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  z-index: 50 !important;
}

/* ── Light header shell (approved light chrome — do not restyle) ──
 * Guest homepage hero overlay must stay transparent. These :not() gates
 * keep the white shell from beating site-header-guest-hero.css at Y=0.
 */
html.light:not([data-zs-header-theme="dark"]):not([data-zs-page-appearance="dark"]):not(
    [data-zs-school-lesson="1"][data-school-theme="dark"]
  ):not(:has([data-zs-about-page])):not(:has([data-zs-contact-page])):not(:has(main [data-zs-page-appearance="dark"])):not([data-zs-header-variant="hero-overlay"]):not(
    :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
  )
  .zs-header-p0
  .zs-site-header,
html[data-zs-header-theme="light"]:not(:has([data-zs-about-page])):not(:has([data-zs-contact-page])):not(:has(main [data-zs-page-appearance="dark"])):not([data-zs-header-variant="hero-overlay"]):not(
    :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
  )
  .zs-header-p0
  .zs-site-header {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #171717 !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}

/* ── Dark wordmark / logo ── */
html:not(.light) .zs-header-p0 .zs-light-pilot-wordmark,
html:not(.light) .zs-header-p0 .zs-light-pilot-wordmark:hover,
html:not(.light) .zs-header-p0 .zs-light-pilot-wordmark:focus,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-wordmark,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-wordmark:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-wordmark:focus,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-wordmark,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-wordmark:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-wordmark:focus {
  color: #f4f5f3 !important;
}

html:not(.light) .zs-header-p0 .zs-laser-reveal,
html:not(.light) .zs-header-p0 .zs-laser-reveal svg,
html:not(.light) .zs-header-p0 .zs-laser-reveal text,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-laser-reveal,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-laser-reveal svg,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-laser-reveal text,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-laser-reveal,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-laser-reveal svg,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-laser-reveal text {
  color: #f4f5f3 !important;
  fill: currentColor !important;
}

/* ── Dark navigation ── */
html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a,
html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button {
  color: rgba(244, 245, 243, 0.88) !important;
}

html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a:hover,
html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button:hover {
  color: #f4f5f3 !important;
}

html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"],
html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"]:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"],
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"]:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"],
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"]:hover {
  color: #a3ff12 !important;
}

html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button > svg,
html:not(.light) .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a > svg,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button > svg,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a > svg,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button > svg,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a > svg {
  color: rgba(244, 245, 243, 0.46);
}

/* ── Dark search ── */
html:not(.light) .zs-header-p0 .zs-light-pilot-search,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-search,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-search {
  background: #101318;
  color: rgba(244, 245, 243, 0.68);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

html:not(.light) .zs-header-p0 .zs-light-pilot-search:hover,
html:not(.light) .zs-header-p0 .zs-light-pilot-search:focus,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-search:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-search:focus,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-search:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-search:focus {
  background: #14181e;
  color: #f4f5f3;
}

html:not(.light) .zs-header-p0 .zs-light-pilot-search-label,
html:not(.light) .zs-header-p0 .zs-light-pilot-search-icon,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-search-label,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-search-icon,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-search-label,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-search-icon {
  color: rgba(244, 245, 243, 0.68) !important;
}

/* ── Dark auth / icons ── */
html:not(.light) .zs-header-p0 .zs-light-pilot-login-link,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-login-link,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-login-link {
  color: #f4f5f3 !important;
}

html:not(.light) .zs-header-p0 .zs-light-pilot-login-link:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-login-link:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-login-link:hover {
  background: #101318;
  color: #f4f5f3;
}

html:not(.light) .zs-header-p0 .zs-header-touch,
html:not(.light) .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch,
html:not(.light) .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8,
html:not(.light) .zs-header-p0 .zs-light-pilot-user-trigger,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-header-touch,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-user-trigger,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-header-touch,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-user-trigger {
  color: #f4f5f3;
  border-color: rgba(255, 255, 255, 0.1);
  background: transparent;
}

html:not(.light) .zs-header-p0 .zs-header-touch:hover,
html:not(.light) .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch:hover,
html:not(.light) .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8:hover,
html:not(.light) .zs-header-p0 .zs-light-pilot-user-trigger:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-header-touch:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8:hover,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-user-trigger:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-header-touch:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8:hover,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-user-trigger:hover {
  background: #101318;
  color: #f4f5f3;
}

html:not(.light) .zs-header-p0 .zs-light-pilot-user-trigger svg,
html:not(.light) .zs-header-p0 .zs-light-pilot-actions-bar svg,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-user-trigger svg,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar svg,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-user-trigger svg,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-actions-bar svg {
  color: #f4f5f3;
}

/* Upgrade ticket stays the existing control — keep label readable on dark chrome */
html:not(.light) .zs-header-p0 .zs-light-pilot-cta-label,
html:not(.light) .zs-header-p0 .zs-light-pilot-cta-sparkle,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-cta-label,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-light-pilot-cta-sparkle,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-cta-label,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-light-pilot-cta-sparkle {
  color: #111111 !important;
}

html:not(.light) .zs-header-p0,
html[data-zs-header-theme="dark"] .zs-header-p0,
html[data-zs-page-appearance="dark"] .zs-header-p0 {
  background: transparent;
}

html:not(.light) .zs-header-p0 .zs-mega-nav-row,
html[data-zs-header-theme="dark"] .zs-header-p0 .zs-mega-nav-row,
html[data-zs-page-appearance="dark"] .zs-header-p0 .zs-mega-nav-row {
  color: rgba(244, 245, 243, 0.88);
}

/**
 * Guest homepage `/` only — TradingView-style header overlay on the Hero.
 *
 * Active while Hero is in view:
 *   html[data-zs-header-variant="hero-overlay"]
 *   OR html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
 *
 * Cleared by GuestHeroHeaderSync (IntersectionObserver) — not GSAP.
 * Does not affect authenticated `/`, /login, or other routes.
 */

/* Shorthand: both gates for first-paint (:has) and JS variant attr */
/* stylelint-disable-next-line */

/* Smooth handoff overlay ↔ light (200–250ms). Not driven by GSAP.
 * Do NOT transition `background` / `background-image` — browsers cannot
 * interpolate gradient→solid and leave the header stuck transparent.
 */
html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-site-header {
  transition:
    color 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    backdrop-filter 220ms ease,
    -webkit-backdrop-filter 220ms ease;
}

html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-light-pilot-wordmark,
html:has([data-zs-guest-parallax-hero])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a,
html:has([data-zs-guest-parallax-hero])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button,
html:has([data-zs-guest-parallax-hero])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button
  > svg,
html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-light-pilot-search,
html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-light-pilot-search-label,
html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-light-pilot-search-icon,
html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-light-pilot-user-wrap > button,
html:has([data-zs-guest-parallax-hero]) .zs-header-p0 .zs-header-touch {
  transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease;
}

/* Guest homepage: cancel the global main header offset so Hero sits under header. */
html:has([data-zs-guest-parallax-hero]) body main {
  padding-top: 0 !important;
}

html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  > .zs-header-offset {
  height: 0 !important;
  min-height: 0 !important;
}

/* Production zerospread.net cinematic overlay — transparent + graphite ink */
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1']) .zs-header-p0 {
  --zs-hdr-bg: transparent;
  --zs-hdr-ink: #141715;
  --zs-hdr-ink-2: #2b302d;
  --zs-hdr-muted: #5f6561;
  --zs-hdr-line: transparent;
  --zs-hdr-control-bg: rgba(20, 23, 21, 0.055);
  --zs-hdr-control-line: transparent;
  --zs-hdr-hover: rgba(20, 23, 21, 0.05);
  --zs-hdr-active: #141715;
  --zs-hdr-focus: 0 0 0 2px #f8f8f6, 0 0 0 4px #141715;
  --zs-hdr-pop-ring: 0 0 0 1px rgba(17, 21, 18, 0.06);
}

/* ── hero-overlay shell ── */
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-site-header,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-site-header {
  position: fixed !important;
  z-index: 100 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: auto !important;
  max-width: none !important;
  height: var(--zs-header-height, 72px);
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: var(--zs-hdr-ink, #141715) !important;
  border: 0 !important;
  border-bottom: 1px solid transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Wordmark / logo → white */
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-wordmark,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-wordmark:hover,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-wordmark:focus,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-wordmark,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-wordmark:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-wordmark:focus {
  color: var(--zs-hdr-ink, #141715) !important;
}

html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-laser-reveal,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-laser-reveal svg,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-laser-reveal text,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-laser-reveal,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-laser-reveal
  svg,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-laser-reveal
  text {
  color: var(--zs-hdr-ink, #141715) !important;
  fill: var(--zs-hdr-ink, #141715) !important;
}

/* Nav surface triggers only — never mega-menu / dropdown panel descendants */
html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a,
html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button {
  color: var(--zs-hdr-ink-2, #2b302d) !important;
}

html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a:hover,
html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button:hover {
  color: var(--zs-hdr-ink, #141715) !important;
  background: transparent !important;
}

html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a[aria-current='page'],
html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a[aria-current='page']:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a[aria-current='page'],
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a[aria-current='page']:hover {
  color: #a3ff12 !important;
}

/* Trigger chevrons only */
html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button
  > svg,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button
  > svg {
  color: var(--zs-hdr-muted, #5f6561) !important;
}

/* Header chrome triggers only — not dropdown panels (.zs-account-menu-anchor) */
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-header-touch,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-user-wrap > button,
html[data-zs-header-variant='hero-overlay']
  .zs-header-p0
  .zs-light-pilot-actions-bar
  > .relative
  > button,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-header-touch,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-user-wrap
  > button,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-actions-bar
  > .relative
  > button {
  color: var(--zs-hdr-ink, #141715) !important;
  border-color: transparent !important;
}

/* Guest account panel: GuestUserMenu.module.css only. No overlay palette. */

html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-header-touch:hover,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-user-wrap > button:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-header-touch:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-user-wrap
  > button:hover {
  background: var(--zs-hdr-hover, rgba(20, 23, 21, 0.05)) !important;
  color: var(--zs-hdr-ink, #141715) !important;
}

html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-user-wrap > button svg,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-header-touch svg,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-user-wrap
  > button
  svg,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-header-touch
  svg {
  color: var(--zs-hdr-ink, #141715) !important;
  stroke: currentColor !important;
}

html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-actions-bar svg,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-actions-bar
  svg {
  color: var(--zs-hdr-ink, #141715) !important;
  stroke: currentColor !important;
}

/* Search pill */
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-search,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-search {
  background: var(--zs-hdr-control-bg, rgba(20, 23, 21, 0.055)) !important;
  color: var(--zs-hdr-muted, #5f6561) !important;
  border: 1px solid transparent !important;
}

html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-search:hover,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-search:hover {
  background: var(--zs-hdr-hover, rgba(20, 23, 21, 0.05)) !important;
}

html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-search-label,
html[data-zs-header-variant='hero-overlay'] .zs-header-p0 .zs-light-pilot-search-icon,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-search-label,
html:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past='1'])
  .zs-header-p0
  .zs-light-pilot-search-icon {
  color: var(--zs-hdr-muted, #5f6561) !important;
}

/* Upgrade CTA uses the production ticket rules in site-header-light.css. */

/*
 * After Hero (past=1) on LIGHT pages only — restore the approved light shell.
 * Dark pages keep dark chrome via site-header-theme.css (never a white bar).
 */
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-site-header {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #171717 !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  z-index: 50 !important;
  /* Snap shell colors — avoid stuck gradient interpolation */
  transition: color 220ms ease, border-color 220ms ease !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-wordmark,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-wordmark:hover,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-wordmark:focus,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-laser-reveal,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-laser-reveal svg,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-laser-reveal text {
  color: #111111 !important;
  fill: currentColor !important;
}

html.light[data-zs-guest-hero-past='1']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a,
html.light[data-zs-guest-hero-past='1']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button {
  color: #111111 !important;
}

html.light[data-zs-guest-hero-past='1']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > a:hover,
html.light[data-zs-guest-hero-past='1']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button:hover {
  color: #0a0a0a !important;
}

html.light[data-zs-guest-hero-past='1']
  .zs-header-p0
  .zs-mega-nav-row
  > [data-zs-nav-trigger]
  > button
  > svg {
  color: #8a8f98 !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-search {
  background: #f4f4f4 !important;
  color: #4f535a !important;
  border: none !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-search-label,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-search-icon {
  color: #4f535a !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-header-touch,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-user-wrap > button,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-user-wrap svg {
  color: #111111 !important;
  stroke: currentColor !important;
  border-color: #e6e6e6 !important;
}

/* Restore solid ticket CTA on light header */
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta {
  background: #a3ff12 !important;
  color: #111111 !important;
  border: none !important;
  box-shadow: none !important;
  width: var(--zs-ticket-w, 158px) !important;
  min-width: 0 !important;
  height: var(--zs-ticket-h, 40px) !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta:hover {
  background: #a3ff12 !important;
  border: none !important;
  color: #111111 !important;
  box-shadow: none !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta:focus-visible {
  outline: 2px solid #151515 !important;
  outline-offset: 3px !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta::before {
  background: #a3ff12 !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta-face {
  background: #ffffff !important;
  border-color: #151515 !important;
  color: #111111 !important;
  width: var(--zs-ticket-w, 158px) !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) var(--zs-ticket-stub, 42px) !important;
  /* Ticket cutouts restored by original light CSS masks — clear overlay wipe */
  -webkit-mask-image: initial;
  mask-image: initial;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta-face::after {
  background: #151515 !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta-label {
  color: #111111 !important;
  font-family: var(--zs-font-institutional, "IBM Plex Sans Arabic", sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  min-width: 0 !important;
  padding-inline: 8px !important;
  display: flex !important;
  direction: inherit !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta-stub,
html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta-sparkle {
  color: #111111 !important;
}

html.light[data-zs-guest-hero-past='1'] .zs-header-p0 .zs-light-pilot-cta-stub {
  border-inline-start: none !important;
}

/**
 * School lesson header/shell — follows data-school-theme only on real lesson routes.
 * Does not restyle the global header on the rest of the site.
 */

html[data-zs-school-lesson="1"][data-school-theme="dark"] body {
  background: #07080a;
  color: #f4f5f3;
}

html[data-zs-school-lesson="1"][data-school-theme="light"] body {
  background: #ffffff;
  color: #0b0d0c;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-site-header {
  background: #07080a !important;
  background-color: #07080a !important;
  color: #f4f5f3 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
  box-shadow: none !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-wordmark,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-wordmark:hover,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-wordmark:focus {
  color: #f4f5f3 !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button {
  color: rgba(244, 245, 243, 0.88) !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a:hover,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button:hover {
  color: #f4f5f3 !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"],
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a[aria-current="page"]:hover {
  color: #a3ff12 !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > button > svg,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row > [data-zs-nav-trigger] > a > svg {
  color: rgba(244, 245, 243, 0.46);
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-search {
  background: #101318;
  color: rgba(244, 245, 243, 0.68);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-search:hover,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-search:focus {
  background: #14181e;
  color: #f4f5f3;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-search-label,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-search-icon {
  color: rgba(244, 245, 243, 0.68) !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-login-link {
  color: #f4f5f3 !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-login-link:hover {
  background: #101318;
  color: #f4f5f3;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-header-touch,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-user-trigger {
  color: #f4f5f3;
  border-color: rgba(255, 255, 255, 0.1);
  background: transparent;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-header-touch:hover,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar .zs-header-touch:hover,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar button.h-8.w-8:hover,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-user-trigger:hover {
  background: #101318;
  color: #f4f5f3;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-user-trigger svg,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-actions-bar svg {
  color: #f4f5f3;
}

/* Sticky / scrolled / fixed — never revert to white on lesson dark */
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-site-header.scrolled,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-site-header.is-stuck,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-site-header.is-sticky,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-site-header[data-scrolled="true"],
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-site-header.fixed,
html[data-zs-school-lesson="1"][data-school-theme="dark"] header.zs-site-header {
  background: #07080a !important;
  background-color: #07080a !important;
}

html[data-zs-school-lesson="1"][data-school-theme="light"] .zs-header-p0 .zs-site-header {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #171717 !important;
}

/* Foundations outer shell follows lesson theme before React hydrates */
html[data-zs-school-lesson="1"][data-school-theme="light"] .zs-chapter-typography > div {
  background-color: #ffffff !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-chapter-typography > div {
  background-color: #07080a !important;
}

/* Upgrade ticket stays the existing control — keep label readable */
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-cta-label,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-light-pilot-cta-sparkle {
  color: #111111 !important;
}

html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-header-p0,
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 {
  background: transparent;
}

/* Mobile sheet / more menu chrome on dark lessons */
html[data-zs-school-lesson="1"][data-school-theme="dark"] .zs-header-p0 .zs-mega-nav-row {
  color: rgba(244, 245, 243, 0.88);
}

/*
 * Desktop master header.
 * The homepage guest hero keeps its own overlay. Every other desktop route
 * uses that same light header chrome, except pages declared "dual" in
 * src/lib/page-appearance-capability.ts while dark mode is active: those get
 * the global dark chrome (colors only; geometry unchanged), and the
 * DARK_HEADER_ROUTES exception (/about, /contact, /calendar) in both modes.
 * Mobile header rules above stay put.
 */
@media (min-width: 1280px) {
  html[data-zs-header-theme]:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    body
    .zs-header-p0
    .zs-site-header,
  html[data-zs-header-theme]:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    body
    .zs-header-p0
    .zs-site-header.fixed {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #171717 !important;
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
  }

  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-wordmark,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-wordmark:hover,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-wordmark:focus,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-laser-reveal,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-laser-reveal svg,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-laser-reveal text {
    color: var(--zs-hdr-ink, #141715) !important;
    fill: currentColor !important;
  }

  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > a,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > button {
    color: var(--zs-hdr-ink-2, #2b302d) !important;
  }

  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > a:hover,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > button:hover,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > a[aria-current="page"],
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > button[aria-expanded="true"] {
    color: var(--zs-hdr-ink, #141715) !important;
    background: transparent !important;
  }

  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-mega-nav-row
    > [data-zs-nav-trigger]
    > button
    > svg {
    color: var(--zs-hdr-muted, #5f6561) !important;
  }

  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-search {
    background: var(--zs-hdr-control-bg, rgba(20, 23, 21, 0.055)) !important;
    color: var(--zs-hdr-muted, #5f6561) !important;
    border: 1px solid transparent !important;
  }

  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-search-label,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-search-icon,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-actions-bar
    > .relative
    > button,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-actions-bar
    > .relative
    > button
    svg,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-user-wrap
    > button,
  html:not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    .zs-header-p0
    .zs-light-pilot-user-wrap
    > button
    svg {
    color: var(--zs-hdr-ink, #141715) !important;
    stroke: currentColor !important;
  }

  /* Light page shells (LIGHT_APPEARANCE_HOST_SELECTOR) keep the light chrome.
     DARK_HEADER_ROUTES (data-zs-header-lock) keep the dark chrome in Light and Dark.
     Always-dark page roots (PAGE_LEVEL_DARK_HOST_SELECTOR) keep it from the first
     frame, before the resolver runs. */
  html[data-zs-appearance-capability="dual"][data-zs-header-theme="dark"]:not(.light):not(
      :has([data-zs-page-appearance="light"], .zte-page)
    )
    body
    .zs-header-p0,
  html[data-zs-header-lock="dark"][data-zs-header-theme="dark"]:not(
      :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
    )
    body
    .zs-header-p0,
  html:has(
      main [data-zs-page-appearance="dark"],
      main [data-zs-about-page],
      main [data-zs-contact-page]
    ):not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    body
    .zs-header-p0 {
    --zs-hdr-ink: #f4f5f3;
    --zs-hdr-ink-2: rgba(244, 245, 243, 0.88);
    --zs-hdr-muted: rgba(244, 245, 243, 0.68);
    --zs-hdr-control-bg: #101318;
    --zs-hdr-active: #f4f5f3;
    --zs-hdr-focus: 0 0 0 2px #000000, 0 0 0 4px #f4f5f3;
  }

  html[data-zs-appearance-capability="dual"][data-zs-header-theme="dark"]:not(.light):not(
      :has([data-zs-page-appearance="light"], .zte-page)
    )
    body
    .zs-header-p0
    .zs-site-header,
  html[data-zs-appearance-capability="dual"][data-zs-header-theme="dark"]:not(.light):not(
      :has([data-zs-page-appearance="light"], .zte-page)
    )
    body
    .zs-header-p0
    .zs-site-header.fixed,
  html[data-zs-header-lock="dark"][data-zs-header-theme="dark"]:not(
      :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
    )
    body
    .zs-header-p0
    .zs-site-header,
  html[data-zs-header-lock="dark"][data-zs-header-theme="dark"]:not(
      :has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"])
    )
    body
    .zs-header-p0
    .zs-site-header.fixed,
  html:has(
      main [data-zs-page-appearance="dark"],
      main [data-zs-about-page],
      main [data-zs-contact-page]
    ):not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    body
    .zs-header-p0
    .zs-site-header,
  html:has(
      main [data-zs-page-appearance="dark"],
      main [data-zs-about-page],
      main [data-zs-contact-page]
    ):not(:has([data-zs-guest-parallax-hero]):not([data-zs-guest-hero-past="1"]))
    body
    .zs-header-p0
    .zs-site-header.fixed {
    background: #000000 !important;
    background-color: #000000 !important;
    color: #f4f5f3 !important;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.07) !important;
  }
}

/**
 * Tablet + phone nav sheet polish — <1280px (matches `xl` desktop nav threshold).
 * Desktop mega menu unchanged.
 */
@media (max-width: 1279px) {
  .zs-mobile-nav-sheet {
    max-height: min(calc(100dvh - 4.5rem - env(safe-area-inset-top, 0px)), 720px) !important;
  }

  .zs-mobile-nav-sheet > .flex.items-center.justify-between {
    min-height: 52px;
    padding: 10px 14px 12px;
  }

  .zs-mobile-nav-sheet > .flex.items-center.justify-between > span {
    font-size: 15px;
    line-height: 1.3;
    letter-spacing: -0.01em;
  }

  .zs-mobile-nav-sheet button[aria-label='إغلاق'] {
    min-width: 44px;
    min-height: 44px;
    width: 44px;
    height: 44px;
  }

  .zs-mobile-nav-sheet .mega-menu-scroll {
    padding: 8px 12px 12px;
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }

  .zs-mobile-nav-sheet .mega-menu-scroll > div {
    padding-block: 6px;
  }

  .zs-mobile-nav-sheet .mega-menu-scroll > div + div {
    margin-top: 2px;
    border-top: 1px solid rgba(163, 255, 18, 0.05);
    padding-top: 10px;
  }

  .zs-mobile-nav-sheet .mega-menu-scroll > div > button[type='button'] {
    min-height: 44px;
    padding: 10px 12px;
    gap: 10px;
    font-size: 16px;
    line-height: 1.35;
    border-radius: 12px;
  }

  .zs-mobile-nav-sheet .mega-menu-scroll h3 {
    font-size: 11px;
    line-height: 1.4;
    margin-bottom: 6px;
    padding-inline: 4px;
    color: rgba(156, 163, 175, 0.95);
  }

  .zs-mobile-nav-sheet .mega-menu-link-card {
    min-height: 44px;
    padding: 10px 12px !important;
    gap: 10px !important;
    max-width: 100%;
    box-sizing: border-box;
  }

  .zs-mobile-nav-sheet .mega-menu-link-card span.block.text-sm {
    font-size: 14px;
    line-height: 1.35;
  }

  .zs-mobile-nav-sheet .mega-menu-link-card span.block.text-\[11px\] {
    font-size: 12px;
    line-height: 1.45;
    margin-top: 3px !important;
  }

  .zs-mobile-nav-sheet .mega-menu-icon-ring {
    min-width: 40px;
    min-height: 40px;
    width: 40px !important;
    height: 40px !important;
  }

  .zs-mobile-nav-sheet ul.flex.flex-col.gap-2 {
    gap: 10px;
  }

  .zs-mobile-nav-sheet .grid.gap-4,
  .zs-mobile-nav-sheet .grid.gap-2 {
    gap: 10px;
  }

  .zs-mobile-nav-sheet .shrink-0.border-t {
    padding: 12px 12px calc(12px + env(safe-area-inset-bottom, 0px));
  }

  .zs-mobile-nav-sheet .shrink-0.border-t a,
  .zs-mobile-nav-sheet .shrink-0.border-t button {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 13px;
    line-height: 1.3;
  }

  .zs-mobile-nav-sheet .shrink-0.border-t .grid {
    gap: 10px;
  }
}

/**
 * TradingView-parity desktop header dropdowns.
 * Scoped to .zs-header-p0 .tv-nav-* — desktop only (xl+).
 */

.zs-header-p0 .tv-nav-bridge {
  display: flex;
  align-items: stretch;
  gap: 0px;
  /* Root must own the anchor box; child flyout is absolutely positioned so it
     cannot affect wrapper width and cannot shift the root panel. */
  position: relative;
  overflow: visible;
  font-family: var(--zs-font-institutional);
  font-synthesis: none;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: geometricPrecision;
}

.zs-header-p0 .zs-mm-anchor {
  position: absolute;
  top: 100%;
  inset-inline-start: 0;
  z-index: var(--zs-z-d-header-layer, 2);
  padding-top: 8px;
  overflow: visible;
  transform: translateX(var(--zs-mm-shift, 0px));
}

.zs-header-p0 .tv-nav-panel,
.zs-header-p0 .tv-nav-flyout {
  box-sizing: border-box;
  background: #ffffff;
  border: 1px solid rgba(17, 21, 18, 0.1);
  border-radius: 12px;
  box-shadow:
    0 16px 40px -12px rgba(15, 18, 16, 0.22),
    0 2px 6px rgba(15, 18, 16, 0.06),
    0 0 0 1px rgba(17, 21, 18, 0.06);
  padding: 8px 0;
  flex-shrink: 0;
  color: #111512;
}

.zs-header-p0 .tv-nav-bridge svg.tv-nav-solid-icon {
  color: #111512 !important;
  opacity: 1;
}

.zs-header-p0 .tv-nav-chevron,
.zs-header-p0 .tv-nav-panel .tv-nav-chevron,
.zs-header-p0 .mega-menu .tv-nav-chevron,
.zs-header-p0 .mega-menu .tv-nav-panel svg.tv-nav-chevron {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  color: #a3ff12 !important;
  stroke: #a3ff12 !important;
  opacity: 1;
}

/* ── Panel widths — TradingView-parity proportions ── */
.zs-header-p0 .tv-nav-panel {
  width: 264px;
  max-width: calc(100vw - 32px);
}

.zs-header-p0 .tv-nav-panel[data-zs-mm-width='standard'] {
  width: 288px;
}

.zs-header-p0 .tv-nav-panel[data-zs-mm-width='wide'] {
  width: 312px;
}

.zs-header-p0 .tv-nav-flyout {
  /* TradingView-parity contextual column */
  width: 235px;
  min-width: 220px;
  max-width: min(245px, calc(100vw - 24px));
  flex: 0 0 auto;
  height: auto;
  align-self: flex-start;
  min-height: unset;
  /* Take out of normal flow so it does not contribute to wrapper width. */
  position: absolute;
  top: 0;
}

/* Tall adjacent column mode — content naturally fills most of root height. */
.zs-header-p0 .tv-nav-flyout--full {
  /* When the flyout is absolute, `align-self: stretch` no longer works.
     Use bottom:0 to preserve the previous "match root height" behavior. */
  bottom: 0;
  /* `height:auto` is currently preventing the stretch in some browsers.
     Force fill of the bridge height to match root panel height. */
  height: 100%;
}

/* Adjacent RTL seam: one clean 1px join, no doubled border/shadow corners */
.zs-header-p0 .tv-nav-bridge[dir='rtl'] .tv-nav-panel {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.zs-header-p0 .tv-nav-bridge[dir='rtl'] .tv-nav-flyout {
  /* Physical RTL arrangement: [CHILD LEFT][ROOT RIGHT] */
  right: 100%;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  /* Remove seam border from the flyout so the root panel left border is the single 1px seam. */
  border-right: 0;
}

.zs-header-p0 .tv-nav-bridge[dir='ltr'] .tv-nav-flyout {
  left: 100%;
  border-right: 1px solid #e4e6e8;
  border-left: 0;
}

.zs-header-p0 .tv-nav-scroll {
  max-height: calc(100vh - 92px);
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
}

.zs-header-p0 .tv-nav-scroll::-webkit-scrollbar {
  width: 4px;
}

.zs-header-p0 .tv-nav-scroll::-webkit-scrollbar-thumb {
  background: #d1d5db;
  border-radius: 4px;
}

/* ── Section labels — breathing room, not compressed ── */
.zs-header-p0 .tv-nav-section-label {
  display: block;
  margin: 0;
  padding: 12px 16px 4px;
  border-top: none;
  border-bottom: none;
  box-shadow: none;
  font-family: var(--zs-font-institutional);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  color: #646b67;
  opacity: 1;
}

/* If any flyout uses section labels, match the same seam-side inset as rows. */
.zs-header-p0 .tv-nav-flyout .tv-nav-section-label {
  padding-right: 24px;
  padding-left: 16px;
}

.zs-header-p0 .tv-nav-section-label::before,
.zs-header-p0 .tv-nav-section-label::after {
  content: none;
  border: none;
  box-shadow: none;
}

.zs-header-p0 .tv-nav-featured + .tv-nav-section-label {
  margin-top: 0;
  padding-top: 4px;
}

.zs-header-p0 .tv-nav-row + .tv-nav-section-label {
  margin-top: 6px;
  padding-top: 12px;
  border-top: 1px solid rgba(17, 21, 18, 0.07);
}

/* Legacy internal separator — must not render */
.zs-header-p0 .tv-nav-panel > hr,
.zs-header-p0 .tv-nav-separator {
  display: none;
  margin: 0;
  padding: 0;
  border: 0;
  height: 0;
  overflow: hidden;
}

/*
 * Shared featured first-row grammar (all header dropdowns).
 * Panel top breathing comes from this row's own padding — not per-menu offsets.
 */
.zs-header-p0 .tv-nav-panel:has(> .tv-nav-featured) {
  padding-top: 0 !important;
}

.zs-header-p0 .tv-nav-panel > .tv-nav-featured,
.zs-header-p0 .mega-menu .tv-nav-panel > .tv-nav-featured {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  align-items: center !important;
  justify-items: stretch;
  column-gap: 12px !important;
  row-gap: 0 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  min-height: 64px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 16px !important;
  padding-left: 16px !important;
  border: none !important;
  border-radius: 0 !important;
  background: #ffffff;
  text-decoration: none;
  transition: background-color 100ms ease;
  cursor: pointer;
  text-align: inherit;
}

.zs-header-p0 .tv-nav-panel > .tv-nav-featured:hover,
.zs-header-p0 .mega-menu .tv-nav-panel > .tv-nav-featured:hover {
  background: #f5f5f6;
}

.zs-header-p0 .tv-nav-panel > .tv-nav-featured:focus-visible,
.zs-header-p0 .mega-menu .tv-nav-panel > .tv-nav-featured:focus-visible {
  outline: 2px solid #2962ff;
  outline-offset: 1px;
}

.zs-header-p0 .tv-nav-panel > .tv-nav-featured .tv-nav-featured-icon,
.zs-header-p0 .mega-menu .tv-nav-panel > .tv-nav-featured .tv-nav-featured-icon {
  display: inline-flex !important;
  flex: 0 0 24px !important;
  flex-shrink: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  box-sizing: border-box !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
  margin: 0 !important;
  font-size: 24px !important; /* react-icons fallback uses 1em */
  line-height: 1 !important;
  background: none;
  border: none;
  box-shadow: none;
  opacity: 1;
}

/* Winning size rule — must beat react-icons 1em defaults */
.zs-header-p0 .tv-nav-panel > .tv-nav-featured .tv-nav-featured-icon svg,
.zs-header-p0 .mega-menu .tv-nav-panel > .tv-nav-featured .tv-nav-featured-icon svg,
.zs-header-p0 .tv-nav-featured-icon svg {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
  color: #111512 !important;
  shape-rendering: geometricPrecision;
}

.zs-header-p0 .tv-nav-panel > .tv-nav-featured .tv-nav-featured-body,
.zs-header-p0 .mega-menu .tv-nav-panel > .tv-nav-featured .tv-nav-featured-body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 0 !important;
  min-width: 0 !important;
}

.zs-header-p0 .tv-nav-featured-title {
  display: block;
  font-family: var(--zs-font-institutional);
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  color: #111512;
  opacity: 1;
}

.zs-header-p0 .tv-nav-featured-desc {
  display: block;
  margin-top: 3px;
  font-family: var(--zs-font-institutional);
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  color: #646b67;
  opacity: 1;
}

/* ── Navigation rows — compact TradingView density ── */
.zs-header-p0 .tv-nav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  height: 44px;
  min-height: 44px;
  padding-inline: 16px;
  border: none;
  border-radius: 0;
  background: transparent;
  text-decoration: none;
  transition: background-color 100ms ease;
  cursor: pointer;
  width: 100%;
  box-sizing: border-box;
  text-align: inherit;
}

.zs-header-p0 .tv-nav-row:hover {
  background: #f4f5f3;
}

.zs-header-p0 .tv-nav-row--active {
  background: #f0f2ee;
}

.zs-header-p0 .tv-nav-row:focus-visible {
  outline: 2px solid #2962ff;
  outline-offset: -2px;
}

.zs-header-p0 .tv-nav-row-main {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 1;
}

.zs-header-p0 .tv-nav-row-icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-inline-start: 0;
  background: none;
  border: none;
  box-shadow: none;
  opacity: 1;
}

.zs-header-p0 .tv-nav-row-icon svg,
.zs-header-p0 .tv-nav-flyout-row-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  transform: none;
  filter: none;
  opacity: 1;
  fill: none;
  shape-rendering: geometricPrecision;
}

.zs-header-p0 .tv-nav-row-label {
  font-family: var(--zs-font-institutional);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  color: #111111;
  opacity: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.zs-header-p0 .tv-nav-row:hover .tv-nav-row-label,
.zs-header-p0 .tv-nav-row--active .tv-nav-row-label {
  font-weight: 500;
  color: #111111;
}

/* ── Flyout sub-rows (label only) ── */
.zs-header-p0 .tv-nav-flyout-row {
  display: flex;
  align-items: center;
  gap: 12px;
  height: 44px;
  min-height: 44px;
  padding-inline: 16px;
  text-align: right;
  direction: rtl;
  font-family: var(--zs-font-institutional);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  color: #111111;
  opacity: 1;
  text-decoration: none;
  transition: background-color 100ms ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Child-column seam spacing fix (RTL): keep text 22–26px left of the ROOT/CHILD seam. */
.zs-header-p0 .tv-nav-flyout .tv-nav-flyout-row {
  /* Physical seam-side inset (RIGHT edge in RTL). */
  padding-right: 24px;
  /* Opposite side stays tighter. */
  padding-left: 16px;
}

/* Products child column only — compact width, denser rows, no root/school/trading changes. */
.zs-header-p0 .tv-nav-flyout.tv-nav-flyout--products {
  width: 208px;
  min-width: 200px;
  max-width: min(215px, calc(100vw - 24px));
  padding-top: 8px;
  padding-bottom: 8px;
  height: auto;
  bottom: auto;
  align-self: flex-start;
}

.zs-header-p0 .tv-nav-flyout.tv-nav-flyout--products .tv-nav-flyout-row {
  height: 45px;
  min-height: 45px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
  color: #111111;
  font-synthesis: none;
  padding-right: 20px;
  padding-left: 15px;
}

.zs-header-p0 .tv-nav-flyout.tv-nav-flyout--products .tv-nav-section-label {
  padding-right: 20px;
  padding-left: 15px;
}

.zs-header-p0 .tv-nav-flyout-row:hover {
  background: #F4F4F5;
  font-weight: 500;
  color: #111111;
}

.zs-header-p0 .tv-nav-flyout-row:focus-visible {
  outline: 2px solid #2962ff;
  outline-offset: -2px;
}

.zs-header-p0 .tv-nav-flyout-row-icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-inline-start: 0;
  background: none;
  border: none;
  box-shadow: none;
  opacity: 1;
}

/* Solid glyphs stay ink. Stroke icons and chevrons keep .mega-menu svg green. */
.zs-header-p0 .tv-nav-bridge svg.tv-nav-solid-icon {
  fill: currentColor !important;
  stroke: none !important;
  color: #111512 !important;
  opacity: 1 !important;
}

/* School / University / News / Trading / More — same solid grammar as approved Products */
.zs-header-p0 .tv-nav-panel--school svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--university svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--news svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--trading svg.tv-nav-solid-icon,
.zs-header-p0 .tv-nav-panel--more svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--school svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--university svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--news svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--trading svg.tv-nav-solid-icon,
.zs-header-p0 .mega-menu .tv-nav-panel--more svg.tv-nav-solid-icon {
  fill: currentColor !important;
  stroke: none !important;
  color: #111512 !important;
  opacity: 1 !important;
}

