/* static/css_clientes/carrito_compras.css */
a, .btn-shop { text-decoration: none !important; }

.cart-container { max-width: 1200px; margin: 40px auto; padding: 0 20px; animation: fadeIn 0.6s ease-out; }

.cart-header { margin-bottom: 30px; padding-bottom: 15px; border-bottom: 2px solid var(--border-color); display: flex; justify-content: space-between; align-items: center; }
.cart-header h2 { font-size: 2.2rem; font-weight: 800; color: var(--text-primary); }

.cart-card, .summary-card { background-color: var(--bg-card) !important; border: 1px solid var(--border-color); border-radius: 20px; box-shadow: var(--shadow-soft); overflow: hidden; color: var(--text-primary); }

.table { color: var(--text-primary) !important; }
.table thead th { background-color: var(--bg-secondary); color: var(--text-secondary); border-bottom: 1px solid var(--border-color); }
.table td { border-bottom: 1px solid var(--border-color); }

.producto-row { transition: all 0.3s ease; background-color: transparent; }
.row-desactivada { opacity: 0.4; filter: grayscale(100%); background-color: var(--bg-secondary) !important; }

.img-cart { width: 80px; height: 80px; object-fit: contain; border-radius: 12px; background: #ffffff; border: 1px solid var(--border-color); }
body.dark-mode .img-cart { filter: brightness(0.85); }

.product-name { font-weight: 700; color: var(--text-primary); font-size: 1.1rem; }
.product-price, .summary-total, .total-compra-span { font-weight: 800; color: var(--accent-color) !important; font-size: 1.2rem; }

.quantity-control { display: inline-flex; align-items: center; background-color: var(--bg-secondary); border: 1px solid var(--border-color); border-radius: 50px; padding: 4px; }
.summary-card { padding: 30px; position: sticky; top: 100px; }

body.dark-mode select.form-select, body.dark-mode .form-control { background-color: var(--bg-secondary) !important; color: var(--text-primary) !important; border-color: var(--border-color) !important; }
.text-muted { color: var(--text-secondary) !important; }

.btn-delete { background-color: rgba(239, 68, 68, 0.1); color: #ef4444; border: none; padding: 8px 15px; border-radius: 10px; font-weight: 600; transition: all 0.3s; }
.btn-delete:hover { background-color: #ef4444; color: white; }

@media (max-width: 991px) { .summary-card { position: static; margin-top: 30px; } }
@keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }