/* EZVIZ Oferta del Día — paleta EZVIZ (manual VI 2023): Intelligent Blue #00A0E9, #0080BA, #00608C, #BFE7F9.
   Nada de dorado ni de rayos: eso es de Ofertas Relámpago. Todo recto o con radio chico, sobrio. */

:root {
  --ezd-blue: #00a0e9;
  --ezd-blue-mid: #0080ba;
  --ezd-blue-deep: #00608c;
  --ezd-blue-light: #bfe7f9;
  --ezd-ink: #1d1d1f;
  --ezd-orange: #e4572e;
}

.ezd-icon {
  width: 14px;
  height: 14px;
  fill: currentColor;
  flex: 0 0 auto;
  vertical-align: -2px;
}

/* ── Etiqueta de Woo ("Oferta") cuando el tema la usa ── */
.onsale.ezd-flash {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--ezd-blue) !important;
  color: #fff !important;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 6px;
  padding: 4px 8px;
}

/* ── Cards: etiqueta sobre la foto (la pone oferta-dia.js) ── */
.product.ezd-product .thumbnail-wrapper {
  position: relative;
}
.ezd-corner {
  position: absolute;
  left: 10px;
  bottom: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: #fff;
  color: var(--ezd-blue-deep);
  border: 1px solid var(--ezd-blue-light);
  border-radius: 6px;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1;
  box-shadow: 0 4px 12px rgba(0, 96, 140, 0.18);
  pointer-events: none;
}
.ezd-corner .ezd-icon {
  color: var(--ezd-blue);
}
/* 1.1.0 — "Envío gratis" (opción por fila): segundo cartel, apilado sobre el de "Oferta del día". */
.ezd-corner--ship {
  bottom: 38px;
  background: var(--ezd-blue-deep);
  color: #fff;
  border-color: var(--ezd-blue-deep);
}
.ezd-corner--ship .ezd-icon {
  color: var(--ezd-blue-light);
}

/* ── Banda (card y ficha) ── */
.ezd-band {
  box-sizing: border-box;
  width: 100%;
  margin: 8px 0 0;
  padding: 8px 10px 9px;
  border-radius: 8px;
  background: var(--ezd-blue-deep);
  color: #fff;
  font-size: 12px;
  line-height: 1.25;
  text-align: left;
}
/* Loobek dispara el hook dentro de la foto: ahí la banda no se ve; el JS la mueve al pie de la card. */
.thumbnail-wrapper > .ezd-band,
.thumbnail-wrapper .ezd-band:not([data-ezd-placed]) {
  display: none;
}
.meta-wrapper > .ezd-band--loop {
  order: 6; /* Loobek ordena el meta con order: precio 4, bloque de Tienda 5, botones 7 */
}
.ezd-band__row {
  display: flex;
  align-items: center;
  gap: 6px 8px;
  flex-wrap: wrap;
}
.ezd-band__row--top {
  margin-bottom: 5px;
}
.ezd-band__tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 11px;
  color: #fff;
}
.ezd-band__tag .ezd-icon {
  color: var(--ezd-blue-light);
}
.ezd-band__chip {
  background: var(--ezd-blue-light);
  color: var(--ezd-blue-deep);
  border-radius: 5px;
  padding: 2px 6px;
  font-weight: 700;
  font-size: 11px;
}
.ezd-band__note {
  color: rgba(255, 255, 255, 0.72);
}
.ezd-band__label {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 10px;
  color: rgba(255, 255, 255, 0.72);
}
.ezd-band__time {
  margin-left: auto;
  font-weight: 700;
  font-size: 14px;
  font-variant-numeric: tabular-nums;
  color: #fff;
}
.ezd-band__over {
  margin-left: auto;
  font-weight: 700;
  color: var(--ezd-blue-light);
}
.ezd-band__track {
  display: block;
  margin-top: 6px;
  height: 4px;
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.18);
  overflow: hidden;
}
.ezd-band__fill {
  display: block;
  height: 100%;
  border-radius: 2px;
  background: var(--ezd-blue);
  transition: width 1s linear;
}
.ezd-band.is-urgent .ezd-band__time {
  color: #ffb199;
}
.ezd-band.is-urgent .ezd-band__fill {
  background: var(--ezd-orange);
}
.ezd-band.is-over {
  opacity: 0.7;
}
.ezd-band.is-over .ezd-band__time {
  display: none;
}

/* ── Ficha: una sola línea + filete del día (1.0.2) ── */
.ezd-single {
  position: relative;
  box-sizing: border-box;
  margin: 0 0 12px;
  padding: 8px 12px 10px 14px;
  background: #fff;
  border: 1px solid var(--ezd-blue-light);
  border-left: 4px solid var(--ezd-blue);
  border-radius: 8px;
  overflow: hidden;
}
.ezd-single__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  font-size: 13px;
  line-height: 1.3;
  color: #515151;
}
.ezd-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--ezd-blue-deep);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 11px;
  white-space: nowrap;
}
.ezd-tag .ezd-icon {
  color: var(--ezd-blue);
}
.ezd-pill {
  background: var(--ezd-blue);
  color: #fff;
  border-radius: 5px;
  padding: 2px 7px;
  font-weight: 700;
  font-size: 11px;
  line-height: 1.3;
  white-space: nowrap;
}
.ezd-single__nocoupon {
  color: #8a8a8a;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.ezd-single__save b {
  color: var(--ezd-ink);
}
.ezd-single__save .amount,
.ezd-single__save bdi {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}
.ezd-single__stock {
  color: var(--ezd-orange);
  font-weight: 700;
  font-size: 12px;
  white-space: nowrap;
}
.ezd-single__time {
  margin-left: auto;
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  white-space: nowrap;
}
.ezd-single__time-label {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 10px;
  color: #8a8a8a;
}
.ezd-single .ezd-band__time {
  font-weight: 700;
  font-size: 15px;
  color: var(--ezd-blue-deep);
  font-variant-numeric: tabular-nums;
}
.ezd-single .ezd-band__over {
  font-weight: 700;
  color: var(--ezd-blue-deep);
}
.ezd-single__track {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: var(--ezd-blue-light);
}
.ezd-single__track .ezd-band__fill {
  display: block;
  height: 100%;
  background: var(--ezd-blue);
  transition: width 1s linear;
}
.ezd-single.is-urgent .ezd-band__time {
  color: var(--ezd-orange);
}
.ezd-single.is-urgent .ezd-band__fill {
  background: var(--ezd-orange);
}
.ezd-single.is-over .ezd-band__time {
  display: none;
}

/* Etiqueta sobre la galería de la ficha */
body.ezviz-oferta-dia--single .woocommerce-product-gallery {
  position: relative;
}
body.ezviz-oferta-dia--single .woocommerce-product-gallery::after {
  content: "Oferta del día";
  position: absolute;
  left: 12px;
  bottom: 12px;
  z-index: 3;
  background: #fff;
  color: var(--ezd-blue-deep);
  border: 1px solid var(--ezd-blue-light);
  border-radius: 6px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1;
  box-shadow: 0 4px 12px rgba(0, 96, 140, 0.18);
  pointer-events: none;
}
/* 1.1.0 — "Envío gratis" sobre la galería, apilado arriba del anterior (clase del body: la pone body_class). */
body.ezviz-oferta-dia--single.ezviz-oferta-dia--ship .woocommerce-product-gallery::before {
  content: "Envío gratis";
  position: absolute;
  left: 12px;
  bottom: 44px;
  z-index: 3;
  background: var(--ezd-blue-deep);
  color: #fff;
  border: 1px solid var(--ezd-blue-deep);
  border-radius: 6px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1;
  box-shadow: 0 4px 12px rgba(0, 96, 140, 0.18);
  pointer-events: none;
}

@media (max-width: 640px) {
  .ezd-band {
    font-size: 11px;
  }
  .ezd-single__row {
    font-size: 12px;
  }
  .ezd-single__time {
    margin-left: 0;
  }
}

/* ── Carrito / mini-carrito / checkout (1.0.5): nota bajo el producto del día ── */
.ezd-cart-note {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 4px 0 0;
  padding: 2px 8px 2px 6px;
  border-radius: 999px;
  background: var(--ezd-blue-light);
  border: 1px solid #a6dcf5;
  color: var(--ezd-blue-deep);
  font-family: "Plus Jakarta Sans", "Roboto", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  text-transform: none;
  letter-spacing: 0;
  vertical-align: middle;
}
.ezd-cart-note .ezd-icon {
  width: 12px;
  height: 12px;
  color: var(--ezd-blue);
}
.ezd-cart-note b {
  font-weight: 700;
}
