/* ============================================================
   POST DOJO — CSS ADICIONAL COMPLETO v2
   ============================================================ */


/* ══════════════════════════════════════════════════════════
   1. GLOBAL
   ══════════════════════════════════════════════════════════ */

.woocommerce-message {
    background: #0d1f0d !important;
    border-top: 3px solid #22c55e !important;
    color: #d1fae5 !important;
    border-radius: 8px !important;
}

.woocommerce-error {
    background: #1f0d0d !important;
    border-top: 3px solid #ef4444 !important;
    color: #fee2e2 !important;
    border-radius: 8px !important;
}

.woocommerce-info {
    background: #0f0a1e !important;
    border-top: 3px solid #7c3aed !important;
    color: #e9d5ff !important;
    border-radius: 8px !important;
}


/* ══════════════════════════════════════════════════════════
   2. PÁGINA DE PRODUCTO
      Solo tocamos precio y botón — no interferimos con el tema
   ══════════════════════════════════════════════════════════ */

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #a78bfa !important;
}

/* Solo el botón de añadir al carrito en producto */
.woocommerce div.product form.cart .single_add_to_cart_button.button {
    background: linear-gradient(135deg, #7c3aed 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    border-radius: 10px !important;
    border: none !important;
    box-shadow: 0 0 30px rgba(124, 58, 237, 0.45) !important;
    width: 100% !important;
    font-size: 1rem !important;
    cursor: pointer !important;
    transition: all 0.25s !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button.button:hover {
    box-shadow: 0 0 50px rgba(124, 58, 237, 0.65) !important;
    transform: translateY(-2px) !important;
}


/* ══════════════════════════════════════════════════════════
   3. CARRITO (WooCommerce Blocks)
   ══════════════════════════════════════════════════════════ */

.wc-block-cart {
    background: transparent !important;
}

/* Tabla — fix del header cortado */
.wc-block-cart-items {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* Header de la tabla */
.wc-block-cart-items__header {
    background: #1a0f33 !important;
    display: table-row !important;
}

.wc-block-cart-items__header tr {
    display: table-row !important;
    width: 100% !important;
}

.wc-block-cart-items__header th {
    color: #a78bfa !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 14px 16px !important;
    border-bottom: 1px solid #2e1a5e !important;
    background: #1a0f33 !important;
}

/* Asegurar que la columna de imagen también tenga fondo */
.wc-block-cart-items__header th:first-child {
    border-radius: 11px 0 0 0 !important;
}

.wc-block-cart-items__header th:last-child {
    border-radius: 0 11px 0 0 !important;
    text-align: right !important;
}

/* Filas de producto */
.wc-block-cart-items__row td {
    padding: 20px 16px !important;
    border-bottom: 1px solid #1a1a2e !important;
    vertical-align: middle !important;
}

/* Nombre del producto */
a.wc-block-components-product-name {
    color: #ffffff !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    text-decoration: none !important;
}

a.wc-block-components-product-name:hover {
    color: #a78bfa !important;
}

.wc-block-components-product-metadata__description p {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* Precios en carrito */
.wc-block-cart-item__prices .wc-block-formatted-money-amount,
.wc-block-cart-item__total .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
}

/* Botón eliminar */
.wc-block-cart-item__remove-link svg {
    fill: #ef4444 !important;
}

/* ── Sidebar del carrito ──────────────────────────── */
.wc-block-cart__sidebar {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 24px !important;
}

.wc-block-cart__totals-title {
    color: #ffffff !important;
    font-size: 0.85rem !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #1a1a2e !important;
    margin-bottom: 16px !important;
}

/* Totales */
.wc-block-components-totals-item__label {
    color: #9ca3af !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

.wc-block-components-totals-footer-item .wc-block-formatted-money-amount,
.wc-block-cart__sidebar .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
}

.wc-block-components-totals-footer-item {
    border-top: 1px solid #2e1a5e !important;
    padding-top: 16px !important;
    margin-top: 8px !important;
}

.wc-block-components-totals-footer-item-tax {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* Cupón */
.wp-block-woocommerce-cart-order-summary-coupon-form-block {
    background: #1a0f33 !important;
    border: 1.5px solid #7c3aed !important;
    border-radius: 10px !important;
    margin-bottom: 16px !important;
    overflow: hidden !important;
}

.wc-block-components-totals-coupon .wc-block-components-panel__button {
    color: #a78bfa !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 14px 16px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
}

/* Botón ir al checkout */
.wc-block-cart__submit-button,
a.wc-block-cart__submit-button {
    background: linear-gradient(135deg, #7c3aed 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 18px !important;
    border-radius: 10px !important;
    border: none !important;
    box-shadow: 0 0 30px rgba(124, 58, 237, 0.4) !important;
    transition: all 0.2s !important;
    width: 100% !important;
    text-align: center !important;
    display: block !important;
    margin-top: 16px !important;
    text-decoration: none !important;
}

.wc-block-cart__submit-button .wc-block-components-button__text {
    color: #ffffff !important;
    font-weight: 700 !important;
}

.wc-block-cart__submit-button:hover,
a.wc-block-cart__submit-button:hover {
    box-shadow: 0 0 45px rgba(124, 58, 237, 0.6) !important;
    color: #ffffff !important;
}

/* Vaciar carrito duplicado */
.fmecc-buttons-container:last-of-type {
    display: none !important;
}

.fmecc_empty_cart_button {
    background: transparent !important;
    border: 1px solid #3b1f2e !important;
    color: #ef4444 !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 12px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

.fmecc_empty_cart_button:hover {
    background: #1f0505 !important;
    border-color: #ef4444 !important;
}


/* ══════════════════════════════════════════════════════════
   4. CHECKOUT MODERNO (WooCommerce Blocks)
   ══════════════════════════════════════════════════════════ */

/* Layout — la clave es NO tocar el grid nativo, solo reforzarlo */
.wc-block-checkout.wc-block-components-sidebar-layout.is-large {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 32px !important;
}

.wc-block-checkout__main {
    flex: 1 1 0% !important;
    min-width: 0 !important;
}

.wc-block-checkout__sidebar {
    flex: 0 0 360px !important;
    width: 360px !important;
    min-width: 0 !important;
    position: sticky !important;
    top: 24px !important;
    align-self: flex-start !important;
}

/* Responsive */
@media (max-width: 768px) {
    .wc-block-checkout.wc-block-components-sidebar-layout.is-large {
        flex-direction: column !important;
    }

    .wc-block-checkout__sidebar {
        flex: none !important;
        width: 100% !important;
        position: relative !important;
        top: 0 !important;
        order: -1 !important;
    }
}

/* ── Secciones ───────────────────────────────────── */
fieldset.wc-block-checkout__contact-fields,
fieldset.wc-block-checkout__billing-fields,
fieldset.wc-block-checkout__payment-method,
.wp-block-woocommerce-checkout-contact-information-block,
.wp-block-woocommerce-checkout-billing-address-block,
.wp-block-woocommerce-checkout-payment-block,
.wp-block-woocommerce-checkout-order-note-block {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 24px !important;
    margin-bottom: 16px !important;
}

/* Títulos */
.wc-block-components-checkout-step__title {
    color: #ffffff !important;
    font-size: 0.72rem !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    margin-bottom: 18px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #1a1a2e !important;
    display: block !important;
}

.wc-block-components-checkout-step__description {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* ── Inputs ──────────────────────────────────────── */
.wc-block-components-text-input input,
.wc-blocks-components-select__select {
    background: #0a0614 !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-size: 14px !important;
    transition: border-color 0.2s !important;
}

.wc-block-components-text-input input:focus,
.wc-blocks-components-select__select:focus {
    border-color: #7c3aed !important;
    box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.2) !important;
    outline: none !important;
}

.wc-block-components-text-input label,
.wc-blocks-components-select__label {
    color: #9ca3af !important;
    font-size: 10px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

.wc-block-checkout input::placeholder {
    color: #3d3d5c !important;
}

/* ── Pago exprés ─────────────────────────────────── */
.wc-block-components-express-payment-continue-rule {
    color: #4b5563 !important;
    font-size: 12px !important;
}

/* ── Checkbox ────────────────────────────────────── */
.wc-block-checkout .wc-block-components-checkbox__label {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* ── Opciones de pago ────────────────────────────── */
.wc-block-components-radio-control-accordion-option {
    border: 1px solid #1a1a2e !important;
    border-radius: 8px !important;
    padding: 14px 16px !important;
    margin-bottom: 8px !important;
    transition: border-color 0.2s, background 0.2s !important;
}

.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
    border-color: #7c3aed !important;
    background: #1a0f33 !important;
}

.wc-block-components-radio-control__input {
    accent-color: #7c3aed !important;
}

.wc-block-components-radio-control__label {
    color: #d1d5db !important;
}

/* Formulario de tarjeta */
.wc-block-components-radio-control-accordion-content {
    background: #0a0614 !important;
    border: 1px solid #1a1a2e !important;
    border-radius: 8px !important;
    padding: 16px !important;
    margin-top: 8px !important;
}

/* ── Términos ────────────────────────────────────── */
.wp-block-woocommerce-checkout-terms-block {
    background: transparent !important;
    border: none !important;
    padding: 4px 0 !important;
    margin-bottom: 12px !important;
}

.wp-block-woocommerce-checkout-terms-block a {
    color: #a78bfa !important;
}

/* ── Botón REALIZAR EL PEDIDO ────────────────────── */
.wc-block-components-checkout-place-order-button {
    background: linear-gradient(135deg, #7c3aed 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    padding: 18px 32px !important;
    border-radius: 10px !important;
    border: none !important;
    box-shadow: 0 0 30px rgba(124, 58, 237, 0.45) !important;
    transition: all 0.25s !important;
    width: 100% !important;
    cursor: pointer !important;
}

.wc-block-components-checkout-place-order-button:hover {
    box-shadow: 0 0 50px rgba(124, 58, 237, 0.65) !important;
    transform: translateY(-2px) !important;
}

/* Volver al carrito */
.wc-block-components-checkout-return-to-cart-button {
    color: #4b5563 !important;
    font-size: 13px !important;
    text-decoration: none !important;
}

.wc-block-components-checkout-return-to-cart-button:hover {
    color: #a78bfa !important;
}

/* ── Sidebar Resumen del pedido ──────────────────── */
.wp-block-woocommerce-checkout-order-summary-block {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 24px !important;
    overflow: hidden !important;
}

/* Título resumen */
.wc-block-components-checkout-order-summary__title-text {
    color: #ffffff !important;
    font-size: 0.72rem !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
}

.wc-block-components-checkout-order-summary__title-price {
    color: #a78bfa !important;
    font-weight: 700 !important;
}

/* Items — fix del texto apilado verticalmente */
.wc-block-components-order-summary-item {
    border-bottom: 1px solid #1a1a2e !important;
    padding: 12px 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 12px !important;
    overflow: visible !important;
}

.wc-block-components-order-summary-item__description {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    word-break: break-word !important;
}

.wc-block-components-order-summary-item__total-price {
    flex: 0 0 auto !important;
    text-align: right !important;
}

.wc-block-components-product-name {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    white-space: normal !important;
    word-break: break-word !important;
}

.wc-block-components-product-metadata__description p {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* Precios en resumen */
.wc-block-components-order-summary-item__total-price .wc-block-formatted-money-amount,
.wc-block-components-order-summary-item__individual-price {
    color: #a78bfa !important;
    font-weight: 700 !important;
}

/* Subtotales */
.wc-block-components-totals-item__label {
    color: #9ca3af !important;
    font-size: 13px !important;
}

.wc-block-components-totals-item__value .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 600 !important;
}

.wc-block-components-totals-footer-item {
    border-top: 1px solid #2e1a5e !important;
    padding-top: 16px !important;
    margin-top: 8px !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

.wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-size: 20px !important;
    font-weight: 800 !important;
}

.wc-block-components-totals-footer-item-tax {
    color: #4b5563 !important;
    font-size: 11px !important;
}

/* Cupón / Tarjeta regalo en sidebar */
.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-panel__button,
.wc-gift-cards-apply-panel .wc-block-components-panel__button {
    color: #a78bfa !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
}


/* ══════════════════════════════════════════════════════════
   5. PÁGINA DE CONFIRMACIÓN (Thank You)
   ══════════════════════════════════════════════════════════ */

.woocommerce-thankyou-order-received {
    color: #a78bfa !important;
    font-size: 1.4rem !important;
    font-weight: 700 !important;
}

.woocommerce-order-overview {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 20px !important;
    margin-bottom: 24px !important;
}

.woocommerce-order-overview li {
    color: #9ca3af !important;
    border-right: 1px solid #2e1a5e !important;
}

.woocommerce-order-overview li strong {
    color: #ffffff !important;
}

.woocommerce-order-details,
.woocommerce-customer-details {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 20px !important;
}

.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
    color: #ffffff !important;
    font-size: 0.8rem !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-bottom: 1px solid #2e1a5e !important;
    padding-bottom: 10px !important;
    margin-bottom: 16px !important;
}

/* ============================================================
   POST DOJO — FIXES ADICIONALES
   Agregar AL FINAL del CSS actual
   ============================================================ */

/* ============================================================
   POST DOJO — CARRITO REESCRITO
   Reemplaza SOLO la sección 3 del CSS actual
   ============================================================ */

/* ============================================================
   POST DOJO — SECCIÓN 3: CARRITO v4 (enfoque limpio)
   Reemplaza SOLO la sección 3 del CSS actual
   ============================================================ */

/* Resetear cualquier estilo anterior de tabla que interfiera */
.wc-block-cart-items,
.wc-block-cart-items thead,
.wc-block-cart-items thead tr,
.wc-block-cart-items__header,
.wc-block-cart-items__header th {
    all: revert !important;
}

/* Contenedor principal */
.wc-block-cart-items {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* ── Header: solo estilo visual sobre la fila existente ── */
.wc-block-cart-items__header {
    background: #1a0f33 !important;
    border-bottom: 2px solid #2e1a5e !important;
}

.wc-block-cart-items__header th {
    color: #a78bfa !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 14px 20px !important;
    background: #1a0f33 !important;
    font-weight: 700 !important;
}

.wc-block-cart-items__header-image {
    width: 72px !important;
    padding: 14px !important;
}

.wc-block-cart-items__header-product {
    text-align: left !important;
}

.wc-block-cart-items__header-total {
    text-align: right !important;
    width: 100px !important;
}

/* ── Filas de producto ── */
.wc-block-cart-items__row {
    border-bottom: 1px solid #1a1a2e !important;
}

.wc-block-cart-items__row td {
    padding: 20px !important;
    vertical-align: middle !important;
    background: transparent !important;
}

/* Imagen */
.wc-block-cart-item__image {
    width: 72px !important;
    padding: 16px 12px 16px 16px !important;
}

.wc-block-cart-item__image img {
    width: 56px !important;
    height: 56px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    display: block !important;
}

/* Nombre */
a.wc-block-components-product-name {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    display: block !important;
    margin-bottom: 4px !important;
}

a.wc-block-components-product-name:hover {
    color: #a78bfa !important;
}

/* Precio unitario */
.wc-block-cart-item__prices .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}

/* Descripción */
.wc-block-components-product-metadata__description p {
    color: #6b7280 !important;
    font-size: 12px !important;
    margin: 4px 0 0 !important;
}

/* Botón eliminar */
.wc-block-cart-item__remove-link svg {
    fill: #ef4444 !important;
    width: 18px !important;
    height: 18px !important;
}

/* Total por producto */
.wc-block-cart-item__total {
    text-align: right !important;
    width: 100px !important;
    padding-right: 20px !important;
}

.wc-block-cart-item__total .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}

/* ── Sidebar ── */
.wc-block-cart__sidebar {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 24px !important;
}

.wc-block-cart__totals-title {
    color: #ffffff !important;
    font-size: 0.8rem !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #1a1a2e !important;
    margin-bottom: 16px !important;
}

/* Cupón */
.wp-block-woocommerce-cart-order-summary-coupon-form-block {
    background: #1a0f33 !important;
    border: 1.5px solid #7c3aed !important;
    border-radius: 10px !important;
    margin-bottom: 16px !important;
    overflow: hidden !important;
}

.wc-block-components-totals-coupon .wc-block-components-panel__button {
    color: #a78bfa !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 14px 16px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
}

/* Totales */
.wc-block-components-totals-item__label {
    color: #9ca3af !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

.wc-block-cart__sidebar .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
}

.wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-size: 22px !important;
    font-weight: 800 !important;
}

.wc-block-components-totals-footer-item {
    border-top: 1px solid #2e1a5e !important;
    padding-top: 16px !important;
    margin-top: 8px !important;
}

.wc-block-components-totals-footer-item-tax {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* Botón pago */
.wc-block-cart__submit-button,
a.wc-block-cart__submit-button {
    background: linear-gradient(135deg, #7c3aed 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 18px !important;
    border-radius: 10px !important;
    border: none !important;
    box-shadow: 0 0 30px rgba(124, 58, 237, 0.4) !important;
    width: 100% !important;
    text-align: center !important;
    display: block !important;
    margin-top: 16px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

.wc-block-cart__submit-button .wc-block-components-button__text {
    color: #ffffff !important;
    font-weight: 700 !important;
}

.wc-block-cart__submit-button:hover,
a.wc-block-cart__submit-button:hover {
    box-shadow: 0 0 45px rgba(124, 58, 237, 0.65) !important;
    color: #ffffff !important;
}

/* Vaciar carrito duplicado */
.fmecc-buttons-container:last-of-type {
    display: none !important;
}

.fmecc_empty_cart_button {
    background: transparent !important;
    border: 1px solid #3b1f2e !important;
    color: #ef4444 !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 12px !important;
    cursor: pointer !important;
}

.fmecc_empty_cart_button:hover {
    background: #1f0505 !important;
    border-color: #ef4444 !important;
}

/* ══════════════════════════════════════════════════════════
   FIX PÁGINA DE PRODUCTO: Recuperar contraste y estilos
   ══════════════════════════════════════════════════════════ */

/* Título del producto */
.woocommerce div.product .product_title {
    color: #ffffff !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb {
    color: #6b7280 !important;
    font-size: 13px !important;
}

.woocommerce .woocommerce-breadcrumb a {
    color: #a78bfa !important;
}

/* Precio — ya lo teníamos pero reforzamos */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .price .woocommerce-Price-amount {
    color: #a78bfa !important;
    font-size: 1.8rem !important;
    font-weight: 800 !important;
}

/* Descripción corta */
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-product-details__short-description p {
    color: #d1d5db !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
}

/* Tabs: Descripción / Meeting Details */
.woocommerce div.product .woocommerce-tabs ul.tabs {
    background: transparent !important;
    border-bottom: 2px solid #2e1a5e !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-bottom: none !important;
    border-radius: 8px 8px 0 0 !important;
    margin-right: 4px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: #9ca3af !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background: #1a0f33 !important;
    border-color: #7c3aed !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #a78bfa !important;
}

/* Contenido del tab */
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 0 8px 8px 8px !important;
    padding: 24px !important;
    color: #d1d5db !important;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
    color: #ffffff !important;
    font-size: 1rem !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    margin-bottom: 12px !important;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel p {
    color: #9ca3af !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

/* Imagen del producto — quitar fondo blanco con borde */
.woocommerce div.product div.images .woocommerce-product-gallery__image {
    border-radius: 12px !important;
    overflow: hidden !important;
}

/* Meta (SKU, Categorías) */
.woocommerce div.product .product_meta {
    color: #6b7280 !important;
    font-size: 13px !important;
    border-top: 1px solid #1a1a2e !important;
    padding-top: 16px !important;
    margin-top: 16px !important;
}

.woocommerce div.product .product_meta a {
    color: #a78bfa !important;
}

/* Fix texto gris en formulario de tarjeta Stripe */
.wc-block-components-radio-control-accordion-content p,
.wc-block-components-radio-control-accordion-content label,
.wc-block-components-radio-control-accordion-content span,
.wcstripe-payment-element p,
.wcstripe-payment-element label {
    color: #d1d5db !important;
}

/* Fix texto terms en formulario Stripe */
.TermsText,
.p-TermsText {
    color: #d1d5db !important;
}

/* ============================================================
   POST DOJO — MOBILE FIXES
   Agregar AL FINAL del CSS adicional
   ============================================================ */

@media (max-width: 600px) {

   /* ══════════════════════════════════════════════════════════
   3. CARRITO (WooCommerce Blocks) — COMPLETO + MOBILE
   ══════════════════════════════════════════════════════════ */

.wc-block-cart {
    background: transparent !important;
}

/* Tabla de productos */
.wc-block-cart-items {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* Reset estilos previos de tabla */
.wc-block-cart-items,
.wc-block-cart-items thead,
.wc-block-cart-items thead tr,
.wc-block-cart-items__header,
.wc-block-cart-items__header th {
    all: revert !important;
}

.wc-block-cart-items {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* Header */
.wc-block-cart-items__header {
    background: #1a0f33 !important;
    border-bottom: 2px solid #2e1a5e !important;
}

.wc-block-cart-items__header th {
    color: #a78bfa !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 14px 20px !important;
    background: #1a0f33 !important;
    font-weight: 700 !important;
}

.wc-block-cart-items__header-image {
    width: 80px !important;
}

.wc-block-cart-items__header-product {
    text-align: left !important;
}

.wc-block-cart-items__header-total {
    text-align: right !important;
    width: 120px !important;
}

/* Filas */
.wc-block-cart-items__row {
    border-bottom: 1px solid #1a1a2e !important;
}

.wc-block-cart-items__row td {
    padding: 20px 16px !important;
    vertical-align: middle !important;
    background: transparent !important;
}

/* Imagen */
.wc-block-cart-item__image {
    width: 72px !important;
    padding: 16px 12px 16px 16px !important;
}

.wc-block-cart-item__image img {
    width: 56px !important;
    height: 56px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    display: block !important;
}

/* Nombre */
a.wc-block-components-product-name {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    display: block !important;
    margin-bottom: 4px !important;
}

a.wc-block-components-product-name:hover {
    color: #a78bfa !important;
}

.wc-block-components-product-metadata__description p {
    color: #6b7280 !important;
    font-size: 12px !important;
    margin: 4px 0 0 !important;
}

/* Precio */
.wc-block-cart-item__prices .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}

/* Botón eliminar */
.wc-block-cart-item__remove-link svg {
    fill: #ef4444 !important;
    width: 18px !important;
    height: 18px !important;
}

/* Total por producto */
.wc-block-cart-item__total {
    text-align: right !important;
    padding-right: 20px !important;
}

.wc-block-cart-item__total .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}

/* ── Sidebar ── */
.wc-block-cart__sidebar {
    background: #0f0a1e !important;
    border: 1px solid #2e1a5e !important;
    border-radius: 12px !important;
    padding: 24px !important;
}

.wc-block-cart__totals-title {
    color: #ffffff !important;
    font-size: 0.8rem !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #1a1a2e !important;
    margin-bottom: 16px !important;
}

/* Cupón */
.wp-block-woocommerce-cart-order-summary-coupon-form-block {
    background: #1a0f33 !important;
    border: 1.5px solid #7c3aed !important;
    border-radius: 10px !important;
    margin-bottom: 16px !important;
    overflow: hidden !important;
}

.wc-block-components-totals-coupon .wc-block-components-panel__button {
    color: #a78bfa !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 14px 16px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
}

/* Totales */
.wc-block-components-totals-item__label {
    color: #9ca3af !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

.wc-block-cart__sidebar .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-weight: 700 !important;
}

.wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    color: #a78bfa !important;
    font-size: 22px !important;
    font-weight: 800 !important;
}

.wc-block-components-totals-footer-item {
    border-top: 1px solid #2e1a5e !important;
    padding-top: 16px !important;
    margin-top: 8px !important;
}

.wc-block-components-totals-footer-item-tax {
    color: #6b7280 !important;
    font-size: 12px !important;
}

/* Botón pago */
.wc-block-cart__submit-button,
a.wc-block-cart__submit-button {
    background: linear-gradient(135deg, #7c3aed 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 18px !important;
    border-radius: 10px !important;
    border: none !important;
    box-shadow: 0 0 30px rgba(124, 58, 237, 0.4) !important;
    width: 100% !important;
    text-align: center !important;
    display: block !important;
    margin-top: 16px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

.wc-block-cart__submit-button .wc-block-components-button__text {
    color: #ffffff !important;
    font-weight: 700 !important;
}

.wc-block-cart__submit-button:hover,
a.wc-block-cart__submit-button:hover {
    box-shadow: 0 0 45px rgba(124, 58, 237, 0.65) !important;
    color: #ffffff !important;
}

/* Vaciar carrito duplicado */
.fmecc-buttons-container:last-of-type {
    display: none !important;
}

.fmecc_empty_cart_button {
    background: transparent !important;
    border: 1px solid #3b1f2e !important;
    color: #ef4444 !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 12px !important;
    cursor: pointer !important;
}

.fmecc_empty_cart_button:hover {
    background: #1f0505 !important;
    border-color: #ef4444 !important;
}

/* ── MOBILE ── */
@media (max-width: 600px) {

    /* Fix barras negras laterales */
    .wp-block-woocommerce-cart,
    .wc-block-cart,
    .wc-block-cart__main,
    .wc-block-cart__sidebar {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Ocultar thead en mobile */
    .wc-block-cart-items thead {
        display: none !important;
    }

    /* Tabla como bloque */
    .wc-block-cart-items {
        display: block !important;
        width: 100% !important;
        min-width: unset !important;
        max-width: 100% !important;
        table-layout: fixed !important;
        border-radius: 12px !important;
    }

    .wc-block-cart-items tbody,
    .wc-block-cart-items__row {
        display: block !important;
        width: 100% !important;
    }

    /* Cada fila como card */
    .wc-block-cart-items__row {
        padding: 16px !important;
        border-bottom: 1px solid #1a1a2e !important;
    }

    .wc-block-cart-items__row td {
        display: block !important;
        width: 100% !important;
        padding: 4px 0 !important;
        border: none !important;
        box-sizing: border-box !important;
    }

    /* Imagen más pequeña */
    .wc-block-cart-item__image {
        width: 100% !important;
        padding: 0 0 8px 0 !important;
    }

    .wc-block-cart-item__image img {
        width: 64px !important;
        height: 64px !important;
    }

    /* Total alineado a la izquierda */
    .wc-block-cart-item__total {
        text-align: left !important;
        padding-right: 0 !important;
    }

    /* Sidebar full width */
    .wc-block-cart__sidebar {
        width: 100% !important;
        padding: 16px !important;
        margin-top: 16px !important;
        box-sizing: border-box !important;
    }

    /* Botón pago */
    .wc-block-cart__submit-button {
        font-size: 0.85rem !important;
        padding: 16px !important;
    }
}

    /* ── CHECKOUT: arreglar layout ── */

    /* Forzar columna única */
    .wc-block-checkout.wc-block-components-sidebar-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .wc-block-checkout__sidebar,
    .wc-block-checkout__main {
        width: 100% !important;
        flex: none !important;
        position: relative !important;
        top: 0 !important;
    }

    /* Sidebar arriba en mobile */
    .wc-block-checkout__sidebar {
        order: -1 !important;
    }

    /* Secciones con menos padding */
    .wp-block-woocommerce-checkout-contact-information-block,
    .wp-block-woocommerce-checkout-billing-address-block,
    .wp-block-woocommerce-checkout-payment-block,
    .wp-block-woocommerce-checkout-order-note-block,
    fieldset.wc-block-checkout__contact-fields,
    fieldset.wc-block-checkout__billing-fields,
    fieldset.wc-block-checkout__payment-method {
        padding: 16px !important;
        margin-bottom: 12px !important;
    }

    /* Títulos legibles */
    .wc-block-components-checkout-step__title {
        font-size: 0.65rem !important;
        letter-spacing: 1.5px !important;
        white-space: normal !important;
        word-break: normal !important;
    }

    /* Resumen del pedido en checkout */
    .wp-block-woocommerce-checkout-order-summary-block {
        padding: 16px !important;
    }

    .wc-block-components-product-name {
        font-size: 12px !important;
        white-space: normal !important;
        word-break: break-word !important;
    }

    /* Botones de pago exprés */
    .wc-block-components-express-payment__event-buttons {
        flex-direction: column !important;
        gap: 8px !important;
    }

    /* Botón realizar pedido */
    .wc-block-components-checkout-place-order-button {
        font-size: 0.85rem !important;
        padding: 16px !important;
        letter-spacing: 1px !important;
    }

    /* Opciones de pago */
    .wc-block-components-radio-control-accordion-option {
        padding: 12px !important;
    }

    /* Inputs */
    .wc-block-components-text-input input {
        font-size: 16px !important; /* evita zoom en iOS */
    }
}

/* ══════════════════════════════════════════════════════════
   CAMPAMENTO DE COLOR — WPFORMS DARK THEME + LAYOUT FIX
   Pegar AL FINAL del CSS adicional existente
   ══════════════════════════════════════════════════════════ */

/* Labels arriba, sublabels visibles */
.page-id-5436 .wpforms-form .wpforms-field {
  display: flex !important;
  flex-direction: column !important;
  margin-bottom: 16px !important;
  padding: 0 !important;
}

.page-id-5436 .wpforms-form .wpforms-field-label {
  order: -1 !important;
  color: #a89f94 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-weight: 400 !important;
  margin-bottom: 7px !important;
  margin-top: 0 !important;
}

/* Sublabels (Nombre, Apellidos, Confirmar correo) — visibles, debajo del input */
.page-id-5436 .wpforms-form .wpforms-field-sublabel {
  display: block !important;
  color: #5a5550 !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  margin-top: 4px !important;
  margin-bottom: 8px !important;
}

/* Descripciones de campo — subtítulo pequeño debajo del input */
.page-id-5436 .wpforms-form .wpforms-field-description {
  display: block !important;
  color: #6b7280 !important;
  font-size: 11px !important;
  font-style: italic !important;
  margin-top: 5px !important;
  line-height: 1.5 !important;
}

/* Fix campos de nombre y email — columnas a filas */
.page-id-5436 .wpforms-form .wpforms-field-name .wpforms-field-row,
.page-id-5436 .wpforms-form .wpforms-field-email .wpforms-field-row,
.page-id-5436 .wpforms-form .wpforms-field-row {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
}

.page-id-5436 .wpforms-form .wpforms-field-row-block,
.page-id-5436 .wpforms-form .wpforms-one-half,
.page-id-5436 .wpforms-form .wpforms-one-third,
.page-id-5436 .wpforms-form .wpforms-two-thirds {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Todos los inputs y textareas */
.page-id-5436 .wpforms-form input[type="text"],
.page-id-5436 .wpforms-form input[type="email"],
.page-id-5436 .wpforms-form input[type="tel"],
.page-id-5436 .wpforms-form input[type="number"],
.page-id-5436 .wpforms-form input[type="url"],
.page-id-5436 .wpforms-form textarea,
.page-id-5436 .wpforms-form select {
  background: #0d0d0d !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 3px !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  color: #f0ede8 !important;
  width: 100% !important;
  box-shadow: none !important;
  margin: 0 !important;
  float: none !important;
  -webkit-appearance: none !important;
}

.page-id-5436 .wpforms-form input:focus,
.page-id-5436 .wpforms-form textarea:focus {
  border-color: #34D399 !important;
  outline: none !important;
  box-shadow: none !important;
}

.page-id-5436 .wpforms-form input::placeholder,
.page-id-5436 .wpforms-form textarea::placeholder {
  color: #444 !important;
}

/* Botón submit */
.page-id-5436 .wpforms-submit-container {
  padding: 0 !important;
  text-align: left !important;
  margin-top: 8px !important;
}

.page-id-5436 .wpforms-form button[type="submit"],
.page-id-5436 .wpforms-form .wpforms-submit {
  width: 100% !important;
  background: #34D399 !important;
  color: #060606 !important;
  border: none !important;
  border-radius: 3px !important;
  padding: 16px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: background .2s !important;
}

.page-id-5436 .wpforms-form button[type="submit"]:hover,
.page-id-5436 .wpforms-form .wpforms-submit:hover {
  background: #5eead4 !important;
}

/* Errores */
.page-id-5436 .wpforms-form label.wpforms-error {
  color: #f87171 !important;
  font-size: 11px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  order: 1 !important;
}

.page-id-5436 .wpforms-form input.wpforms-error,
.page-id-5436 .wpforms-form textarea.wpforms-error {
  border-color: #f87171 !important;
}

/* Confirmación */
.page-id-5436 .wpforms-confirmation-container-full {
  background: #0a1a10 !important;
  border: 1px solid #1a3f25 !important;
  border-radius: 6px !important;
  padding: 32px !important;
  color: #34D399 !important;
}