/* Mekta Scan legal documents inherit the active theme instead of replacing it. */
.mekta-scan-legal-document {
  --ms-legal-accent: var(--wp--preset--color--primary, var(--e-global-color-primary, #2563eb));
  --ms-legal-text: currentColor;
  --ms-legal-muted: color-mix(in srgb, currentColor 68%, transparent);
  --ms-legal-border: color-mix(in srgb, currentColor 18%, transparent);
  --ms-legal-surface: color-mix(in srgb, currentColor 5%, transparent);
  width: 100%;
  max-width: 920px;
  margin-inline: auto;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.75;
}

.mekta-scan-legal-document h2,
.mekta-scan-legal-document h3 {
  color: inherit;
  font-family: inherit;
  line-height: 1.25;
  letter-spacing: -0.02em;
  margin: 2.15em 0 .65em;
}

.mekta-scan-legal-document h2:first-child { margin-top: 0; }
.mekta-scan-legal-document p,
.mekta-scan-legal-document li { color: inherit; }
.mekta-scan-legal-document ul,
.mekta-scan-legal-document ol { padding-inline-start: 1.35rem; }
.mekta-scan-legal-document a {
  color: var(--ms-legal-accent);
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
}

/* The theme/Elementor renders the WordPress page title outside the generated
   document. Center it only on pages recognized as Mekta Scan legal pages. */
body.mekta-scan-legal-page :is(.entry-title,.page-title,.wp-block-post-title,.elementor-widget-theme-post-title .elementor-heading-title) {
  width: 100%;
  max-width: 920px;
  margin-inline: auto !important;
  text-align: center !important;
}

.mekta-scan-legal-notice {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  padding: 1rem 1.1rem;
  border: 1px solid var(--ms-legal-border);
  border-radius: 14px;
  background: var(--ms-legal-surface);
  color: inherit;
  margin-bottom: 2rem;
}
.mekta-scan-legal-notice::before {
  content: "i";
  flex: 0 0 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--ms-legal-accent);
  color: #fff;
  font-size: .78rem;
  font-weight: 800;
  font-style: normal;
}
.mekta-scan-legal-notice p { margin: 0; }

/* Explicit fallback modes chosen in the plugin settings. */
.mekta-scan-legal-light .mekta-scan-legal-document {
  --ms-legal-text: #172033;
  --ms-legal-muted: #667085;
  --ms-legal-border: #e4e7ec;
  --ms-legal-surface: #f8fafc;
  color: var(--ms-legal-text);
  background: transparent;
  padding: clamp(1.25rem, 3vw, 2.5rem);
  border: 1px solid var(--ms-legal-border);
  border-radius: 18px;
}
.mekta-scan-legal-dark .mekta-scan-legal-document {
  --ms-legal-text: #f5f7fb;
  --ms-legal-muted: #aab2c0;
  --ms-legal-border: rgba(255,255,255,.15);
  --ms-legal-surface: rgba(255,255,255,.06);
  color: var(--ms-legal-text);
  background: transparent;
  padding: clamp(1.25rem, 3vw, 2.5rem);
  border: 1px solid var(--ms-legal-border);
  border-radius: 18px;
}
body.mekta-scan-legal-light :is(.entry-title,.page-title,.wp-block-post-title,.elementor-widget-theme-post-title .elementor-heading-title) {
  color: #17191f !important;
}
body.mekta-scan-legal-dark :is(.entry-title,.page-title,.wp-block-post-title,.elementor-widget-theme-post-title .elementor-heading-title) {
  color: #f5f7fa !important;
}

@media (max-width: 767px) {
  .mekta-scan-legal-document { line-height: 1.68; }
  .mekta-scan-legal-document h2 { font-size: clamp(1.35rem, 6vw, 1.7rem); }
  .mekta-scan-legal-notice { border-radius: 12px; padding: .9rem; }
}

/* Legal pages follow the site's own surface color; the plugin only guarantees
   readable typography and spacing. */
body.mekta-scan-legal-page .mekta-scan-legal-document {
  background: transparent !important;
  border-color: color-mix(in srgb, currentColor 16%, transparent) !important;
  padding-top: clamp(2.5rem, 5vw, 5rem) !important;
  padding-bottom: clamp(3rem, 6vw, 6rem) !important;
}

/* Old generated pages can still contain the former editorial notice in their
   saved content. Keep it out of the public page while the admin reminder stays
   available in the WordPress Documents panel. */
body.mekta-scan-legal-page .mekta-scan-legal-notice { display: none !important; }

/* Automatic contrast correction for themes that use a dark page background but
   keep dark default typography on WordPress pages. */
body.mekta-scan-legal-page.mekta-scan-theme-dark-detected {
  --ms-auto-legal-text: #f4f4f5;
  --ms-auto-legal-muted: #b8bbc2;
}
body.mekta-scan-legal-page.mekta-scan-theme-light-detected {
  --ms-auto-legal-text: #17191f;
  --ms-auto-legal-muted: #5f6673;
}

body.mekta-scan-legal-auto.mekta-scan-theme-dark-detected .mekta-scan-legal-document,
body.mekta-scan-legal-auto.mekta-scan-theme-light-detected .mekta-scan-legal-document {
  color: var(--ms-auto-legal-text) !important;
}
body.mekta-scan-legal-auto.mekta-scan-theme-dark-detected .mekta-scan-legal-document :is(h1,h2,h3,h4,h5,h6,strong,b,p,li,em),
body.mekta-scan-legal-auto.mekta-scan-theme-light-detected .mekta-scan-legal-document :is(h1,h2,h3,h4,h5,h6,strong,b,p,li,em) {
  color: inherit !important;
}
body.mekta-scan-legal-auto.mekta-scan-theme-dark-detected .mekta-scan-legal-notice,
body.mekta-scan-legal-auto.mekta-scan-theme-light-detected .mekta-scan-legal-notice {
  color: var(--ms-auto-legal-muted) !important;
}

/* The page title is normally rendered by the theme outside the generated document. */
body.mekta-scan-legal-auto.mekta-scan-theme-dark-detected :is(.entry-title,.page-title,.elementor-heading-title,.wp-block-post-title),
body.mekta-scan-legal-auto.mekta-scan-theme-dark-detected :is(.entry-content,.page-content,.elementor-widget-theme-post-content) > :is(h1,h2,h3,h4,h5,h6,p) {
  color: var(--ms-auto-legal-text) !important;
}
body.mekta-scan-legal-auto.mekta-scan-theme-light-detected :is(.entry-title,.page-title,.elementor-heading-title,.wp-block-post-title),
body.mekta-scan-legal-auto.mekta-scan-theme-light-detected :is(.entry-content,.page-content,.elementor-widget-theme-post-content) > :is(h1,h2,h3,h4,h5,h6,p) {
  color: var(--ms-auto-legal-text) !important;
}

/* Strong fallback: theme rules frequently target Elementor and page content with
   high specificity. The script also applies inline values, while these selectors
   avoid a flash of unreadable text before JavaScript finishes. */
body.mekta-scan-legal-page .mekta-scan-legal-document,
body.mekta-scan-legal-page .mekta-scan-legal-document * {
  font-family: inherit;
}
body.mekta-scan-legal-page.mekta-scan-theme-dark-detected .mekta-scan-legal-document,
body.mekta-scan-legal-page.mekta-scan-theme-dark-detected .mekta-scan-legal-document :where(h1,h2,h3,h4,h5,h6,p,li,strong,b,em,span) {
  color: #f5f7fa !important;
}
body.mekta-scan-legal-page.mekta-scan-theme-light-detected .mekta-scan-legal-document,
body.mekta-scan-legal-page.mekta-scan-theme-light-detected .mekta-scan-legal-document :where(h1,h2,h3,h4,h5,h6,p,li,strong,b,em,span) {
  color: #17191f !important;
}
