/* Dark mode for legacy v3C pages — body needs class ipf-v3r-legacy */

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy {
  --v3-ink: var(--ink);
  --v3-ink-muted: var(--muted);
  --v3-surface: var(--paper);
  --v3-surface-elevated: var(--surface);
  --v3-line: var(--line);
  --v3-brand: var(--brand);
  --v3-brand-deep: var(--btn-hover);
  --v3-brand-bright: var(--btn-hover);
  --v3-brand-soft: var(--ice);
  --v3-shadow-soft: 0 10px 28px rgba(0, 0, 0, 0.35);
  color: var(--muted);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy {
    --v3-ink: var(--ink);
    --v3-ink-muted: var(--muted);
    --v3-surface: var(--paper);
    --v3-surface-elevated: var(--surface);
    --v3-line: var(--line);
    --v3-brand: var(--brand);
    --v3-brand-deep: var(--btn-hover);
    --v3-brand-bright: var(--btn-hover);
    --v3-brand-soft: var(--ice);
    --v3-shadow-soft: 0 10px 28px rgba(0, 0, 0, 0.35);
    color: var(--muted);
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .policy-doc {
  background: var(--surface);
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .policy-doc p,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .policy-doc li {
  color: var(--muted);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .policy-doc h1,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .policy-doc h2,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .policy-doc h3 {
  color: var(--ink);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .policy-doc {
    background: var(--surface);
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .policy-doc p,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .policy-doc li {
    color: var(--muted);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .policy-doc h1,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .policy-doc h2,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .policy-doc h3 {
    color: var(--ink);
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box:has(> .bg-inner),
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bg-inner {
  background: linear-gradient(180deg, var(--surface) 0%, var(--paper) 55%, var(--paper) 100%);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-product-nav {
  background: var(--paper);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box:has(> .bg-inner),
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bg-inner {
    background: linear-gradient(180deg, var(--surface) 0%, var(--paper) 55%, var(--paper) 100%);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-product-nav {
    background: var(--paper);
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bg-inner .bg-left .bg-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bgg-info .bg-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .fe-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .question-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-banner .main-title {
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bg-inner .bg-left .bg-subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bgg-info .bg-subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-banner .desc {
  color: var(--muted);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bgg-info .bg-subtitle-focus {
  color: var(--ink);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bg-inner .bg-left .bg-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bgg-info .bg-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .fe-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .question-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-banner .main-title {
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bg-inner .bg-left .bg-subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bgg-info .bg-subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-banner .desc {
    color: var(--muted);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bgg-info .bg-subtitle-focus {
    color: var(--ink);
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .fe-box .fe-cards .fe-card,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .v3-split-section .se-content-desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .v3-split-section .se-content-img-box,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-product-card,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .de-item-inner,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .sc-container,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-plan-page,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-banner,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .gray-back {
  background: var(--surface);
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box .bg-inner .bg-left .bg-items .bg-item {
  background: color-mix(in srgb, var(--surface) 88%, var(--brand) 12%);
  border-color: var(--line);
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-product-card--soon {
  background: color-mix(in srgb, var(--surface) 92%, var(--muted) 8%);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .fe-box .fe-cards .fe-card,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .v3-split-section .se-content-desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .v3-split-section .se-content-img-box,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-product-card,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .de-item-inner,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .sc-container,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-plan-page,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-banner,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .gray-back {
    background: var(--surface);
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box .bg-inner .bg-left .bg-items .bg-item {
    background: color-mix(in srgb, var(--surface) 88%, var(--brand) 12%);
    border-color: var(--line);
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-product-card--soon {
    background: color-mix(in srgb, var(--surface) 92%, var(--muted) 8%);
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box.animate-section:not(:has(> .bg-inner)) {
  position: relative;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box.animate-section:not(:has(> .bg-inner))::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(5, 12, 26, 0.72);
  pointer-events: none;
  z-index: 1;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-box.animate-section:not(:has(> .bg-inner)) .bgg-info {
  position: relative;
  z-index: 2;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box.animate-section:not(:has(> .bg-inner)) {
    position: relative;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box.animate-section:not(:has(> .bg-inner))::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(5, 12, 26, 0.72);
    pointer-events: none;
    z-index: 1;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-box.animate-section:not(:has(> .bg-inner)) .bgg-info {
    position: relative;
    z-index: 2;
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-static-residential .pricing-section,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-dynamic-traffic .pricing-section,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-main,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-aside,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-sidebar,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-pay-card,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-amount-popover,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-modal__panel,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .price-ad-strip {
  background: var(--surface);
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .ipf-product-purchase {
  background: var(--paper);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .ipf-product-purchase .ipf-product-purchase-nav.bg-product-nav {
  background: transparent;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .ipf-product-purchase .pricing-static-residential .pricing-section,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .ipf-product-purchase .pricing-dynamic-traffic .pricing-section {
  background: transparent;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-main__title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-sidebar__title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-form-section__title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-form-section__label,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-aside__title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-aside-field__label,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-amount-label,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .as-c-item-content,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-form-label,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-biz-static,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-biz-select,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .m-card,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .amount-detail-row--total,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .price-ad-strip__title {
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .m-card {
  background: var(--surface);
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .m-card-selected {
  background: rgba(0, 100, 207, 0.16) !important;
  border-color: var(--brand) !important;
  color: var(--brand) !important;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-main__desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-sidebar__desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .price-ad-strip__subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-loading,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-aside__subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .as-c-item-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-form-hint,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-agreement-box,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-cta-hint,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .amount-detail-row,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .m-card-empty {
  color: var(--ink);
  opacity: 0.82;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-pay-card {
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-pay-card.selected {
  color: var(--brand);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-form-section {
  border-top-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-aside-form {
  border-top-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-option,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-select,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-qty-input {
  background: var(--paper);
  border-color: var(--line);
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pricing-option.is-active {
  border-color: var(--brand);
  color: var(--brand);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-static-residential .pricing-section,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-dynamic-traffic .pricing-section,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-main,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-aside,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-sidebar,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-pay-card,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-amount-popover,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-modal__panel,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .price-ad-strip {
    background: var(--surface);
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .ipf-product-purchase {
    background: var(--paper);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .ipf-product-purchase .ipf-product-purchase-nav.bg-product-nav {
    background: transparent;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .ipf-product-purchase .pricing-static-residential .pricing-section,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .ipf-product-purchase .pricing-dynamic-traffic .pricing-section {
    background: transparent;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-main__title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-sidebar__title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-form-section__title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-form-section__label,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-aside__title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-aside-field__label,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-amount-label,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .as-c-item-content,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-form-label,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-biz-static,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .m-card,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .amount-detail-row--total,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .price-ad-strip__title {
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .m-card {
    background: var(--surface);
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .m-card-selected {
    background: rgba(0, 100, 207, 0.16) !important;
    border-color: var(--brand) !important;
    color: var(--brand) !important;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-main__desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-sidebar__desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .price-ad-strip__subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-loading,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-aside__subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .as-c-item-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-form-hint,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-agreement-box,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-cta-hint,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .amount-detail-row,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .m-card-empty {
    color: var(--ink);
    opacity: 0.82;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-pay-card {
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-pay-card.selected {
    color: var(--brand);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-form-section,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-aside-form {
    border-top-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-option,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-select,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-qty-input {
    background: var(--paper);
    border-color: var(--line);
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pricing-option.is-active {
    border-color: var(--brand);
    color: var(--brand);
  }
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .de-btn,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .v3-btn--ghost {
  background: var(--surface);
  border-color: var(--line-strong);
  color: var(--ink) !important;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .de-btn,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .v3-btn--ghost {
    background: var(--surface);
    border-color: var(--line-strong);
    color: var(--ink) !important;
  }
}

/* —— Product: locations, applications, FAQ —— */
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .lo-box .lo-items .lo-item .lo-item-inner,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pr-container,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .pr-container.bg-white,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .bg-white,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .question-box .q-item {
  background: var(--surface) !important;
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .lo-box .lo-items .lo-item .lo-item-inner:hover,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .question-box .q-item:hover {
  border-color: color-mix(in srgb, var(--brand) 28%, var(--line));
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .text-theme-black {
  color: var(--ink) !important;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .lo-box .lo-items .lo-item .lo-item-inner,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pr-container,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .pr-container.bg-white,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .bg-white,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .question-box .q-item {
    background: var(--surface) !important;
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .lo-box .lo-items .lo-item .lo-item-inner:hover,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .question-box .q-item:hover {
    border-color: color-mix(in srgb, var(--brand) 28%, var(--line));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .text-theme-black {
    color: var(--ink) !important;
  }
}

/* —— Agent / company: service benefits + forms + how-to cards —— */
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-box,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-card-inner,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .gray-back .ho-step-body,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .gray-back .fo-box .fo-main {
  background: var(--surface) !important;
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner .se-card-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .gray-back .ho-step-body .ho-card-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .fo-form .form-label {
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-box .se-subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner .se-card-subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner .se-card-item-text,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .gray-back .ho-step-body .ho-card-subtitle,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .gray-back .fo-box .fo-subtitle {
  color: var(--muted);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .fo-form .form-control {
  background-color: var(--paper);
  border-color: var(--line);
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .fo-form .form-control:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 22%, transparent);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-box,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-card-inner,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .gray-back .ho-step-body,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .gray-back .fo-box .fo-main {
    background: var(--surface) !important;
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner .se-card-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .gray-back .ho-step-body .ho-card-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .fo-form .form-label {
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-box .se-subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner .se-card-subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .se-box .se-cards .se-card .se-card-inner .se-card-item-text,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .gray-back .ho-step-body .ho-card-subtitle,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .gray-back .fo-box .fo-subtitle {
    color: var(--muted);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .fo-form .form-control {
    background-color: var(--paper);
    border-color: var(--line);
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .fo-form .form-control:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 22%, transparent);
  }
}

/* —— Promotion plan —— */
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-banner,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy.promotion-plan-page,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-target,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-target .target-card,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .step-text,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .steps-image,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .why-join,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .support-service,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .support-service .service-card,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .question-box,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .q-item {
  background: var(--surface) !important;
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-title .title-text,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .steps-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .step-text h5,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .why-join .why-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .why-join .card-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .support-service .support-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .support-service .card-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-target .card-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-target .card-list li,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .question-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .q-item-title {
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-banner .desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .promotion-target .card-desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .step-text p,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .why-join .card-desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .support-service .card-desc,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .q-item-desc {
  color: var(--muted);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .step-icon,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .join-steps .step-icon .step-bi,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .why-join .card-icon,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .why-join .card-icon .why-bi {
  color: var(--brand) !important;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-banner,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy.promotion-plan-page,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-target,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-target .target-card,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .step-text,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .steps-image,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .why-join,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .support-service,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .support-service .service-card,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .question-box,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .q-item {
    background: var(--surface) !important;
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-title .title-text,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .steps-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .step-text h5,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .why-join .why-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .why-join .card-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .support-service .support-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .support-service .card-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-target .card-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-target .card-list li,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .question-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .q-item-title {
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-banner .desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .promotion-target .card-desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .step-text p,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .why-join .card-desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .support-service .card-desc,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .q-item-desc {
    color: var(--muted);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .step-icon,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .join-steps .step-icon .step-bi,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .why-join .card-icon,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .why-join .card-icon .why-bi {
    color: var(--brand) !important;
  }
}

/* Product purchase — dynamic plan cards (dark) */
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card {
  background: var(--surface);
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-title,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-total-line {
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-capacity,
:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-price-line span {
  color: var(--brand);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-price-line {
  color: var(--ink);
  opacity: 0.88;
  background: transparent;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-validity {
  color: var(--ink);
  opacity: 0.78;
  background: transparent;
  border-color: var(--line);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-total-line em {
  color: var(--ink);
  opacity: 0.55;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-buy {
  color: var(--brand);
  border-color: var(--brand);
  background: transparent;
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .ipf-product-purchase-nav button.bg-product-card {
  background: var(--surface);
  border-color: var(--line);
  color: var(--ink);
}

:root[data-theme="dark"] .v3-page.ipf-v3r-legacy .ipf-product-purchase-nav button.bg-product-card.is-active {
  border-color: var(--brand);
  background: linear-gradient(180deg, rgba(0, 100, 207, 0.12) 0%, var(--surface) 100%);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card {
    background: var(--surface);
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-title,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-total-line {
    color: var(--ink);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-capacity,
  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-price-line span {
    color: var(--brand);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-price-line {
    color: var(--ink);
    opacity: 0.88;
    background: transparent;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-validity {
    color: var(--ink);
    opacity: 0.78;
    background: transparent;
    border-color: var(--line);
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-total-line em {
    color: var(--ink);
    opacity: 0.55;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .dynamic-price-card .pc-buy {
    color: var(--brand);
    border-color: var(--brand);
    background: transparent;
  }

  :root:not([data-theme="light"]) .v3-page.ipf-v3r-legacy .ipf-product-purchase-nav button.bg-product-card {
    background: var(--surface);
    border-color: var(--line);
    color: var(--ink);
  }
}
