/* TamuBN v85.4.7 — Cube Shop contrast hardening
   Individual Cube View uses a dark page shell with white inherited text.
   Every light island below resets to dark foreground explicitly. */
:root{
  --tamu-cube-light-ink:#17131d;
  --tamu-cube-light-muted:#625968;
  --tamu-cube-light-link:#5b21b6;
}

/* Desktop/public Cube View: white/light surfaces inside the dark Cube View page. */
.cube-view-page .cube-trust-strip,
.cube-view-page .cube-shop-about article,
.cube-view-page .cube-shop-info-grid > div,
.cube-view-page .cube-mobile-products,
.cube-view-page .masonry-product,
.cube-view-page .masonry-product > button,
.cube-view-page .masonry-meta,
.cube-view-page .immersive-preview,
.cube-view-page .immersive-gallery,
.cube-view-page .immersive-details,
.cube-view-page .immersive-thumbnails button{
  color:var(--tamu-cube-light-ink)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-ink);
}

.cube-view-page .cube-trust-strip :where(h1,h2,h3,h4,h5,h6,b,strong),
.cube-view-page .cube-shop-about :where(h1,h2,h3,h4,h5,h6,b,strong),
.cube-view-page .cube-shop-info-grid :where(h1,h2,h3,h4,h5,h6,b,strong),
.cube-view-page .cube-mobile-products :where(h1,h2,h3,h4,h5,h6),
.cube-view-page .masonry-meta h3,
.cube-view-page .immersive-details :where(h1,h2,h3,h4,h5,h6){
  color:var(--tamu-cube-light-ink)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-ink);
}

.cube-view-page .cube-trust-strip p,
.cube-view-page .cube-trust-stats span,
.cube-view-page .cube-shop-about p,
.cube-view-page .cube-shop-info-grid small,
.cube-view-page .masonry-meta small,
.cube-view-page .immersive-details > p,
.cube-view-page .immersive-assurance,
.cube-view-page .immersive-report{
  color:var(--tamu-cube-light-muted)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-muted);
}

.cube-view-page .masonry-meta b,
.cube-view-page .immersive-price,
.cube-view-page .immersive-shop a{
  color:var(--tamu-cube-light-link)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-link);
}

/* Restore intended inverse text on dark controls nested inside those light surfaces. */
.cube-view-page .masonry-hover,
.cube-view-page .immersive-close,
.cube-view-page .v80-trust-score,
.cube-view-page .v80-trust-score strong,
.cube-view-page .v80-trust-score span,
.cube-view-page .button.primary{
  color:#fff!important;
  -webkit-text-fill-color:#fff;
}

/* Mobile individual Cube Shop — make the same contract explicit. */
.mobile-app .v854-shop-hero,
.mobile-app .v854-shop-stats > div,
.mobile-app .v854-shop-actions button,
.mobile-app .v854-tabs,
.mobile-app .v854-tabs button,
.mobile-app #v854ShopPanel,
.mobile-app .v854-info-card,
.mobile-app .v80-mobile-trust{
  color:var(--tamu-cube-light-ink)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-ink);
}

.mobile-app .v854-shop-hero :where(h1,h2,h3,h4,h5,h6,b,strong),
.mobile-app .v854-shop-stats b,
.mobile-app .v854-info-card :where(h1,h2,h3,h4,h5,h6,b,strong,dd),
.mobile-app .v80-mobile-trust b{
  color:var(--tamu-cube-light-ink)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-ink);
}

.mobile-app .v854-shop-brand p,
.mobile-app .v854-shop-hero > p,
.mobile-app .v854-shop-stats span,
.mobile-app .v854-info-card p,
.mobile-app .v854-info-card dt,
.mobile-app .v80-mobile-trust span,
.mobile-app .v80-mobile-trust small{
  color:var(--tamu-cube-light-muted)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-muted);
}

.mobile-app .v854-shop-brand > div > span,
.mobile-app .v854-tabs button.active,
.mobile-app .v854-shop-actions button.active{
  color:var(--tamu-cube-light-link)!important;
  -webkit-text-fill-color:var(--tamu-cube-light-link);
}

.mobile-app .v854-shop-actions button.whatsapp{
  color:#fff!important;
  -webkit-text-fill-color:#fff;
}
