/**
 * cart.css — Mallorkinas Child Theme
 * Página carrito: tabla, productos, cantidades, cupones, totales, botones.
 */

/* =========================================================
   LAYOUT CARRITO
   ========================================================= */

.woocommerce-cart .woocommerce {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 32px;
    align-items: start;
}

@media (max-width: 768px) {
    .woocommerce-cart .woocommerce {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   TABLA DE CARRITO
   ========================================================= */

.woocommerce table.shop_table.cart {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--mk-border-color);
    border-radius: var(--mk-radius-card);
    overflow: hidden;
}

.woocommerce table.shop_table.cart thead th {
    font-size: var(--mk-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--mk-text-muted);
    padding: 14px 16px;
    background: var(--mk-bg-section);
    border-bottom: 1px solid var(--mk-border-color);
    text-align: left;
}

.woocommerce table.shop_table.cart tbody td {
    padding: 16px;
    border-bottom: 1px solid var(--mk-border-color-soft);
    vertical-align: middle;
}

.woocommerce table.shop_table.cart tbody tr:last-child td {
    border-bottom: none;
}

/* =========================================================
   PRODUCTO EN CARRITO
   ========================================================= */

.woocommerce table.shop_table.cart .product-thumbnail {
    width: 80px;
}

.woocommerce table.shop_table.cart .product-thumbnail img {
    width: 70px;
    height: 70px;
    object-fit: cover;
    border-radius: var(--mk-radius-sm);
}

.woocommerce table.shop_table.cart .product-name a {
    font-weight: 600;
    color: var(--mk-text-main);
    text-decoration: none;
    font-size: var(--mk-font-size-sm);
}

.woocommerce table.shop_table.cart .product-name a:hover {
    color: var(--mk-color-primary);
}

.woocommerce table.shop_table.cart .product-name .variation {
    font-size: var(--mk-font-size-xs);
    color: var(--mk-text-muted);
    margin-top: 4px;
}

/* =========================================================
   CANTIDADES EN CARRITO
   ========================================================= */

.woocommerce table.shop_table.cart .quantity input.qty {
    border: 1px solid var(--mk-border-color);
    border-radius: var(--mk-radius-md);
    padding: 8px 10px;
    font-size: var(--mk-font-size-sm);
    text-align: center;
    width: 64px;
}

/* =========================================================
   BOTÓN ELIMINAR PRODUCTO
   ========================================================= */

.woocommerce table.shop_table.cart a.remove {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--mk-bg-section);
    color: var(--mk-text-muted);
    font-size: 18px;
    text-decoration: none;
    transition: background-color var(--mk-transition), color var(--mk-transition);
}

.woocommerce table.shop_table.cart a.remove:hover {
    background-color: #fee2e2;
    color: #dc2626;
}

/* =========================================================
   ACCIONES DEL CARRITO (cupones y actualizar)
   ========================================================= */

.woocommerce .cart_totals .cart-subtotal,
.woocommerce table.shop_table.cart .actions {
    padding: 16px;
}

.woocommerce table.shop_table.cart .actions .coupon {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.woocommerce table.shop_table.cart .actions .coupon input#coupon_code {
    flex: 1;
    min-width: 180px;
    max-width: 280px;
}

/* =========================================================
   TOTALES DEL CARRITO
   ========================================================= */

.woocommerce .cart_totals {
    border: 1px solid var(--mk-border-color);
    border-radius: var(--mk-radius-card);
    overflow: hidden;
}

.woocommerce .cart_totals h2 {
    font-size: var(--mk-font-size-h3);
    padding: 16px;
    background: var(--mk-bg-section);
    border-bottom: 1px solid var(--mk-border-color);
    margin: 0;
}

.woocommerce .cart_totals table {
    width: 100%;
    border-collapse: collapse;
}

.woocommerce .cart_totals table th,
.woocommerce .cart_totals table td {
    padding: 12px 16px;
    font-size: var(--mk-font-size-sm);
    border-bottom: 1px solid var(--mk-border-color-soft);
    vertical-align: top;
}

.woocommerce .cart_totals table th {
    font-weight: 600;
    width: 40%;
    color: var(--mk-text-muted);
}

.woocommerce .cart_totals table .order-total th,
.woocommerce .cart_totals table .order-total td {
    font-weight: 700;
    font-size: var(--mk-font-size-base);
    border-bottom: none;
    color: var(--mk-text-main);
}

.woocommerce .cart_totals .wc-proceed-to-checkout {
    padding: 16px;
}

.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--mk-font-size-base);
    padding: 16px;
}

/* =========================================================
   CARRITO VACÍO
   ========================================================= */

.woocommerce-cart .cart-empty {
    text-align: center;
    padding: 60px 20px;
    font-size: var(--mk-font-size-base);
    color: var(--mk-text-muted);
}

.woocommerce-cart .return-to-shop {
    text-align: center;
    margin-top: 16px;
}
