/*
 * Lumi Professional
 * Acentos de marca aplicados como sistema de UI: precisos, sobrios y
 * funcionales. El amarillo identifica Lumi; el verde queda reservado para
 * confianza/éxito y el morado para interacción.
 */
body.tc-lumi-pro{
  --lumi-ink:var(--text);
  --lumi-purple:var(--accent);
  --lumi-purple-2:var(--accent2);
  --lumi-yellow:var(--orange);
  --lumi-green:var(--green);
  --lumi-line:var(--border2);
  --lumi-surface:var(--tc-accent-soft);
  --lumi-shadow:var(--tc-shadow-button);
  --tc-soft-surface:var(--bg2);
  --tc-soft-surface-2:var(--bg3);
  --tc-soft-line:var(--border);
  --tc-soft-shadow:var(--tc-shadow-card);
}

/* Iconos de navegación, vacíos y cabeceras del área privada. */
body.tc-lumi-pro :is(
  .set-row-icon,.set-promo-icon,.set-back,.compras-empty-icon,.movs-empty-icon,
  .empty-icon,.step-icon,.email-display-icon,.verified-icon,.venta-avatar,
  .cred-panel-header-left,.tc-recibe-icon,.security-tip > svg:first-child,
  .mailbox-mini-btn,.action-btn,.fmt-btn,.cred-field-btn,.cred-row-btn
){
  border:1px solid var(--lumi-line);
  background:linear-gradient(145deg,rgba(155,93,229,.13),rgba(155,93,229,.045));
  color:var(--lumi-purple-2);
  box-shadow:var(--lumi-shadow);
}
body.tc-lumi-pro :is(.set-row-icon,.set-promo-icon,.set-back){
  width:34px;height:34px;border-radius:10px;
}
body.tc-lumi-pro .set-row{gap:12px;}
body.tc-lumi-pro .set-row + .set-row::before{left:58px;}
body.tc-lumi-pro :is(.compras-empty-icon,.movs-empty-icon,.empty-icon){
  border-radius:16px;
  box-shadow:0 10px 24px -18px rgba(79,35,120,.55);
}
body.tc-lumi-pro :is(.cred-panel-header-left,.cred-group-title){
  display:inline-flex;align-items:center;gap:8px;
}
body.tc-lumi-pro .cred-panel-header-left{
  padding:6px 9px;border-radius:9px;
}
body.tc-lumi-pro .cred-group-title svg{
  color:var(--lumi-purple-2) !important;
  filter:drop-shadow(1px 1px 0 rgba(255,217,40,.22));
}
body.tc-lumi-pro :is(.cred-panel-header-left,.step-icon) svg{
  color:#f4d94b !important;
}
body.tc-lumi-pro :is(.cred-row-btn,.cred-field-btn,.mailbox-mini-btn,.fmt-btn){
  box-shadow:none;border-radius:8px;
}

/* Reseñas: identidad Trustpilot fiel; no hereda el morado/amarillo decorativo de Lumi. */
body.tc-lumi-pro :is(.tp-star,.tc-ft-star,.srv-star){
  position:relative;
  background:linear-gradient(90deg,#00b67a var(--fill,100%),#d9d9d9 var(--fill,100%)) !important;
  border:0 !important;
  border-radius:2px !important;
  box-shadow:none !important;
  overflow:hidden;
}
body.tc-lumi-pro :is(.tp-star,.tc-ft-star,.srv-star) svg path:first-child{
  fill:#fff !important;
}
body.tc-lumi-pro :is(.tp-star,.tc-ft-star,.srv-star) svg path + path{
  fill:#005128 !important;
}
body.tc-lumi-pro :is(.tp-star,.srv-star)[style*="--fill:0"] svg path:first-child{
  fill:#fff !important;
}
body.tc-lumi-pro :is(.tc-resena-compact-verified,.review-verified,.sold-review-verified){
  display:inline-flex;align-items:center;gap:5px;
  color:var(--lumi-green) !important;
  font-weight:750;
}
body.tc-lumi-pro :is(.tc-resena-compact-verified,.review-verified,.sold-review-verified) svg{
  fill:none !important;
  stroke:currentColor;
  filter:none;
}
html.light body.tc-lumi-pro :is(.tc-resena-compact-verified,.review-verified,.sold-review-verified){
  color:#047857 !important;
}
body.tc-lumi-pro .tc-resena-compact{
  border-color:rgba(199,125,255,.16);
  box-shadow:inset 3px 0 0 rgba(155,93,229,.45);
}
body.tc-lumi-pro .tc-resenas-compact .tc-detail-title > svg{
  width:25px !important;height:25px !important;padding:5px;
  border:1px solid rgba(199,125,255,.42);border-radius:7px;
  background:rgba(155,93,229,.16);box-shadow:none;
}
body.tc-lumi-pro .tc-resenas-compact .tc-detail-title > svg path:first-child{fill:var(--lumi-yellow) !important;}
body.tc-lumi-pro .tc-resenas-compact .tc-detail-title > svg path + path{fill:#7b35c2 !important;}

/* Pagos: logos auténticos dentro de una familia visual común. */
body.tc-lumi-pro :is(.tc-pay-method,.pay-method){
  border-width:1px !important;
  border-color:rgba(199,125,255,.20) !important;
  background:linear-gradient(145deg,rgba(22,20,31,.96),rgba(12,12,18,.98)) !important;
  box-shadow:none !important;
}
body.tc-lumi-pro :is(.tc-pay-method,.pay-method)::before{
  content:'';position:absolute;inset:0 auto 0 0;width:3px;height:auto;
  background:var(--lumi-purple);opacity:.55;
}
body.tc-lumi-pro :is(.tc-pay-method,.pay-method).active{
  border-color:rgba(199,125,255,.64) !important;
  box-shadow:0 0 0 2px rgba(155,93,229,.12) !important;
}
body.tc-lumi-pro :is(.tc-pay-manual,.pay-method[data-metodo="BinancePay"])::before{
  background:#f0b90b;
}
body.tc-lumi-pro :is(.tc-pay-logo,.pay-icon){
  width:38px;height:38px;border-radius:11px;
  border:1px solid rgba(199,125,255,.30) !important;
  background:linear-gradient(145deg,rgba(155,93,229,.17),rgba(155,93,229,.055)) !important;
  color:var(--lumi-purple-2) !important;
  box-shadow:none;
}
body.tc-lumi-pro :is(.tc-pay-logo-binance,.pay-icon-binance){
  background:linear-gradient(145deg,rgba(240,185,11,.18),rgba(240,185,11,.055)) !important;
  border-color:rgba(240,185,11,.42) !important;
  box-shadow:none;
}
body.tc-lumi-pro :is(.tc-pay-logo-binance,.pay-icon-binance) img{
  width:21px;height:21px;object-fit:contain;filter:none;
}
body.tc-lumi-pro :is(.tc-pay-logo-now,.pay-icon-now) svg{
  color:var(--lumi-purple-2);
}
body.tc-lumi-pro .tc-pay-coins{border-top-color:rgba(199,125,255,.12);}
body.tc-lumi-pro .tc-coin{
  border:0;
  background:transparent;
  box-shadow:none;
}

/* Compras y detalle: menos ornamento, jerarquía más editorial. */
body.tc-lumi-pro :is(.card,.hero-card)::before{
  background-image:none;
}
body.tc-lumi-pro :is(.card,.hero-card)::after{
  opacity:.28;
}
body.tc-lumi-pro .mcd-card{border-color:rgba(199,125,255,.16);}
body.tc-lumi-pro .mcd-cta{display:inline-flex;align-items:center;gap:5px;}
body.tc-lumi-pro :is(.mcd-media-ph,.tc-gallery-placeholder,.tc-par-placeholder){
  color:var(--lumi-purple-2);background:linear-gradient(145deg,rgba(155,93,229,.12),rgba(155,93,229,.035));
}
body.tc-lumi-pro :is(.mcd-media-ph,.tc-gallery-placeholder,.tc-par-placeholder) svg{
  width:34px;height:34px;stroke-width:1.35;
}
body.tc-lumi-pro :is(.sec-emoji,.trust-emoji){
  display:inline-flex;align-items:center;justify-content:center;color:var(--lumi-purple-2);
}
body.tc-lumi-pro .sec-emoji svg{width:17px;height:17px;}
body.tc-lumi-pro .trust-emoji svg{width:14px;height:14px;}
body.tc-lumi-pro .mc-title .dot,
body.tc-lumi-pro .hero-title .dot{color:var(--lumi-purple);}

html.light body.tc-lumi-pro{
  --lumi-line:rgba(111,51,170,.25);
  --lumi-surface:rgba(127,63,214,.055);
  --lumi-shadow:0 8px 22px -17px rgba(111,51,170,.32);
}

/* Hero editorial: conserva personalidad de marca sin aspecto promocional infantil. */
body.tc-lumi-pro .hero .hero-h1{
  font-size:clamp(40px,5vw,62px);
  font-weight:750;
  letter-spacing:-1.45px;
}
body.tc-lumi-pro .hero-badge::before,
body.tc-lumi-pro .btn-primary::before{animation:none !important;}
body.tc-lumi-pro .hero-card{backdrop-filter:none;-webkit-backdrop-filter:none;}
@media(max-width:767px){
  body.tc-lumi-pro .hero .hero-h1{font-size:clamp(31px,8vw,38px);letter-spacing:-.8px;}
}

/* ═══════════════════════════════════════════════════════════════
   DARK UI · cierre profesional de la ficha y checkout
   El violeta identifica acciones; no se usa como marco decorativo.
   ═══════════════════════════════════════════════════════════════ */
html:not(.light) body.tc-lumi-pro{
  --tc-soft-surface:var(--bg2);
  --tc-soft-surface-2:var(--bg3);
  --tc-soft-line:var(--border);
  background:var(--bg) !important;
}

html:not(.light) body.tc-lumi-pro :is(
  .tc-page,.tc-main,.tc-content,.checkout-page,.checkout-wrap,.cart-page
){background-color:var(--bg) !important;}

html:not(.light) body.tc-lumi-pro :is(
  .tc-gallery-main,.tc-buy-card,.tc-detail-card,.tc-resenas,.tc-par-card,
  .tc-recibes-card,.tc-stats-panel,.tc-trust,.tc-gx,
  .tc-pay-method,.tc-extra-opt,.tc-garantia-opt,
  .tc-stat-card,.tc-checkout-card,.checkout-card,
  .checkout-panel,.cart-panel,.order-summary,.payment-panel
){
  background:var(--bg2) !important;
  background-image:none !important;
  border:1px solid var(--border) !important;
  box-shadow:var(--tc-shadow-card) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

html:not(.light) body.tc-lumi-pro :is(
  .tc-recibe-row,.tc-trust-item,.tc-stat-card,
  .tc-pay-method,.tc-extra-opt,.tc-garantia-opt,.pay-method,.checkout-method,
  .tc-email-box,.tc-coupon-wrap,.tc-field,input,select,textarea
){
  background-color:var(--bg3) !important;
  border-color:var(--border) !important;
  box-shadow:none !important;
}

/* Sin rayas, brillos ambientales ni líneas superiores de fantasía. */
body.tc-lumi-pro :is(
  .tc-gallery-main,.tc-buy-card,.tc-detail-card,.tc-resenas,.tc-par-card,
  .tc-recibes-card,.tc-trust,.tc-gx,.tc-pay-method,.tc-extra-opt,
  .tc-garantia-opt,.tc-sticky-bar
)::before,
body.tc-lumi-pro :is(
  .tc-gallery-main,.tc-buy-card,.tc-detail-card,.tc-resenas,.tc-par-card,
  .tc-recibes-card,.tc-trust,.tc-gx,.tc-pay-method,.tc-extra-opt,
  .tc-garantia-opt,.tc-sticky-bar
)::after{
  background:none !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
}
body.tc-lumi-pro :is(.tc-detail-title,.tc-parecidas-title)::after{
  background:var(--border2) !important;
  clip-path:none !important;
  height:1px !important;
}

/* El estado seleccionado conserva un único acento fino. */
html:not(.light) body.tc-lumi-pro :is(
  .tc-pay-method.active,.tc-extra-opt.is-active,.tc-garantia-opt.is-active,
  .pay-method.active,.checkout-method.active
){
  background:var(--bg3) !important;
  border-color:var(--accent2) !important;
  box-shadow:inset 3px 0 0 var(--accent) !important;
}

/* CTA principal y barra móvil: sólido, visible y sin relieve 3D. */
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn){
  background:var(--accent-solid) !important;
  background-color:var(--accent-solid) !important;
  background-image:none !important;
  color:#fff !important;
  border:1px solid var(--accent2) !important;
  border-radius:var(--tc-radius-control) !important;
  box-shadow:var(--tc-shadow-button) !important;
  text-shadow:none !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn)::before,
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn)::after{
  content:none !important;
  display:none !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn):hover:not(:disabled){
  background:var(--accent-hover) !important;
  border-color:var(--accent2) !important;
  transform:none !important;
  filter:none !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn):disabled{
  background:var(--bg4) !important;
  border-color:var(--border) !important;
  color:var(--muted2) !important;
}

@media(max-width:1024px){
  html:not(.light) body.tc-lumi-pro .tc-sticky-bar{
    background:var(--bg2) !important;
    border-top:1px solid var(--border) !important;
    box-shadow:var(--tc-shadow-float) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}

html.light body.tc-lumi-pro :is(
  .set-row-icon,.set-promo-icon,.set-back,.compras-empty-icon,.movs-empty-icon,
  .empty-icon,.step-icon,.email-display-icon,.verified-icon,.venta-avatar,
  .cred-panel-header-left,.tc-recibe-icon,.security-tip > svg:first-child,
  .mailbox-mini-btn,.action-btn,.fmt-btn,.cred-field-btn,.cred-row-btn
){
  color:#7432bd;
  background:linear-gradient(145deg,#fff,rgba(127,63,214,.065));
}
html.light body.tc-lumi-pro :is(.tc-pay-method,.pay-method){
  background:linear-gradient(145deg,#fff,#faf8fd) !important;
  border-color:rgba(111,51,170,.20) !important;
}
html.light body.tc-lumi-pro .tc-resena-compact{
  background:#fff;box-shadow:inset 3px 0 0 rgba(127,63,214,.38);
}

@media(max-width:640px){
  body.tc-lumi-pro :is(.set-row-icon,.set-promo-icon,.set-back){width:32px;height:32px;}
  body.tc-lumi-pro .set-row + .set-row::before{left:54px;}
  body.tc-lumi-pro :is(.tc-pay-logo,.pay-icon){width:36px;height:36px;}
}

@media(prefers-reduced-motion:reduce){
  body.tc-lumi-pro *,body.tc-lumi-pro *::before,body.tc-lumi-pro *::after{
    scroll-behavior:auto !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   FLAT UI · reemplaza el acabado LUMI tridimensional
   Esta hoja se carga después del tema global en las vistas principales;
   por eso la normalización final vive también aquí.
   ═══════════════════════════════════════════════════════════════ */
body.tc-lumi-pro{
  --lumi-line:var(--border2);
  --lumi-surface:var(--tc-accent-soft);
  --lumi-shadow:var(--tc-shadow-button);
  --tc-soft-surface:var(--bg2);
  --tc-soft-surface-2:var(--bg3);
  --tc-soft-line:var(--border);
  --tc-soft-shadow:var(--tc-shadow-card);
}
html:not(.light) body.tc-lumi-pro{
  background:var(--bg) !important;
}
body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,.venta-card,
  .cred-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,.rc2-card,
  .recovery-section,.sug-card,.highlight-box,.timer-card,.modal,.not-modal,.rev-modal,
  .mc-panel,.mail-panel,.login-panel,.hero-card,.process-card,.step-card,.account-card,
  .pay-inner,.pay-method,.tc-pay-method
){
  box-shadow:var(--tc-shadow-card) !important;
  background-image:none !important;
  border-width:1px !important;
  border-color:var(--tc-soft-line) !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,.venta-card,
  .cred-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,.rc2-card,
  .recovery-section,.sug-card,.highlight-box,.timer-card,.modal,.not-modal,.rev-modal,
  .mc-panel,.mail-panel,.login-panel,.hero-card,.process-card,.step-card,.account-card,
  .pay-inner,.pay-method,.tc-pay-method
){background-color:var(--bg2) !important;}
body.tc-lumi-pro :is(
  button,.btn,.btn-primary,.btn-secondary,.btn-outline,.btn-home,.btn-catalog,
  .btn-accion,.primary-btn,.nav-cta,.copy-btn,.copy-all-btn,.fmt-btn,.recovery-btn,
  .btn-modal,.signup-cta-btn,.mc-panel-apply,.btn-save-tmpl,.mcd-cta,.card-btn,
  .tc-card-btn,.view-btn,.cart-btn,.tc-buy-btn,.tc-sticky-buy
){
  box-shadow:var(--tc-shadow-button) !important;
  text-shadow:none !important;
  transform:none !important;
  filter:none !important;
  background-image:none !important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .btn-primary,.primary-btn,.nav-cta,.signup-cta-btn,.card-btn,.tc-card-btn,
  .view-btn,.tc-buy-btn,.tc-sticky-buy
){
  background-color:var(--accent-solid) !important;
  border-color:var(--accent2) !important;
  color:#fff !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .btn-primary,.primary-btn,.nav-cta,.signup-cta-btn,.card-btn,.tc-card-btn,
  .view-btn,.tc-buy-btn,.tc-sticky-buy
):hover{background-color:var(--accent-hover) !important;border-color:var(--accent2) !important;}
body.tc-lumi-pro :is(
  .account-card,.review-card,.news-card,.noticia-card,.process-card,.step-card,
  .mcd-card,.venta-card,.set-card,.pay-method,.tc-pay-method
):hover{transform:translateY(-1px) !important;box-shadow:var(--tc-shadow-float) !important;}
body.tc-lumi-pro :is(.badge,.tag,.hero-tag,.hero-badge,.section-label,.step-badge,.page-update){
  box-shadow:none !important;
  text-shadow:none !important;
  background-image:none !important;
}
body.tc-lumi-pro :is(
  input,select,textarea,.input,.input-field,.field-input,.search-wrap,.prefix-input,
  .nav-search,.cat-search,.filter-input
){box-shadow:none !important;background-image:none !important;}
html:not(.light) body.tc-lumi-pro :is(
  input,select,textarea,.input,.input-field,.field-input,.search-wrap,.prefix-input,
  .nav-search,.cat-search,.filter-input
){background-color:var(--bg3) !important;border-color:var(--border2) !important;color:var(--text) !important;}
body.tc-lumi-pro :is(.input,.search-wrap,.cred-field-box,.prefix-input):focus-within,
body.tc-lumi-pro :is(input,select,textarea):focus{
  border-color:var(--accent2) !important;
  box-shadow:0 0 0 3px var(--tc-focus-ring) !important;
}
body.tc-lumi-pro :is(.set-row-icon,.set-promo-icon,.set-back,.compras-empty-icon,.movs-empty-icon,
  .empty-icon,.step-icon,.email-display-icon,.verified-icon,.venta-avatar,.cred-panel-header-left,
  .tc-recibe-icon,.security-tip > svg:first-child,.mailbox-mini-btn,.action-btn,.fmt-btn,
  .cred-field-btn,.cred-row-btn,.tc-pay-logo,.pay-icon){
  box-shadow:none !important;
  background-image:none !important;
}
body.tc-lumi-pro :is(.tc-ico,button svg,a svg,.featured-star svg){filter:none !important;}

@media(max-width:767px){
  body.tc-lumi-pro :is(
    .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,.venta-card,
    .cred-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,.rc2-card,
    .recovery-section,.sug-card,.highlight-box,.timer-card,.modal,.not-modal,.rev-modal,
    .mc-panel,.mail-panel,.login-panel,.hero-card,.process-card,.step-card,.account-card,.pay-inner
  ){box-shadow:var(--tc-shadow-card) !important;}
}

/* ═══════════════════════════════════════════════════════════════
   SOFT SYSTEM · acabado compartido de toda la experiencia
   Reduce dureza visual sin convertir la interfaz en una UI infantil:
   superficies cálidas, profundidad breve y jerarquía editorial.
   ═══════════════════════════════════════════════════════════════ */
body.tc-lumi-pro :is(
  h1,h2,h3,h4,.hero-h1,.hero-title,.steps-title,.reviews-title,
  .card-title,.card-title-split,.step-title,.section-title,.mc-title,
  .tc-detail-title,.modal-title,.not-title,.login-title,.page-title
){
  font-family:'Syne',sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.03em !important;
}

body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,
  .venta-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,
  .rc2-card,.recovery-section,.sug-card,.highlight-box,.timer-card,
  .modal,.not-modal,.rev-modal,.mc-panel,.mail-panel,.login-panel
){
  border-color:var(--tc-soft-line) !important;
  border-radius:var(--tc-radius-card) !important;
  box-shadow:var(--tc-soft-shadow) !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,
  .venta-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,
  .rc2-card,.recovery-section,.sug-card,.highlight-box,.timer-card,
  .modal,.not-modal,.rev-modal,.mc-panel,.mail-panel,.login-panel
){
  background-color:var(--tc-soft-surface) !important;
}

body.tc-lumi-pro :is(.hero-card,.process-card,.step-card,.account-card,.pay-inner){
  border-color:var(--border) !important;
  box-shadow:var(--tc-soft-shadow) !important;
}
body.tc-lumi-pro :is(.hero-card,.process-card,.step-card,.account-card){
  background:var(--bg2) !important;
}
body.tc-lumi-pro :is(.step-item,.process-card,.pay-inner,.card,.cred-card)::before{
  background-image:none !important;
}

body.tc-lumi-pro :is(
  .account-card,.review-card,.news-card,.noticia-card,.process-card,.step-card,
  .mcd-card,.venta-card,.set-card,.pay-method,.tc-pay-method
){
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background-color .22s ease !important;
}
body.tc-lumi-pro :is(
  .account-card,.review-card,.news-card,.noticia-card,.process-card,.step-card,
  .mcd-card,.venta-card,.set-card
):hover{
  transform:translateY(-2px) !important;
  box-shadow:var(--tc-shadow-float) !important;
}

body.tc-lumi-pro :is(
  input,select,textarea,.input,.input-field,.field-input,.search-wrap,
  .prefix-input,.nav-search,.cat-search,.filter-input
){
  border-radius:var(--tc-radius-control) !important;
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease !important;
}
body.tc-lumi-pro :is(
  .btn,.btn-primary,.btn-secondary,.btn-outline,.btn-home,.btn-catalog,
  .btn-accion,.primary-btn,.nav-cta,.copy-btn,.copy-all-btn,.fmt-btn,
  .recovery-btn,.btn-modal,.signup-cta-btn,.mc-panel-apply,.btn-save-tmpl
){
  border-radius:var(--tc-radius-control) !important;
  box-shadow:var(--tc-shadow-button) !important;
}
body.tc-lumi-pro :is(.badge,.tag,.hero-tag,.hero-badge,.section-label,.step-badge,.page-update){
  border-radius:var(--tc-radius-pill) !important;
}
/* El movimiento queda reservado para cambios de estado o carga. */
body.tc-lumi-pro :is(.mockup-card,.float-badge,.cat-hero-art,.featured-star svg){
  animation:none !important;
}
body.tc-lumi-pro :is(.btn,.btn-primary,.primary-btn,.signup-cta-btn)::before,
body.tc-lumi-pro .account-card.is-premium .card-body::before{
  animation:none !important;
}

html.light body.tc-lumi-pro{
  --tc-soft-surface:var(--bg2);
  --tc-soft-surface-2:var(--bg3);
  --tc-soft-line:var(--border);
  --tc-soft-shadow:var(--tc-shadow-card);
}
html.light body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,
  .venta-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,
  .rc2-card,.recovery-section,.sug-card,.highlight-box,.timer-card,
  .modal,.not-modal,.rev-modal,.mc-panel,.mail-panel,.login-panel
){
  background-color:var(--bg2) !important;
}
html.light body.tc-lumi-pro :is(.hero-card,.process-card,.step-card,.account-card){
  background:var(--bg2) !important;
  border-color:var(--border) !important;
}

@media(max-width:767px){
  body.tc-lumi-pro :is(
    .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,
    .venta-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,
    .rc2-card,.recovery-section,.sug-card,.highlight-box,.timer-card,
    .modal,.not-modal,.rev-modal,.mc-panel,.mail-panel,.login-panel,
    .hero-card,.process-card,.step-card,.account-card,.pay-inner
  ){
    border-radius:var(--tc-radius-card) !important;
    box-shadow:var(--tc-shadow-card) !important;
  }
  body.tc-lumi-pro :is(.account-card,.review-card,.news-card,.noticia-card,.process-card,.step-card,.mcd-card,.venta-card,.set-card):hover{
    transform:none !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   DISPLAY ACCENTS · conserva la firma geométrica original
   Syne conserva la firma geométrica del PR #431 en títulos e importes.
   ═══════════════════════════════════════════════════════════════ */
body.tc-lumi-pro .cat-hero-h1,
body.tc-lumi-pro :is(
  .card-price,.cat-mockup-price,
  .featured-price-old,.featured-price-now,
  .fs-now,.fs-ghost,
  .tc-price-main,.tc-price-sub,.tc-sticky-price-val,.tc-gx-price,
  .sug-price
){
  font-family:'Syne',sans-serif !important;
  font-weight:800 !important;
}

/* ═══════════════════════════════════════════════════════════════
   MOBILE DENSITY · escala compacta compartida
   Reduce volumen visual sin escalar la página ni afectar el zoom del usuario.
   ═══════════════════════════════════════════════════════════════ */
@media(max-width:767px){
  body.tc-lumi-pro :is(
    .badge,.tag,.hero-tag,.hero-badge,.section-label,.step-badge,.page-update
  ){
    padding:4px 8px !important;
    border-radius:var(--tc-radius-pill) !important;
    font-size:9.5px !important;
    line-height:1.15 !important;
    letter-spacing:.06em !important;
  }
  body.tc-lumi-pro :is(
    .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,
    .venta-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,
    .rc2-card,.recovery-section,.sug-card,.highlight-box,.timer-card,
    .modal,.not-modal,.rev-modal,.mc-panel,.mail-panel,.login-panel,
    .hero-card,.process-card,.step-card,.account-card,.pay-inner
  ){
    border-radius:var(--tc-radius-card) !important;
  }
  body.tc-lumi-pro :is(
    .btn,.btn-primary,.btn-secondary,.btn-outline,.btn-home,.btn-catalog,
    .btn-accion,.primary-btn,.nav-cta,.copy-btn,.copy-all-btn,.fmt-btn,
    .recovery-btn,.btn-modal,.signup-cta-btn,.mc-panel-apply,.btn-save-tmpl
  ){
    border-radius:var(--tc-radius-control) !important;
    font-size:12px !important;
  }
  body.tc-lumi-pro :is(.section-title,.steps-title,.reviews-title,.page-title){
    line-height:1.05 !important;
  }
}

/* Cierre de cascada: las reglas históricas anteriores no recuperan relieve. */
body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,.venta-card,
  .cred-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,.rc2-card,
  .recovery-section,.sug-card,.highlight-box,.timer-card,.modal,.not-modal,.rev-modal,
  .mc-panel,.mail-panel,.login-panel,.hero-card,.process-card,.step-card,.account-card,
  .pay-inner,.pay-method,.tc-pay-method
){
  box-shadow:var(--tc-shadow-card) !important;
  background-image:none !important;
  border-color:var(--tc-soft-line) !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,.venta-card,
  .cred-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,.rc2-card,
  .recovery-section,.sug-card,.highlight-box,.timer-card,.modal,.not-modal,.rev-modal,
  .mc-panel,.mail-panel,.login-panel,.hero-card,.process-card,.step-card,.account-card,
  .pay-inner,.pay-method,.tc-pay-method
){background:var(--bg2) !important;}
body.tc-lumi-pro :is(
  button,.btn,.btn-primary,.btn-secondary,.btn-outline,.btn-home,.btn-catalog,
  .btn-accion,.primary-btn,.nav-cta,.copy-btn,.copy-all-btn,.fmt-btn,.recovery-btn,
  .btn-modal,.signup-cta-btn,.mc-panel-apply,.btn-save-tmpl,.mcd-cta,.card-btn,
  .tc-card-btn,.view-btn,.cart-btn,.tc-buy-btn,.tc-sticky-buy
){
  box-shadow:var(--tc-shadow-button) !important;
  text-shadow:none !important;
  transform:none !important;
  filter:none !important;
  background-image:none !important;
}
body.tc-lumi-pro :is(
  .account-card,.review-card,.news-card,.noticia-card,.process-card,.step-card,
  .mcd-card,.venta-card,.set-card,.pay-method,.tc-pay-method
):hover{transform:translateY(-1px) !important;box-shadow:var(--tc-shadow-float) !important;}
body.tc-lumi-pro :is(.badge,.tag,.hero-tag,.hero-badge,.section-label,.step-badge,.page-update,
  .set-row-icon,.set-promo-icon,.set-back,.compras-empty-icon,.movs-empty-icon,.empty-icon,
  .step-icon,.email-display-icon,.verified-icon,.venta-avatar,.cred-panel-header-left,
  .tc-recibe-icon,.mailbox-mini-btn,.action-btn,.fmt-btn,.cred-field-btn,.cred-row-btn,
  .tc-pay-logo,.pay-icon){box-shadow:none !important;text-shadow:none !important;background-image:none !important;}
@media(max-width:767px){
  body.tc-lumi-pro :is(.card,.faq-item,.faq-section,.review-card,.news-card,.noticia-card,
    .venta-card,.cred-card,.cred-panel,.extras-panel,.set-card,.mcd-card,.sld-wcard,
    .rc2-card,.recovery-section,.sug-card,.highlight-box,.timer-card,.modal,.not-modal,
    .rev-modal,.mc-panel,.mail-panel,.login-panel,.hero-card,.process-card,.step-card,
    .account-card,.pay-inner){box-shadow:var(--tc-shadow-card) !important;}
}

/* Cierre final: la ficha y el checkout no recuperan marcos LUMI históricos. */
html:not(.light) body.tc-lumi-pro{
  --tc-soft-surface:var(--bg2);--tc-soft-surface-2:var(--bg3);
  --tc-soft-line:var(--border);
  background:var(--bg) !important;
}
html:not(.light) body.tc-lumi-pro :is(.tc-page,.tc-main,.tc-content,.checkout-page,.checkout-wrap,.cart-page){
  background-color:var(--bg) !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .tc-gallery-main,.tc-buy-card,.tc-detail-card,.tc-resenas,.tc-par-card,
  .tc-recibes-card,.tc-stats-panel,.tc-trust,.tc-gx,
  .tc-pay-method,.tc-extra-opt,.tc-garantia-opt,.tc-stat-card,
  .tc-checkout-card,.checkout-card,.checkout-panel,.cart-panel,.order-summary,.payment-panel
){
  background:var(--bg2) !important;background-image:none !important;
  border:1px solid var(--border) !important;
  box-shadow:var(--tc-shadow-card) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .tc-recibe-row,.tc-trust-item,.tc-stat-card,.tc-pay-method,
  .tc-extra-opt,.tc-garantia-opt,.pay-method,.checkout-method,.tc-email-box,
  .tc-coupon-wrap,.tc-field,input,select,textarea
){
  background-color:var(--bg3) !important;
  border-color:var(--border) !important;
  box-shadow:none !important;
}
body.tc-lumi-pro :is(
  .tc-gallery-main,.tc-buy-card,.tc-detail-card,.tc-resenas,.tc-par-card,
  .tc-recibes-card,.tc-trust,.tc-gx,.tc-pay-method,.tc-extra-opt,.tc-garantia-opt,.tc-sticky-bar
)::before,
body.tc-lumi-pro :is(
  .tc-gallery-main,.tc-buy-card,.tc-detail-card,.tc-resenas,.tc-par-card,
  .tc-recibes-card,.tc-trust,.tc-gx,.tc-pay-method,.tc-extra-opt,.tc-garantia-opt,.tc-sticky-bar
)::after{
  background:none !important;background-image:none !important;
  box-shadow:none !important;filter:none !important;
}
body.tc-lumi-pro :is(.tc-detail-title,.tc-parecidas-title)::after{
  background:var(--border2) !important;clip-path:none !important;height:1px !important;
}
html:not(.light) body.tc-lumi-pro :is(
  .tc-pay-method.active,.tc-extra-opt.is-active,.tc-garantia-opt.is-active,
  .pay-method.active,.checkout-method.active
){
  background:var(--bg3) !important;border-color:var(--accent2) !important;
  box-shadow:inset 3px 0 0 var(--accent) !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn){
  background:var(--accent-solid) !important;background-color:var(--accent-solid) !important;background-image:none !important;
  color:#fff !important;border:1px solid var(--accent2) !important;border-radius:var(--tc-radius-control) !important;
  box-shadow:var(--tc-shadow-button) !important;text-shadow:none !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn)::before,
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn)::after{
  content:none !important;display:none !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn):hover:not(:disabled){
  background:var(--accent-hover) !important;border-color:var(--accent2) !important;
  transform:none !important;filter:none !important;
}
body.tc-lumi-pro :is(.tc-btn-buy,.tc-sticky-btn,.checkout-btn,.buy-now-btn):disabled{
  background:var(--bg4) !important;border-color:var(--border) !important;color:var(--muted2) !important;
}
@media(max-width:1024px){
  html:not(.light) body.tc-lumi-pro .tc-sticky-bar{
    background:var(--bg2) !important;border-top:1px solid var(--border) !important;
    box-shadow:var(--tc-shadow-float) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
  }
}

/* Ficha de cuenta: una sola estructura, sin marcos dentro de marcos. */
body.tc-lumi-pro :is(.tc-pay-section,.tc-mini-stats){
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
}
body.tc-lumi-pro .tc-pay-section{
  padding-inline:0 !important;
}

/* Controles de galería: circulares, discretos y con un único trazo visual. */
body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-gal-arrow,.tc-gal-dl,.tc-fav-toggle){
  width:44px !important;
  height:44px !important;
  padding:0 !important;
  border:1px solid rgba(226,232,240,.18) !important;
  border-radius:50% !important;
  background:var(--tc-overlay) !important;
  background-image:none !important;
  color:rgba(241,245,249,.90) !important;
  box-shadow:none !important;
  text-shadow:none !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  transform:none !important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease !important;
}
body.tc-lumi-pro .tc-page .tc-gal-arrow{
  transform:translateY(-50%) !important;
}
body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-gal-arrow,.tc-gal-dl,.tc-fav-toggle):hover,
body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-gal-arrow,.tc-gal-dl,.tc-fav-toggle):focus-visible,
body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-fav-toggle).is-open,
body.tc-lumi-pro .tc-page .tc-fav-toggle.is-fav{
  background:rgba(155,93,229,.22) !important;
  border-color:rgba(199,125,255,.52) !important;
  color:#fff !important;
  outline:2px solid transparent !important;
  outline-offset:2px !important;
}
body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-gal-arrow,.tc-gal-dl,.tc-fav-toggle) svg{
  width:18px !important;
  height:18px !important;
  stroke-width:1.8 !important;
  filter:none !important;
}
body.tc-lumi-pro .tc-page .tc-gal-info-pop{
  background:var(--tc-surface-inverse) !important;
  border:1px solid var(--border2) !important;
  border-radius:var(--tc-radius-control) !important;
  box-shadow:var(--tc-shadow-float) !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
}
body.tc-lumi-pro .tc-page .tc-gal-info-pop-head{
  color:var(--accent2) !important;
}
@media(max-width:640px){
  body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-gal-arrow,.tc-gal-dl,.tc-fav-toggle){
    width:40px !important;
    height:40px !important;
  }
  body.tc-lumi-pro .tc-page :is(.tc-gal-info,.tc-gal-arrow,.tc-gal-dl,.tc-fav-toggle) svg{
    width:17px !important;
    height:17px !important;
  }
}

/* Badge de descuento clásico: rojo, compacto y con corte diagonal. */
body.tc-lumi-pro .tc-price-discount{
  display:inline-block !important;
  color:#fff !important;
  background:var(--tc-danger-solid) !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  padding:4px 7px 4px 9px !important;
  box-shadow:none !important;
  text-shadow:none !important;
  clip-path:polygon(0 0,100% 0,100% 100%,7px 100%,0 calc(100% - 7px)) !important;
}

/* Cuenta: el dato de seguidores vuelve a ser texto, no un campo enmarcado. */
body.tc-lumi-pro .tc-page .tc-mini-stats,
body.tc-lumi-pro .tc-page .tc-mini-stat{
  width:auto !important;
  min-height:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding:0 !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.tc-lumi-pro .tc-page .tc-mini-stats{
  display:inline-flex !important;
  align-self:flex-start !important;
  max-width:max-content !important;
  font-size:15px !important;
  line-height:1.25 !important;
}
body.tc-lumi-pro .tc-page .tc-mini-stat strong{
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  font-size:17px !important;
  line-height:1.1 !important;
}
body.tc-lumi-pro .tc-page .tc-mini-stats::before,
body.tc-lumi-pro .tc-page .tc-mini-stats::after,
body.tc-lumi-pro .tc-page .tc-mini-stat::after{
  content:none !important;
  display:none !important;
}
@media(max-width:768px){
  body.tc-lumi-pro .tc-page .tc-mini-stats{font-size:16px !important;}
  body.tc-lumi-pro .tc-page .tc-mini-stat strong{font-size:19px !important;}
}

/* Cuentas parecidas: superficie de marca sobria y precio de máxima lectura. */
body.tc-lumi-pro .tc-page .tc-par-card{
  background:var(--tc-surface-inverse) !important;
  background-image:none !important;
  border-color:rgba(167,116,240,.22) !important;
  box-shadow:none !important;
}
body.tc-lumi-pro .tc-page .tc-par-cover{
  background:var(--tc-surface-inverse) !important;
}
body.tc-lumi-pro .tc-page .tc-par-precio,
body.tc-lumi-pro .tc-page .tc-par-precio strong,
body.tc-lumi-pro .tc-page .tc-price-main,
body.tc-lumi-pro .tc-page .tc-sticky-price-val{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:none !important;
}
/* En escritorio claro, la ficha de compra es blanca: el precio principal
   debe recuperar el color oscuro del tema. La barra móvil permanece oscura. */
html.light body.tc-lumi-pro .tc-page .tc-price-main{
  color:var(--text) !important;
  -webkit-text-fill-color:var(--text) !important;
}

/* Catálogo: jerarquía producto → datos → acción, sin adornos que compitan. */
body.tc-lumi-pro.catalog-page .account-card .card-body{
  display:flex !important;
  flex-direction:column !important;
}
body.tc-lumi-pro.catalog-page .account-card .card-badges{order:1;}
body.tc-lumi-pro.catalog-page .account-card .card-top-row{order:2;}
body.tc-lumi-pro.catalog-page .account-card .card-name{order:3;}
body.tc-lumi-pro.catalog-page .account-card .card-stats-inline{order:4;}
body.tc-lumi-pro.catalog-page .account-card .card-name{
  color:var(--tc-text-on-inverse) !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}
body.tc-lumi-pro.catalog-page .account-card .card-username{
  color:var(--accent2) !important;
  font-weight:650 !important;
}
body.tc-lumi-pro.catalog-page .account-card :is(.card-country,.card-stats-inline,.cstat-inline span){
  color:var(--tc-muted-on-inverse) !important;
}
body.tc-lumi-pro.catalog-page :is(.card-price,.featured-price-now,.fs-now){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:none !important;
}
@media(min-width:641px){
  body.tc-lumi-pro.catalog-page .account-card .card-name{font-size:15px !important;}
  body.tc-lumi-pro.catalog-page .account-card .card-top-row{margin-top:3px !important;}
}

/* Footer sin escena ilustrada. La ficha conserva un contenedor único también
   en oscuro para mantener la misma agrupación visual del modo claro. */
.tc-footer-scene{display:none !important;}
html:not(.light) body.tc-lumi-pro .tc-buy-card{
  background:var(--bg2) !important;
  border:1px solid var(--border) !important;
  border-radius:var(--tc-radius-card) !important;
  padding-left:24px !important;
  padding-right:24px !important;
  box-shadow:var(--tc-shadow-card) !important;
}
@media(max-width:768px){
  html:not(.light) body.tc-lumi-pro .tc-buy-card{
    padding-left:18px !important;
    padding-right:18px !important;
  }
}
html:not(.light) body.tc-lumi-pro .tc-pay-section{
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   MODO CLARO — cierre de accesibilidad de acciones
   El reset de relieve de arriba apaga el background-image de todos los
   botones. En oscuro hay un color sólido de respaldo; en claro no lo
   había, así que los CTA con degradado (p. ej. el "Iniciar sesión" de
   /correo) quedaban transparentes: texto blanco sobre tarjeta blanca.
   ═══════════════════════════════════════════════════════════════ */
html.light body.tc-lumi-pro :is(
  .btn-primary,.primary-btn,.nav-cta,.signup-cta-btn,.card-btn,.tc-card-btn,
  .view-btn,.tc-buy-btn,.tc-sticky-buy,.mc-panel-apply,.btn-save-tmpl,.mcd-cta
){
  background-color:var(--accent-solid) !important;
  border-color:var(--accent2) !important;
  color:#fff !important;
}
html.light body.tc-lumi-pro :is(
  .btn-primary,.primary-btn,.nav-cta,.signup-cta-btn,.card-btn,.tc-card-btn,
  .view-btn,.tc-buy-btn,.tc-sticky-buy,.mc-panel-apply,.btn-save-tmpl,.mcd-cta
):hover{background-color:var(--accent-hover) !important;border-color:var(--accent) !important;}
html.light body.tc-lumi-pro :is(
  .btn-primary,.primary-btn,.nav-cta,.signup-cta-btn,.card-btn,.tc-card-btn,
  .view-btn,.tc-buy-btn,.tc-sticky-buy
) :is(span,svg,strong,b){color:inherit !important;}

/* La ficha deja ver el fondo continuo de la página. El reset general anterior
   convertía el contenedor centrado en una placa opaca de 1180 px. */
body.tc-account-page > .tc-page{
  background-color:transparent !important;
}
body.tc-account-page .tc-gallery-main::before{
  background-image:
    linear-gradient(rgba(155,93,229,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(155,93,229,.055) 1px,transparent 1px),
    radial-gradient(130% 100% at 50% 0%,rgba(155,93,229,.3),rgba(155,93,229,0) 62%),
    linear-gradient(180deg,#1a1426,#0c0a13) !important;
  background-size:26px 26px,26px 26px,100% 100%,100% 100% !important;
}
html.light body.tc-account-page .tc-gallery-main::before{
  background-image:
    linear-gradient(rgba(127,63,214,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(127,63,214,.07) 1px,transparent 1px),
    radial-gradient(130% 100% at 50% 0%,rgba(155,93,229,.18),rgba(155,93,229,0) 62%),
    linear-gradient(180deg,#f3f0fa,#e9e4f3) !important;
}
