/* Catch leftover light islands — prefer raised + tone over hairline borders */
.card, .modal-content, .dropdown-menu, .offcanvas, .list-group-item,
.toast, .popover, .tooltip-inner,
.navbar-collapse, .accordion-item, .accordion-button,
.form-control, .form-select, .input-group-text,
.table, .table > :not(caption) > * > *,
.pagination .page-link, .badge.bg-light, .badge.bg-white,
.alert, .progress, .blockquote,
.bg-white, .bg-light,
.pw-mobile-nav,
.commerce-sticky-cta, .pdp-mobile-cart-footer,
.login-card, .auth-card, .register-card, .otp-card,
.checkout-card, .cart-summary, .receipt-card,
.product-card, .keyword-product-card,
.pdp-product-card, .pdp-product-tabs, .pdp-sidebar-card,
.hero-section,
.seo-content-section, .seo-extended-content {
  background-color: var(--c-raised) !important;
  color: var(--c-text);
  border-color: transparent;
}
/* Page shells stay transparent so we don't nest mega-cards */
.main-content-card {
  background-color: transparent !important;
  color: var(--c-text);
  border-color: transparent !important;
  box-shadow: none !important;
}

.bg-light, .accordion-button:not(.collapsed) {
  background-color: var(--c-surface-2) !important;
}

.form-control, .form-select, .input-group-text {
  background-color: var(--c-surface-2) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border-strong) !important;
}

.form-control::placeholder { color: var(--c-text-3) !important; }

.breadcrumb-item.active, .pdp-breadcrumb-current, .pw-breadcrumb .current {
  color: var(--c-text) !important;
}

.breadcrumb-item a, .pdp-breadcrumb-item a { color: var(--c-brand) !important; }

.btn-outline-secondary, .btn-outline-dark, .btn-light {
  color: var(--c-text) !important;
  background: var(--c-surface-2) !important;
  border-color: var(--c-border) !important;
}

/* Photo wells stay light */
.pdp-gallery-main,
.product-image-container,
.keyword-product-image,
[data-photo-well] {
  background-color: var(--c-photo-well) !important;
  border-radius: var(--r-md);
  border: 1px solid var(--c-photo-well-edge);
  box-shadow: none !important;
}

body.product-page .pdp-product-gallery {
  background: transparent !important;
}

html, body, .home-wrapper, .pdp-product-page-wrapper {
  background-color: var(--c-bg) !important;
  color: var(--c-text);
}

/* Brand CTAs keep on-brand ink */
.btn-primary,
.btn-success,
.add-to-cart-btn,
.pdp-btn-add-to-cart,
.commerce-sticky-cta__btn,
.keyword-product-cta:hover {
  color: var(--c-on-brand) !important;
}

/* Auth pages (login/register) — beat inline light-only styles */
body.auth-experience,
.login-page,
.register-page {
  background: var(--c-bg) !important;
  color: var(--c-text) !important;
}
.login-page .shape,
.register-page .shape,
.floating-shapes .shape {
  background: var(--c-surface-2) !important;
  opacity: 0.35 !important;
}
.login-page .auth-card,
.register-page .auth-card,
.auth-card {
  background: var(--c-surface) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border) !important;
}
.login-page .auth-title,
.register-page .auth-title,
.auth-title {
  color: var(--c-text) !important;
}
.login-page .auth-subtitle,
.register-page .auth-subtitle,
.auth-subtitle,
.field-label,
.remember-label,
.terms-label {
  color: var(--c-text-2) !important;
}
.login-page .field-input,
.register-page .field-input,
.field-input,
.picker-btn,
.browse-btn,
.back-btn,
.auth-switch {
  background: var(--c-surface-2) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border) !important;
}
.auth-switch a { color: var(--c-text-3) !important; }
.auth-switch a.active {
  background: var(--c-surface) !important;
  color: var(--c-brand) !important;
}
.forgot-link { color: var(--c-brand) !important; }
.picker-code, .country-opt .opt-name { color: var(--c-text) !important; }
.picker-dropdown,
#countrySearch {
  background: var(--c-surface) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border) !important;
}

/* SEO group / category landing shells */
.faq-section,
.sidebar-box,
.medicine-card {
  background: var(--c-surface) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border) !important;
}
.faq-section h3,
.sidebar-box h4,
.medicine-card h3 {
  color: var(--c-text) !important;
}
.group-link { color: var(--c-text-2) !important; }
.group-link:hover,
.group-link.active {
  background: var(--c-brand-subtle) !important;
  color: var(--c-on-brand-subtle) !important;
}
.btn-light {
  background: var(--c-surface-2) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border) !important;
}

/* PDP ask chips / aka tags stay readable */
.pdp-ask-chip,
.pdp-aka,
.pdp-aka span,
.pdp-badge-tag {
  background: var(--c-surface-2) !important;
  color: var(--c-text) !important;
  border-color: var(--c-border) !important;
}
.pdp-ask-chip-eyebrow { color: var(--c-brand) !important; }
.pdp-ask-chip-text { color: var(--c-text) !important; }

/* Cart sticky CTA on-brand contrast */
.commerce-sticky-cta__btn,
#cart-sticky-cta a,
#sticky-checkout-btn {
  background: var(--c-brand) !important;
  color: var(--c-on-brand) !important;
  border-color: var(--c-brand) !important;
}

/* Cart / commerce shells — kill leftover mint gradients and light bands */
body.cart-page,
body.checkout-page,
.cart-container,
.cart-main-content {
  background-color: var(--c-bg) !important;
  color: var(--c-text);
}
.cart-breadcrumb,
.cart-breadcrumb .current,
.pw-breadcrumb .current,
.breadcrumb-item.active,
.pdp-breadcrumb-current {
  color: var(--c-text) !important;
}
.cart-breadcrumb a,
.pw-breadcrumb a {
  color: var(--c-brand) !important;
}
.commerce-hero::after {
  background: var(--c-bg) !important;
}

/* Catalog category panels — raised tone, no mint islands */
body.catalog-page .categories-mobile,
body.catalog-page .categories-desktop,
body.catalog-page .breadcrumb-navigation {
  background: var(--c-raised) !important;
  background-image: none !important;
  color: var(--c-text);
  border-color: transparent !important;
  box-shadow: var(--c-shadow-1);
}
body.catalog-page .categories-mobile .mobile-title,
body.catalog-page .categories-title,
body.catalog-page .tile-title,
body.catalog-page .chip-title {
  color: var(--c-text) !important;
}
body.catalog-page .scroll-chip.active,
body.catalog-page .category-tile.active {
  background: var(--c-brand-subtle) !important;
  color: var(--c-on-brand-subtle) !important;
  border-color: transparent !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--c-brand) 30%, transparent);
}
