/* Detector Checker — Evidence Lab internal-page baseline.
 * Loaded only away from the front page, after the verified global/home asset.
 * Deliberately avoids global overflow clipping and detector runtime changes. */

body:not(.home) {
  background: var(--c);
  color: var(--t);
  font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body:not(.home) :where(#main-content, .site-main, .entry-content, .page-content) {
  min-width: 0;
}

body:not(.home) :where(.entry-title, .page-title, .entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4) {
  color: var(--t);
  font-family: inherit;
  letter-spacing: -0.025em;
  text-wrap: balance;
}

body:not(.home) :where(.entry-content p, .entry-content li, .page-content p, .page-content li) {
  color: var(--m);
  line-height: 1.7;
}

body:not(.home) :where(.entry-content, .page-content) a:not(.wp-block-button__link) {
  color: var(--ph);
  text-decoration-color: rgb(13 118 110 / 0.42);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body:not(.home) :where(.entry-content, .page-content) a:not(.wp-block-button__link):hover {
  color: var(--p);
  text-decoration-color: currentColor;
}

body:not(.home) :where(a, button, input, textarea, select, summary):focus {
  outline: 3px solid var(--f) !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}

body:not(.home) .wp-block-button .wp-block-button__link,
body:not(.home) .wp-element-button,
body:not(.home) .dc-cta a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--p) !important;
  border-radius: 10px !important;
  background-color: #0d766e !important;
  background-image: none !important;
  color: #fff !important;
  box-shadow: none !important;
  font-weight: 600;
}

body:not(.home) .wp-block-button .wp-block-button__link:hover,
body:not(.home) .wp-element-button:hover,
body:not(.home) .dc-cta a:hover {
  border-color: var(--ph) !important;
  background-color: #095f59 !important;
  color: #fff !important;
}

body:not(.home) :where(.wp-block-quote, blockquote, .dc-callout, .dc-note) {
  padding: 20px 22px;
  border: 1px solid var(--b) !important;
  border-left: 4px solid var(--p) !important;
  border-radius: 12px;
  background: var(--sf) !important;
  color: var(--t) !important;
  box-shadow: none !important;
}

body:not(.home) :where(.wp-block-quote, blockquote, .dc-callout, .dc-note) :where(p, li, cite) {
  color: var(--m) !important;
}

body:not(.home) .wp-block-table {
  max-width: 100%;
  margin: 24px 0;
  overflow-x: auto;
  border: 1px solid var(--b);
  border-radius: 14px;
  background: #fff;
  box-shadow: none !important;
}

body:not(.home) .wp-block-table table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
}

body:not(.home) .wp-block-table :where(th, td) {
  padding: 13px 16px;
  border-color: var(--b) !important;
  color: var(--m) !important;
  vertical-align: top;
}

body:not(.home) .wp-block-table thead th {
  background: var(--sf) !important;
  color: var(--t) !important;
  font-weight: 600;
}

body:not(.home) :where(details, .r62-disclosure) {
  border: 1px solid var(--b) !important;
  border-radius: 12px;
  background: #fff !important;
  box-shadow: none !important;
}

body:not(.home) :where(details > summary, .r62-disclosure > summary) {
  min-height: 48px;
  padding: 13px 16px;
  color: var(--t) !important;
  font-weight: 600;
}

body:not(.home) :where(code, kbd, samp) {
  border: 1px solid var(--b);
  border-radius: 6px;
  background: var(--sf);
  color: var(--t);
}

body:not(.home) :where(img, svg, video, iframe) {
  max-width: 100%;
}

body:not(.home) #main-content {
  background: var(--c);
}

body:not(.home) .dc-breadcrumbs {
  border-bottom: 1px solid var(--b) !important;
  background: var(--sf) !important;
  color: var(--m) !important;
}

body:not(.home) .dc-breadcrumbs :where(a, span) {
  color: var(--m) !important;
}

body:not(.home) .dc-page-hero {
  padding: 48px 0 40px !important;
  border-bottom: 1px solid var(--b);
  background: var(--c) !important;
}

body:not(.home) .dc-page-hero .dc-container {
  width: min(calc(100% - 48px), 1136px);
  max-width: none;
  padding: 0;
}

body:not(.home) .dc-page-hero h1 {
  max-width: 940px;
  margin: 0 !important;
  color: var(--t) !important;
  font-size: clamp(42px, 4.2vw, 56px) !important;
  font-weight: 600;
  line-height: 1.08 !important;
  letter-spacing: -0.04em;
}

body:not(.home) .dc-section {
  padding: 56px 0 76px !important;
}

body.page-id-2378 .dc-article,
body.page-id-2212 .dc-article {
  width: min(calc(100% - 48px), 1136px);
  max-width: none;
  margin-inline: auto;
  padding: 0;
}

body.page-id-2378 .dc-article {
  display: block;
}

body.page-id-2378 .dc-article__main,
body.page-id-2212 .dc-article__main {
  width: 100%;
  max-width: 760px;
  margin: 0;
  padding: 0;
}

body.page-id-2378 .dc-article__main {
  margin-inline: auto;
}

body.page-id-2378 .wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin: 28px 0 44px;
}

body.page-id-2378 .wp-block-button__link {
  padding: 12px 18px;
  text-decoration: none;
}

body.page-id-2378 .wp-block-button.is-style-outline .wp-block-button__link {
  border-color: var(--p) !important;
  background: transparent !important;
  color: var(--ph) !important;
}

body.page-id-2378 .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--ps) !important;
  color: var(--ph) !important;
}

body.page-id-2212 .dc-article {
  grid-template-columns: minmax(0, 760px) 288px;
  gap: 64px;
}

body.page-id-2212 .dc-article__toc {
  width: auto;
  margin: 0;
}

body.page-id-2212 .dc-toc-panel {
  width: 100%;
  max-height: calc(100vh - 120px);
  padding: 20px;
  overflow-y: auto;
  border: 1px solid var(--b);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 2px rgb(19 35 43 / 0.05);
}

body.page-id-2212 .dc-toc-panel :where(a, li) {
  color: var(--m) !important;
  line-height: 1.45;
}

body.page-id-2378 .dc-article__main > p,
body.page-id-2212 .dc-article__main > p,
body.page-id-2378 .dc-article__main > ul,
body.page-id-2212 .dc-article__main > ul,
body.page-id-2378 .dc-article__main > ol,
body.page-id-2212 .dc-article__main > ol {
  color: var(--m);
  font-size: 17px;
  line-height: 1.75;
}

body.page-id-2378 .dc-article__main h2 {
  margin: 64px 0 16px;
  color: var(--t);
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 600;
  line-height: 1.16;
}

body.page-id-2378 .dc-article__main h3 {
  margin: 38px 0 12px;
  color: var(--t);
  font-size: 23px;
  line-height: 1.25;
}

body.page-id-2378 .dc-model-disclaimer {
  margin: 0 0 32px;
  padding: 18px 20px;
  border: 1px solid var(--b) !important;
  border-left: 4px solid var(--p) !important;
  border-radius: 12px;
  background: var(--sf) !important;
  color: var(--m) !important;
  line-height: 1.6;
}

body.page-id-2378 .dc-evidence-boundary {
  margin: 48px 0 56px;
  padding: 28px;
  border: 1px solid var(--b);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 1px 2px rgb(19 35 43 / 0.05);
}

body.page-id-2378 .dc-article__main a:not(.wp-block-button__link):not(.dc-btn),
body.page-id-2212 .dc-article__main a:not(.wp-block-button__link):not(.dc-btn):not(.dc-ir-v3__button) {
  color: var(--ph) !important;
  text-decoration-color: rgb(13 118 110 / 0.42) !important;
}

body.page-id-2378 .dc-article__main a:not(.wp-block-button__link):not(.dc-btn):hover,
body.page-id-2212 .dc-article__main a:not(.wp-block-button__link):not(.dc-btn):not(.dc-ir-v3__button):hover {
  color: var(--p) !important;
  text-decoration-color: currentColor !important;
}

body:not(.home) .dc-cta {
  margin-top: 72px;
  padding: 40px;
  border: 1px solid rgb(255 255 255 / 0.12);
  border-radius: 18px;
  background: var(--t) !important;
  color: #fff !important;
  box-shadow: none !important;
}

body:not(.home) .dc-cta :where(.dc-cta__title, .dc-cta__desc) {
  color: #fff !important;
}

body:not(.home) .dc-cta .dc-cta__desc {
  color: #dfe8e7 !important;
}

/* Benchmark template: palette and table readability only. Its long-form
 * evidence layout remains owned by the template until the dedicated pass. */
body.page-template-page-benchmarks :where(.benchmark-byline, figcaption) {
  color: var(--m) !important;
}

body.page-template-page-benchmarks :where(h1, h2, h3, h4) {
  color: var(--t) !important;
}

body.page-template-page-benchmarks :where(a:not(.wp-element-button), summary) {
  color: var(--ph) !important;
}

body.page-template-page-benchmarks .wp-block-table {
  border-color: var(--b) !important;
  background: #fff !important;
}

body.page-template-page-benchmarks .wp-block-table thead th {
  background: var(--sf) !important;
  color: var(--t) !important;
}

body.page-template-page-benchmarks .wp-block-table table caption,
body.page-id-2378 .wp-block-table table caption {
  caption-side: top;
  padding: 0 0 12px;
  color: var(--m);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  text-align: left;
}

body.page-template-page-benchmarks .wp-block-table tbody th[scope="row"],
body.page-id-2378 .wp-block-table tbody th[scope="row"] {
  color: var(--t);
  font-weight: 600;
}

body.page-template-page-landing .dc-landing-content {
  width: min(calc(100% - 48px), 1120px) !important;
  margin-inline: auto !important;
  padding: 56px 0 88px !important;
  color: var(--t);
}

body.page-template-page-landing .dc-landing-content > h1 {
  max-width: 900px;
  margin: 0 0 10px !important;
  color: var(--t) !important;
  font-size: clamp(44px, 5vw, 60px) !important;
  font-weight: 600;
  line-height: 1.07 !important;
  letter-spacing: -0.04em;
}

body.page-template-page-landing .benchmark-byline {
  margin-bottom: 22px !important;
  color: var(--m) !important;
  font-size: 14px;
}

body.page-template-page-landing .dc-landing-content > :where(p, ul, ol, blockquote) {
  max-width: 900px;
  color: var(--m) !important;
  font-size: 16px;
  line-height: 1.72;
}

body.page-template-page-landing .dc-landing-content > h2 {
  max-width: 820px;
  margin: 84px 0 18px !important;
  padding-top: 8px;
  color: var(--t) !important;
  font-size: clamp(32px, 3.4vw, 44px) !important;
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: -0.03em;
}

body.page-template-page-landing .dc-landing-content > h3 {
  max-width: 820px;
  margin: 46px 0 14px !important;
  color: var(--t) !important;
  font-size: clamp(23px, 2.4vw, 30px) !important;
  line-height: 1.2;
}

body.page-template-page-landing .dc-landing-content .wp-block-table {
  margin: 26px 0 36px;
}

body.page-template-page-landing .dc-landing-content .wp-block-image {
  margin: 30px 0 42px;
}

body.page-template-page-landing .dc-landing-content .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--b);
  border-radius: 16px;
  background: #fff;
}

body.page-template-page-landing .dc-landing-content > .wp-block-button {
  margin-block: 30px 42px;
}

body.page-template-page-landing .dc-landing-content a:not(.wp-element-button) {
  color: var(--ph) !important;
  text-decoration-color: rgb(13 118 110 / 0.42) !important;
}

body.page-template-page-landing .dc-landing-content a:not(.wp-element-button):hover {
  color: var(--p) !important;
  text-decoration-color: currentColor !important;
}

body.page-id-2212 .dc-toc-panel {
  scrollbar-color: var(--b) transparent;
  scrollbar-width: thin;
}

body.page-id-2212 .dc-toc-panel::-webkit-scrollbar {
  width: 8px;
}

body.page-id-2212 .dc-toc-panel::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: var(--b);
}

@media (max-width: 767px) {
  body:not(.home) :where(.entry-content, .page-content) {
    min-width: 0;
  }

  body:not(.home) .wp-block-table {
    width: 100%;
    border-radius: 10px;
  }

  body:not(.home) .wp-block-table :where(th, td) {
    padding: 11px 12px;
  }

  body:not(.home) .dc-breadcrumb-current {
    max-width: calc(100vw - 120px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body:not(.home) .dc-page-hero {
    padding: 34px 0 30px !important;
  }

  body:not(.home) .dc-page-hero .dc-container,
  body.page-id-2378 .dc-article,
  body.page-id-2212 .dc-article,
  body.page-template-page-landing .dc-landing-content {
    width: calc(100% - 32px) !important;
  }

  body:not(.home) .dc-page-hero h1,
  body.page-template-page-landing .dc-landing-content > h1 {
    font-size: clamp(36px, 10vw, 44px) !important;
  }

  body:not(.home) .dc-section {
    padding: 40px 0 58px !important;
  }

  body.page-id-2212 .dc-article {
    display: block;
  }

  body.page-id-2212 .dc-article__toc {
    margin: 0 0 28px;
  }

  body.page-id-2212 .dc-toc-panel {
    max-height: none;
  }

  body.page-id-2378 .dc-article__main h2,
  body.page-template-page-landing .dc-landing-content > h2 {
    margin-top: 52px !important;
  }

  body.page-id-2378 .dc-evidence-boundary,
  body:not(.home) .dc-cta {
    padding: 22px;
    border-radius: 14px;
  }

  body.page-id-2378 .wp-block-buttons,
  body.page-id-2378 .wp-block-button,
  body.page-id-2378 .wp-block-button__link {
    width: 100%;
  }

  body.page-template-page-landing .dc-landing-content {
    padding: 38px 0 64px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.home) *,
  body:not(.home) *::before,
  body:not(.home) *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
