:root {
  --vcr-cart-bg: #080506;
  --vcr-cart-surface: #171318;
  --vcr-cart-surface-2: #21171d;
  --vcr-cart-border: rgba(255,255,255,.14);
  --vcr-cart-muted: #bdb4bb;
  --vcr-cart-red: #ed1c24;
  --vcr-cart-red-dark: #a6070d;
  --vcr-cart-radius: 22px;
  --vcr-cart-shadow: 0 24px 80px rgba(0,0,0,.48);
}

/* El disparador real vive fuera del viewport; el icono aprobado del header lo activa. */
.vcr-mini-cart-bridge {
  position: fixed !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  inset-inline-start: -10000px !important;
  inset-block-start: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.vcr-mini-cart-bridge .wc-block-mini-cart__button { pointer-events: none !important; }

/* Drawer oficial WooCommerce, adaptado al sistema VCR Signature. */
.wc-block-components-drawer__screen-overlay {
  background: rgba(0,0,0,.72) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 100000 !important;
}

.wc-block-mini-cart__drawer {
  width: min(480px, 100vw) !important;
  max-width: 100vw !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 100% 0, rgba(113,0,8,.5), transparent 42%),
    linear-gradient(160deg, #13080b 0%, #050505 58%, #090607 100%) !important;
  border-inline-start: 1px solid var(--vcr-cart-border) !important;
  box-shadow: var(--vcr-cart-shadow) !important;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__template-part,
.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-contents {
  background: transparent !important;
  color: #fff !important;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__title {
  padding: 26px 28px 20px !important;
  border-bottom: 1px solid var(--vcr-cart-border);
}

.wc-block-mini-cart__drawer h2,
.wc-block-mini-cart__drawer .wc-block-mini-cart__title-heading {
  color: #fff !important;
  font-size: clamp(24px, 3vw, 32px) !important;
  font-weight: 750 !important;
  letter-spacing: -.03em;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__button,
.wc-block-mini-cart__drawer button {
  color: #fff;
}

.wc-block-mini-cart__drawer .wc-block-cart-items__row {
  margin: 0 22px !important;
  padding: 22px 0 !important;
  border-bottom-color: var(--vcr-cart-border) !important;
}

.wc-block-mini-cart__drawer .wc-block-cart-item__image img {
  aspect-ratio: 1;
  object-fit: contain;
  background: #f7f7f7;
  border-radius: 14px;
  padding: 8px;
}

.wc-block-mini-cart__drawer a,
.wc-block-mini-cart__drawer .wc-block-components-product-name {
  color: #fff !important;
  text-decoration: none !important;
}

.wc-block-mini-cart__drawer .wc-block-components-product-name {
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.wc-block-mini-cart__drawer .wc-block-components-product-price,
.wc-block-mini-cart__drawer .wc-block-components-product-details,
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link {
  color: var(--vcr-cart-muted) !important;
}

.wc-block-mini-cart__drawer .wc-block-components-quantity-selector {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid var(--vcr-cart-border) !important;
  border-radius: 999px !important;
}

.wc-block-mini-cart__drawer .wc-block-components-quantity-selector input,
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector button {
  color: #fff !important;
  background: transparent !important;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__footer {
  padding: 20px 24px max(24px, env(safe-area-inset-bottom)) !important;
  background: rgba(7,5,6,.94) !important;
  border-top: 1px solid var(--vcr-cart-border) !important;
  box-shadow: 0 -18px 45px rgba(0,0,0,.26);
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions {
  gap: 10px !important;
}

.wc-block-mini-cart__drawer .wc-block-components-button {
  min-height: 52px !important;
  border-radius: 12px !important;
  font-weight: 750 !important;
  text-transform: none !important;
}

.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-checkout-button-block .wc-block-components-button {
  color: #fff !important;
  background: linear-gradient(135deg, var(--vcr-cart-red), var(--vcr-cart-red-dark)) !important;
  border: 1px solid var(--vcr-cart-red) !important;
}

.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-cart-button-block .wc-block-components-button {
  color: #fff !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid var(--vcr-cart-border) !important;
}

/* Carrito completo. */
.vcr-signature-cart-page .wp-block-woocommerce-cart,
.vcr-signature-checkout-page .wp-block-woocommerce-checkout {
  color: #fff;
}

.vcr-signature-cart-page .wc-block-cart__main,
.vcr-signature-cart-page .wc-block-cart__sidebar,
.vcr-signature-checkout-page .wc-block-checkout__main,
.vcr-signature-checkout-page .wc-block-checkout__sidebar {
  background: linear-gradient(155deg, rgba(32,24,30,.96), rgba(10,8,10,.98)) !important;
  border: 1px solid var(--vcr-cart-border) !important;
  border-radius: var(--vcr-cart-radius) !important;
  box-shadow: 0 14px 50px rgba(0,0,0,.2);
}

.vcr-signature-cart-page .wc-block-cart__main,
.vcr-signature-checkout-page .wc-block-checkout__main { padding: clamp(18px, 3vw, 34px) !important; }
.vcr-signature-cart-page .wc-block-cart__sidebar,
.vcr-signature-checkout-page .wc-block-checkout__sidebar { padding: clamp(18px, 2.3vw, 28px) !important; }

.vcr-signature-cart-page .wc-block-cart-items__row {
  padding: 22px 0 !important;
  border-bottom-color: var(--vcr-cart-border) !important;
}

.vcr-signature-cart-page .wc-block-cart-item__image img {
  object-fit: contain;
  background: #f7f7f7;
  border-radius: 16px;
  padding: 10px;
}

.vcr-signature-cart-page .wc-block-components-product-name,
.vcr-signature-cart-page .wc-block-cart-item__prices,
.vcr-signature-cart-page .wc-block-components-totals-item__value,
.vcr-signature-checkout-page .wc-block-components-product-name,
.vcr-signature-checkout-page .wc-block-components-totals-item__value {
  color: #fff !important;
}

.vcr-signature-cart-page .wc-block-components-product-name {
  font-size: clamp(18px, 1.7vw, 23px) !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}

.vcr-signature-cart-page .wc-block-components-totals-wrapper,
.vcr-signature-checkout-page .wc-block-components-totals-wrapper {
  border-top-color: var(--vcr-cart-border) !important;
}

.vcr-signature-cart-page .wc-block-cart__submit-button,
.vcr-signature-checkout-page .wc-block-components-checkout-place-order-button {
  min-height: 56px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--vcr-cart-red), var(--vcr-cart-red-dark)) !important;
  border: 1px solid var(--vcr-cart-red) !important;
  border-radius: 12px !important;
  font-size: 17px !important;
  font-weight: 750 !important;
  text-transform: none !important;
  box-shadow: 0 10px 30px rgba(237,28,36,.2);
}

.vcr-signature-cart-page .wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
  opacity: .75;
}

.vcr-signature-cart-page .wp-block-woocommerce-empty-cart-block {
  max-width: 980px;
  margin-inline: auto;
  padding: clamp(34px, 6vw, 72px) clamp(18px, 5vw, 64px);
  background: linear-gradient(145deg, rgba(38,22,29,.92), rgba(7,6,7,.97));
  border: 1px solid var(--vcr-cart-border);
  border-radius: var(--vcr-cart-radius);
}

/* Checkout: secciones claras sin alterar su lógica. */
.vcr-signature-checkout-page .wc-block-components-checkout-step {
  margin: 0 0 18px !important;
  padding: 22px !important;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
}

.vcr-signature-checkout-page .wc-block-components-checkout-step__heading h2,
.vcr-signature-checkout-page .wc-block-components-title {
  color: #fff !important;
  font-size: clamp(20px, 2vw, 27px) !important;
  letter-spacing: -.02em;
}

.vcr-signature-checkout-page .wc-block-components-checkout-step__description,
.vcr-signature-checkout-page .wc-block-components-checkbox__label,
.vcr-signature-checkout-page .wc-block-components-radio-control__label,
.vcr-signature-checkout-page .wc-block-components-address-card__address-section {
  color: var(--vcr-cart-muted) !important;
}

.vcr-signature-checkout-page .wc-block-components-text-input input,
.vcr-signature-checkout-page .wc-block-components-combobox .components-combobox-control__input,
.vcr-signature-checkout-page .wc-block-components-textarea {
  min-height: 52px !important;
  color: #111 !important;
  background: #fff !important;
  border: 1px solid rgba(255,255,255,.42) !important;
  border-radius: 11px !important;
}

.vcr-signature-checkout-page .wc-block-components-radio-control-accordion-option,
.vcr-signature-checkout-page .wc-block-components-radio-control__option {
  background: rgba(255,255,255,.045) !important;
  border-color: var(--vcr-cart-border) !important;
  border-radius: 12px !important;
}

.vcr-signature-checkout-page .wc-block-checkout__sidebar {
  position: sticky;
  top: 118px;
  align-self: start;
}

@media (max-width: 782px) {
  .wc-block-mini-cart__drawer { width: 100vw !important; }

  .wc-block-mini-cart__drawer .wc-block-mini-cart__title { padding: 22px 20px 16px !important; }
  .wc-block-mini-cart__drawer .wc-block-cart-items__row { margin-inline: 16px !important; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__footer { padding-inline: 16px !important; }

  .vcr-signature-cart-page .wc-block-cart__main,
  .vcr-signature-cart-page .wc-block-cart__sidebar,
  .vcr-signature-checkout-page .wc-block-checkout__main,
  .vcr-signature-checkout-page .wc-block-checkout__sidebar {
    border-radius: 17px !important;
    padding: 16px !important;
  }

  .vcr-signature-checkout-page .wc-block-components-checkout-step {
    padding: 17px !important;
  }

  .vcr-signature-checkout-page .wc-block-checkout__sidebar {
    position: static;
  }
}

@media (prefers-reduced-motion: reduce) {
  .wc-block-components-drawer__screen-overlay,
  .wc-block-mini-cart__drawer { transition: none !important; }
}

