/* =====================================================================
 * Rhino Shop Ux — Páginas de tienda (Carrito · Mi cuenta · Lista de deseos)
 * Sube el look de estas páginas al nivel del checkout: tarjetas limpias,
 * rojo de marca, Poppins, botones rojos. Scoped a cada página para NO
 * afectar el resto del sitio. NO toca la pantalla de contraseña (.rsux-acc,
 * la maneja cuenta.php).
 * ===================================================================== */
.woocommerce-cart,
.woocommerce-account,
.rsux-wishlist-page {
    --rsux-accent: #DA171F;
    --rsux-accent-dk: #b00a20;
    --rsux-ink: #15181c;
    --rsux-ink-soft: #5b6573;
    --rsux-line: #e4e8ee;
    --rsux-bg-soft: #f7f9fc;
    --rsux-radius: 14px;
    --rsux-green: #16a34a;
    font-family: 'Poppins', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    color: var(--rsux-ink);
}

/* ---------- Botones de marca (compartido en las 3 páginas) ---------- */
.woocommerce-cart .button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-account .woocommerce-Button,
.woocommerce-account .button,
.rsux-wishlist-page .button {
    background: var(--rsux-ink) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    letter-spacing: .01em;
    transition: filter .15s ease, background .15s ease, transform .1s ease;
}
.woocommerce-cart .button:hover,
.woocommerce-account .button:hover,
.rsux-wishlist-page .button:hover { background: #1f2937 !important; }

/* El CTA que empuja al pago va en ROJO (destaca sobre los secundarios) */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .single_add_to_cart_button,
.woocommerce-account .woocommerce-Button--next,
.rsux-wishlist-page .tinvwl_add_to_cart_button_all {
    background: var(--rsux-accent) !important;
    box-shadow: 0 8px 20px color-mix(in srgb, var(--rsux-accent) 28%, transparent) !important;
    font-weight: 700 !important;
}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-account .woocommerce-Button--next:hover { background: var(--rsux-accent-dk) !important; transform: translateY(-1px); }

/* =====================================================================
 *  CARRITO
 * ===================================================================== */
.woocommerce-cart .woocommerce { max-width: 1080px; margin: 0 auto; }

/* Tabla de productos como tarjeta */
.woocommerce-cart table.shop_table {
    border: 1px solid var(--rsux-line) !important;
    border-radius: var(--rsux-radius) !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden;
    background: #fff;
}
.woocommerce-cart table.shop_table thead th {
    background: var(--rsux-bg-soft);
    color: var(--rsux-ink-soft);
    font-size: 12px; letter-spacing: .05em; text-transform: uppercase;
    font-weight: 600; border: 0 !important; padding: 14px 16px;
}
.woocommerce-cart table.shop_table td {
    border-top: 1px solid var(--rsux-line) !important;
    padding: 16px !important; vertical-align: middle;
}
.woocommerce-cart .cart_item .product-name a { color: var(--rsux-ink); font-weight: 600; text-decoration: none; }
.woocommerce-cart .cart_item .product-name a:hover { color: var(--rsux-accent); }
.woocommerce-cart .product-thumbnail img { border-radius: 10px; border: 1px solid var(--rsux-line); max-width: 64px; }
.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal { font-weight: 600; }
.woocommerce-cart td.product-subtotal .amount { color: var(--rsux-accent); font-weight: 700; }

/* Selector de cantidad */
.woocommerce-cart .quantity input.qty {
    border: 1px solid var(--rsux-line) !important;
    border-radius: 8px !important; min-height: 40px; width: 74px; text-align: center;
    color: var(--rsux-ink);
}
.woocommerce-cart .quantity input.qty:focus {
    border-color: var(--rsux-accent) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--rsux-accent) 18%, transparent) !important;
    outline: none !important;
}
/* Quitar producto (la x) */
.woocommerce-cart td.product-remove a.remove {
    color: var(--rsux-accent) !important; font-weight: 700;
    border: 1px solid var(--rsux-line); border-radius: 50%;
    width: 26px; height: 26px; line-height: 24px; background: #fff !important;
}
.woocommerce-cart td.product-remove a.remove:hover { background: var(--rsux-accent) !important; color: #fff !important; }

/* Cupón */
.woocommerce-cart .coupon input#coupon_code {
    border: 1px solid var(--rsux-line) !important; border-radius: 10px !important;
    min-height: 46px; padding: 0 14px;
}

/* Totales del carrito como tarjeta destacada */
.woocommerce-cart .cart-collaterals .cart_totals {
    background: var(--rsux-bg-soft);
    border: 1px solid var(--rsux-line);
    border-radius: var(--rsux-radius);
    padding: 20px 22px;
}
.woocommerce-cart .cart_totals h2 {
    font-weight: 700; font-size: 18px; margin: 0 0 14px; color: var(--rsux-ink);
    text-transform: none;
}
.woocommerce-cart .cart_totals table { border: 0 !important; }
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    border-top: 1px dashed var(--rsux-line) !important; padding: 10px 0 !important; background: transparent !important;
}
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total .amount { font-weight: 800; font-size: 17px; }
.woocommerce-cart .cart_totals .order-total .amount { color: var(--rsux-accent); }
/* Envío gratis resaltado */
.woocommerce-cart .cart_totals .woocommerce-shipping-totals .amount,
.woocommerce-cart .cart_totals .free-shipping { color: var(--rsux-green); font-weight: 700; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    width: 100%; text-align: center; padding: 15px 20px !important; font-size: 16px !important;
    border-radius: 12px !important; margin-top: 6px;
}

/* Carrito vacío */
.woocommerce-cart .cart-empty { font-size: 17px; color: var(--rsux-ink-soft); }
.woocommerce-cart .return-to-shop .button { background: var(--rsux-accent) !important; }

/* =====================================================================
 *  MI CUENTA (panel / seguimiento de pedidos) — NO la pantalla de clave
 * ===================================================================== */
.woocommerce-account .woocommerce { max-width: 1080px; margin: 0 auto; }
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    background: #fff;
}
/* Menú lateral como tarjeta */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none; margin: 0; padding: 8px;
    border: 1px solid var(--rsux-line); border-radius: var(--rsux-radius);
    background: var(--rsux-bg-soft);
}
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a {
    display: block; padding: 11px 14px; border-radius: 10px;
    color: var(--rsux-ink-soft); font-weight: 600; text-decoration: none; font-size: 14px;
    transition: background .15s ease, color .15s ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: #fff; color: var(--rsux-ink); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    background: var(--rsux-accent); color: #fff;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--rsux-accent) 26%, transparent);
}

/* Contenido */
.woocommerce-account .woocommerce-MyAccount-content {
    border: 1px solid var(--rsux-line); border-radius: var(--rsux-radius);
    padding: 22px 24px;
}
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 { font-weight: 700; color: var(--rsux-ink); }

/* Tabla de pedidos */
.woocommerce-account table.woocommerce-orders-table,
.woocommerce-account table.shop_table {
    border: 1px solid var(--rsux-line) !important; border-radius: var(--rsux-radius) !important;
    border-collapse: separate !important; border-spacing: 0 !important; overflow: hidden;
}
.woocommerce-account table.woocommerce-orders-table thead th {
    background: var(--rsux-bg-soft); color: var(--rsux-ink-soft);
    font-size: 12px; letter-spacing: .04em; text-transform: uppercase; border: 0 !important; padding: 13px 14px;
}
.woocommerce-account table.woocommerce-orders-table td { border-top: 1px solid var(--rsux-line) !important; padding: 14px !important; }
.woocommerce-account .woocommerce-orders-table__cell-order-number a { color: var(--rsux-accent); font-weight: 700; text-decoration: none; }

/* "Estado" del pedido como pastilla de color */
.woocommerce-account .woocommerce-orders-table__cell-order-status {
    font-weight: 700; font-size: 12.5px;
}

/* Formularios de cuenta (direcciones, datos) */
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content select,
.woocommerce-account .woocommerce-MyAccount-content textarea {
    border: 1px solid var(--rsux-line) !important; border-radius: 10px !important;
    min-height: 46px; padding: 0 14px; color: var(--rsux-ink);
}
.woocommerce-account .woocommerce-MyAccount-content input.input-text:focus,
.woocommerce-account .woocommerce-MyAccount-content select:focus {
    border-color: var(--rsux-accent) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--rsux-accent) 18%, transparent) !important; outline: none !important;
}
/* Enlaces de acento dentro de Mi cuenta */
.woocommerce-account a:not(.button):not([class*="woocommerce-Button"]) { color: var(--rsux-accent); }

/* Login/registro (form del login) */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
    border: 1px solid var(--rsux-line); border-radius: var(--rsux-radius); padding: 24px; background: #fff;
}

/* =====================================================================
 *  LISTA DE DESEOS (TI WooCommerce Wishlist — .tinv-wishlist)
 * ===================================================================== */
.tinv-wishlist { --rsux-accent: #DA171F; --rsux-line: #e4e8ee; --rsux-ink: #15181c; font-family: 'Poppins', system-ui, sans-serif; }
.tinv-wishlist table.tinvwl-table,
.tinv-wishlist table.shop_table {
    border: 1px solid var(--rsux-line) !important; border-radius: 14px !important;
    border-collapse: separate !important; border-spacing: 0 !important; overflow: hidden;
}
.tinv-wishlist table thead th { background: #f7f9fc; color: #5b6573; font-size: 12px; text-transform: uppercase; border: 0 !important; padding: 13px 14px; }
.tinv-wishlist table td { border-top: 1px solid var(--rsux-line) !important; padding: 14px !important; }
.tinv-wishlist .product-name a { color: var(--rsux-ink); font-weight: 600; text-decoration: none; }
.tinv-wishlist .product-name a:hover { color: var(--rsux-accent); }
.tinv-wishlist .tinvwl-btn,
.tinv-wishlist .button.add_to_cart_button {
    background: var(--rsux-accent) !important; color: #fff !important; border: 0 !important;
    border-radius: 10px !important; font-weight: 600 !important;
}
.tinv-wishlist .tinvwl-remove,
.tinv-wishlist a.remove { color: var(--rsux-accent) !important; }

/* Botón "Añadir a lista de deseos" en tarjetas/single (icono corazón de marca) */
.tinvwl-icon-heart .tinvwl-icon,
.tinvwl_add_to_wishlist_button:hover { color: var(--rsux-accent) !important; }

/* =====================================================================
 *  FILTRO DE PRECIO (WOOF · Ion.RangeSlider) — estaba ROTO
 *  El slider crea su DOM pero Autoptimize excluye el CSS del skin → salía
 *  como caja vacía. Aquí va el skin "round" completo, en rojo de marca, para
 *  que el control se vea y se pueda arrastrar. Scoped al widget WOOF.
 * ===================================================================== */
.widget-woof .woof_price3_search_container { padding: 6px 4px 2px; }
.widget-woof .irs--round { height: 44px; font-family: 'Poppins', system-ui, sans-serif; }
.widget-woof .irs--round .irs-line {
    top: 24px; height: 5px; background: #e4e8ee; border-radius: 5px; border: 0;
}
.widget-woof .irs--round .irs-bar {
    top: 24px; height: 5px; background: #DA171F; border-radius: 5px;
}
.widget-woof .irs--round .irs-handle {
    top: 16px; width: 20px; height: 20px; border: 3px solid #DA171F;
    background: #fff; border-radius: 50%; cursor: pointer;
    box-shadow: 0 1px 4px rgba(15,23,42,.25); transition: transform .1s ease;
}
.widget-woof .irs--round .irs-handle:hover,
.widget-woof .irs--round .irs-handle.state_hover,
.widget-woof .irs--round .irs-handle.type_last { transform: scale(1.1); }
.widget-woof .irs--round .irs-from,
.widget-woof .irs--round .irs-to,
.widget-woof .irs--round .irs-single {
    top: 0; background: #DA171F; color: #fff; font-size: 11px; font-weight: 600;
    border-radius: 6px; padding: 2px 7px;
}
.widget-woof .irs--round .irs-from:before,
.widget-woof .irs--round .irs-to:before,
.widget-woof .irs--round .irs-single:before { border-top-color: #DA171F; }
.widget-woof .irs--round .irs-min,
.widget-woof .irs--round .irs-max {
    color: #5b6573; background: #f7f9fc; font-size: 10px; border-radius: 4px; padding: 1px 5px; visibility: visible;
}
.widget-woof .irs--round .irs-grid-text { color: #98a2b3; font-size: 9px; }
.widget-woof .irs--round .irs-grid-pol { background: #cbd2dc; }
/* Botón/acción de WOOF (si el tema muestra "Filtrar") en rojo de marca */
.widget-woof .woof_submit_search_form,
.widget-woof button.woof_reset_search_form + .woof_submit_search_form,
.widget-woof .woof_submit_search_form_container input[type="submit"] {
    background: #DA171F !important; color: #fff !important; border: 0 !important;
    border-radius: 10px !important; font-weight: 700 !important; padding: 9px 18px !important;
    font-family: 'Poppins', system-ui, sans-serif;
}

/* Responsive: en móvil las tablas respiran */
@media (max-width: 768px) {
    .woocommerce-cart table.shop_table td,
    .woocommerce-account table.woocommerce-orders-table td { padding: 12px !important; }
    .woocommerce-cart .cart-collaterals .cart_totals { padding: 16px; }
}
