/* ICURSO.CL — Reskin visual homepage (fase 1, solo CSS) */
:root{
  --ic-bg:#0a0713; --ic-surface:#150f24; --ic-surface-2:#1d1730;
  --ic-border:rgba(197,166,255,.16); --ic-text:#f6f3fc; --ic-text-dim:#a79bc4;
  --ic-accent:#c026d3; --ic-accent-soft:#7c3aed;
  --ic-font-display:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --ic-font-mono:ui-monospace,"SF Mono","Cascadia Code","Roboto Mono",Menlo,monospace;
}

body.home{
  background-color:var(--ic-bg);
  background-image:
    radial-gradient(700px 420px at 85% -10%, rgba(192,38,211,.28), transparent 60%),
    radial-gradient(600px 380px at -10% 20%, rgba(124,58,237,.22), transparent 55%),
    radial-gradient(480px 300px at 60% 110%, rgba(45,212,191,.14), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
@keyframes icBgDrift{
  0%{background-position:0 0,0 0,0 0;}
  100%{background-position:-60px 40px,50px -30px,-30px -50px;}
}
@media (prefers-reduced-motion: reduce){ body.home{ animation:none !important; } }

body.home header#masthead.site-header{
  background:rgba(10,7,19,.75) !important;
  backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid var(--ic-border);
}
body.home #site-navigation a{ color:var(--ic-text-dim) !important; transition:color .15s ease; }
body.home #site-navigation a:hover{ color:var(--ic-text) !important; }

body.home h1, body.home h2, body.home h3{
  font-family:var(--ic-font-display); font-weight:800; letter-spacing:-.02em;
  color:var(--ic-text) !important;
}

body.home .elementor-button,
body.home a.add_to_cart_button,
body.home a.wi_btn_buy_now.button{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important; border:none !important; border-radius:999px !important;
  font-weight:600; box-shadow:0 10px 30px -10px rgba(192,38,211,.55);
  transition:transform .18s ease, box-shadow .18s ease;
}
body.home .elementor-button:hover,
body.home a.add_to_cart_button:hover,
body.home a.wi_btn_buy_now.button:hover{
  transform:translateY(-2px); box-shadow:0 14px 36px -8px rgba(192,38,211,.7);
}

body.home ul.products li.product{
  position:relative; overflow:hidden;
  background:var(--ic-surface) !important; border:1px solid var(--ic-border) !important;
  border-radius:18px !important; padding:0 !important;
  transition:transform .2s ease, border-color .2s ease;
}
body.home ul.products li.product:hover{ transform:translateY(-4px); border-color:rgba(197,166,255,.32) !important; }
body.home ul.products li.product .product-details.content-bg{
  background:transparent !important;
  padding:18px !important;
}
body.home ul.products li.product .woocommerce-loop-product__title,
body.home ul.products li.product .woocommerce-loop-product__title a{
  color:var(--ic-text) !important;
}
body.home ul.products li.product .price{ font-family:var(--ic-font-mono); }
body.home ul.products li.product .price ins{ color:var(--ic-text) !important; font-weight:700; text-decoration:none; }
body.home ul.products li.product .price del{ color:var(--ic-text-dim) !important; opacity:.75; }
body.home span.onsale{ background:var(--ic-accent) !important; border-radius:999px !important; font-family:var(--ic-font-mono); font-size:11px !important; }

body.home footer, body.home #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.home .am-counters-section{ background:transparent !important; }
body.home .am-counter-number{
  font-family:var(--ic-font-mono);
  color:var(--ic-accent) !important;
  font-variant-numeric:tabular-nums;
}
body.home .am-counter-label{ color:var(--ic-text-dim) !important; }

body.home .swiper-slide:has(.elementor-testimonial){
  background:var(--ic-surface) !important;
  border-radius:16px;
}
body.home .elementor-testimonial__name{ color:var(--ic-text) !important; }
body.home .elementor-testimonial__cite{ color:var(--ic-text-dim) !important; }

/* --- Tarjetas de curso estilo "terminal" (como la maqueta) --- */
body.home .ic-term-bar{
  display:flex;align-items:center;gap:6px;
  margin:0 0 12px 0;
  padding:10px 14px;
  background:var(--ic-surface-2);
  border-bottom:1px solid var(--ic-border);
}
body.home .ic-term-bar .ic-dot{ width:8px;height:8px;border-radius:50%;flex-shrink:0; }
body.home .ic-term-bar .ic-term-title{
  margin-left:auto;font-family:var(--ic-font-mono);
  font-size:10px;color:#6f6390;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
body.home .product-action-wrap.style-button{
  display:flex; gap:8px; margin-top:14px; flex-wrap:wrap;
}
body.home .product-action-wrap.style-button .button{
  flex:1; text-align:center; padding:10px 14px !important; font-size:13px !important; min-width:120px;
}

/* --- Header estilo ClickLaboral, ancho completo --- */
body.home header#masthead.site-header{
  margin:0 !important;
  max-width:none !important;
  width:100% !important;
  border-radius:0 !important;
  border:none !important;
  border-bottom:1px solid rgba(192,38,211,0.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,0.4);
  background:rgba(10,7,19,0.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.home header#masthead.site-header img.custom-logo{
  max-height:36px;width:auto;
}
body.home #site-navigation a{
  font-weight:500;
  letter-spacing:.01em;
}
body.home a[href*="user-account-new"]{
  background:transparent !important;
  color:#f6f3fc !important;
  border:1px solid rgba(192,38,211,0.6) !important;
  border-radius:999px !important;
  padding:9px 20px !important;
  font-weight:600;
  transition:background .18s ease, box-shadow .18s ease;
}
body.home a[href*="user-account-new"]:hover{
  background:rgba(192,38,211,0.15) !important;
  box-shadow:0 0 0 3px rgba(192,38,211,0.15);
}

/* --- Título "Cursos Destacados", coherente con el resto --- */
body.home .elementor-element-3a21f06{
  padding-top:48px !important;
  padding-bottom:24px !important;
}
body.home .elementor-element-282c3c2 .elementor-heading-title{
  font-family:var(--ic-font-display);
  font-weight:800;
  font-size:clamp(28px,3.4vw,40px) !important;
  letter-spacing:-.02em;
  color:#f6f3fc !important;
  position:relative;
  padding-left:0;
}
body.home .elementor-element-282c3c2 .elementor-heading-title::before{
  content:"// Catálogo";
  display:block;
  font-family:var(--ic-font-mono);
  font-size:12.5px;
  letter-spacing:.14em;
  color:#2dd4bf;
  margin-bottom:12px;
}

/* --- Arreglo sistemico: contenedores de Elementor sin fondo propio heredan blanco del Kit --- */
body.home .e-con{
  background-color:transparent !important;
  background-image:none !important;
}

/* --- Fondo explícito (no depender de herencia, evita fondos blancos fantasma) --- */
body.home .ic-testi{ background-color:#0a0713 !important; }
body.home .ic-stats{ background-color:#0a0713 !important; }
body.home .elementor-element-3a21f06{ background-color:#0a0713 !important; background-image:none !important; }

/* ============ Página "Cursos" (/eb-all-courses/, page-id-203) ============ */
body.page-id-203{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.page-id-203 header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.page-id-203 header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.page-id-203 #site-navigation a{ color:var(--ic-text-dim) !important; }
body.page-id-203 #site-navigation a:hover{ color:var(--ic-text) !important; }
body.page-id-203 a[href*="user-account-new"]{
  background:transparent !important; color:var(--ic-text) !important;
  border:1px solid rgba(192,38,211,.6) !important; border-radius:999px !important;
  padding:9px 20px !important; font-weight:600;
}

/* Banner / encabezado de la página */
body.page-id-203 .eb-pro-page-header{
  background:linear-gradient(180deg, rgba(10,7,19,.55), rgba(10,7,19,.92)), radial-gradient(600px 300px at 20% 20%, rgba(192,38,211,.35), transparent 60%) !important;
  background-color:var(--ic-surface-2) !important;
}
body.page-id-203 .eb-pro-page-header span,
body.page-id-203 .eb-pro-page-header span a{
  color:var(--ic-text-dim) !important;
  font-family:var(--ic-font-mono);
  font-size:12.5px;
}
body.page-id-203 .eb-pro-shop-page-title{
  color:#fff !important;
  font-family:var(--ic-font-display);
  font-weight:800;
}
body.page-id-203 .eb-pro-shop-heading{ color:var(--ic-text-dim) !important; }

/* Filtros */
body.page-id-203 .eb-pro-shop-filters select{
  background:var(--ic-surface) !important;
  color:var(--ic-text) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:999px !important;
  padding:8px 14px !important;
}
body.page-id-203 .eb-pro-shop-view a svg path{ fill:var(--ic-text-dim); }
body.page-id-203 .eb-pro-shop-view a:hover svg path,
body.page-id-203 .eb-pro-shop-view a.active svg path{ fill:var(--ic-accent); }

/* Buscador (FiboSearch) */
body.page-id-203 .dgwt-wcas-search-form input[type="search"],
body.page-id-203 .dgwt-wcas-search-input{
  background:var(--ic-surface) !important;
  color:var(--ic-text) !important;
  border:1px solid var(--ic-border) !important;
}
body.page-id-203 .dgwt-wcas-search-form input::placeholder{ color:var(--ic-text-dim) !important; }
body.page-id-203 .dgwt-wcas-ico-magnifier path{ fill:var(--ic-text-dim); }

/* Tarjetas de curso (plantilla Edwiser Bridge Pro) */
body.page-id-203 .eb-pro-shop-product-card{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
  padding:0 !important;
  overflow:hidden;
  position:relative;
  transition:transform .2s ease, border-color .2s ease;
}
body.page-id-203 .eb-pro-shop-product-card:hover{
  transform:translateY(-4px);
  border-color:rgba(197,166,255,.32) !important;
}
body.page-id-203 .eb-pro-shop-product-content{
  background:transparent !important;
  padding:18px !important;
}
body.page-id-203 .eb-pro-shop-product-sale-badge{
  background:var(--ic-accent) !important;
  color:#fff !important;
  border-radius:999px !important;
  font-family:var(--ic-font-mono);
  font-size:11px !important;
  font-weight:600;
  padding:4px 10px;
}
body.page-id-203 .eb-pro-product-category{
  background:transparent !important;
  padding:0 !important;
  margin:0 0 6px !important;
}
body.page-id-203 .eb-pro-product-category a{
  font-family:var(--ic-font-mono);
  font-size:10.5px;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:#2dd4bf !important;
  text-decoration:none;
  background:transparent !important;
}
body.page-id-203 .eb-pro-product-title,
body.page-id-203 .eb-pro-product-title a{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-display);
  font-weight:700;
}
body.page-id-203 .price{ font-family:var(--ic-font-mono); font-size:14px; white-space:nowrap; display:flex; gap:8px; align-items:baseline; }
body.page-id-203 .price ins{ color:var(--ic-text) !important; font-weight:700; text-decoration:none; }
body.page-id-203 .price del{ color:var(--ic-text-dim) !important; opacity:.75; font-size:12px; }

body.page-id-203 .eb-pro-shop-product-actions{ margin-top:14px; }
body.page-id-203 .action-buttons{ display:flex; align-items:center; gap:8px; margin-top:12px; flex-wrap:wrap; }
body.page-id-203 .cart-button{ flex:0 0 auto; }
body.page-id-203 .cart-button .eb-pro-shop-add-to-cart-button{
  width:38px; height:38px; border-radius:50%;
  border:1px solid var(--ic-border) !important;
  background:transparent !important;
  display:flex; align-items:center; justify-content:center;
  transition:border-color .2s ease;
}
body.page-id-203 .cart-button .eb-pro-shop-add-to-cart-button svg path{ fill:var(--ic-text-dim) !important; transition:fill .2s ease; }
body.page-id-203 .cart-button .eb-pro-shop-add-to-cart-button:hover{ border-color:var(--ic-accent) !important; }
body.page-id-203 .cart-button .eb-pro-shop-add-to-cart-button:hover svg path{ fill:var(--ic-accent) !important; }

body.page-id-203 a.eb-pro-shop-buy-now-button.wi_btn_buy_now{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important; border:none !important; border-radius:999px !important;
  padding:9px 14px !important; font-weight:600; font-size:12.5px !important;
  white-space:nowrap; flex:1 1 auto; text-align:center; min-width:0;
}
body.page-id-203 a.eb-pro-shop-buy-now-button:not(.wi_btn_buy_now){
  background:transparent !important;
  color:var(--ic-text) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:999px !important;
  padding:9px 14px !important; font-weight:600; font-size:12.5px !important;
  white-space:nowrap; flex:1 1 100%; text-align:center;
}

/* Footer */
body.page-id-203 footer, body.page-id-203 #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}

/* Fondos explícitos, evita el "fantasma blanco" ya conocido en esta migración */
body.page-id-203 .e-con,
body.page-id-203 .eb-pro-shop-container,
body.page-id-203 .eb-pro-shop-body,
body.page-id-203 .eb-pro-shop-header{
  background-color:transparent !important;
  background-image:none !important;
}

/* Paginación */
body.page-id-203 .eb-pro-shop-pagination{
  background:transparent !important;
  padding:32px 0 !important;
}
body.page-id-203 .eb-pro-shop-pagination a,
body.page-id-203 .eb-pro-shop-pagination span{
  background:var(--ic-surface) !important;
  color:var(--ic-text-dim) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:8px !important;
}
body.page-id-203 .eb-pro-shop-pagination a:hover{
  border-color:var(--ic-accent) !important;
  color:var(--ic-text) !important;
}
body.page-id-203 .eb-pro-shop-pagination .current,
body.page-id-203 .eb-pro-shop-pagination span.current{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border-color:transparent !important;
}

/* Barra "terminal" (agregada por JS) — mismo estilo que el home */
body.page-id-203 .ic-term-bar{
  display:flex;align-items:center;gap:6px;
  padding:10px 14px;
  background:var(--ic-surface-2);
  border-bottom:1px solid var(--ic-border);
}
body.page-id-203 .ic-term-bar .ic-dot{ width:8px;height:8px;border-radius:50%;flex-shrink:0; }
body.page-id-203 .ic-term-bar .ic-term-title{
  margin-left:auto;font-family:var(--ic-font-mono);
  font-size:10px;color:#6f6390;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

/* Fondo forzado del contenedor + widget de tienda (el degradado configurado en Elementor no renderiza) */
body.page-id-203 .elementor-element-2b82d1d,
body.page-id-203 .elementor-element-6362ec9{
  background-color:#150e24 !important;
  background-image:none !important;
}

/* Envoltorio general del tema con fondo blanco explícito */
body.page-id-203 .site.wp-site-blocks{
  background-color:transparent !important;
}

/* ============ Página "Bootcamp de Verano" (page-id-322) ============ */
body.page-id-322{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.page-id-322 header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.page-id-322 header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.page-id-322 #site-navigation a{ color:var(--ic-text-dim) !important; }
body.page-id-322 #site-navigation a:hover{ color:var(--ic-text) !important; }
body.page-id-322 a[href*="user-account-new"]{
  background:transparent !important; color:var(--ic-text) !important;
  border:1px solid rgba(192,38,211,.6) !important; border-radius:999px !important;
  padding:9px 20px !important; font-weight:600;
}
body.page-id-322 footer, body.page-id-322 #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.page-id-322 .e-con,
body.page-id-322 .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}

/* ============ Página "Nosotros" (page-id-343) ============ */
body.page-id-343{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.page-id-343 header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.page-id-343 header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.page-id-343 #site-navigation a{ color:var(--ic-text-dim) !important; }
body.page-id-343 #site-navigation a:hover{ color:var(--ic-text) !important; }
body.page-id-343 a[href*="user-account-new"]{
  background:transparent !important; color:var(--ic-text) !important;
  border:1px solid rgba(192,38,211,.6) !important; border-radius:999px !important;
  padding:9px 20px !important; font-weight:600;
}
body.page-id-343 footer, body.page-id-343 #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.page-id-343 .e-con,
body.page-id-343 .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}

/* ============ Carrito (/carrito/, body.woocommerce-cart) — solo CSS, sin tocar estructura/JS ============ */
body.woocommerce-cart{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.woocommerce-cart header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.woocommerce-cart header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.woocommerce-cart #site-navigation a{ color:var(--ic-text-dim) !important; }
body.woocommerce-cart #site-navigation a:hover{ color:var(--ic-text) !important; }
body.woocommerce-cart footer, body.woocommerce-cart #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.woocommerce-cart .e-con,
body.woocommerce-cart .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}

/* Tabla de productos */
body.woocommerce-cart table.wc-block-cart-items{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:16px !important;
  overflow:hidden;
}
body.woocommerce-cart .wc-block-cart-items__header th{
  color:var(--ic-text-dim) !important;
  font-family:var(--ic-font-mono);
  font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;
  border-bottom:1px solid var(--ic-border) !important;
}
body.woocommerce-cart .wc-block-cart-items__row{
  border-bottom:1px solid var(--ic-border) !important;
}
body.woocommerce-cart .wc-block-components-product-name{
  color:var(--ic-text) !important;
  font-weight:700;
}
body.woocommerce-cart .wc-block-components-product-price,
body.woocommerce-cart .wc-block-components-product-price__value{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-mono);
  font-weight:700;
}
body.woocommerce-cart .wc-block-components-product-price__regular{
  color:var(--ic-text-dim) !important;
  opacity:.75;
}
body.woocommerce-cart .wc-block-components-product-badge.wc-block-components-sale-badge{
  background:var(--ic-accent) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-family:var(--ic-font-mono);
  font-size:11px !important;
}
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-formatted-money-amount{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-mono);
  font-weight:700;
}
body.woocommerce-cart .wc-block-components-quantity-selector{
  border:1px solid var(--ic-border) !important;
  border-radius:999px !important;
  background:var(--ic-surface-2) !important;
  overflow:hidden;
}
body.woocommerce-cart .wc-block-components-quantity-selector__input{
  background:transparent !important;
  color:var(--ic-text) !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button{
  color:var(--ic-text-dim) !important;
  background:transparent !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button:hover{
  color:var(--ic-accent) !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link{
  color:var(--ic-text-dim) !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link:hover{
  color:var(--ic-accent) !important;
}

/* Barra lateral de totales */
body.woocommerce-cart .wc-block-components-sidebar.wc-block-cart__sidebar{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
  padding:24px !important;
}
body.woocommerce-cart .wc-block-cart__totals-title{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-display);
  font-weight:800;
}
body.woocommerce-cart .wc-block-components-totals-coupon,
body.woocommerce-cart .wc-block-components-panel__button{
  color:var(--ic-text-dim) !important;
  border-color:var(--ic-border) !important;
}
body.woocommerce-cart .wc-block-components-panel__button-icon path{
  fill:var(--ic-text-dim) !important;
}
body.woocommerce-cart .wc-block-components-totals-item__label{
  color:var(--ic-text-dim) !important;
}
body.woocommerce-cart .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-formatted-money-amount{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-mono);
  font-weight:700;
}
body.woocommerce-cart .wc-block-components-totals-wrapper{
  border-color:var(--ic-border) !important;
}
body.woocommerce-cart .wc-block-cart__submit-button{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-weight:700;
  box-shadow:0 10px 30px -10px rgba(192,38,211,.5);
}
body.woocommerce-cart .wc-block-cart__submit-button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 36px -8px rgba(192,38,211,.7);
}

/* Carrito vacío + "Nuevo en la tienda" */
body.woocommerce-cart .wc-block-cart__empty-cart-title,
body.woocommerce-cart h2, body.woocommerce-cart h3{
  color:var(--ic-text) !important;
}
body.woocommerce-cart ul.products li.product{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
  overflow:hidden;
}
body.woocommerce-cart ul.products li.product .price ins{ color:var(--ic-text) !important; }
body.woocommerce-cart ul.products li.product .price del{ color:var(--ic-text-dim) !important; }

/* ============ Mi Cuenta (/mi-cuenta/, body.woocommerce-account) — solo CSS ============ */
body.woocommerce-account{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.woocommerce-account header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.woocommerce-account header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.woocommerce-account #site-navigation a{ color:var(--ic-text-dim) !important; }
body.woocommerce-account #site-navigation a:hover{ color:var(--ic-text) !important; }
body.woocommerce-account footer, body.woocommerce-account #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.woocommerce-account .e-con,
body.woocommerce-account .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}
body.woocommerce-account h1, body.woocommerce-account h2, body.woocommerce-account h3{
  color:var(--ic-text) !important;
}

/* Formularios de acceso / registro */
body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register,
body.woocommerce-account .woocommerce-form-row{
  background:transparent;
}
body.woocommerce-account .u-columns > div{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
  padding:26px !important;
}
body.woocommerce-account label{
  color:var(--ic-text-dim) !important;
}
body.woocommerce-account .woocommerce-Input,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"]{
  background:var(--ic-surface-2) !important;
  border:1px solid var(--ic-border) !important;
  color:var(--ic-text) !important;
  border-radius:10px !important;
}
body.woocommerce-account .woocommerce-Input:focus{
  border-color:var(--ic-accent) !important;
  outline:none;
  box-shadow:0 0 0 3px rgba(192,38,211,.15);
}
body.woocommerce-account .woocommerce-form-login__rememberme{
  color:var(--ic-text-dim) !important;
}
body.woocommerce-account a{
  color:var(--ic-accent);
}
body.woocommerce-account .woocommerce-privacy-policy-text{
  color:var(--ic-text-dim) !important;
  font-size:13px;
}
body.woocommerce-account button[type="submit"],
body.woocommerce-account .woocommerce-Button,
body.woocommerce-account input[type="submit"]{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-weight:700;
  padding:12px 26px !important;
  box-shadow:0 10px 30px -10px rgba(192,38,211,.5);
}
body.woocommerce-account button[type="submit"]:hover,
body.woocommerce-account .woocommerce-Button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 36px -8px rgba(192,38,211,.7);
}

/* Panel de cuenta (usuario ya logueado) */
body.woocommerce-account .woocommerce-MyAccount-navigation{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:16px !important;
  padding:8px !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{ margin:0; }
body.woocommerce-account .woocommerce-MyAccount-navigation-link a{
  color:var(--ic-text-dim) !important;
  border-radius:10px;
  padding:10px 14px;
  display:block;
}
body.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover{
  color:var(--ic-text) !important;
  background:rgba(192,38,211,.1);
}
body.woocommerce-account .woocommerce-MyAccount-navigation-link--active a{
  color:#fff !important;
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:16px !important;
  padding:26px !important;
  color:var(--ic-text-dim) !important;
}
body.woocommerce-account .woocommerce-MyAccount-content a{ color:var(--ic-accent); }
body.woocommerce-account table.woocommerce-orders-table,
body.woocommerce-account table.shop_table{
  background:transparent !important;
  color:var(--ic-text-dim) !important;
  border-color:var(--ic-border) !important;
}
body.woocommerce-account table.woocommerce-orders-table th,
body.woocommerce-account table.shop_table th{
  color:var(--ic-text) !important;
  border-color:var(--ic-border) !important;
  font-family:var(--ic-font-mono);
  font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;
}
body.woocommerce-account table.woocommerce-orders-table td,
body.woocommerce-account table.shop_table td{
  border-color:var(--ic-border) !important;
}
body.woocommerce-account mark.order-status{
  background:rgba(192,38,211,.14) !important;
  color:var(--ic-accent) !important;
  border-radius:999px;
}

/* ============ Checkout (/finalizar-compra/, body.woocommerce-checkout) — solo CSS, cero cambios de estructura/JS/Transbank ============ */
body.woocommerce-checkout{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.woocommerce-checkout header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.woocommerce-checkout header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.woocommerce-checkout #site-navigation a{ color:var(--ic-text-dim) !important; }
body.woocommerce-checkout #site-navigation a:hover{ color:var(--ic-text) !important; }
body.woocommerce-checkout footer, body.woocommerce-checkout #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.woocommerce-checkout .e-con,
body.woocommerce-checkout .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}
body.woocommerce-checkout h1, body.woocommerce-checkout h2, body.woocommerce-checkout h3{
  color:var(--ic-text) !important;
}

/* Pasos del checkout (contacto, facturación, pago) */
body.woocommerce-checkout .wc-block-components-checkout-step{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:16px !important;
  padding:22px !important;
  margin-bottom:16px;
}
body.woocommerce-checkout .wc-block-components-checkout-step__title{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-display);
}
body.woocommerce-checkout .wc-block-components-checkout-step__description{
  color:var(--ic-text-dim) !important;
}

/* Campos de formulario */
body.woocommerce-checkout label,
body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-address-form label{
  color:var(--ic-text-dim) !important;
}
body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout input[type="password"],
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout select,
body.woocommerce-checkout .wc-block-components-combobox-control input{
  background:var(--ic-surface-2) !important;
  border-color:var(--ic-border) !important;
  color:var(--ic-text) !important;
  border-radius:10px !important;
}
body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus{
  border-color:var(--ic-accent) !important;
  box-shadow:0 0 0 3px rgba(192,38,211,.15) !important;
}
body.woocommerce-checkout .wc-block-components-checkbox svg{
  fill:var(--ic-accent) !important;
}
body.woocommerce-checkout .wc-block-components-checkbox__label{
  color:var(--ic-text-dim) !important;
}

/* Opciones de pago (incluye Transbank Webpay Plus) */
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option{
  background:var(--ic-surface-2) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:12px !important;
  margin-bottom:8px;
}
body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border-color:var(--ic-accent) !important;
  background:rgba(192,38,211,.08) !important;
}
body.woocommerce-checkout .wc-block-components-radio-control__label{
  color:var(--ic-text) !important;
}
body.woocommerce-checkout .wc-block-components-radio-control-accordion-content{
  color:var(--ic-text-dim) !important;
}

/* Resumen del pedido (misma barra lateral que el carrito) */
body.woocommerce-checkout .wc-block-components-sidebar{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
  padding:24px !important;
}
body.woocommerce-checkout .wc-block-components-order-summary,
body.woocommerce-checkout .wc-block-components-totals-item__label{
  color:var(--ic-text-dim) !important;
}
body.woocommerce-checkout .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-formatted-money-amount{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-mono);
  font-weight:700;
}
body.woocommerce-checkout .wc-block-components-product-name{
  color:var(--ic-text) !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__quantity{
  background:var(--ic-accent) !important;
  color:#fff !important;
}

/* Botón "Realizar el pedido" */
body.woocommerce-checkout .wc-block-components-checkout-place-order-button{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-weight:700;
  box-shadow:0 10px 30px -10px rgba(192,38,211,.5);
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 36px -8px rgba(192,38,211,.7);
}

/* Avisos estándar de WooCommerce (info/éxito/error) — carrito, checkout, mi cuenta */
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-left:3px solid var(--ic-accent) !important;
  color:var(--ic-text) !important;
  border-radius:12px !important;
}
body.woocommerce-account .woocommerce-error,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout .woocommerce-error{
  background:var(--ic-surface) !important;
  border:1px solid rgba(239,68,68,.4) !important;
  border-left:3px solid #ef4444 !important;
  color:var(--ic-text) !important;
  border-radius:12px !important;
}
body.woocommerce-account .woocommerce-info a.button,
body.woocommerce-account .woocommerce-message a.button,
body.woocommerce-cart .woocommerce-info a.button,
body.woocommerce-checkout .woocommerce-info a.button{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-weight:700;
}

/* ============ Página de curso individual (body.single-product) — funciona en cualquier dominio ============ */
body.single-product{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.single-product header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.single-product header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.single-product #site-navigation a{ color:var(--ic-text-dim) !important; }
body.single-product #site-navigation a:hover{ color:var(--ic-text) !important; }
body.single-product footer, body.single-product #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.single-product .e-con,
body.single-product .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}

/* Contenido del producto */
body.single-product .single-product-category{
  color:#2dd4bf !important;
  font-family:var(--ic-font-mono);
  font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;
}
body.single-product h1.product_title{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-display);
  font-weight:800;
}
body.single-product .summary .price{
  font-family:var(--ic-font-mono);
}
body.single-product .summary .price ins{ color:var(--ic-text) !important; text-decoration:none; font-weight:700; }
body.single-product .summary .price del{ color:var(--ic-text-dim) !important; opacity:.75; }
body.single-product span.onsale{
  background:var(--ic-accent) !important;
  border-radius:999px !important;
  font-family:var(--ic-font-mono);
  font-size:11px !important;
}
body.single-product .quantity input{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  color:var(--ic-text) !important;
  border-radius:10px !important;
}
body.single-product .single_add_to_cart_button,
body.single-product a.wi_btn_buy_now{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-weight:700;
  box-shadow:0 10px 30px -10px rgba(192,38,211,.5);
}
body.single-product .single_add_to_cart_button:hover,
body.single-product a.wi_btn_buy_now:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 36px -8px rgba(192,38,211,.7);
}
body.single-product .posted_in,
body.single-product .posted_in a{
  color:var(--ic-text-dim) !important;
}
body.single-product .posted_in a{ color:var(--ic-accent) !important; }

/* Pestañas Descripción / Valoraciones */
body.single-product .woocommerce-tabs{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:16px !important;
  padding:8px !important;
}
body.single-product .wc-tabs li a,
body.single-product .woocommerce-tabs ul.tabs li a{
  color:var(--ic-text-dim) !important;
}
body.single-product .wc-tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li.active a{
  color:var(--ic-text) !important;
  border-color:var(--ic-accent) !important;
}
body.single-product .woocommerce-Tabs-panel{
  color:var(--ic-text-dim) !important;
}
body.single-product .woocommerce-Tabs-panel h2{
  color:var(--ic-text) !important;
}

/* Productos relacionados (reutiliza el mismo estilo de tarjeta) */
body.single-product ul.products li.product{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
}
body.single-product ul.products li.product .woocommerce-loop-product__title{ color:var(--ic-text) !important; }
body.single-product ul.products li.product .price ins{ color:var(--ic-text) !important; }
body.single-product ul.products li.product .price del{ color:var(--ic-text-dim) !important; }

/* ============ Mini-carrito flotante (aparece en cualquier página, cualquier dominio) ============ */
#cart-drawer .drawer-inner{
  background:var(--ic-bg) !important;
}
#cart-drawer .drawer-header{
  border-bottom:1px solid var(--ic-border) !important;
}
#cart-drawer .side-cart-header{
  color:var(--ic-text) !important;
  font-family:var(--ic-font-display);
}
#cart-drawer .cart-toggle-close svg{
  fill:var(--ic-text-dim) !important;
}
#cart-drawer .woocommerce-mini-cart-item{
  border-bottom:1px solid var(--ic-border) !important;
}
#cart-drawer .woocommerce-mini-cart-item a:not(.remove){
  color:var(--ic-text) !important;
}
#cart-drawer .woocommerce-mini-cart-item .quantity{
  color:var(--ic-text-dim) !important;
  font-family:var(--ic-font-mono);
}
#cart-drawer .woocommerce-mini-cart-item .amount{
  color:var(--ic-text) !important;
}
#cart-drawer .remove_from_cart_button{
  color:var(--ic-text-dim) !important;
}
#cart-drawer .remove_from_cart_button:hover{
  color:var(--ic-accent) !important;
}
#cart-drawer .woocommerce-mini-cart__total{
  color:var(--ic-text) !important;
  border-top:1px solid var(--ic-border) !important;
}
#cart-drawer .woocommerce-mini-cart__buttons .button{
  border-radius:999px !important;
  font-weight:700;
  text-align:center;
}
#cart-drawer .woocommerce-mini-cart__buttons .button.checkout{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
}
#cart-drawer .woocommerce-mini-cart__buttons .button:not(.checkout){
  background:transparent !important;
  color:var(--ic-text) !important;
  border:1px solid var(--ic-border) !important;
}
#cart-drawer .woocommerce-mini-cart__empty-message{
  color:var(--ic-text-dim) !important;
}

/* ============ Página de acceso alterna (page-id-8, formulario aBlocks) ============ */
body.page-id-8{
  background-color:var(--ic-bg) !important;
  background-image:
    radial-gradient(700px 420px at 85% -5%, rgba(192,38,211,.22), transparent 60%),
    radial-gradient(600px 380px at -10% 15%, rgba(124,58,237,.18), transparent 55%);
  background-repeat:no-repeat;
  color:var(--ic-text) !important;
}
body.page-id-8 header#masthead.site-header{
  margin:0 !important; max-width:none !important; width:100% !important;
  border-radius:0 !important; border:none !important;
  border-bottom:1px solid rgba(192,38,211,.35) !important;
  box-shadow:0 10px 40px -22px rgba(192,38,211,.4);
  background:rgba(10,7,19,.85) !important;
  backdrop-filter:blur(16px) saturate(150%);
}
body.page-id-8 header#masthead.site-header img.custom-logo{ max-height:36px; width:auto; }
body.page-id-8 footer, body.page-id-8 #colophon{
  background:var(--ic-surface-2) !important; border-top:1px solid var(--ic-border);
  color:var(--ic-text-dim) !important;
}
body.page-id-8 .e-con,
body.page-id-8 .site.wp-site-blocks{
  background-color:transparent !important;
  background-image:none !important;
}
body.page-id-8 .ablocks-form-builder{
  background:var(--ic-surface) !important;
  border:1px solid var(--ic-border) !important;
  border-radius:18px !important;
  padding:8px;
}
body.page-id-8 .ablocks-form-builder label{
  color:var(--ic-text-dim) !important;
}
body.page-id-8 .ablocks-form-builder input[type="text"],
body.page-id-8 .ablocks-form-builder input[type="email"],
body.page-id-8 .ablocks-form-builder input[type="password"]{
  background:var(--ic-surface-2) !important;
  border:1px solid var(--ic-border) !important;
  color:var(--ic-text) !important;
  border-radius:10px !important;
}
body.page-id-8 .ablocks-form-builder button,
body.page-id-8 .ablocks-form-builder input[type="submit"]{
  background:linear-gradient(135deg,var(--ic-accent),var(--ic-accent-soft)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  font-weight:700;
}

/* Fondo explícito para el wrapper de producto y paneles (mismo patrón fantasma de siempre) */
body.single-product .entry.content-bg.entry-content-wrap{
  background-color:transparent !important;
}
body.single-product .woocommerce-Tabs-panel{
  background:var(--ic-surface) !important;
  border-radius:0 0 16px 16px;
}
body.single-product .woocommerce-Tabs-panel p{
  color:var(--ic-text-dim) !important;
}
body.single-product .comment-form label{
  color:var(--ic-text-dim) !important;
}
body.single-product .comment-form input,
body.single-product .comment-form textarea,
body.single-product .comment-form select{
  background:var(--ic-surface-2) !important;
  border:1px solid var(--ic-border) !important;
  color:var(--ic-text) !important;
  border-radius:10px !important;
}
body.single-product .quantity.spinners-added{
  background:transparent !important;
}

/* Fondo explícito de los bloques aBlocks que envuelven el formulario de login */
body.page-id-8 .ablocks-block{
  background-color:transparent !important;
}
