/* Blocksky Enterprise AI Blue — public marketing theme for seoai.space
   UI-only. Load LAST in <head>. Does not affect Streamlit /dashboard. */

:root {
  --eab-bg: #f7f8fa;
  --eab-surface: #ffffff;
  --eab-ink: #111827;
  /* ~20% darker than prior #49505b for readable grey copy */
  --eab-muted: #49505b;
  --eab-cobalt: #3157f6;
  --eab-cobalt-hover: #2546d4;
  --eab-pale: #dde6ff;
  --eab-border: #d7dce5;
  --eab-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 4px 16px rgba(17, 24, 39, 0.04);

  /* Remap legacy SEOAI dark tokens used by directory/proof pages */
  --seoai-purple: #3157f6;
  --seoai-cyan: #3157f6;
  --seoai-bg: #f7f8fa;
  --seoai-surface: #ffffff;
  --seoai-surface2: #f7f8fa;
  --seoai-border: #d7dce5;
  --seoai-border-soft: #d7dce5;
  --seoai-text: #111827;
  --seoai-muted: #49505b;
  --seoai-muted2: #49505b;
}

html, body {
  background: var(--eab-bg) !important;
  color: var(--eab-ink) !important;
}

/* Kill dark stage / purple orbs */
.theatre-wrap::before,
.theatre-wrap::after,
.hero::before,
.pages-showcase::before,
.faq.faq-v2::before,
.bg-glow,
.ambient-glow {
  opacity: 0.08 !important;
  background: radial-gradient(circle, rgba(49, 87, 246, 0.18) 0%, transparent 70%) !important;
  filter: blur(80px) !important;
  box-shadow: none !important;
}

.theatre-wrap {
  /* Solid page canvas — hero photo lives only on the first-screen section */
  background-color: #f7f8fa !important;
  background-image: none !important;
}

/* Hero title sits ON the photo — no capped white section box */
.hero:not(.hero-theatre) {
  background: transparent !important;
  background-image: none !important;
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Homepage first-screen hero plate (matches compare/public height, no page stretch) */
.theatre-wrap > section.hero.hero-theatre,
section.hero.hero-theatre {
  max-width: none !important;
  width: 100% !important;
  min-height: min(88vh, 920px) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background-color: #f7f8fa !important;
  background-image:
    radial-gradient(ellipse 50% 38% at 50% 40%, rgba(255, 255, 255, 0.42) 0%, rgba(255, 255, 255, 0.12) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(
      180deg,
      rgba(247, 248, 250, 0.12) 0%,
      rgba(247, 248, 250, 0.04) 45%,
      rgba(247, 248, 250, 0.72) 88%,
      #f7f8fa 100%
    ),
    url("/seoai-hero-home.webp?v=20260805x") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.hero h1,
.hero.hero-theatre h1,
.section-title,
h1, h2, h3 {
  color: var(--eab-ink) !important;
  text-shadow: none !important;
}

.hero h1 span,
.hero.hero-theatre h1 span,
.hero.hero-theatre h1 .grad,
.hero.hero-theatre h1 .hero-glow,
.price-card .price {
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
  color: var(--eab-cobalt) !important;
  animation: none !important;
  filter: none !important;
}

.hero p,
.hero.hero-theatre > p:not(.hero-blockchain):not(.patent-notice),
.section-sub,
.feature-card p,
.problem-card p,
.step p,
.how-path-card p,
.price-card ul li,
.faq-acc-body p {
  color: var(--eab-muted) !important;
  text-shadow: none !important;
}

.hero .hero-blockchain,
.hero.hero-theatre .hero-blockchain,
.how-path-tag,
.preview-link:hover,
footer a:hover {
  color: var(--eab-cobalt) !important;
  text-shadow: none !important;
}

/* Header — exclude directory page hero (<header class="dir-hero">) */
header:not(.dir-hero),
.site-header {
  background: rgba(255, 255, 255, 0.72) !important;
  background-color: rgba(255, 255, 255, 0.72) !important;
  border-bottom: 1px solid rgba(215, 220, 229, 0.65) !important;
  box-shadow: 0 1px 0 rgba(17, 24, 39, 0.04) !important;
  backdrop-filter: blur(14px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
  overflow: visible !important;
}

header nav a:not(.cta),
header nav .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
header nav a:not(.cta):hover,
header nav .nav-dd-btn:hover,
header nav a:not(.cta).active {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

header nav a.cta,
.lang-btn {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

header nav a.cta {
  background: var(--eab-cobalt) !important;
  border: 1px solid var(--eab-cobalt) !important;
  color: #fff !important;
  box-shadow: none !important;
}
header nav a.cta:hover {
  background: var(--eab-cobalt-hover) !important;
  border-color: var(--eab-cobalt-hover) !important;
  box-shadow: 0 4px 14px rgba(49, 87, 246, 0.22) !important;
}

.lang-switch {
  position: relative !important;
  overflow: visible !important;
}
.lang-btn {
  background: rgba(255, 255, 255, 0.72) !important;
  border: 1px solid #d7dce5 !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  box-shadow: none !important;
}
.lang-btn:hover {
  border-color: rgba(49, 87, 246, 0.35) !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.lang-menu,
#lang-menu {
  top: 100% !important;
  margin-top: 2px !important;
  right: 0 !important;
  left: auto !important;
  transform: none !important;
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 8px 24px rgba(17, 24, 39, 0.12) !important;
  z-index: 400 !important;
}
.lang-option { color: #000000 !important; -webkit-text-fill-color: #000000 !important; }
.lang-option:hover {
  background: #eef2ff !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.lang-option.active { color: #3157f6 !important; -webkit-text-fill-color: #3157f6 !important; }

.discover-menu,
.nav-dropdown,
.dropdown-menu {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
  color: var(--eab-ink) !important;
}
.discover-menu a,
.nav-dropdown a,
.dropdown-menu a {
  color: var(--eab-muted) !important;
}
.discover-menu a:hover,
.nav-dropdown a:hover,
.dropdown-menu a:hover {
  color: var(--eab-ink) !important;
  background: var(--eab-pale) !important;
}

/* Badges / pills */
.hero.hero-theatre .ai-badges span,
.ai-badges span,
.badge,
.pill {
  color: var(--eab-muted) !important;
  background: var(--eab-pale) !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: none !important;
}
.hero.hero-theatre .ai-badges span:hover {
  color: var(--eab-ink) !important;
  border-color: rgba(49, 87, 246, 0.35) !important;
  box-shadow: none !important;
}

.hero.hero-theatre .patent-notice,
.patent-notice {
  color: var(--eab-ink) !important;
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: none !important;
}

/* CTAs — kill purple/cyan gradients + glow */
.hero .btn,
.theatre-ctas .btn,
.how-path-cta a,
.pages-cta a,
.price-card a.btn-gradient,
.btn-gradient,
a.btn-gradient,
.cta-primary,
.btn.primary {
  background: var(--eab-cobalt) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid var(--eab-cobalt) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  text-shadow: none !important;
  filter: none !important;
}
.hero .btn:hover,
.theatre-ctas .btn:hover,
.how-path-cta a:hover,
.pages-cta a:hover,
.price-card a.btn-gradient:hover,
.btn-gradient:hover {
  background: var(--eab-cobalt-hover) !important;
  border-color: var(--eab-cobalt-hover) !important;
  box-shadow: 0 6px 18px rgba(49, 87, 246, 0.22) !important;
  filter: none !important;
}

.hero .btn-secondary,
.theatre-ctas .btn-secondary,
.btn-secondary,
a.btn-outline,
.price-card a.btn-outline {
  background: var(--eab-surface) !important;
  border: 1.5px solid var(--eab-cobalt) !important;
  color: var(--eab-cobalt) !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
  box-shadow: none !important;
}
.hero .btn-secondary:hover,
.theatre-ctas .btn-secondary:hover,
.btn-secondary:hover,
.price-card a.btn-outline:hover {
  background: var(--eab-pale) !important;
  box-shadow: none !important;
}

.step-number {
  background: var(--eab-cobalt) !important;
  color: #fff !important;
  box-shadow: none !important;
}

/* Score checker */
.score-card,
.score.score-theatre .score-card,
.feature-card,
.problem-card,
.price-card,
.how-path-card,
.faq-shell,
.card,
.panel {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  color: var(--eab-ink) !important;
}

.score.score-theatre .score-card > h2,
.feature-card h3,
.problem-card h3,
.price-card h3,
.step h3,
.how-path-card h3 {
  color: var(--eab-ink) !important;
  background: none !important;
  -webkit-text-fill-color: var(--eab-ink) !important;
}

.score-card p.sub,
.score.score-theatre .score-card > p.sub { color: var(--eab-muted) !important; }

.score.score-theatre .score-form,
.score-form {
  background: var(--eab-bg) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: none !important;
}

.score-form input,
.score.score-theatre .score-form input {
  background: transparent !important;
  color: var(--eab-ink) !important;
}
.score-form input::placeholder { color: #7b828e !important; }

.score-form button,
.score.score-theatre .score-form button {
  background: var(--eab-cobalt) !important;
  border: 1px solid var(--eab-cobalt) !important;
  color: #fff !important;
  box-shadow: none !important;
  text-shadow: none !important;
  backdrop-filter: none !important;
}
.score-form button:hover,
.score.score-theatre .score-form button:hover {
  background: var(--eab-cobalt-hover) !important;
  border-color: var(--eab-cobalt-hover) !important;
}

.score-result {
  background: var(--eab-bg) !important;
  border: 1px solid var(--eab-border) !important;
}
.score-result.score-result--flash {
  animation: none !important;
  box-shadow: 0 0 0 3px var(--eab-pale) !important;
}

.dual-scores--theatre .dual-card.ai-card,
.dual-scores--theatre .dual-card.web-card {
  --ring-color: #3157f6 !important;
  --ring-glow: rgba(49, 87, 246, 0.16) !important;
}

.dual-scores--theatre.is-live .dual-card,
.dual-card.ai-card,
.dual-card.web-card {
  background: var(--eab-surface) !important;
  border-color: var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
}

.dual-card.ai-card .dual-label,
.dual-card.web-card .dual-label,
.rubric-cat.ai .rubric-cat-pts,
.rubric-cat.web .rubric-cat-pts,
.cat-row.locked .cat-pts,
.cat-row.locked .cat-lock,
.price-card .price small {
  color: var(--eab-cobalt) !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
}

.dual-card.ai-card .dual-number,
.dual-card.web-card .dual-number,
.dual-scores--theatre.is-live .dual-number {
  -webkit-text-fill-color: var(--eab-ink) !important;
  color: var(--eab-ink) !important;
}

.ai-card .cat-bar-fill,
.web-card .cat-bar-fill { background: var(--eab-cobalt) !important; }
.cat-bar-bg { background: #e8ecf4 !important; }
.cat-row { color: var(--eab-muted) !important; }

.icon-purple,
.icon-cyan,
.icon-green,
.icon-pink,
.problem-card .card-icon,
.feature-card .card-icon {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  box-shadow: none !important;
}

.feature-card:hover,
.problem-card:hover,
.price-card:hover {
  border-color: rgba(49, 87, 246, 0.35) !important;
  box-shadow: var(--eab-shadow) !important;
  transform: none !important;
}

.price-card.featured {
  border-color: var(--eab-cobalt) !important;
  box-shadow: 0 8px 28px rgba(49, 87, 246, 0.1) !important;
}
.price-card.featured::before,
.trial-badge {
  background: var(--eab-cobalt) !important;
  border-color: var(--eab-cobalt) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: none !important;
  animation: none !important;
}

.features,
.problem,
.pricing,
.how,
.pages-showcase,
.faq,
section {
  border-color: var(--eab-border) !important;
}

.faq-shell { box-shadow: var(--eab-shadow) !important; }
.faq-acc { border-bottom-color: var(--eab-border) !important; }
.faq-acc > summary { color: var(--eab-ink) !important; }
.faq-acc[open] > summary { background: var(--eab-pale) !important; }
.faq-num {
  color: var(--eab-cobalt) !important;
  background: var(--eab-pale) !important;
  border-color: #c5d0f0 !important;
}
.faq-acc[open] .faq-num {
  background: var(--eab-cobalt) !important;
  color: #fff !important;
}

/* Footer — one shared ink bar across marketing pages */
footer,
footer.pub-site-footer,
.pub-site-footer {
  background: #111827 !important;
  border-top: 1px solid #111827 !important;
  color: #e5eaf2 !important;
  text-align: center !important;
  padding: 36px 24px 28px !important;
  margin: 0 !important;
  font-size: 0.88rem !important;
  line-height: 1.6 !important;
}
footer > p,
.pub-site-footer > p {
  margin: 0 !important;
  color: #7b828e !important;
  font-size: 0.84rem !important;
}
footer a,
.pub-site-footer a,
.footer-ecosystem a,
.footer-ecosystem .eco-label {
  color: #c5cdd9 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}
footer a:hover,
.pub-site-footer a:hover,
.footer-ecosystem a:hover {
  color: #93a9ff !important;
}
.footer-ecosystem {
  margin: 0 auto 18px !important;
  max-width: 920px !important;
}
.footer-ecosystem .eco-label {
  display: block !important;
  margin-bottom: 10px !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #7b828e !important;
}
.footer-ecosystem a {
  margin: 0 4px !important;
  font-size: 0.86rem !important;
}
.footer-ecosystem .eco-dot,
.footer-ecosystem .eco-backed { color: #7b828e !important; }
.footer-ecosystem .eco-backed {
  display: block !important;
  margin-top: 12px !important;
  font-size: 0.72rem !important;
  line-height: 1.5 !important;
}
.footer-ecosystem .eco-backed a { color: #93a9ff !important; }
.pub-site-footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  justify-content: center !important;
  margin-bottom: 10px !important;
}

/* Directory / compare / public-page / proof common surfaces */
.dir-card,
.profile-card,
.compare-card,
.proof-card,
.hero-panel,
.glass,
.surface {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
  color: var(--eab-ink) !important;
  backdrop-filter: none !important;
}

a { color: var(--eab-cobalt); }
a:hover { color: var(--eab-cobalt-hover); }

/* Neutralize leftover purple/cyan glows */
[style*="BC42FF"],
[style*="14B4E6"],
[style*="8B5CF6"] {
  /* can't override inline style attrs globally; covered by class rules above */
}

/* Help widget (public) */
.seoai-help,
.seoai-help-btn,
#seoai-help,
.help-fab {
  --help-accent: #3157f6;
}

/* ═══════════════════════════════════════════════════════════════
   EA Blue v20260804b — kill remaining dark/purple inline !important
   (landing mobile shell, compare, public-page, directory, proof)
   ═══════════════════════════════════════════════════════════════ */

:root {
  /* Landing mobile shell tokens (seoai-mobile-shell) */
  --m-bg: #f7f8fa !important;
  --m-fg: #111827 !important;
  --m-muted: #49505b !important;
  --m-line: #d7dce5 !important;
  --m-surface: #ffffff !important;
  --m-surface-2: #f7f8fa !important;
  --m-accent: #3157f6 !important;

  /* Directory / proof pages redefine these in earlier <style>; win here */
  --seoai-purple: #3157f6 !important;
  --seoai-cyan: #3157f6 !important;
  --seoai-bg: #f7f8fa !important;
  --seoai-surface: #ffffff !important;
  --seoai-surface2: #f7f8fa !important;
  --seoai-border: #d7dce5 !important;
  --seoai-border-soft: #d7dce5 !important;
  --seoai-text: #111827 !important;
  --seoai-muted: #49505b !important;
  --seoai-muted2: #49505b !important;
}

meta[name="theme-color"] {
  /* cannot restyle meta; browsers may still show dark from HTML */
}

/* Shared photographic hero plates — EA Blue architectural set */
.hero-bg,
.pub-hero-glow,
body.pub-hero-glow {
  background-color: var(--eab-bg) !important;
}
body:has(.compare-wrap) .hero-bg {
  background-image:
    radial-gradient(ellipse 55% 42% at 50% 40%, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.16) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.18) 0%, rgba(247, 248, 250, 0.08) 45%, rgba(247, 248, 250, 0.65) 88%, #f7f8fa 100%),
    url("/seoai-hero-compare.webp?v=20260805u") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
body:has(.mock-stage) .hero-bg,
body:has(.feature-visual) .hero-bg {
  background-image:
    radial-gradient(ellipse 55% 42% at 50% 38%, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.16) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.2) 0%, rgba(247, 248, 250, 0.08) 48%, rgba(247, 248, 250, 0.68) 90%, #f7f8fa 100%),
    url("/seoai-hero-public.webp?v=20260805u") !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
}
/* Directory — new EA Blue AI atrium plate */
body.pub-hero-glow:has(.dir-hero)::before,
body:has(.dir-hero).pub-hero-glow::before {
  background-color: var(--eab-bg) !important;
  background-image:
    radial-gradient(ellipse 55% 42% at 50% 38%, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.16) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.22) 0%, rgba(247, 248, 250, 0.1) 48%, rgba(247, 248, 250, 0.72) 90%, #f7f8fa 100%),
    url("/seoai-hero-directory.webp?v=20260805aa") !important;
  background-size: cover !important;
  background-position: center top !important;
}
/* Why SEOAI / proof report */
body.pub-hero-glow:not(:has(.dir-hero))::before {
  background-color: var(--eab-bg) !important;
  background-image:
    radial-gradient(ellipse 55% 42% at 50% 38%, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.16) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.18) 0%, rgba(247, 248, 250, 0.08) 48%, rgba(247, 248, 250, 0.65) 88%, #f7f8fa 100%),
    url("/seoai-hero-proof.webp?v=20260805u") !important;
  background-size: cover !important;
  background-position: center top !important;
}
.hero-bg .orb,
.hero-bg .orb.a,
.hero-bg .orb.b,
.hero-bg .orb.c {
  display: none !important;
  opacity: 0 !important;
}

/* Nav dropdown (hardcoded purple hover + !important muted links) */
.nav-dd-menu,
.nav-dd .nav-dd-menu,
header .nav-dd-menu {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
}
.nav-dd-menu a,
.nav-dd .nav-dd-menu a,
header .nav-dd-menu a {
  color: var(--eab-muted) !important;
  background: transparent !important;
}
.nav-dd-menu a:hover,
.nav-dd .nav-dd-menu a:hover,
header .nav-dd-menu a:hover {
  background: var(--eab-pale) !important;
  color: var(--eab-ink) !important;
}
.nav-dd-btn,
.nav-dd.open .nav-dd-btn,
.nav-dd.active .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.nav-dd-btn:hover,
.nav-dd.open .nav-dd-btn,
.nav-dd.active .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.hamburger {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
.hamburger:hover,
.hamburger[aria-expanded="true"] {
  background: var(--eab-pale) !important;
  border-color: rgba(49, 87, 246, 0.35) !important;
  color: var(--eab-ink) !important;
}

/* Compare page table / cards */
.compare-wrap,
.table-scroll {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
  backdrop-filter: none !important;
}
table.compare thead th,
table.compare thead th.col-feature,
table.compare thead th.col-seoai {
  background: #eef2ff !important;
  color: var(--eab-ink) !important;
  border-bottom: 1px solid var(--eab-border) !important;
}
table.compare thead th.col-seoai {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
}
table.compare tbody tr {
  border-bottom: 1px solid var(--eab-border) !important;
}
table.compare tbody td {
  background: var(--eab-surface) !important;
  color: var(--eab-ink) !important;
}
table.compare tbody td.col-feature {
  background: #f7f8fa !important;
  color: var(--eab-ink) !important;
}
table.compare code,
.col-feature code {
  color: var(--eab-cobalt) !important;
}
.glance-card,
.tool-card,
.compare-card {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
.glance-card p,
.glance-card strong,
.tool-card p {
  color: var(--eab-muted) !important;
}
.glance-card strong[style],
.tool-card strong[style] {
  color: var(--eab-ink) !important;
}
.feature-card.lead h3 {
  color: var(--eab-cobalt) !important;
}
.hero p strong {
  color: var(--eab-ink) !important;
}

/* Public-page product mock + feature visuals */
.mock,
.mock-stage .mock {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
}
.mock-bar {
  background: #f3f5f9 !important;
  border-bottom: 1px solid var(--eab-border) !important;
}
.mock-bar .url {
  color: var(--eab-cobalt) !important;
  background: var(--eab-pale) !important;
}
.mock-left,
.mock-right {
  background: var(--eab-surface) !important;
  border-color: var(--eab-border) !important;
}
.mock-left .tag {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border: 1px solid #c5d0f0 !important;
}
.mock-left .tag.cyan,
.mock-left .tag.green {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border-color: #c5d0f0 !important;
}
.mock-left h3,
.mock-left .meta-grid b {
  color: var(--eab-ink) !important;
}
.mock-left .loc,
.mock-left .blurb,
.mock-left .meta-grid span {
  color: var(--eab-muted) !important;
}
.btn-glow,
a.btn-glow {
  background: var(--eab-cobalt) !important;
  color: #fff !important;
  border: 1px solid var(--eab-cobalt) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.btn-glow:hover,
a.btn-glow:hover {
  background: var(--eab-cobalt-hover) !important;
  box-shadow: 0 6px 18px rgba(49, 87, 246, 0.22) !important;
  transform: none !important;
}
.btn-ghost,
a.btn-ghost {
  background: var(--eab-surface) !important;
  border: 1.5px solid var(--eab-cobalt) !important;
  color: var(--eab-cobalt) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.btn-ghost:hover,
a.btn-ghost:hover {
  background: var(--eab-pale) !important;
  border-color: var(--eab-cobalt) !important;
  color: var(--eab-cobalt) !important;
}
.hero .pill,
.hero .sub {
  color: var(--eab-muted) !important;
  background: var(--eab-pale) !important;
  border-color: #c5d0f0 !important;
  box-shadow: none !important;
}
.hero .sub { background: transparent !important; border: none !important; }
.hero h1 .grad {
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  color: var(--eab-cobalt) !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
  animation: none !important;
}
.feature-visual,
.fv-card {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
}
.fv-card .k,
.section-kicker,
.marquee span::before {
  color: var(--eab-cobalt) !important;
}
.shot-card,
.shot-frame {
  background: var(--eab-bg) !important;
  border-color: var(--eab-border) !important;
}
.shot-caption a { color: var(--eab-cobalt) !important; }
.cta-band,
.final-cta {
  background: var(--eab-pale) !important;
  border-color: var(--eab-border) !important;
  box-shadow: none !important;
}
.final-cta h2,
.cta-band h2 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.final-cta p,
.cta-band p {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}

/* Directory (profiles-index) */
.dir-hero h1,
.dir-meta-row strong,
.dir-card-title h3,
.dir-avatar-fallback,
.feat-card,
.feat-card h4 {
  color: var(--eab-ink) !important;
  -webkit-text-fill-color: var(--eab-ink) !important;
}
.dir-hero h1 span {
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
  color: var(--eab-cobalt) !important;
}
.dir-hero p,
.dir-meta,
.dir-summary,
.dir-empty,
.dir-no-results,
.feat-meta,
.dir-meta-row {
  color: var(--eab-muted) !important;
}
.dir-eyebrow,
.dir-pill-creator,
.dir-tab:not(.active) .dir-tab-count,
.dir-featured-title,
.feat-pill {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border: 1px solid #c5d0f0 !important;
}
.dir-pill-project {
  background: #eef2ff !important;
  color: var(--eab-cobalt) !important;
  border: 1px solid #c5d0f0 !important;
}
.dir-tab {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-muted) !important;
}
.dir-tab:hover {
  background: var(--eab-pale) !important;
  border-color: rgba(49, 87, 246, 0.35) !important;
  color: var(--eab-ink) !important;
}
.dir-tab.active {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border-color: var(--eab-cobalt) !important;
}
.dir-search input {
  background: var(--eab-surface) !important;
  color: var(--eab-ink) !important;
  border: 1.5px solid #b8c0ce !important;
}
.dir-search input::placeholder { color: #6b7280 !important; }
.dir-search input:focus {
  border-color: rgba(49, 87, 246, 0.45) !important;
  box-shadow: 0 0 0 3px rgba(49, 87, 246, 0.12) !important;
}
.dir-card {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
  backdrop-filter: none !important;
}
.dir-card:hover {
  border-color: rgba(49, 87, 246, 0.35) !important;
  box-shadow: var(--eab-shadow) !important;
  transform: none !important;
}
.dir-avatar {
  background: var(--eab-pale) !important;
  border: 1px solid var(--eab-border) !important;
}
.dir-featured {
  background: var(--eab-pale) !important;
  color: var(--eab-ink) !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: var(--eab-shadow) !important;
}
.feat-card {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
}
.feat-card:hover {
  background: #f3f5f9 !important;
  transform: none !important;
}
.dir-meta-row a { color: var(--eab-cobalt) !important; }

/* Site header variants used on directory/proof */
.site-header,
header.site-header {
  background: rgba(255, 255, 255, 0.72) !important;
  background-color: rgba(255, 255, 255, 0.72) !important;
  border-bottom: 1px solid rgba(215, 220, 229, 0.65) !important;
  box-shadow: 0 1px 0 rgba(17, 24, 39, 0.04) !important;
  backdrop-filter: blur(14px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
  overflow: visible !important;
}
.site-header nav a:not(.cta),
header.site-header nav a:not(.cta),
.site-header nav#primary-nav > a:not(.cta),
.site-header .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.site-header nav a:not(.cta):hover,
header.site-header nav a:not(.cta):hover,
.site-header nav a:not(.cta).active,
header.site-header nav a:not(.cta).active,
.site-header .nav-dd-btn:hover {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.site-header nav a.cta,
header.site-header nav a.cta {
  background: var(--eab-cobalt) !important;
  border: 1px solid var(--eab-cobalt) !important;
  color: #fff !important;
  box-shadow: none !important;
}
/* Proof report */
.container h1,
.container h2,
.container h3,
.container strong {
  color: var(--eab-ink) !important;
}
.container h2 {
  border-bottom-color: var(--eab-cobalt) !important;
  color: var(--eab-ink) !important;
}
.container p,
.container .subtitle,
.search-result .sr-desc,
.stat-label,
.source {
  color: var(--eab-muted) !important;
}
.search-result .sr-title,
.tier-card h4 {
  color: var(--eab-ink) !important;
}
.search-result,
.tier-card,
.stat-card,
.comparison > div,
.code-block {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
  box-shadow: var(--eab-shadow) !important;
}
.code-block {
  background: #f3f5f9 !important;
  color: var(--eab-ink) !important;
}
.neutral-box {
  background: var(--eab-pale) !important;
  border-color: #c5d0f0 !important;
  border-left-color: var(--eab-cobalt) !important;
}
.lang-switch a,
.lang-switch select {
  background: var(--eab-surface) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
.lang-switch a:hover {
  background: var(--eab-pale) !important;
  border-color: rgba(49, 87, 246, 0.35) !important;
}
.btn-primary,
a.btn-primary {
  background: var(--eab-cobalt) !important;
  color: #fff !important;
  border: 1px solid var(--eab-cobalt) !important;
  box-shadow: none !important;
}
table th, table td {
  border-color: var(--eab-border) !important;
}
tr:hover td { background: #f3f5f9 !important; }

/* Landing leftover score / lead / how / pages (non-mobile) */
.lead-grid input,
.score-form input {
  color: var(--eab-ink) !important;
}
.lead-grid input,
.lead-form input {
  background: var(--eab-bg) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
.lead-grid button,
.lead-form button,
.unlock-cta,
.pages-cta a,
.how-path-cta a {
  background: var(--eab-cobalt) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid var(--eab-cobalt) !important;
  box-shadow: none !important;
}
.scope-tag.ai,
.scope-tag.web,
.pv-tag.ai,
.pv-tag.web,
.rubric-col-head {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border-color: #c5d0f0 !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
}
.pages-checklist li strong,
.pv-url span,
.how-path-tag {
  color: var(--eab-cobalt) !important;
}
.pv-section code .hl-key,
.pv-section code .hl-val {
  color: var(--eab-cobalt) !important;
}
.preview-frame,
.page-preview,
.how-path-card {
  background: var(--eab-surface) !important;
  border-color: var(--eab-border) !important;
}

/* Mobile shell — must match/exceed body.seoai-mapp specificity */
@media (max-width: 768px) {
  :root {
    --m-bg: #f7f8fa !important;
    --m-fg: #111827 !important;
    --m-muted: #49505b !important;
    --m-line: #d7dce5 !important;
    --m-surface: #ffffff !important;
    --m-surface-2: #f7f8fa !important;
    --m-accent: #3157f6 !important;
  }

  html, body,
  body.seoai-mapp,
  body.seoai-has-mnav {
    background: #f7f8fa !important;
    color: #111827 !important;
  }

  body.seoai-mapp > header:not(.dir-hero),
  body.seoai-mapp > .site-header {
    background: rgba(255, 255, 255, 0.82) !important;
    background-color: rgba(255, 255, 255, 0.82) !important;
    border-bottom: 1px solid rgba(215, 220, 229, 0.7) !important;
    box-shadow: 0 1px 0 rgba(17, 24, 39, 0.04) !important;
    backdrop-filter: blur(14px) saturate(1.2) !important;
    -webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
  }
  body.seoai-mapp .seoai-m-login,
  body.seoai-mapp > header:not(.dir-hero) .hamburger,
  body.seoai-mapp > .site-header .hamburger {
    border: 1px solid #d7dce5 !important;
    background: #ffffff !important;
    color: #111827 !important;
  }

  body.seoai-mapp > .theatre-wrap {
    background-color: #f7f8fa !important;
    background-image: none !important;
  }
  /* Mobile: do NOT force ~88vh — hero CTAs are hidden (dock), so tall min-height = empty gap */
  body.seoai-mapp > .theatre-wrap > section.hero.hero-theatre,
  body.seoai-mapp section.hero.hero-theatre,
  section.hero.hero-theatre {
    min-height: 0 !important;
    height: auto !important;
    padding: 32px 20px 40px !important;
    background-color: #f7f8fa !important;
    background-image:
      radial-gradient(ellipse 90% 70% at 50% 20%, rgba(247, 248, 250, 0.92) 0%, rgba(247, 248, 250, 0.55) 55%, rgba(247, 248, 250, 0.2) 100%),
      linear-gradient(180deg, rgba(247, 248, 250, 0.72) 0%, rgba(247, 248, 250, 0.55) 42%, rgba(247, 248, 250, 0.88) 88%, #f7f8fa 100%),
      url("/seoai-hero-home.webp?v=20260805x") !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
  }
  body.seoai-mapp section.hero.hero-theatre h1,
  section.hero.hero-theatre h1 {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  }
  body.seoai-mapp section.hero.hero-theatre > p:not(.hero-blockchain):not(.patent-notice),
  section.hero.hero-theatre > p:not(.hero-blockchain):not(.patent-notice) {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-weight: 500 !important;
    opacity: 1 !important;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.95) !important;
    max-width: 34em !important;
  }

  body.seoai-mapp .score-card {
    background: #ffffff !important;
    border: 1px solid #d7dce5 !important;
    box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 4px 16px rgba(17, 24, 39, 0.04) !important;
  }
  body.seoai-mapp .score-card > h2 {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
  }
  body.seoai-mapp .score-card > p.sub,
  body.seoai-mapp .score-card .seoai-m-why {
    color: #49505b !important;
  }
  body.seoai-mapp .score-card .seoai-m-why strong {
    color: #111827 !important;
  }
  body.seoai-mapp .score-form input {
    background: #f7f8fa !important;
    border: 1px solid #d7dce5 !important;
    color: #111827 !important;
  }
  body.seoai-mapp .score-form input:focus {
    border-color: rgba(49, 87, 246, 0.45) !important;
  }
  body.seoai-mapp .score-form button,
  body.seoai-mapp .score-form button:hover,
  body.seoai-mapp .score-form button:active {
    background: #3157f6 !important;
    border: 1px solid #3157f6 !important;
    color: #fff !important;
    box-shadow: none !important;
    text-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  body.seoai-mapp .score-form button:hover,
  body.seoai-mapp .score-form button:active {
    background: #2546d4 !important;
    border-color: #2546d4 !important;
  }

  body.seoai-mapp > .theatre-wrap > section.hero h1 {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
  }
  body.seoai-mapp > .theatre-wrap > section.hero h1 span,
  body.seoai-mapp > .theatre-wrap > section.hero h1 .grad,
  body.seoai-mapp > .theatre-wrap > section.hero h1 .hero-glow {
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    color: #3157f6 !important;
    -webkit-text-fill-color: #3157f6 !important;
    animation: none !important;
    filter: none !important;
  }
  body.seoai-mapp > .theatre-wrap > section.hero > p:not(.hero-blockchain):not(.patent-notice) {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-weight: 500 !important;
  }
  /* Keep last theatre content clear of sticky mobile dock */
  body.seoai-mapp > .theatre-wrap {
    padding-bottom: 88px !important;
  }

  /* Mobile dock / bottom nav */
  body.seoai-mapp .seoai-mnav,
  .seoai-mnav,
  body.seoai-mapp .seoai-m-dock,
  .seoai-m-dock {
    background: rgba(255, 255, 255, 0.96) !important;
    border-top: 1px solid #d7dce5 !important;
    box-shadow: 0 -4px 16px rgba(17, 24, 39, 0.06) !important;
    backdrop-filter: blur(14px) saturate(1.1) !important;
    -webkit-backdrop-filter: blur(14px) saturate(1.1) !important;
  }
  body.seoai-mapp .seoai-mnav a,
  .seoai-mnav a {
    color: #49505b !important;
  }
  body.seoai-mapp .seoai-mnav a.active,
  .seoai-mnav a.active {
    color: #3157f6 !important;
  }

  body.seoai-mapp .seoai-m-dock a.ghost,
  .seoai-m-dock a.ghost {
    background: #ffffff !important;
    border: 1.5px solid #3157f6 !important;
    color: #3157f6 !important;
    -webkit-text-fill-color: #3157f6 !important;
    box-shadow: none !important;
  }
  body.seoai-mapp .seoai-m-dock a.primary,
  .seoai-m-dock a.primary {
    background: #3157f6 !important;
    border: 1px solid #3157f6 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
  }
}

/* Force light ink on common white-on-dark leftovers */
.problem-card h3,
.feature-card h3,
.step h3,
.how-path-card h3,
.pages-checklist li strong,
.dual-card .dual-number,
#gc-score-num {
  color: var(--eab-ink) !important;
  -webkit-text-fill-color: var(--eab-ink) !important;
}

/* Inline-style color heads on landing rubric (attribute selectors) */
.rubric-col-head[style*="BC42FF"],
.rubric-col-head[style*="14B4E6"],
[style*="color:#BC42FF"],
[style*="color:#14B4E6"] {
  color: #3157f6 !important;
}

/* Keep footer intentionally ink (enterprise chrome) — already set above */

/* ═══════════════════════════════════════════════════════════════
   HOME / landing polish v20260805a
   Score results purple, header align, Help FAB, score-card elevation
   ═══════════════════════════════════════════════════════════════ */

/* Header chrome — desktop alignment only.
   Do NOT force nav display:flex on mobile; that breaks hamburger hide/show.
   Never apply to <header class="dir-hero">. */
header:not(.dir-hero),
.site-header {
  display: flex !important;
  align-items: center !important;
}
header:not(.dir-hero) .logo,
.site-header .logo,
header:not(.dir-hero) .logo a,
.site-header .logo a {
  display: flex !important;
  align-items: center !important;
  line-height: 0 !important;
}
header:not(.dir-hero) .logo img,
.site-header .logo img {
  display: block !important;
  height: 36px !important;
  width: auto !important;
  max-height: 36px !important;
  object-fit: contain !important;
}

@media (min-width: 769px) {
  header nav,
  header nav#primary-nav,
  header.site-header nav#primary-nav {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
  }
  header nav a.cta,
  header nav#primary-nav a.cta {
    margin-left: auto !important;
    margin-right: 0 !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
    border-radius: 8px !important;
  }
  .lang-switch,
  header .lang-switch,
  .site-header .lang-switch,
  header nav .lang-switch,
  header nav#primary-nav .lang-switch {
    display: inline-flex !important;
    align-items: center !important;
    align-self: center !important;
    margin: 0 0 0 10px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 10px !important;
    margin-right: 0 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    text-align: left !important;
    font-size: inherit !important;
    vertical-align: middle !important;
  }
}

.lang-btn {
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
  border-radius: 8px !important;
  margin: 0 !important;
}
.lang-btn svg {
  width: 14px !important;
  height: 14px !important;
  margin-left: 4px !important;
}

/* Mobile hamburger drawer — restore closed/open behavior + light EA Blue panel */
@media (max-width: 768px) {
  header nav,
  header nav#primary-nav,
  header.site-header nav#primary-nav {
    display: none !important;
    flex: none !important;
    width: auto !important;
    margin: 0 !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    background: #ffffff !important;
    border-bottom: 1px solid #d7dce5 !important;
    box-shadow: 0 10px 28px rgba(17, 24, 39, 0.08) !important;
    padding: 8px 0 !important;
    z-index: 200 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  header nav.open,
  header nav#primary-nav.open,
  header.site-header nav#primary-nav.open {
    display: flex !important;
  }

  header nav a,
  header nav#primary-nav a,
  header.site-header nav#primary-nav > a {
    margin-left: 0 !important;
    padding: 14px 20px !important;
    font-size: 0.95rem !important;
    border-bottom: 1px solid #eef1f6 !important;
    text-align: left !important;
    color: #49505b !important;
  }

  header nav a:hover,
  header nav#primary-nav a:hover,
  header.site-header nav#primary-nav > a:hover,
  header nav a.active,
  header.site-header nav#primary-nav > a.active {
    color: #111827 !important;
  }

  header nav a.cta,
  header nav#primary-nav a.cta,
  header.site-header nav#primary-nav a.cta {
    margin: 10px 16px 6px !important;
    padding: 12px 18px !important;
    height: auto !important;
    min-height: 0 !important;
    text-align: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    display: flex !important;
    background: #3157f6 !important;
    border: 1px solid #3157f6 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
  }

  header nav .lang-switch,
  header nav#primary-nav .lang-switch {
    display: block !important;
    margin: 6px 16px 8px !important;
    align-self: stretch !important;
  }

  header nav .lang-switch .lang-btn {
    width: 100% !important;
    justify-content: space-between !important;
  }

  header nav .nav-dd,
  header nav#primary-nav .nav-dd {
    width: 100% !important;
  }

  header nav .nav-dd-btn {
    width: 100% !important;
    justify-content: space-between !important;
    padding: 14px 20px !important;
  }

  header nav .nav-dd-menu {
    position: static !important;
    display: none !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    background: #f7f8fa !important;
    padding: 0 !important;
  }

  header nav .nav-dd.open .nav-dd-menu,
  header nav .nav-dd.active .nav-dd-menu {
    display: block !important;
  }

  .hamburger,
  header .hamburger,
  header.site-header .hamburger,
  #hamburger-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    z-index: 210 !important;
    pointer-events: auto !important;
  }
}

/* Score card elevation — white surface that reads as the tool */
.score.score-theatre .score-card,
.score-card {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow:
    0 1px 2px rgba(17, 24, 39, 0.04),
    0 12px 40px rgba(17, 24, 39, 0.08) !important;
}
.score.score-theatre .score-form,
.score-form {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: none !important;
}

/* Kill purple / cyan in score grades + unlock gate */
.dual-card.ai-card .dual-grade,
.dual-card.web-card .dual-grade,
.dual-scores--theatre .dual-grade,
.dual-grade {
  background: rgba(49, 87, 246, 0.12) !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  border: 1px solid rgba(49, 87, 246, 0.28) !important;
}
.score-coverage,
.score-coverage.score-coverage--warn {
  background: rgba(49, 87, 246, 0.08) !important;
  border: 1px solid rgba(49, 87, 246, 0.28) !important;
}
.score-coverage-title,
.score-coverage-body,
.score-coverage .score-meta {
  color: var(--eab-ink) !important;
  -webkit-text-fill-color: var(--eab-ink) !important;
}
.lead-gate {
  background: rgba(49, 87, 246, 0.04) !important;
  border: 1px solid rgba(49, 87, 246, 0.18) !important;
}
.lead-gate p {
  color: var(--eab-muted) !important;
}
.lead-grid button,
.lead-gate button,
.lead-form button {
  background: var(--eab-cobalt) !important;
  border: 1px solid var(--eab-cobalt) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.lead-grid button:hover,
.lead-gate button:hover {
  background: var(--eab-cobalt-hover) !important;
  border-color: var(--eab-cobalt-hover) !important;
}

/* FAQ chevron + checklist icons on landing */
.faq-chev,
.faq-acc .faq-chev {
  background: var(--eab-pale) !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: none !important;
}
.faq-chev::before,
.faq-chev::after {
  background: var(--eab-cobalt) !important;
}
.pages-checklist li .cl-icon,
.cl-icon {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: none !important;
}
.pages-checklist li .cl-icon svg,
.cl-icon svg {
  stroke: var(--eab-cobalt) !important;
  color: var(--eab-cobalt) !important;
}
.pages-checklist li strong {
  color: var(--eab-ink) !important;
}

/* Patent badge breathing room under AI pills */
.hero.hero-theatre .patent-notice,
.patent-notice {
  margin-top: 18px !important;
}

/* Help widget (#seoai-help-root) — light EA chrome
   Actual DOM ids: #seoai-help-pill, #seoai-help-panel, .seoai-help-hd */
#seoai-help-root {
  color: var(--eab-ink) !important;
}
#seoai-help-pill,
#seoai-help-root > button#seoai-help-pill,
#seoai-help-root > button {
  background: #ffffff !important;
  color: var(--eab-ink) !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: 0 4px 18px rgba(17, 24, 39, 0.1) !important;
  backdrop-filter: blur(12px) saturate(1.1) !important;
  -webkit-backdrop-filter: blur(12px) saturate(1.1) !important;
}
#seoai-help-pill:hover,
#seoai-help-root > button:hover {
  background: #f7f8fa !important;
  border-color: rgba(49, 87, 246, 0.35) !important;
  transform: translateY(-1px) !important;
}
#seoai-help-pill .dot,
#seoai-help-pill span.dot {
  background: #3157f6 !important;
  box-shadow: 0 0 0 3px rgba(49, 87, 246, 0.18) !important;
}
#seoai-help-pill span:not(.dot) {
  color: var(--eab-ink) !important;
}
#seoai-help-panel,
#seoai-help-root #seoai-help-panel {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: 0 18px 48px rgba(17, 24, 39, 0.14) !important;
  color: var(--eab-ink) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#seoai-help-panel .seoai-help-hd,
.seoai-help-hd {
  background: linear-gradient(180deg, rgba(49, 87, 246, 0.08), transparent) !important;
  border-bottom: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
#seoai-help-panel .seoai-help-hd h2,
.seoai-help-hd h2 {
  color: var(--eab-ink) !important;
}
#seoai-help-panel .seoai-help-hd p,
.seoai-help-hd p {
  color: var(--eab-muted) !important;
}
#seoai-help-root .seoai-help-contacts,
.seoai-help-contacts {
  color: var(--eab-muted) !important;
}
#seoai-help-root .seoai-help-x,
.seoai-help-x {
  background: var(--eab-bg) !important;
  color: var(--eab-ink) !important;
}
#seoai-help-root .seoai-help-pin,
.seoai-help-pin {
  background: rgba(49, 87, 246, 0.05) !important;
  border-bottom: 1px solid var(--eab-border) !important;
}
#seoai-help-root .seoai-help-pin a.community,
.seoai-help-pin a.community {
  color: var(--eab-ink) !important;
  background: var(--eab-surface) !important;
  border: 1px solid rgba(49, 87, 246, 0.35) !important;
  box-shadow: none !important;
}
#seoai-help-root .seoai-help-msg.bot,
.seoai-help-msg.bot {
  background: var(--eab-bg) !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
#seoai-help-root .seoai-help-msg.bot strong,
.seoai-help-msg.bot strong {
  color: var(--eab-ink) !important;
}
#seoai-help-root .seoai-help-msg.bot a,
.seoai-help-msg.bot a {
  color: var(--eab-cobalt) !important;
}
#seoai-help-root .seoai-help-msg.user,
.seoai-help-msg.user {
  background: rgba(49, 87, 246, 0.12) !important;
  border: 1px solid rgba(49, 87, 246, 0.28) !important;
  color: var(--eab-ink) !important;
}
#seoai-help-root .seoai-help-form,
.seoai-help-form {
  background: var(--eab-bg) !important;
  border-top: 1px solid var(--eab-border) !important;
}
#seoai-help-root .seoai-help-form input,
.seoai-help-form input {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}
#seoai-help-root .seoai-help-form input:focus,
.seoai-help-form input:focus {
  border-color: rgba(49, 87, 246, 0.55) !important;
}
#seoai-help-root .seoai-help-form > button,
.seoai-help-form > button {
  background: var(--eab-cobalt) !important;
  border: 1px solid var(--eab-cobalt) !important;
  color: #fff !important;
  box-shadow: none !important;
}
#seoai-help-root .seoai-help-contacts a,
.seoai-help-contacts a {
  color: var(--eab-cobalt) !important;
}

/* ═══════════════════════════════════════════════════════════════
   DIRECTORY polish v20260805c
   ═══════════════════════════════════════════════════════════════ */

/* Kill hardcoded dark plate behind directory (inline body.pub-hero-glow) */
html:has(.dir-hero),
body.pub-hero-glow:has(.dir-hero),
body:has(.dir-hero) {
  background: var(--eab-bg) !important;
  background-color: var(--eab-bg) !important;
  color: var(--eab-ink) !important;
}
body.pub-hero-glow:has(.dir-hero)::before,
body:has(.dir-hero)::before {
  background-color: var(--eab-bg) !important;
  background-image:
    radial-gradient(ellipse 55% 42% at 50% 38%, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.16) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.22) 0%, rgba(247, 248, 250, 0.1) 48%, rgba(247, 248, 250, 0.72) 90%, #f7f8fa 100%),
    url("/seoai-hero-directory.webp?v=20260805aa") !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
}

/* CTA must stay white-on-cobalt (page CSS uses purple translucent CTA) */
.site-header nav#primary-nav a.cta,
header.site-header nav#primary-nav a.cta,
.site-header nav a.cta {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}
.site-header nav#primary-nav a.cta:hover,
header.site-header nav#primary-nav a.cta:hover {
  background: #2546d4 !important;
  border-color: #2546d4 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Discover dropdown + lang on directory header */
.site-header .nav-dd-btn,
.site-header .nav-dd-btn:hover,
.site-header .nav-dd.open .nav-dd-btn,
.site-header .nav-dd.active .nav-dd-btn {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.site-header .nav-dd.open .nav-dd-btn,
.site-header .nav-dd.active .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.site-header .nav-dd-menu {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
}
.site-header .nav-dd-menu a {
  color: var(--eab-muted) !important;
}
.site-header .nav-dd-menu a:hover,
.site-header .nav-dd-menu a.active {
  background: var(--eab-pale) !important;
  color: var(--eab-ink) !important;
}
.site-header .lang-btn {
  background: rgba(255, 255, 255, 0.72) !important;
  border: 1px solid #d7dce5 !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.site-header .lang-menu {
  top: 100% !important;
  margin-top: 2px !important;
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 8px 24px rgba(17, 24, 39, 0.12) !important;
}
.site-header .lang-option { color: #000000 !important; -webkit-text-fill-color: #000000 !important; }
.site-header .lang-option:hover {
  background: #eef2ff !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.site-header .lang-option.active { color: #3157f6 !important; -webkit-text-fill-color: #3157f6 !important; }
.site-header .hamburger {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}

/* Mobile drawer on directory/proof headers */
@media (max-width: 768px) {
  .site-header nav#primary-nav,
  .site-header nav#primary-nav.open {
    background: #ffffff !important;
    border-bottom: 1px solid var(--eab-border) !important;
    box-shadow: 0 10px 28px rgba(17, 24, 39, 0.08) !important;
  }
  .site-header nav#primary-nav > a {
    color: var(--eab-muted) !important;
    border-bottom: 1px solid #eef1f6 !important;
  }
  .site-header nav#primary-nav > a:hover,
  .site-header nav#primary-nav > a.active {
    color: var(--eab-ink) !important;
  }
}

/* Hero meta row — stop horizontal overflow on small screens */
.dir-meta-row {
  max-width: 100% !important;
  width: 100% !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px 12px !important;
  padding: 0 8px !important;
  box-sizing: border-box !important;
  overflow-wrap: anywhere !important;
}
header.dir-hero,
.dir-hero {
  display: block !important;
  align-items: unset !important;
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  text-align: center !important;
  overflow: hidden !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}
.dir-controls {
  align-items: stretch !important;
  gap: 12px !important;
}
.dir-tabs {
  max-width: 100% !important;
}
.dir-search {
  flex: 1 1 100% !important;
  max-width: 100% !important;
}
@media (min-width: 720px) {
  .dir-search {
    flex: 1 1 240px !important;
    max-width: 340px !important;
  }
  .dir-controls {
    align-items: center !important;
  }
}

/* Card text contrast on light surfaces */
.dir-card-title h3,
.dir-avatar-fallback {
  color: var(--eab-ink) !important;
}
.dir-summary {
  color: #3d4654 !important;
}
.dir-meta,
.dir-empty,
.dir-no-results {
  color: #3d4654 !important;
}
.dir-tab.active {
  background: var(--eab-pale) !important;
  color: var(--eab-cobalt) !important;
  border: 1px solid #3157f6 !important;
}
.dir-tab.active .dir-tab-count {
  background: rgba(49, 87, 246, 0.14) !important;
  color: var(--eab-cobalt) !important;
}
.dir-pill-news {
  background: #e8f5e9 !important;
  color: #2e7d32 !important;
  border: 1px solid #c8e6c9 !important;
}
.dir-verified {
  background: #e8f5e9 !important;
  color: #2e7d32 !important;
  border: 1px solid #c8e6c9 !important;
}
/* ═══════════════════════════════════════════════════════════════
   PUBLIC-PAGE polish v20260805d
   ═══════════════════════════════════════════════════════════════ */

/* Contain decorative orbs + marquees so they don't widen the page */
html:has(.mock-stage),
html:has(.feature-visual),
html:has(.marquee-wrap),
body:has(.mock-stage),
body:has(.feature-visual),
body:has(.marquee-wrap) {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}
.hero-bg,
.marquee-wrap,
.mock-stage {
  overflow: hidden !important;
  max-width: 100% !important;
}
.marquee-wrap {
  width: 100% !important;
}
.hero-bg .orb,
.hero-bg .orb.a,
.hero-bg .orb.b,
.hero-bg .orb.c {
  opacity: 0.08 !important;
  background: rgba(49, 87, 246, 0.35) !important;
  filter: blur(90px) !important;
  pointer-events: none !important;
}

/* Secondary CTA must not inherit solid cobalt from .hero .btn */
.hero a.btn.btn-ghost,
.hero .btn.btn-ghost,
a.btn.btn-ghost,
.btn.btn-ghost {
  background: #ffffff !important;
  border: 1.5px solid #3157f6 !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.hero a.btn.btn-ghost:hover,
.hero .btn.btn-ghost:hover,
a.btn.btn-ghost:hover,
.btn.btn-ghost:hover {
  background: #dde6ff !important;
  border-color: #3157f6 !important;
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Public-page header CTA/lang align (same as home) */
body:has(.mock-stage) header:not(.dir-hero),
body:has(.feature-visual) header:not(.dir-hero),
body:has(.mock-stage) .site-header,
body:has(.feature-visual) .site-header {
  display: flex !important;
  align-items: center !important;
  background: rgba(255, 255, 255, 0.72) !important;
  background-color: rgba(255, 255, 255, 0.72) !important;
  border-bottom: 1px solid rgba(215, 220, 229, 0.65) !important;
  box-shadow: 0 1px 0 rgba(17, 24, 39, 0.04) !important;
  backdrop-filter: blur(14px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
}
body:has(.mock-stage) header nav a.cta,
body:has(.feature-visual) header nav a.cta {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  height: 40px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  box-shadow: none !important;
}
body:has(.mock-stage) header nav a:hover,
body:has(.feature-visual) header nav a:hover,
body:has(.mock-stage) header nav a.active,
body:has(.feature-visual) header nav a.active {
  color: var(--eab-ink) !important;
}

/* Marquee on light surface */
.marquee-wrap {
  background: transparent !important;
  border-color: var(--eab-border) !important;
}
.marquee span {
  color: var(--eab-muted) !important;
}
.marquee span::before {
  color: var(--eab-cobalt) !important;
}

/* ═══════════════════════════════════════════════════════════════
   COMPARE + PROOF polish v20260805e
   ═══════════════════════════════════════════════════════════════ */

/* Compare hero: sharp ink subtitle — no soft white halo (looked fuzzy) */
body:has(.compare-wrap) .hero p,
body:has(.compare-wrap) .hero .sub,
body:has(.compare-wrap) .hero-copy p {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 500 !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body:has(.compare-wrap) .hero h1 {
  text-shadow: none !important;
}
body:has(.compare-wrap) .hero {
  background:
    radial-gradient(ellipse 70% 50% at 50% 35%, rgba(247, 248, 250, 0.88) 0%, rgba(247, 248, 250, 0.45) 55%, rgba(247, 248, 250, 0.15) 100%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.55) 0%, rgba(247, 248, 250, 0.35) 45%, rgba(247, 248, 250, 0.92) 78%, #f7f8fa 100%) !important;
}
body:has(.compare-wrap) .hero-bg {
  background-image:
    radial-gradient(ellipse 60% 45% at 50% 38%, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0.22) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.28) 0%, rgba(247, 248, 250, 0.12) 45%, rgba(247, 248, 250, 0.72) 88%, #f7f8fa 100%),
    url("/seoai-hero-compare.webp?v=20260805u") !important;
}
body:has(.compare-wrap) header nav a.cta {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  height: 40px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
}
body:has(.compare-wrap) .lang-btn {
  height: 40px !important;
  padding: 0 14px !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* Proof report tables — kill dark th/td from inline styles
   NOTE: class is on body itself → use body.pub-hero-glow (not :has) */
body.pub-hero-glow table th,
body.pub-hero-glow .container table th,
.container table th {
  background: #eef2ff !important;
  color: var(--eab-ink) !important;
  border-bottom: 1px solid var(--eab-border) !important;
}
body.pub-hero-glow table td,
body.pub-hero-glow .container table td,
.container table td {
  background: #ffffff !important;
  color: var(--eab-ink) !important;
  border-bottom: 1px solid var(--eab-border) !important;
}
body.pub-hero-glow table tr:hover td,
.container table tr:hover td {
  background: #f3f5f9 !important;
}

/* Proof callout / findings boxes */
.neutral-box,
.data-box,
.findings,
.key-findings,
.callout,
.note-box {
  background: rgba(49, 87, 246, 0.06) !important;
  border: 1px solid rgba(49, 87, 246, 0.22) !important;
  color: var(--eab-ink) !important;
}
.neutral-box strong,
.data-box strong,
.findings strong,
.key-findings strong,
.callout strong {
  color: var(--eab-ink) !important;
}
.data-box li,
.data-box p {
  color: var(--eab-ink) !important;
}

.stat-card .stat,
.stat .num,
.kpi .num,
.proof-stat,
.metric-value {
  color: var(--eab-cobalt) !important;
  -webkit-text-fill-color: var(--eab-cobalt) !important;
}

body.pub-hero-glow:not(:has(.dir-hero)) header.site-header nav a.cta {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* ═══════════════════════════════════════════════════════════════
   HOME layout fix v20260805g — right-side CTA + full-bleed photo hero
   ═══════════════════════════════════════════════════════════════ */

/* Kill the global `section { max-width:1000px }` box around hero only */
.theatre-wrap > section.hero.hero-theatre,
section.hero.hero-theatre {
  max-width: none !important;
  width: 100% !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Title/copy readable on photo, not inside a surface card */
.theatre-wrap > section.hero.hero-theatre h1,
section.hero.hero-theatre h1 {
  color: #111827 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.9), 0 10px 36px rgba(247, 248, 250, 0.85) !important;
}
.theatre-wrap > section.hero.hero-theatre h1 span,
.theatre-wrap > section.hero.hero-theatre h1 .grad,
.theatre-wrap > section.hero.hero-theatre h1 .hero-glow {
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}
.theatre-wrap > section.hero.hero-theatre > p:not(.hero-blockchain):not(.patent-notice) {
  color: #111827 !important;
  font-weight: 500 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.95), 0 8px 24px rgba(247, 248, 250, 0.9) !important;
}
.theatre-wrap > section.hero.hero-theatre .hero-blockchain {
  color: #2546d4 !important;
  font-weight: 600 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}
.theatre-wrap > section.hero.hero-theatre .ai-badges span {
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid #c5d0f0 !important;
  color: #31415a !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04) !important;
}
.theatre-wrap > section.hero.hero-theatre .patent-notice {
  background: rgba(255, 255, 255, 0.95) !important;
  color: #111827 !important;
  border: 1px solid #d7dce5 !important;
}

/* Score tool stays a card; hero does not */
.theatre-wrap > section.score.score-theatre {
  max-width: none !important;
  width: 100% !important;
  background: transparent !important;
}

@media (max-width: 768px) {
  body.seoai-mapp > .theatre-wrap > section.hero,
  body.seoai-mapp section.hero.hero-theatre,
  section.hero.hero-theatre {
    max-width: none !important;
    width: 100% !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  body.seoai-mapp > .theatre-wrap {
    background-image: none !important;
    background-color: #f7f8fa !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   SCORE CARD clarity v20260805j
   Kill black idle gauges + ghost rubric text on white card
   ═══════════════════════════════════════════════════════════════ */

.score-card > p.sub,
.score.score-theatre .score-card > p.sub {
  color: #3b4556 !important;
}

/* Idle circular gauges — replace black #0c0c14 cores */
.dual-card::before,
.dual-scores--theatre:not(.is-live) .dual-card::before {
  background: #ffffff !important;
  box-shadow:
    inset 0 0 0 1px #d7dce5,
    0 1px 2px rgba(17, 24, 39, 0.04) !important;
}
.dual-scores--theatre:not(.is-live) .dual-card,
.dual-card {
  background:
    radial-gradient(circle at 50% 50%, transparent 58%, rgba(49, 87, 246, 0.14) 59%, rgba(49, 87, 246, 0.14) 66%, transparent 67%),
    #f7f8fa !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: var(--eab-shadow) !important;
  animation: none !important;
}
.dual-scores--theatre:not(.is-live) .dual-label,
.dual-card .dual-label {
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
  font-weight: 700 !important;
}
.dual-scores--theatre:not(.is-live) .dual-number,
.dual-card .dual-number {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background: none !important;
}

/* Live result gauges — no black radial fill */
.dual-scores--theatre.is-live .dual-card,
.dual-scores--theatre.is-live .dual-card.ai-card,
.dual-scores--theatre.is-live .dual-card.web-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: var(--eab-shadow) !important;
}
.dual-scores--theatre.is-live .dual-number {
  background:
    radial-gradient(circle at 50% 50%, #ffffff 0 61%, transparent 62%),
    conic-gradient(from -90deg, var(--ring-color, #3157f6) calc(var(--score-pct, 0) * 1%), #e8ecf4 0) !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  border: none !important;
}

/* Rubric / grade chart — readable on white */
.grade-chart,
.grade-details,
.score.score-theatre .grade-details,
.score.score-theatre .grade-chart {
  background: #f7f8fa !important;
  border: 1px solid #d7dce5 !important;
  color: #111827 !important;
}
.grade-chart-title,
.rubric-cats-title {
  color: #49505b !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
}
.grade-range {
  color: #49505b !important;
}
.grade-label {
  color: #111827 !important;
  font-weight: 700 !important;
}
.grade-desc,
.grade-item p,
.grade-row p,
.grade-chart li,
.grade-chart p,
.grade-chart span:not(.grade-badge):not(.grade-check):not(.grade-miss) {
  color: #3b4556 !important;
}
.grade-badge.g-a {
  background: #d1fae5 !important;
  color: #047857 !important;
  -webkit-text-fill-color: #047857 !important;
}
.grade-badge.g-b {
  background: #dde6ff !important;
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
}
.grade-badge.g-c {
  background: #fef3c7 !important;
  color: #b45309 !important;
  -webkit-text-fill-color: #b45309 !important;
}
.grade-badge.g-d,
.grade-badge.g-f {
  background: #fee2e2 !important;
  color: #b91c1c !important;
  -webkit-text-fill-color: #b91c1c !important;
}
.grade-check { color: #059669 !important; }
.grade-miss { color: #dc2626 !important; }

.rubric-cat {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
}
.rubric-cat-name {
  color: #111827 !important;
}
.rubric-cat.ai .rubric-cat-pts,
.rubric-cat.web .rubric-cat-pts {
  color: #3157f6 !important;
}

/* ═══════════════════════════════════════════════════════════════
   PROBLEM section redesign v20260805k — light EA stage
   ═══════════════════════════════════════════════════════════════ */

section.problem.problem-v2,
.problem.problem-v2 {
  background: transparent !important;
  border: none !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.problem-stage {
  display: grid !important;
  grid-template-columns: minmax(280px, 1.15fr) minmax(320px, 1fr) !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow:
    0 1px 2px rgba(17, 24, 39, 0.04),
    0 16px 48px rgba(17, 24, 39, 0.06) !important;
}

.problem-photo {
  min-width: 0 !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  align-self: stretch !important;
  background-color: #e8ecf4 !important;
  background-image:
    linear-gradient(90deg, rgba(247, 248, 250, 0.05) 0%, rgba(255, 255, 255, 0.18) 70%, rgba(255, 255, 255, 0.65) 100%),
    url("/seoai-mid-problem.webp") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  border-radius: 0 !important;
}

.problem-copy {
  min-width: 0 !important;
  padding: 40px 36px !important;
  background: #ffffff !important;
  color: #111827 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.problem-copy .section-title,
.problem-copy h2.section-title {
  text-align: left !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background: none !important;
  margin: 0 0 12px !important;
  font-size: clamp(1.75rem, 3vw, 2.35rem) !important;
  letter-spacing: -0.03em !important;
}

.problem-copy .section-sub {
  text-align: left !important;
  color: #49505b !important;
  margin: 0 0 28px !important;
  max-width: 36em !important;
  font-size: 1.05rem !important;
  line-height: 1.55 !important;
}

.problem-pains {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.problem-pains li {
  padding: 14px 16px !important;
  border-radius: 14px !important;
  background: #f7f8fa !important;
  border: 1px solid #d7dce5 !important;
  border-left: 3px solid #3157f6 !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease, background 0.2s ease !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.problem-pains li:hover {
  background: #eef2ff !important;
  border-color: rgba(49, 87, 246, 0.35) !important;
  border-left-color: #3157f6 !important;
}

.problem-pains strong {
  display: block !important;
  color: #111827 !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}

.problem-pains span {
  display: block !important;
  color: #49505b !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
}

@media (max-width: 900px) {
  .problem-stage {
    grid-template-columns: 1fr !important;
  }
  .problem-photo {
    aspect-ratio: 16 / 10 !important;
    min-height: 200px !important;
    max-height: 260px !important;
    background-image:
      linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.45) 100%),
      url("/seoai-mid-problem.webp") !important;
  }
  .problem-copy {
    padding: 28px 22px 32px !important;
  }
}

/* Also widen problem section slightly vs default section max-width */
section.problem.problem-v2 {
  max-width: 1100px !important;
}

/* ═══════════════════════════════════════════════════════════════
   FEATURES carousel redesign v20260805m — light EA cards
   ═══════════════════════════════════════════════════════════════ */

section.features,
#features {
  background: transparent !important;
  border: none !important;
}

#features .section-title {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

#features .section-sub {
  color: #49505b !important;
}

.feat-carousel {
  max-width: 1040px !important;
}

.feat-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow:
    0 1px 2px rgba(17, 24, 39, 0.04),
    0 14px 36px rgba(17, 24, 39, 0.08) !important;
  color: #111827 !important;
}

.feat-card.is-active {
  border-color: rgba(49, 87, 246, 0.45) !important;
  box-shadow:
    0 1px 2px rgba(17, 24, 39, 0.04),
    0 22px 48px rgba(49, 87, 246, 0.14) !important;
}

.feat-card img {
  background: #eef2ff !important;
  border-bottom: 1px solid #e8ecf4 !important;
}

.feat-card .feat-copy {
  background: #ffffff !important;
  background-image: none !important;
  color: #111827 !important;
  padding: 18px 22px 20px !important;
}

.feat-card .feat-copy h3 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background: none !important;
  font-weight: 750 !important;
  margin: 0 0 8px !important;
}

.feat-card .feat-copy p {
  color: #49505b !important;
  -webkit-text-fill-color: #49505b !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
}

.feat-carousel-nav {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  color: #111827 !important;
  box-shadow: 0 4px 14px rgba(17, 24, 39, 0.08) !important;
}

.feat-carousel-nav:hover {
  background: #eef2ff !important;
  border-color: rgba(49, 87, 246, 0.4) !important;
  color: #2546d4 !important;
  transform: translateY(-50%) scale(1.04) !important;
}

.feat-carousel-nav:focus-visible {
  outline: 2px solid #3157f6 !important;
  outline-offset: 2px !important;
}

.feat-carousel-nav svg {
  stroke: currentColor !important;
}

.feat-carousel-dots button {
  background: #c5cdd9 !important;
}

.feat-carousel-dots button[aria-current="true"] {
  background: #3157f6 !important;
  width: 22px !important;
}

/* ═══════════════════════════════════════════════════════════════
   PAGES showcase redesign v20260805n — light EA, readable copy
   ═══════════════════════════════════════════════════════════════ */

section.pages-showcase.pages-v2,
#aiseo-pages {
  background: transparent !important;
  border: none !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Kill purple watermark / orbs behind this section */
.pages-showcase::before,
.pages-showcase.pages-v2::before,
#aiseo-pages::before {
  opacity: 0 !important;
  background: none !important;
  content: none !important;
  display: none !important;
}

#aiseo-pages .section-title {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

#aiseo-pages .section-sub {
  color: #49505b !important;
}

.pages-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 40px !important;
  align-items: center !important;
}

.pages-text h3 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-size: clamp(1.35rem, 2.4vw, 1.7rem) !important;
  line-height: 1.3 !important;
  margin-bottom: 16px !important;
}

.pages-text h3 span {
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}

.pages-text > p {
  color: #3b4556 !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
  margin-bottom: 24px !important;
}

.pages-text > p strong,
.pages-text > p strong[style],
.pages-text > p strong[style*="color"] {
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
  font-weight: 700 !important;
}

.pages-checklist {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.pages-checklist li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 12px 0 !important;
  font-size: 0.95rem !important;
  color: #3b4556 !important;
  line-height: 1.55 !important;
}

.pages-checklist li > span:last-child {
  color: #3b4556 !important;
}

.pages-checklist li strong {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 700 !important;
}

.pages-checklist li .cl-icon,
.pages-checklist li .cl-icon[style] {
  width: 26px !important;
  height: 26px !important;
  border-radius: 8px !important;
  background: #dde6ff !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: none !important;
}

.pages-checklist li .cl-icon svg {
  width: 14px !important;
  height: 14px !important;
  stroke: #3157f6 !important;
}

.pages-shot-wrap {
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 1px solid #d7dce5 !important;
  background: #ffffff !important;
  box-shadow:
    0 1px 2px rgba(17, 24, 39, 0.04),
    0 18px 44px rgba(17, 24, 39, 0.08) !important;
}

.pages-shot-wrap img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.pages-cta {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 14px !important;
  margin-top: 40px !important;
}

.pages-cta a {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
  filter: none !important;
  text-shadow: none !important;
}

.pages-cta a:hover {
  background: #2546d4 !important;
  border-color: #2546d4 !important;
  box-shadow: 0 8px 22px rgba(49, 87, 246, 0.22) !important;
  filter: none !important;
  transform: none !important;
}

/* Secondary CTA in this band */
.pages-cta a:last-child {
  background: #ffffff !important;
  border: 1.5px solid #3157f6 !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}

.pages-cta a:last-child:hover {
  background: #eef2ff !important;
  border-color: #3157f6 !important;
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
  box-shadow: none !important;
}

@media (max-width: 900px) {
  .pages-layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* ─── PRICING polish v20260805o ─── */
.pricing {
  background: transparent !important;
  color: #111827 !important;
}

.pricing .section-title {
  color: #111827 !important;
}

.pricing .section-sub {
  color: #49505b !important;
}

.price-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow:
    0 1px 2px rgba(17, 24, 39, 0.04),
    0 12px 32px rgba(17, 24, 39, 0.06) !important;
}

.price-card h3 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

.price-card .price {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  background: none !important;
}

.price-card > p,
.price-card p {
  color: #3b4556 !important;
  -webkit-text-fill-color: #3b4556 !important;
}

.price-card ul li {
  color: #3b4556 !important;
  border-bottom-color: rgba(215, 220, 229, 0.85) !important;
}

.price-card ul li > span:last-child {
  color: #3b4556 !important;
}

/* Green mint checks → cobalt */
.price-card ul li .check {
  background: #dde6ff !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: none !important;
}

.price-card ul li .check svg {
  stroke: #3157f6 !important;
  color: #3157f6 !important;
}

.price-card.featured {
  border: 2px solid #3157f6 !important;
  box-shadow: 0 8px 28px rgba(49, 87, 246, 0.12) !important;
}

.price-card.featured::before {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(49, 87, 246, 0.22) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.trial-badge {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
  animation: none !important;
}

.price-card .preview-link,
.preview-link {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}

.price-card .preview-link:hover,
.preview-link:hover {
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
  text-decoration: underline !important;
}

.price-card a.btn,
.price-card a.btn-outline,
.price-card a.btn-gradient {
  box-shadow: none !important;
  filter: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   SCORE RESULTS contrast v20260805q
   Revert layout experiments — fix faint dark-theme text only
   ═══════════════════════════════════════════════════════════════ */

/* Kill leftover ::before accent / Free-tool pill from prior redesign */
.score.score-theatre .score-card::before,
#score .score-card::before {
  content: none !important;
  display: none !important;
}
.score.score-theatre .score-card > h2::before,
#score .score-card > h2::before {
  content: none !important;
  display: none !important;
}

.score.score-theatre .score-card > h2,
#score .score-card > h2 {
  display: block !important;
  flex-direction: unset !important;
  align-items: unset !important;
  gap: unset !important;
  font-size: clamp(1.35rem, 2.5vw, 1.75rem) !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background: none !important;
}

.score.score-theatre .score-card > p.sub,
#score .score-card > p.sub {
  color: #3b4556 !important;
  -webkit-text-fill-color: #3b4556 !important;
}

/* Rubric fully visible again (no scroll cage) */
.grade-chart,
#grade-chart.grade-chart,
.score.score-theatre .grade-chart {
  max-height: none !important;
  overflow: visible !important;
  position: static !important;
}

.grade-chart-title,
.score .grade-chart-title {
  position: static !important;
  background: transparent !important;
  color: #49505b !important;
}

.grade-details,
.score.score-theatre .grade-details {
  color: #3b4556 !important;
  background: transparent !important;
  border: none !important;
}

.rubric-cat-name,
.rubric-cats-title {
  color: #111827 !important;
}

.rubric-cat {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  color: #111827 !important;
}

/* Google AI Compliance banner — kill pale #cfe0ff / #fff / #9fb4d8 */
#google-compliance-banner {
  background: #eef2ff !important;
  border: 1px solid #c5d0f0 !important;
  color: #111827 !important;
}
#google-compliance-banner span,
#google-compliance-banner [data-i18n="gc_label"],
#google-compliance-banner [style*="color"] {
  color: #2546d4 !important;
  -webkit-text-fill-color: #2546d4 !important;
}
#google-compliance-banner #gc-score-num {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
#google-compliance-banner [data-i18n="gc_sub"],
#google-compliance-banner div {
  color: #3b4556 !important;
  -webkit-text-fill-color: #3b4556 !important;
}

/* Preview scan / coverage note */
.score-coverage,
.score-coverage.score-coverage--warn,
#score-coverage {
  background: #eef2ff !important;
  border: 1px solid #c5d0f0 !important;
  color: #111827 !important;
}
.score-coverage.score-coverage--warn {
  background: #fff1f2 !important;
  border-color: #fecdd3 !important;
}
.score-coverage-title,
.score-coverage .score-coverage-title,
.score-meta,
.score-coverage .score-meta,
.score-coverage-body,
.score-coverage .score-coverage-body,
.locked-hint,
#locked-hint {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.score-coverage-body,
.score-coverage .score-coverage-body,
.score-coverage-body *,
.locked-hint,
#locked-hint {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
}
.score-coverage-title strong,
.score-meta strong,
.score-coverage-body strong {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

/* robots.txt / AI access diagnostics — kill pale cyan #c8eef9 */
#bot-block-warning {
  background: #ecfeff !important;
  border: 1px solid #a5f3fc !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
#bot-block-warning #bot-block-title,
#bot-block-warning strong,
#bot-block-text,
#bot-robots-note,
#bot-block-warning,
#bot-block-warning * {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
#bot-block-text {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
}
#bot-robots-note {
  border-top-color: #a5f3fc !important;
}
#bot-block-warning[style*="F4418B"],
#bot-block-warning[style*="244,65,139"] {
  background: #fff1f2 !important;
  border-color: #fecdd3 !important;
}

/* Findings list — white cards, dark readable text */
.findings-container {
  margin-top: 16px !important;
}
.findings-locked-summary {
  color: #b91c1c !important;
  -webkit-text-fill-color: #b91c1c !important;
}
.findings-locked-summary.ok {
  color: #047857 !important;
  -webkit-text-fill-color: #047857 !important;
}
.finding-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04) !important;
  color: #111827 !important;
}
.finding-card:hover {
  border-color: rgba(49, 87, 246, 0.35) !important;
}
.finding-title {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.finding-detail {
  color: #3b4556 !important;
  -webkit-text-fill-color: #3b4556 !important;
}
.finding-fix {
  background: #ecfdf5 !important;
  border: 1px solid #a7f3d0 !important;
  color: #065f46 !important;
  -webkit-text-fill-color: #065f46 !important;
}
.finding-fix strong {
  color: #047857 !important;
  -webkit-text-fill-color: #047857 !important;
}
.finding-page {
  color: #49505b !important;
}
.pages-badge {
  background: #f3f5f9 !important;
  color: #49505b !important;
  border: 1px solid #d7dce5 !important;
}
.sev-badge.high {
  background: #ffe4e6 !important;
  color: #be123c !important;
  border-color: #fecdd3 !important;
}
.sev-badge.medium {
  background: #fef3c7 !important;
  color: #b45309 !important;
  border-color: #fde68a !important;
}
.sev-badge.low,
.sev-badge.info {
  background: #dde6ff !important;
  color: #2546d4 !important;
  border-color: #c5d0f0 !important;
}
.scope-tag.ai,
.scope-tag.web,
.scope-tag.both {
  background: #eef2ff !important;
  color: #2546d4 !important;
  border: 1px solid #c5d0f0 !important;
}
.findings-see-more {
  background: #f7f8fa !important;
  border: 1px dashed #d7dce5 !important;
}
.see-more-text {
  color: #3b4556 !important;
  -webkit-text-fill-color: #3b4556 !important;
}
.see-more-btn {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}

/* Priority steps + lead gate */
.quick-steps-box {
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
}
.qs-header {
  color: #047857 !important;
  -webkit-text-fill-color: #047857 !important;
}
.quick-steps-box ol li {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

.lead-gate {
  background: #eef2ff !important;
  border: 1px solid #c5d0f0 !important;
}
.lead-gate p,
.lead-gate .lead-prompt {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
.lead-grid input,
.lead-gate input {
  background: #ffffff !important;
  color: #111827 !important;
  border: 1px solid #d7dce5 !important;
}
.lead-grid input::placeholder,
.lead-gate input::placeholder {
  color: #7b828e !important;
}

.score-result {
  background: transparent !important;
  color: #111827 !important;
}
.score-error {
  color: #be123c !important;
}

/* ═══════════════════════════════════════════════════════════════
   MOBILE contrast polish v20260805y
   Login CTA white-on-cobalt; bottom dock light + readable
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  header nav#primary-nav a.cta,
  header nav a.cta,
  header.site-header nav#primary-nav a.cta,
  #primary-nav a.cta {
    background: #3157f6 !important;
    border: 1px solid #3157f6 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  .seoai-m-dock,
  body.seoai-mapp .seoai-m-dock {
    background: rgba(255, 255, 255, 0.96) !important;
    border-top: 1px solid #d7dce5 !important;
    box-shadow: 0 -6px 20px rgba(17, 24, 39, 0.08) !important;
  }

  .seoai-m-dock a,
  body.seoai-mapp .seoai-m-dock a {
    font-weight: 700 !important;
  }

  .seoai-m-dock a.ghost,
  body.seoai-mapp .seoai-m-dock a.ghost {
    background: #ffffff !important;
    border: 1.5px solid #3157f6 !important;
    color: #3157f6 !important;
    -webkit-text-fill-color: #3157f6 !important;
  }

  .seoai-m-dock a.primary,
  body.seoai-mapp .seoai-m-dock a.primary {
    background: #3157f6 !important;
    border: 1px solid #3157f6 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   DIRECTORY fix v20260805z
   Global header{display:flex} was crushing <header.dir-hero> into a row.
   Chrome rules now use header:not(.dir-hero); hero stays block + transparent.
   ═══════════════════════════════════════════════════════════════ */
header.dir-hero,
.dir-hero {
  display: block !important;
  flex-direction: unset !important;
  align-items: unset !important;
  justify-content: unset !important;
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  text-align: center !important;
}
.dir-hero h1 {
  color: var(--eab-ink) !important;
  -webkit-text-fill-color: var(--eab-ink) !important;
}
.dir-hero p {
  color: #3d4654 !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.dir-search input {
  border: 1.5px solid #b8c0ce !important;
  box-shadow: inset 0 0 0 1px rgba(17, 24, 39, 0.02) !important;
}

/* ═══════════════════════════════════════════════════════════════
   PROOF / Why SEOAI contrast + Discover dropdown v20260805ab
   Page inline uses header.site-header … #868592 / #fff / #c8c6d8
   ═══════════════════════════════════════════════════════════════ */

/* Discover dropdown — beat header.site-header inline !important greys */
header.site-header .nav-dd-menu,
.site-header .nav-dd-menu,
body.pub-hero-glow header.site-header .nav-dd-menu {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 12px 32px rgba(17, 24, 39, 0.12) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
header.site-header .nav-dd-menu a,
.site-header .nav-dd-menu a,
body.pub-hero-glow header.site-header .nav-dd-menu a {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background: transparent !important;
  font-weight: 500 !important;
}
header.site-header .nav-dd-menu a:hover,
.site-header .nav-dd-menu a:hover,
body.pub-hero-glow header.site-header .nav-dd-menu a:hover {
  background: #eef2ff !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
header.site-header .nav-dd-menu a.active,
.site-header .nav-dd-menu a.active,
body.pub-hero-glow header.site-header .nav-dd-menu a.active {
  background: #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Discover trigger + chevron — never white-on-white on light header */
header.site-header .nav-dd-btn,
header.site-header .nav-dd-btn:hover,
header.site-header .nav-dd.open .nav-dd-btn,
header.site-header .nav-dd.active .nav-dd-btn,
.site-header .nav-dd-btn,
.site-header .nav-dd.open .nav-dd-btn,
.site-header .nav-dd.active .nav-dd-btn,
header .nav-dd-btn,
header .nav-dd.open .nav-dd-btn,
header .nav-dd.active .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  background: transparent !important;
}
header.site-header .nav-dd-btn svg,
.site-header .nav-dd-btn svg,
header .nav-dd-btn svg {
  width: 12px !important;
  height: 12px !important;
  stroke: currentColor !important;
  color: #000000 !important;
  flex-shrink: 0 !important;
  opacity: 1 !important;
}

/* Plan tier cards — kill lavender #c8c6d8 list text */
body.pub-hero-glow .tier-card,
.tier-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  color: #111827 !important;
}
body.pub-hero-glow .tier-card h4,
.tier-card h4 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
body.pub-hero-glow .tier-silver h4,
.tier-silver h4 { color: #4b5563 !important; -webkit-text-fill-color: #4b5563 !important; }
body.pub-hero-glow .tier-gold h4,
.tier-gold h4 { color: #8a6d00 !important; -webkit-text-fill-color: #8a6d00 !important; }
body.pub-hero-glow .tier-platinum h4,
.tier-platinum h4 { color: #3157f6 !important; -webkit-text-fill-color: #3157f6 !important; }

body.pub-hero-glow .tier-card ul,
.tier-card ul,
body.pub-hero-glow .tier-card ul li,
.tier-card ul li {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}
body.pub-hero-glow .tier-card ul li,
.tier-card ul li {
  border-bottom-color: #eef1f6 !important;
}
body.pub-hero-glow .tier-card ul li strong,
.tier-card ul li strong,
body.pub-hero-glow .tier-card strong,
.tier-card strong {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 700 !important;
}
body.pub-hero-glow .tier-card .check,
.tier-card .check { color: #2e7d32 !important; }
body.pub-hero-glow .tier-card .cross,
.tier-card .cross { color: #c62828 !important; }

/* Findings / data callouts + body copy on proof page */
body.pub-hero-glow .container p,
body.pub-hero-glow .container li,
body.pub-hero-glow .container .subtitle {
  color: #3d4654 !important;
}
body.pub-hero-glow .neutral-box,
body.pub-hero-glow .data-box,
body.pub-hero-glow .findings,
body.pub-hero-glow .key-findings,
body.pub-hero-glow .callout,
body.pub-hero-glow .note-box,
body.pub-hero-glow .bottom-line,
body.pub-hero-glow .insight-box {
  background: #eef2ff !important;
  border: 1px solid #c5d0f0 !important;
  color: #111827 !important;
}
body.pub-hero-glow .neutral-box p,
body.pub-hero-glow .neutral-box li,
body.pub-hero-glow .data-box p,
body.pub-hero-glow .data-box li,
body.pub-hero-glow .findings p,
body.pub-hero-glow .findings li,
body.pub-hero-glow .key-findings p,
body.pub-hero-glow .key-findings li,
body.pub-hero-glow .callout p,
body.pub-hero-glow .note-box p {
  color: #111827 !important;
  font-weight: 500 !important;
}
body.pub-hero-glow .stat-label {
  color: #3d4654 !important;
}
body.pub-hero-glow .missing-tag {
  background: #fdecea !important;
  color: #b71c1c !important;
  border-color: #f5c6c2 !important;
}
body.pub-hero-glow .found-tag {
  background: #e8f5e9 !important;
  color: #1b5e20 !important;
  border-color: #c8e6c9 !important;
}

/* ═══════════════════════════════════════════════════════════════
   HOME mobile hero gap + contrast v20260805ad
   Tall min(88vh) left a photo void under copy (CTAs live in dock).
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  body.seoai-mapp > .theatre-wrap > section.hero.hero-theatre,
  body.seoai-mapp section.hero.hero-theatre,
  .theatre-wrap > section.hero.hero-theatre,
  section.hero.hero-theatre {
    min-height: 0 !important;
    height: auto !important;
    padding: 28px 20px 36px !important;
  }
  body.seoai-mapp section.hero.hero-theatre > p:not(.hero-blockchain):not(.patent-notice),
  section.hero.hero-theatre > p:not(.hero-blockchain):not(.patent-notice) {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-weight: 500 !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   COMPARE page polish + Verdict redesign v20260805ac
   ═══════════════════════════════════════════════════════════════ */
body:has(.compare-wrap) header nav a:not(.cta),
body:has(.compare-wrap) header nav#primary-nav > a:not(.cta),
body:has(.compare-wrap) header nav .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
body:has(.compare-wrap) header nav a:not(.cta):hover,
body:has(.compare-wrap) header nav a:not(.cta).active,
body:has(.compare-wrap) header nav .nav-dd-btn:hover {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

body:has(.compare-wrap) .matrix-legend {
  color: #3d4654 !important;
  font-weight: 500 !important;
}
body:has(.compare-wrap) .footnote {
  color: #49505b !important;
}
body:has(.compare-wrap) .section-sub {
  color: #3d4654 !important;
}

/* Glance / honest-split cards */
body:has(.compare-wrap) .feature-card,
body:has(.compare-wrap) .platform-grid .feature-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 4px 16px rgba(17, 24, 39, 0.04) !important;
  color: #111827 !important;
}
body:has(.compare-wrap) .feature-card h3 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
body:has(.compare-wrap) .feature-card.win h3 {
  color: #1b5e20 !important;
  -webkit-text-fill-color: #1b5e20 !important;
}
body:has(.compare-wrap) .feature-card.lead h3 {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}
body:has(.compare-wrap) .feature-card ul li {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
  border-bottom-color: #eef1f6 !important;
}
body:has(.compare-wrap) .feature-card p,
body:has(.compare-wrap) .platform-grid .feature-card p {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
  line-height: 1.65 !important;
}

/* Inline dark-theme colours baked into glance HTML / i18n strings */
body:has(.compare-wrap) .platform-grid strong[style*="e8e7f2"],
body:has(.compare-wrap) .platform-grid strong[style*="#e8e7f2"],
body:has(.compare-wrap) .platform-grid strong[style*="color:#e8e7f2"] {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
body:has(.compare-wrap) .platform-grid strong[style*="14B4E6"],
body:has(.compare-wrap) .platform-grid strong[style*="#14B4E6"],
body:has(.compare-wrap) .platform-grid strong[style*="color:#14B4E6"] {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}
body:has(.compare-wrap) .platform-grid code,
body:has(.compare-wrap) .platform-grid code[style] {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  background: #eef2ff !important;
  padding: 1px 6px !important;
  border-radius: 4px !important;
}

/* Matrix legend icons readable on light */
body:has(.compare-wrap) .cell-yes { color: #2e7d32 !important; }
body:has(.compare-wrap) .cell-partial { color: #b45309 !important; }
body:has(.compare-wrap) .cell-no { color: #c62828 !important; }
body:has(.compare-wrap) .cell-bydesign { color: #3157f6 !important; }

/* Verdict — light EA Blue panel (replaces dark purple glass) */
body:has(.compare-wrap) .verdict {
  border-top: 1px solid #d7dce5 !important;
  padding-top: 8px !important;
}
body:has(.compare-wrap) .verdict-box {
  background:
    linear-gradient(180deg, #ffffff 0%, #f7f8fa 100%) !important;
  border: 1px solid #c5d0f0 !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 12px 32px rgba(49, 87, 246, 0.08) !important;
  padding: 40px 32px !important;
  max-width: 840px !important;
  position: relative !important;
  overflow: hidden !important;
}
body:has(.compare-wrap) .verdict-box::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 5px !important;
  background: #3157f6 !important;
  border-radius: 16px 0 0 16px !important;
}
body:has(.compare-wrap) .verdict-box .section-title,
body:has(.compare-wrap) .verdict-box h2 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-size: clamp(1.5rem, 2.4vw, 1.85rem) !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 14px !important;
}
body:has(.compare-wrap) .verdict-box p {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
  font-size: 1.05rem !important;
  line-height: 1.75 !important;
  max-width: 640px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body:has(.compare-wrap) .verdict-box p strong {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 700 !important;
}
body:has(.compare-wrap) .verdict-box .btn-group {
  margin-top: 8px !important;
  gap: 12px !important;
}
body:has(.compare-wrap) .verdict-box .btn-primary,
body:has(.compare-wrap) .btn-group .btn-primary {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(49, 87, 246, 0.22) !important;
}
body:has(.compare-wrap) .verdict-box .btn-primary:hover,
body:has(.compare-wrap) .btn-group .btn-primary:hover {
  background: #2546d4 !important;
  border-color: #2546d4 !important;
}
body:has(.compare-wrap) .verdict-box .btn-secondary,
body:has(.compare-wrap) .btn-group .btn-secondary {
  background: #ffffff !important;
  border: 1.5px solid #3157f6 !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  box-shadow: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   PUBLIC-PAGE full UI audit fix v20260805af
   Kill leftover dark-theme greys/purple on /public-page
   ═══════════════════════════════════════════════════════════════ */
body:has(.mock-stage) .section-label,
body:has(.feature-visual) .section-label {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}
body:has(.mock-stage) .section .lead,
body:has(.mock-stage) .lead,
body:has(.feature-visual) .lead {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}
body:has(.mock-stage) .hero p,
body:has(.feature-visual) .hero p {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 500 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}
body:has(.mock-stage) .hero h1,
body:has(.feature-visual) .hero h1 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

/* Mock browser preview */
body:has(.mock-stage) .mock h4,
body:has(.mock-stage) .mock-right h4 {
  color: #49505b !important;
  -webkit-text-fill-color: #49505b !important;
  letter-spacing: 0.04em !important;
}
body:has(.mock-stage) .mock .ok {
  color: #2e7d32 !important;
  font-weight: 700 !important;
}
body:has(.mock-stage) .mock .meta,
body:has(.mock-stage) .mock-right span:not(.ok):not(.tag) {
  color: #3d4654 !important;
}
body:has(.mock-stage) .check-list li {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}
body:has(.mock-stage) .check-list li::before {
  background: rgba(46, 125, 50, 0.12) !important;
  color: #2e7d32 !important;
}

/* Feature visual cards */
body:has(.feature-visual) .fv-card,
body:has(.mock-stage) .fv-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 4px 16px rgba(17, 24, 39, 0.04) !important;
  color: #111827 !important;
}
body:has(.feature-visual) .fv-card .k,
body:has(.mock-stage) .fv-card .k {
  color: #3157f6 !important;
}
body:has(.feature-visual) .fv-card .v,
body:has(.mock-stage) .fv-card .v {
  color: #111827 !important;
}

/* Wow banner — was dark purple glass */
body:has(.mock-stage) .wow-banner,
body:has(.feature-visual) .wow-banner {
  background:
    linear-gradient(135deg, #eef2ff 0%, #ffffff 45%, #f7f8fa 100%) !important;
  border: 1px solid #c5d0f0 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 12px 32px rgba(49, 87, 246, 0.08) !important;
  color: #111827 !important;
}
body:has(.mock-stage) .wow-banner h2,
body:has(.feature-visual) .wow-banner h2 {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}
body:has(.mock-stage) .wow-banner p,
body:has(.feature-visual) .wow-banner p {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}
body:has(.mock-stage) .wow-pills span,
body:has(.feature-visual) .wow-pills span {
  background: #ffffff !important;
  border: 1px solid #c5d0f0 !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  box-shadow: none !important;
}

/* Steps rail */
body:has(.mock-stage) .step-card,
body:has(.feature-visual) .step-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 4px 16px rgba(17, 24, 39, 0.04) !important;
  color: #111827 !important;
}
body:has(.mock-stage) .step-card:hover,
body:has(.feature-visual) .step-card:hover {
  border-color: rgba(49, 87, 246, 0.35) !important;
  box-shadow: 0 8px 24px rgba(49, 87, 246, 0.1) !important;
  transform: none !important;
}
body:has(.mock-stage) .step-card h3,
body:has(.feature-visual) .step-card h3 {
  color: #111827 !important;
}
body:has(.mock-stage) .step-card p,
body:has(.feature-visual) .step-card p {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}
body:has(.mock-stage) .step-card .n,
body:has(.feature-visual) .step-card .n {
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
}
body:has(.mock-stage) .step-card code,
body:has(.feature-visual) .step-card code {
  color: #3157f6 !important;
  background: #eef2ff !important;
}

/* Example /p cards */
body:has(.mock-stage) .ex-card,
body:has(.feature-visual) .ex-card {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04), 0 4px 16px rgba(17, 24, 39, 0.04) !important;
  color: #111827 !important;
}
body:has(.mock-stage) .ex-card:hover,
body:has(.feature-visual) .ex-card:hover {
  border-color: rgba(49, 87, 246, 0.35) !important;
  box-shadow: 0 8px 24px rgba(49, 87, 246, 0.1) !important;
  transform: none !important;
}
body:has(.mock-stage) .ex-card .top,
body:has(.feature-visual) .ex-card .top {
  background: linear-gradient(135deg, #dde6ff 0%, #eef2ff 55%, #f7f8fa 100%) !important;
}
body:has(.mock-stage) .ex-card .top span,
body:has(.feature-visual) .ex-card .top span {
  color: #3157f6 !important;
  background: #ffffff !important;
  border: 1px solid #c5d0f0 !important;
}
body:has(.mock-stage) .ex-card .bot h3,
body:has(.feature-visual) .ex-card .bot h3 {
  color: #111827 !important;
}
body:has(.mock-stage) .ex-card .bot p,
body:has(.feature-visual) .ex-card .bot p,
body:has(.mock-stage) .ex-card p,
body:has(.feature-visual) .ex-card p {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}

body:has(.mock-stage) .marquee span,
body:has(.feature-visual) .marquee span {
  color: #3d4654 !important;
}
body:has(.mock-stage) .section h2,
body:has(.feature-visual) .section h2 {
  color: #111827 !important;
}

/* Disclaimer / fine print — page inline still used #6b6a7a on light bg */
body:has(.mock-stage) .disclaimer,
body:has(.feature-visual) .disclaimer,
.disclaimer {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
  background: #eef1f6 !important;
  border: 1px solid #d7dce5 !important;
}
body:has(.mock-stage) .shot-caption,
body:has(.feature-visual) .shot-caption {
  color: #3d4654 !important;
  -webkit-text-fill-color: #3d4654 !important;
}

/* Profile /p leftovers — review form still dark glass */
body:has(.ai-banner) .review-form,
body:has(.profile-logo) .review-form,
body:has(.ai-banner) .reviews-section .review-form {
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  box-shadow: var(--eab-shadow) !important;
  color: #111827 !important;
}
body:has(.ai-banner) .review-form h3,
body:has(.profile-logo) .review-form h3,
body:has(.ai-banner) .review-form label,
body:has(.profile-logo) .review-form label {
  color: #3d4654 !important;
}
body:has(.ai-banner) .star-picker,
body:has(.profile-logo) .star-picker {
  color: #f59e0b !important;
  background: transparent !important;
}

/* ═══════════════════════════════════════════════════════════════
   PUBLIC PROFILE pages (/p/…) v20260805aa
   Dark purple/green inline theme → EA Blue light + AI hero plate.
   Selector: pages with .ai-banner / .meta-grid / .profile-logo
   ═══════════════════════════════════════════════════════════════ */
body:has(.ai-banner),
body:has(.profile-logo),
body:has(main .meta-grid) {
  background: var(--eab-bg) !important;
  background-color: var(--eab-bg) !important;
  color: var(--eab-ink) !important;
  --seoai-purple: #3157f6;
  --seoai-cyan: #3157f6;
  --seoai-bg: #f7f8fa;
  --seoai-surface: #ffffff;
  --seoai-surface2: #f7f8fa;
  --seoai-border: #d7dce5;
  --seoai-border-soft: #d7dce5;
  --seoai-text: #111827;
  --seoai-muted: #49505b;
  --seoai-muted2: #49505b;
}

body:has(.ai-banner),
body:has(.profile-logo),
body:has(main .meta-grid) {
  position: relative !important;
}
body:has(.ai-banner)::before,
body:has(.profile-logo)::before,
body:has(main .meta-grid)::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: min(72vh, 760px) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-color: var(--eab-bg) !important;
  background-image:
    radial-gradient(ellipse 55% 42% at 50% 28%, rgba(255, 255, 255, 0.55) 0%, rgba(255, 255, 255, 0.18) 55%, rgba(255, 255, 255, 0) 78%),
    linear-gradient(180deg, rgba(247, 248, 250, 0.2) 0%, rgba(247, 248, 250, 0.12) 42%, rgba(247, 248, 250, 0.78) 78%, #f7f8fa 100%),
    url("/seoai-hero-profile.webp?v=20260805aa") !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
}
/* Header must stack ABOVE main so Discover/lang dropdowns are not covered.
   Main/footer stay at z-index:1 for the EA hero plate stacking. */
body:has(.ai-banner) > .site-header,
body:has(.profile-logo) > .site-header,
body:has(main .meta-grid) > .site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  overflow: visible !important;
}
body:has(.ai-banner) > main,
body:has(.profile-logo) > main,
body:has(main .meta-grid) > main,
body:has(.ai-banner) > .pub-site-footer,
body:has(.profile-logo) > .pub-site-footer {
  position: relative !important;
  z-index: 1 !important;
}

body:has(.ai-banner) .pub-hero-glow,
body:has(.profile-logo) .pub-hero-glow {
  background: transparent !important;
}

body:has(.ai-banner) .site-header,
body:has(.profile-logo) .site-header,
body:has(main .meta-grid) .site-header {
  background: rgba(255, 255, 255, 0.92) !important;
  border-bottom: 1px solid var(--eab-border) !important;
  box-shadow: 0 1px 0 rgba(17, 24, 39, 0.04) !important;
  backdrop-filter: blur(16px) saturate(1.15) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.15) !important;
}

body:has(.ai-banner) .site-header nav#primary-nav > a,
body:has(.profile-logo) .site-header nav#primary-nav > a {
  color: var(--eab-muted) !important;
}
body:has(.ai-banner) .site-header nav#primary-nav > a:hover,
body:has(.profile-logo) .site-header nav#primary-nav > a:hover {
  color: var(--eab-ink) !important;
}
body:has(.ai-banner) .site-header nav#primary-nav a.cta,
body:has(.profile-logo) .site-header nav#primary-nav a.cta {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}
body:has(.ai-banner) .site-header .nav-dd-btn,
body:has(.profile-logo) .site-header .nav-dd-btn,
body:has(.ai-banner) .site-header .lang-btn,
body:has(.profile-logo) .site-header .lang-btn {
  color: var(--eab-muted) !important;
  background: #ffffff !important;
  border-color: var(--eab-border) !important;
}
body:has(.ai-banner) .site-header .nav-dd-menu,
body:has(.profile-logo) .site-header .nav-dd-menu,
body:has(.ai-banner) .site-header .lang-menu,
body:has(.profile-logo) .site-header .lang-menu {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: var(--eab-shadow) !important;
}
body:has(.ai-banner) .site-header .hamburger,
body:has(.profile-logo) .site-header .hamburger {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  color: var(--eab-ink) !important;
}

@media (max-width: 768px) {
  body:has(.ai-banner) .site-header nav#primary-nav,
  body:has(.profile-logo) .site-header nav#primary-nav,
  body:has(.ai-banner) .site-header nav#primary-nav.open,
  body:has(.profile-logo) .site-header nav#primary-nav.open {
    background: #ffffff !important;
    border-bottom: 1px solid var(--eab-border) !important;
    box-shadow: 0 10px 28px rgba(17, 24, 39, 0.08) !important;
  }
}

body:has(.ai-banner) h1,
body:has(.profile-logo) h1,
body:has(main .meta-grid) h1 {
  color: var(--eab-ink) !important;
  -webkit-text-fill-color: var(--eab-ink) !important;
}
body:has(.ai-banner) h2,
body:has(.profile-logo) h2,
body:has(.ai-banner) .reviews-section > h2,
body:has(.profile-logo) .reviews-section > h2 {
  color: var(--eab-ink) !important;
  border-bottom-color: #3157f6 !important;
}
body:has(.ai-banner) h3,
body:has(.profile-logo) h3 {
  color: var(--eab-ink) !important;
}
body:has(.ai-banner) p,
body:has(.profile-logo) p,
body:has(.ai-banner) .summary-block p,
body:has(.profile-logo) .summary-block p {
  color: #3d4654 !important;
}
body:has(.ai-banner) a,
body:has(.profile-logo) a {
  color: #3157f6 !important;
}
body:has(.ai-banner) nav.breadcrumb,
body:has(.profile-logo) nav.breadcrumb {
  color: #6b7280 !important;
}
body:has(.ai-banner) nav.breadcrumb a,
body:has(.profile-logo) nav.breadcrumb a {
  color: #49505b !important;
}

body:has(.ai-banner) .ai-banner,
body:has(.profile-logo) .ai-banner,
body:has(.ai-banner) .ai-trust-top,
body:has(.profile-logo) .ai-trust-top,
body:has(.ai-banner) .llms-link,
body:has(.profile-logo) .llms-link,
body:has(.ai-banner) .summary-block,
body:has(.profile-logo) .summary-block,
body:has(.ai-banner) .contact-cta-block,
body:has(.profile-logo) .contact-cta-block,
body:has(.ai-banner) .competitive-block,
body:has(.profile-logo) .competitive-block,
body:has(.ai-banner) .blockchain-proof,
body:has(.profile-logo) .blockchain-proof,
body:has(.ai-banner) .aiseo-badge,
body:has(.profile-logo) .aiseo-badge {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  color: #3d4654 !important;
  box-shadow: var(--eab-shadow) !important;
}
body:has(.ai-banner) .ai-banner {
  border-left: 3px solid #3157f6 !important;
}
body:has(.ai-banner) .meta-item,
body:has(.profile-logo) .meta-item,
body:has(.ai-banner) .svc-card,
body:has(.profile-logo) .svc-card,
body:has(.ai-banner) .rel-card,
body:has(.profile-logo) .rel-card,
body:has(.ai-banner) .proof-item,
body:has(.profile-logo) .proof-item {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  box-shadow: none !important;
}
body:has(.ai-banner) .meta-label,
body:has(.profile-logo) .meta-label,
body:has(.ai-banner) .proof-label,
body:has(.profile-logo) .proof-label {
  color: #6b7280 !important;
}
body:has(.ai-banner) .meta-value,
body:has(.profile-logo) .meta-value,
body:has(.ai-banner) .proof-value,
body:has(.profile-logo) .proof-value,
body:has(.ai-banner) .contact-cta-text strong,
body:has(.profile-logo) .contact-cta-text strong {
  color: var(--eab-ink) !important;
}
body:has(.ai-banner) .meta-value a,
body:has(.profile-logo) .meta-value a,
body:has(.ai-banner) .llms-link a,
body:has(.profile-logo) .llms-link a {
  color: #3157f6 !important;
}

body:has(.ai-banner) .tag,
body:has(.profile-logo) .tag,
body:has(.ai-banner) .pill,
body:has(.profile-logo) .pill,
body:has(.ai-banner) .social-links a,
body:has(.profile-logo) .social-links a {
  background: var(--eab-pale) !important;
  border: 1px solid #c5d0f0 !important;
  color: #3157f6 !important;
}
body:has(.ai-banner) .pill.muted,
body:has(.profile-logo) .pill.muted {
  background: #f3f5f9 !important;
  color: #49505b !important;
}
body:has(.ai-banner) .verified-pill,
body:has(.profile-logo) .verified-pill,
body:has(.ai-banner) .chain-badge,
body:has(.profile-logo) .chain-badge {
  background: #e8f5e9 !important;
  border: 1px solid #c8e6c9 !important;
  color: #2e7d32 !important;
}

body:has(.ai-banner) .contact-cta-button,
body:has(.profile-logo) .contact-cta-button,
body:has(.ai-banner) .review-submit,
body:has(.profile-logo) .review-submit {
  background: #3157f6 !important;
  color: #ffffff !important;
  border: 1px solid #3157f6 !important;
}

body:has(.ai-banner) .tier-badge.gold,
body:has(.profile-logo) .tier-badge.gold {
  background: #fff8e1 !important;
  border: 1px solid #ffe082 !important;
  color: #8a6d00 !important;
}
body:has(.ai-banner) .tier-badge.platinum,
body:has(.profile-logo) .tier-badge.platinum {
  background: #eef2ff !important;
  border: 1px solid #c5d0f0 !important;
  color: #3157f6 !important;
}

body:has(.ai-banner) .competitive-block ul,
body:has(.profile-logo) .competitive-block ul,
body:has(.ai-banner) .review-empty,
body:has(.profile-logo) .review-empty,
body:has(.ai-banner) .proof-note,
body:has(.profile-logo) .proof-note,
body:has(.ai-banner) .contact-cta-text span,
body:has(.profile-logo) .contact-cta-text span,
body:has(.ai-banner) .rel-meta,
body:has(.profile-logo) .rel-meta {
  color: #3d4654 !important;
}

body:has(.ai-banner) .review-form input,
body:has(.profile-logo) .review-form input,
body:has(.ai-banner) .review-form textarea,
body:has(.profile-logo) .review-form textarea,
body:has(.ai-banner) .hp-field,
body:has(.profile-logo) .hp-field {
  background: #ffffff !important;
  border: 1.5px solid #b8c0ce !important;
  color: var(--eab-ink) !important;
}
body:has(.ai-banner) .review-form input:focus,
body:has(.profile-logo) .review-form input:focus,
body:has(.ai-banner) .review-form textarea:focus,
body:has(.profile-logo) .review-form textarea:focus {
  border-color: rgba(49, 87, 246, 0.45) !important;
  box-shadow: 0 0 0 3px rgba(49, 87, 246, 0.12) !important;
}

body:has(.ai-banner) .pub-site-footer,
body:has(.profile-logo) .pub-site-footer,
body:has(.ai-banner) footer,
body:has(.profile-logo) footer {
  color: #49505b !important;
  border-top: 1px solid var(--eab-border) !important;
  background: transparent !important;
}
body:has(.ai-banner) .pub-site-footer a,
body:has(.profile-logo) .pub-site-footer a {
  color: #49505b !important;
}
body:has(.ai-banner) .pub-site-footer a:hover,
body:has(.profile-logo) .pub-site-footer a:hover {
  color: #3157f6 !important;
}

body:has(.ai-banner) .profile-banner,
body:has(.profile-logo) .profile-banner,
body:has(.ai-banner) .header-art,
body:has(.profile-logo) .header-art {
  border: 1px solid var(--eab-border) !important;
}

/* ═══════════════════════════════════════════════════════════════
   v20260805aj — muted copy +20% darker; mobile "More about" UX
   ═══════════════════════════════════════════════════════════════ */

/* Keep form fill-ins / placeholders lighter — do not darken typed-field hints */
input::placeholder,
textarea::placeholder,
select::placeholder,
.score-form input::placeholder,
.review-form input::placeholder,
.review-form textarea::placeholder,
.hp-field::placeholder {
  color: #9aa3b2 !important;
  -webkit-text-fill-color: #9aa3b2 !important;
  opacity: 1 !important;
}

@media (max-width: 768px) {
  /* Reveal marketing ABOVE pricing (was order:10 after a tall pricing stack) */
  body.seoai-mapp > section.problem,
  body.seoai-mapp > section.features,
  body.seoai-mapp > section.pages-showcase,
  body.seoai-mapp > section.how,
  body.seoai-mapp > section.faq {
    order: 3 !important;
  }
  body.seoai-mapp > section.pricing {
    order: 8 !important;
  }
  body.seoai-mapp > footer {
    order: 20 !important;
  }

  body.seoai-mapp.seoai-mapp-more > section.problem,
  body.seoai-mapp.seoai-mapp-more > section.features,
  body.seoai-mapp.seoai-mapp-more > section.pages-showcase,
  body.seoai-mapp.seoai-mapp-more > section.how,
  body.seoai-mapp.seoai-mapp-more > section.faq {
    display: block !important;
  }

  body.seoai-mapp .seoai-m-more-btn {
    color: #3157f6 !important;
    -webkit-text-fill-color: #3157f6 !important;
    text-decoration-color: rgba(49, 87, 246, 0.45) !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 6 !important;
  }
  body.seoai-mapp .seoai-m-more-wrap {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 6 !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   v20260805ao — translucent header, black nav, tight lang menu
   Beats leftover page / section-specific chrome rules.
   ═══════════════════════════════════════════════════════════════ */
header:not(.dir-hero),
.site-header,
header.site-header,
body.pub-hero-glow header.site-header,
body:has(.mock-stage) header:not(.dir-hero),
body:has(.feature-visual) header:not(.dir-hero),
body:has(.ai-banner) .site-header,
body:has(.profile-logo) .site-header,
body.seoai-mapp > header:not(.dir-hero) {
  background: rgba(255, 255, 255, 0.72) !important;
  background-color: rgba(255, 255, 255, 0.72) !important;
  background-image: none !important;
  border-bottom: 1px solid rgba(215, 220, 229, 0.65) !important;
  box-shadow: 0 1px 0 rgba(17, 24, 39, 0.04) !important;
  backdrop-filter: blur(14px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
  overflow: visible !important;
}

header:not(.dir-hero) nav a:not(.cta),
header:not(.dir-hero) nav#primary-nav > a:not(.cta),
header:not(.dir-hero) .nav-dd-btn,
.site-header nav a:not(.cta),
.site-header nav#primary-nav > a:not(.cta),
.site-header .nav-dd-btn,
header.site-header .nav-dd-btn,
header.site-header .nav-dd.open .nav-dd-btn,
header.site-header .nav-dd.active .nav-dd-btn,
body.pub-hero-glow header.site-header nav a:not(.cta),
body.pub-hero-glow header.site-header .nav-dd-btn,
body:has(.compare-wrap) header nav a:not(.cta),
body:has(.compare-wrap) header nav .nav-dd-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  font-weight: 500 !important;
}

header:not(.dir-hero) nav a:not(.cta):hover,
header:not(.dir-hero) nav a:not(.cta).active,
header:not(.dir-hero) .nav-dd-btn:hover,
.site-header nav a:not(.cta):hover,
.site-header nav a:not(.cta).active,
.site-header .nav-dd-btn:hover,
body:has(.compare-wrap) header nav a:not(.cta):hover {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

/* Filled Login CTA stays white-on-cobalt */
header:not(.dir-hero) nav a.cta,
.site-header nav a.cta,
header.site-header nav a.cta,
header nav#primary-nav a.cta,
body:has(.mock-stage) header nav a.cta,
body:has(.feature-visual) header nav a.cta,
body:has(.compare-wrap) header nav a.cta {
  background: #3157f6 !important;
  border: 1px solid #3157f6 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.lang-switch,
header .lang-switch,
.site-header .lang-switch,
header nav .lang-switch {
  position: relative !important;
  overflow: visible !important;
}

.lang-btn,
.site-header .lang-btn,
header .lang-btn,
#lang-btn,
.lang-btn #lang-label {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

.lang-menu,
#lang-menu,
.site-header .lang-menu,
header .lang-menu {
  position: absolute !important;
  top: 100% !important;
  margin-top: 2px !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  transform: none !important;
  background: #ffffff !important;
  border: 1px solid #d7dce5 !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 24px rgba(17, 24, 39, 0.12) !important;
  z-index: 500 !important;
  min-width: 160px !important;
  width: max-content !important;
  overflow: hidden !important;
  padding: 4px 0 !important;
}

.lang-option,
.site-header .lang-option,
.lang-menu .lang-option,
.lang-menu a.lang-option,
.lang-menu button.lang-option {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: left !important;
  padding: 10px 16px !important;
  margin: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.lang-option:hover,
.site-header .lang-option:hover {
  background: #eef2ff !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}
.lang-option.active,
.site-header .lang-option.active {
  color: #3157f6 !important;
  -webkit-text-fill-color: #3157f6 !important;
  background: #f5f7ff !important;
}

/* ═══════════════════════════════════════════════════════════════
   DIRECTORY layout v20260805ap — orphan card width + footer gap
   ═══════════════════════════════════════════════════════════════ */
body:has(.dir-hero) .dir-grid,
body:has(.dir-hero) #dir-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  margin-bottom: 0 !important;
}
@media (min-width: 680px) {
  body:has(.dir-hero) .dir-grid,
  body:has(.dir-hero) #dir-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }
}
@media (min-width: 1024px) {
  body:has(.dir-hero) .dir-grid,
  body:has(.dir-hero) #dir-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
body:has(.dir-hero) .dir-card {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  grid-column: auto / span 1 !important;
  min-height: 280px !important;
  height: 100% !important;
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}
body:has(.dir-hero) .dir-card-link {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  height: 100% !important;
  min-height: 280px !important;
  box-sizing: border-box !important;
}
body:has(.dir-hero) .dir-card-title h3 {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  overflow: hidden !important;
}
body:has(.dir-hero) .dir-meta {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  overflow: hidden !important;
  margin: 2px 0 8px !important;
}
body:has(.dir-hero) .dir-summary {
  flex: 1 1 auto !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 4 !important;
  line-clamp: 4 !important;
  overflow: hidden !important;
}
body:has(.dir-hero) .dir-proofs {
  margin-top: auto !important;
}

/* Footer: sit below cards with breathing room; full-bleed ink bar */
body:has(.dir-hero) main {
  padding-bottom: 0 !important;
}
body:has(.dir-hero) .dir-no-results {
  margin-bottom: 0 !important;
}
body:has(.dir-hero) footer,
body:has(.dir-hero) main > footer,
body:has(.dir-hero) > footer {
  margin-top: 64px !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
}


/* v20260809navz — profile header solid / no backdrop-filter (dropdown fix) */
/* Chromium composites overflowing dropdowns under page content when sticky
   header uses backdrop-filter. Force solid header on public profiles. */
body:has(.ai-banner) > .site-header,
body:has(.profile-logo) > .site-header,
body:has(main .meta-grid) > .site-header,
body:has(.ai-banner) .site-header,
body:has(.profile-logo) .site-header,
body:has(main .meta-grid) .site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  overflow: visible !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body:has(.ai-banner) .site-header .nav-dd-menu,
body:has(.profile-logo) .site-header .nav-dd-menu,
body:has(main .meta-grid) .site-header .nav-dd-menu,
body:has(.ai-banner) .site-header .lang-menu,
body:has(.profile-logo) .site-header .lang-menu,
body:has(main .meta-grid) .site-header .lang-menu {
  z-index: 10050 !important;
  background: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}


/* Reviews & Ratings UI polish (light EA) */
body:has(.ai-banner) .reviews-section,
body:has(.profile-logo) .reviews-section {
  margin-top: 40px !important;
}
body:has(.ai-banner) .reviews-section > h2,
body:has(.profile-logo) .reviews-section > h2 {
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 14px !important;
  color: var(--eab-ink) !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
}
body:has(.ai-banner) .reviews-aggregate,
body:has(.profile-logo) .reviews-aggregate {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  border-radius: 14px !important;
  padding: 14px 18px !important;
  margin-bottom: 14px !important;
  box-shadow: var(--eab-shadow) !important;
}
body:has(.ai-banner) #reviews-aggregate[style*="display: none"],
body:has(.profile-logo) #reviews-aggregate[style*="display: none"],
body:has(.ai-banner) #reviews-aggregate[style*="display:none"],
body:has(.profile-logo) #reviews-aggregate[style*="display:none"] {
  display: none !important;
}
body:has(.ai-banner) .reviews-avg,
body:has(.profile-logo) .reviews-avg {
  color: var(--eab-ink) !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
body:has(.ai-banner) .reviews-stars,
body:has(.profile-logo) .reviews-stars,
body:has(.ai-banner) .review-stars,
body:has(.profile-logo) .review-stars {
  color: #f59e0b !important;
  letter-spacing: 1px !important;
}
body:has(.ai-banner) .reviews-count,
body:has(.profile-logo) .reviews-count {
  color: #49505b !important;
}
body:has(.ai-banner) #reviews-list,
body:has(.profile-logo) #reviews-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
body:has(.ai-banner) .review-card,
body:has(.profile-logo) .review-card {
  background: #ffffff !important;
  border: 1px solid var(--eab-border) !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  margin-bottom: 0 !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04) !important;
}
body:has(.ai-banner) .review-card-header,
body:has(.profile-logo) .review-card-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 10px !important;
}
body:has(.ai-banner) .review-identity,
body:has(.profile-logo) .review-identity {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}
body:has(.ai-banner) .review-avatar,
body:has(.profile-logo) .review-avatar {
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--eab-pale) !important;
  color: #3157f6 !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
}
body:has(.ai-banner) .review-identity-text,
body:has(.profile-logo) .review-identity-text {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
body:has(.ai-banner) .review-author-row,
body:has(.profile-logo) .review-author-row {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
body:has(.ai-banner) .review-author,
body:has(.profile-logo) .review-author {
  color: var(--eab-ink) !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
}
body:has(.ai-banner) .review-date,
body:has(.profile-logo) .review-date {
  color: #6b7280 !important;
  font-size: 0.78rem !important;
  white-space: nowrap !important;
}
body:has(.ai-banner) .review-verified,
body:has(.profile-logo) .review-verified {
  background: #e8f5e9 !important;
  color: #2e7d32 !important;
  border: 1px solid #c8e6c9 !important;
  border-radius: 999px !important;
  margin-left: 0 !important;
}
body:has(.ai-banner) .review-text,
body:has(.profile-logo) .review-text {
  color: #3d4654 !important;
  font-size: 0.93rem !important;
  line-height: 1.65 !important;
}
body:has(.ai-banner) .review-empty,
body:has(.profile-logo) .review-empty {
  background: #ffffff !important;
  border: 1px dashed var(--eab-border) !important;
  border-radius: 14px !important;
  color: #49505b !important;
  padding: 28px 20px !important;
}
body:has(.ai-banner) .star-picker span,
body:has(.profile-logo) .star-picker span {
  color: #d1d5db !important;
}
body:has(.ai-banner) .star-picker span.active,
body:has(.profile-logo) .star-picker span.active,
body:has(.ai-banner) .star-picker span:hover,
body:has(.profile-logo) .star-picker span:hover {
  color: #f59e0b !important;
}
body:has(.ai-banner) .review-submit:disabled,
body:has(.profile-logo) .review-submit:disabled {
  background: #e5e7eb !important;
  color: #9ca3af !important;
  border-color: #e5e7eb !important;
}
body:has(.ai-banner) .review-msg.success,
body:has(.profile-logo) .review-msg.success {
  background: #e8f5e9 !important;
  color: #2e7d32 !important;
  border: 1px solid #c8e6c9 !important;
}
body:has(.ai-banner) .review-msg.error,
body:has(.profile-logo) .review-msg.error {
  background: #fdecea !important;
  color: #c62828 !important;
  border: 1px solid #f5c6cb !important;
}

/* Directory avatar alignment polish */
.dir-card-head {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}
.dir-avatar,
.dir-avatar-fallback {
  display: block !important;
  box-sizing: border-box !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  border-radius: 12px !important;
  object-fit: contain !important;
  object-position: center !important;
  overflow: hidden !important;
  vertical-align: top !important;
}
.dir-avatar-fallback {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  text-align: center !important;
}
.dir-card-title {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.dir-card-title h3 {
  margin: 0 !important;
}
