/**
 * Article checklists and error blocks for the public article and Gutenberg editor.
 */
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list,
:where(.article-content, .editor-styles-wrapper) .wp-block-group:is(
  .is-style-seo-medical-checklist,
  .is-style-seo-medical-checklist-compact,
  .is-style-seo-medical-errors,
  .is-style-seo-medical-error-solution
) {
  --article-list-accent: #087685;
  --article-list-soft: #edf8f8;
  --article-list-border: rgba(8, 118, 133, .22);
  position: relative;
  box-sizing: border-box;
  margin-block: 30px;
  padding: clamp(22px, 3vw, 34px);
  color: #17293a;
  background: linear-gradient(135deg, var(--article-list-soft) 0%, #fff 100%);
  border: 1px solid var(--article-list-border);
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(23, 41, 58, .08);
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list > :first-child,
:where(.article-content, .editor-styles-wrapper) .wp-block-group:is(
  .is-style-seo-medical-checklist,
  .is-style-seo-medical-checklist-compact,
  .is-style-seo-medical-errors,
  .is-style-seo-medical-error-solution
) > :first-child {
  margin-top: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list > :last-child,
:where(.article-content, .editor-styles-wrapper) .wp-block-group:is(
  .is-style-seo-medical-checklist,
  .is-style-seo-medical-checklist-compact,
  .is-style-seo-medical-errors,
  .is-style-seo-medical-error-solution
) > :last-child {
  margin-bottom: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list :is(h2, h3, h4) {
  margin: 0 0 14px;
  color: #17293a;
  font-family: "Onest", "Inter", Arial, sans-serif;
  font-size: clamp(21px, 2.2vw, 27px);
  line-height: 1.22;
  font-weight: 850;
  letter-spacing: -.025em;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list__eyebrow {
  margin: 0 0 8px !important;
  color: var(--article-list-accent) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-list,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-list,
:where(.article-content, .editor-styles-wrapper) .seo-medical-numbered-check-list {
  display: grid;
  gap: 13px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-list li,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-list li {
  position: relative;
  margin: 0;
  padding-left: 34px;
  color: #40586e;
  font-size: 16px;
  line-height: 1.58;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-list li::before,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-list li::before {
  position: absolute;
  top: .08em;
  left: 0;
  display: grid;
  place-items: center;
  width: 23px;
  height: 23px;
  color: #fff;
  background: var(--article-list-accent);
  border-radius: 50%;
  content: "\2713";
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-numbered-check-list {
  counter-reset: seo-medical-check;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-numbered-check-list li {
  position: relative;
  counter-increment: seo-medical-check;
  min-height: 42px;
  margin: 0;
  padding: 4px 0 0 54px;
  color: #40586e;
  font-size: 16px;
  line-height: 1.58;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-numbered-check-list li::before {
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  color: #fff;
  background: linear-gradient(135deg, #0b4a8b 0%, var(--article-list-accent) 100%);
  border-radius: 12px;
  content: counter(seo-medical-check, decimal-leading-zero);
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.is-style-seo-medical-checklist-compact {
  padding: clamp(20px, 2.5vw, 28px);
  border-left: 5px solid var(--article-list-accent);
  box-shadow: none;
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.is-style-seo-medical-errors,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--errors,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--error-card {
  --article-list-accent: #b24a4a;
  --article-list-soft: #fff3f1;
  --article-list-border: rgba(178, 74, 74, .22);
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-list li::before {
  content: "\00D7";
  font-size: 17px;
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.is-style-seo-medical-error-solution,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--solution-card {
  --article-list-accent: #087685;
  --article-list-soft: #eff9f6;
  --article-list-border: rgba(8, 118, 133, .22);
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid {
  align-items: stretch;
  gap: 20px;
  margin-block: 30px;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns {
  margin-bottom: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns .seo-medical-check-list {
  margin-top: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid > .wp-block-column,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid > .wp-block-column {
  display: flex;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid .seo-medical-article-list,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid .seo-medical-article-list {
  width: 100%;
  margin-block: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--mini {
  padding: 24px;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list__number {
  margin: 0 0 14px !important;
  color: var(--article-list-accent) !important;
  font-family: "Onest", "Inter", Arial, sans-serif;
  font-size: 34px !important;
  line-height: 1 !important;
  font-weight: 900;
  letter-spacing: -.04em;
}

@media (max-width: 760px) {
  :where(.article-content, .editor-styles-wrapper) .seo-medical-article-list,
  :where(.article-content, .editor-styles-wrapper) .wp-block-group:is(
    .is-style-seo-medical-checklist,
    .is-style-seo-medical-checklist-compact,
    .is-style-seo-medical-errors,
    .is-style-seo-medical-error-solution
  ) {
    padding: 21px 18px;
    border-radius: 14px;
  }

  :where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid,
  :where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid,
  :where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns {
    gap: 14px;
  }
}

/* v1.5.50: brand-aligned checklist/error palette and resilient comparison grids. */
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list,
:where(.article-content, .editor-styles-wrapper) .wp-block-group:is(
  .is-style-seo-medical-checklist,
  .is-style-seo-medical-checklist-compact,
  .is-style-seo-medical-errors,
  .is-style-seo-medical-error-solution
) {
  --article-list-text: var(--blog-detail-text, var(--color-text, #102033));
  --article-list-muted: var(--blog-detail-muted, var(--color-muted, #5f6f82));
  --article-list-line: var(--blog-detail-line, var(--color-border, #d9e6f0));
  --article-list-primary: var(--blog-detail-primary, var(--color-primary, #0b4a8b));
  --article-list-teal: var(--blog-detail-accent, var(--color-accent, #087685));
  --article-list-accent: var(--article-list-teal);
  --article-list-soft: #eef8f7;
  --article-list-border: rgba(8, 118, 133, .18);
  min-width: 0;
  color: var(--article-list-text);
  border-radius: 20px;
  box-shadow: 0 12px 30px rgba(16, 32, 51, .075);
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.seo-medical-article-list {
  display: flex;
  flex-direction: column;
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.seo-medical-article-list > .wp-block-group__inner-container {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
  width: 100%;
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.seo-medical-article-list > .wp-block-group__inner-container > :first-child {
  margin-top: 0;
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.seo-medical-article-list > .wp-block-group__inner-container > :last-child {
  margin-bottom: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list :is(h2, h3, h4) {
  color: var(--article-list-text);
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-check-list li,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-list li,
:where(.article-content, .editor-styles-wrapper) .seo-medical-numbered-check-list li,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list p {
  color: var(--article-list-muted);
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-numbered-check-list li::before {
  background: linear-gradient(135deg, var(--article-list-primary) 0%, var(--article-list-teal) 100%);
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.is-style-seo-medical-errors,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--errors,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--error-card {
  --article-list-accent: #8b4b57;
  --article-list-soft: #fbf4f6;
  --article-list-border: rgba(139, 75, 87, .18);
}

:where(.article-content, .editor-styles-wrapper) .wp-block-group.is-style-seo-medical-error-solution,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--solution-card {
  --article-list-accent: var(--article-list-teal);
  --article-list-soft: #eef8f7;
  --article-list-border: rgba(8, 118, 133, .18);
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid,
:where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch !important;
  gap: 20px !important;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid > .wp-block-column,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid > .wp-block-column,
:where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns > .wp-block-column {
  display: flex;
  min-width: 0;
  width: 100%;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid .seo-medical-article-list,
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid .seo-medical-article-list {
  height: 100%;
}

/* Repair a duplicated Columns wrapper produced by imported/generated block markup. */
:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid--comparison > .wp-block-column:only-child {
  display: block;
  grid-column: 1 / -1;
  width: 100%;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid--comparison > .wp-block-column:only-child > .seo-medical-error-solution-grid {
  width: 100%;
  margin-block: 0;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--error-card,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--solution-card {
  overflow: hidden;
}

:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--error-card::before,
:where(.article-content, .editor-styles-wrapper) .seo-medical-article-list--solution-card::before {
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: var(--article-list-accent);
  content: "";
}

@media (max-width: 1180px) {
  :where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  :where(.article-content, .editor-styles-wrapper) .seo-medical-error-solution-grid,
  :where(.article-content, .editor-styles-wrapper) .seo-medical-error-card-grid,
  :where(.article-content, .editor-styles-wrapper) .seo-medical-check-columns {
    grid-template-columns: 1fr;
  }
}


/* v1.5.51: fix marker overlap caused by generic article list rules. */
.page--blog-detail .article-content .seo-medical-check-list,
.page--blog-detail .article-content .seo-medical-error-list,
.page--blog-detail .article-content .seo-medical-numbered-check-list {
  display: grid;
  gap: 13px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.page--blog-detail .article-content .seo-medical-check-list li,
.page--blog-detail .article-content .seo-medical-error-list li {
  position: relative;
  margin: 0;
  padding: 0 0 0 36px;
}

.page--blog-detail .article-content .seo-medical-numbered-check-list li {
  position: relative;
  min-height: 44px;
  margin: 0;
  padding: 5px 0 0 58px;
}

.page--blog-detail .article-content .seo-medical-check-list li::before,
.editor-styles-wrapper .seo-medical-check-list li::before {
  content: "\2713";
}

.page--blog-detail .article-content .seo-medical-error-list li::before,
.editor-styles-wrapper .seo-medical-error-list li::before {
  content: "\00D7";
  font-family: Arial, sans-serif;
}

.page--blog-detail .article-content .seo-medical-article-list :is(h2, h3, h4) {
  margin: 0 0 14px;
  font-size: clamp(21px, 2.2vw, 27px);
  line-height: 1.22;
}

.page--blog-detail .article-content .seo-medical-article-list p {
  margin: 0 0 14px;
}

.page--blog-detail .article-content .seo-medical-article-list > .wp-block-group__inner-container > :first-child {
  margin-top: 0;
}

.page--blog-detail .article-content .seo-medical-article-list > .wp-block-group__inner-container > :last-child {
  margin-bottom: 0;
}

.page--blog-detail .article-content .seo-medical-error-solution-grid,
.page--blog-detail .article-content .seo-medical-error-card-grid,
.page--blog-detail .article-content .seo-medical-check-columns {
  margin-block: 30px;
  padding-left: 0;
}

@media (max-width: 760px) {
  .page--blog-detail .article-content .seo-medical-numbered-check-list li {
    padding-left: 54px;
  }

  .page--blog-detail .article-content .seo-medical-error-solution-grid,
  .page--blog-detail .article-content .seo-medical-error-card-grid,
  .page--blog-detail .article-content .seo-medical-check-columns {
    grid-template-columns: 1fr;
  }
}


.editor-styles-wrapper .seo-medical-check-list,
.editor-styles-wrapper .seo-medical-error-list,
.editor-styles-wrapper .seo-medical-numbered-check-list {
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.editor-styles-wrapper .seo-medical-check-list li,
.editor-styles-wrapper .seo-medical-error-list li {
  position: relative;
  margin: 0;
  padding: 0 0 0 36px;
}

.editor-styles-wrapper .seo-medical-numbered-check-list li {
  position: relative;
  min-height: 44px;
  margin: 0;
  padding: 5px 0 0 58px;
}

.editor-styles-wrapper .seo-medical-article-list :is(h2, h3, h4) {
  margin: 0 0 14px;
}

.editor-styles-wrapper .seo-medical-article-list p {
  margin: 0 0 14px;
}

/* v1.5.52: harden special list spacing against WordPress and article defaults. */
.page--blog-detail .article-content ul.seo-medical-check-list,
.page--blog-detail .article-content ul.seo-medical-error-list,
.page--blog-detail .article-content ol.seo-medical-numbered-check-list,
.editor-styles-wrapper ul.seo-medical-check-list,
.editor-styles-wrapper ul.seo-medical-error-list,
.editor-styles-wrapper ol.seo-medical-numbered-check-list {
  box-sizing: border-box;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.page--blog-detail .article-content ul.seo-medical-check-list > li,
.page--blog-detail .article-content ul.seo-medical-error-list > li,
.editor-styles-wrapper ul.seo-medical-check-list > li,
.editor-styles-wrapper ul.seo-medical-error-list > li {
  position: relative !important;
  box-sizing: border-box;
  min-width: 0;
  margin: 0 !important;
  padding: 1px 0 1px 38px !important;
  text-indent: 0 !important;
}

.page--blog-detail .article-content ol.seo-medical-numbered-check-list > li,
.editor-styles-wrapper ol.seo-medical-numbered-check-list > li {
  position: relative !important;
  box-sizing: border-box;
  min-width: 0;
  min-height: 44px;
  margin: 0 !important;
  padding: 5px 0 4px 62px !important;
  text-indent: 0 !important;
}

.page--blog-detail .article-content ul.seo-medical-check-list > li::before,
.page--blog-detail .article-content ul.seo-medical-error-list > li::before,
.editor-styles-wrapper ul.seo-medical-check-list > li::before,
.editor-styles-wrapper ul.seo-medical-error-list > li::before {
  top: .12em !important;
  left: 0 !important;
  box-sizing: border-box;
  width: 24px !important;
  height: 24px !important;
}

.page--blog-detail .article-content ol.seo-medical-numbered-check-list > li::before,
.editor-styles-wrapper ol.seo-medical-numbered-check-list > li::before {
  top: 0 !important;
  left: 0 !important;
  box-sizing: border-box;
  width: 42px !important;
  height: 42px !important;
  font-variant-numeric: tabular-nums;
}

.page--blog-detail .article-content .seo-medical-article-list strong,
.editor-styles-wrapper .seo-medical-article-list strong {
  color: #17324b;
  font-weight: 850;
}

@media (max-width: 620px) {
  .page--blog-detail .article-content ol.seo-medical-numbered-check-list > li,
  .editor-styles-wrapper ol.seo-medical-numbered-check-list > li {
    padding-left: 56px !important;
  }

  .page--blog-detail .article-content ol.seo-medical-numbered-check-list > li::before,
  .editor-styles-wrapper ol.seo-medical-numbered-check-list > li::before {
    width: 38px !important;
    height: 38px !important;
  }
}


/* v1.5.55: final list rhythm and alignment after full-page review. */
.page--blog-detail .article-content .seo-medical-check-list,
.page--blog-detail .article-content .seo-medical-error-list,
.page--blog-detail .article-content .seo-medical-numbered-check-list,
.editor-styles-wrapper .seo-medical-check-list,
.editor-styles-wrapper .seo-medical-error-list,
.editor-styles-wrapper .seo-medical-numbered-check-list {
  gap: 10px;
}

.page--blog-detail .article-content .seo-medical-check-list li,
.page--blog-detail .article-content .seo-medical-error-list li,
.editor-styles-wrapper .seo-medical-check-list li,
.editor-styles-wrapper .seo-medical-error-list li {
  padding-left: 32px;
  line-height: 1.52;
}

.page--blog-detail .article-content .seo-medical-check-list li::before,
.page--blog-detail .article-content .seo-medical-error-list li::before,
.editor-styles-wrapper .seo-medical-check-list li::before,
.editor-styles-wrapper .seo-medical-error-list li::before {
  top: .06em;
  width: 22px;
  height: 22px;
}

.page--blog-detail .article-content .seo-medical-numbered-check-list li,
.editor-styles-wrapper .seo-medical-numbered-check-list li {
  min-height: 38px;
  padding: 3px 0 0 52px;
  line-height: 1.52;
}

.page--blog-detail .article-content .seo-medical-numbered-check-list li::before,
.editor-styles-wrapper .seo-medical-numbered-check-list li::before {
  width: 38px;
  height: 38px;
  border-radius: 10px;
}
