/* Standalone cart: no catalog or legacy cart styles. */
:root {
    --store-ink: #23313a;
    --store-muted: #6b7780;
    --store-line: #e4e8eb;
    --store-blue: #087fae;
    --fondoSecundario: #087fae;
    --fuente2: #087fae;
    --fuente1: #fff;
}
* { box-sizing: border-box; }
body { margin:0; background:#f6f7f8; color:var(--store-ink); font-family:Montserrat,Arial,sans-serif; -webkit-font-smoothing:antialiased; }
a { text-decoration:none; color:inherit; }
button,input,textarea,select { font:inherit; }
a,button { transition:color .15s,background .15s,border-color .15s; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid #087fae; outline-offset:4px; }
[hidden] { display:none !important; }
.cart-page { min-height:100vh; display:flex; flex-direction:column; }
.skip-link { position:fixed; top:-80px; left:16px; z-index:2000; padding:12px 20px; background:white; border:1px solid var(--store-line); }
.skip-link:focus { top:12px; }
.shipping-strip { background:#edf1f3; color:#566873; text-align:center; font-size:11px; padding:9px 16px; letter-spacing:.02em; }
.shipping-strip i { margin-right:7px; }.shipping-strip span { padding:0 12px; color:#98a7af; }
.store-header { background:white; border-bottom:1px solid var(--store-line); }
.header-inner { max-width:1200px; padding:22px 32px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.store-brand { display:flex; flex-direction:column; align-items:center; gap:5px; flex-shrink:0; }
.store-brand img { width:116px; height:44px; object-fit:contain; }
.store-brand span { font-size:9px; color:var(--store-muted); }
.cart-back { margin-left:auto; display:flex; align-items:center; gap:10px; font-size:12px; color:var(--store-muted); }.cart-back:hover { color:var(--store-blue); }
.cart-header-label { display:flex; align-items:center; gap:9px; border-left:1px solid var(--store-line); padding-left:28px; font-size:12px; font-weight:600; }
.cart-header-label>i { font-size:20px; color:var(--store-blue); }
#numerito { display:inline-block; border-radius:4px; background:#edf4f7; color:var(--store-blue); font-size:10px; padding:3px 6px; }
.cart-container { width:100%; max-width:1200px; margin:0 auto; padding:28px 32px 64px; flex:1; }
.cart-breadcrumb { display:flex; gap:12px; align-items:center; font-size:11px; color:var(--store-muted); margin-bottom:36px; }.cart-breadcrumb i { font-size:8px; }.cart-breadcrumb [aria-current] { color:var(--store-ink); }
.cart-heading { margin-bottom:32px; }.eyebrow { display:block; font-size:9px; font-weight:600; letter-spacing:.14em; color:var(--store-muted); margin-bottom:12px; }
.cart-heading h1 { font-size:36px; font-weight:650; letter-spacing:-1.3px; line-height:1.2; margin:0 0 12px; }.cart-heading p { color:var(--store-muted); font-size:13px; line-height:1.7; margin:0; }
.cart-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:32px; align-items:start; }
.cart-products { min-width:0; background:white; border:1px solid var(--store-line); border-radius:8px; overflow:hidden; }
.cart-panel-heading { padding:24px; display:flex; justify-content:space-between; gap:12px; align-items:center; }
.cart-panel-heading h2,.cart-summary h2 { font-size:17px; font-weight:650; letter-spacing:-.4px; margin:0; }
#cart-count { color:var(--store-muted); font-size:11px; white-space:nowrap; }
.cart-table-heading { display:flex; justify-content:space-between; padding:12px 78px 12px 24px; background:#fafbfc; border-block:1px solid var(--store-line); color:var(--store-muted); font-size:10px; }
.cart-loading { padding:40px 24px; color:var(--store-muted); font-size:13px; margin:0; }
.cart-item { display:grid; grid-template-columns:80px minmax(0,1fr) auto 30px; gap:18px; align-items:center; padding:26px 24px; border-bottom:1px solid #edf0f2; }
.cart-item-image { width:80px; height:96px; object-fit:contain; padding:5px; background:white; }
.cart-item-body { min-width:0; overflow-wrap:anywhere; }.cart-item-category { display:block; font-size:9px; letter-spacing:.045em; color:var(--store-muted); margin-bottom:6px; }
.cart-item-body h3 { font-size:13px; font-weight:600; line-height:1.65; margin:0 0 10px; }.cart-item-quantity { font-size:11px; color:#62717b; }
.cart-item-note { font-size:11px; color:var(--store-muted); line-height:1.7; margin:8px 0 0; white-space:pre-line; }
.cart-item-price { display:flex; flex-direction:column; align-items:flex-end; gap:5px; white-space:nowrap; }.cart-item-price strong { font-size:16px; font-weight:650; }.cart-item-price del { color:#929da5; font-size:11px; }.cart-item-price span { color:var(--store-muted); font-size:9px; }
.cart-remove { border:0; background:transparent; color:#8b989f; border-radius:4px; width:30px; height:36px; font-size:15px; }.cart-remove:hover { background:#fff2f0; color:#b34e42; }
.cart-continue { display:flex; align-items:center; gap:9px; padding:20px 24px; font-size:11px; font-weight:600; color:var(--store-blue); }.cart-continue:hover { background:#fafcfd; }
.cart-summary { position:sticky; top:24px; padding:26px; border:1px solid var(--store-line); border-radius:8px; background:white; }
.cart-summary h2 { padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid var(--store-line); }
.cart-subtotal,.cart-shipping,.cart-total { display:flex; justify-content:space-between; gap:12px; align-items:baseline; font-size:12px; }.cart-subtotal { margin-bottom:18px; }.cart-shipping { color:var(--store-muted); }.cart-shipping>span:last-child { font-size:11px; }
.cart-total { margin-top:24px; padding-top:24px; border-top:1px solid var(--store-line); font-size:12px; font-weight:500; }#total { color:var(--store-ink); font-size:25px; font-weight:650; letter-spacing:-.6px; white-space:nowrap; }
.cart-summary-note { font-size:10px; line-height:1.8; color:var(--store-muted); margin:12px 0 24px; }
.cart-checkout-actions { display:grid; gap:10px; }.cart-checkout { width:100%; padding:15px 13px; border:1px solid var(--store-blue); border-radius:5px; display:flex; align-items:center; gap:10px; font-size:11px; font-weight:600; text-align:left; line-height:1.5; }.cart-checkout>i { font-size:17px; flex-shrink:0; }.cart-checkout>i:last-child { font-size:12px; margin-left:auto; }
.cart-delivery { background:var(--store-blue); color:white; }.cart-delivery:hover { background:#086a91; }.cart-pickup { background:white; color:var(--store-ink); border-color:#cdd7dd; }.cart-pickup:hover { background:#f7fafb; border-color:#99b9c9; }.cart-checkout:disabled { opacity:.45; cursor:not-allowed; }
.cart-pickup-note { display:flex; gap:10px; align-items:flex-start; padding-top:22px; margin-top:24px; border-top:1px solid var(--store-line); }.cart-pickup-note>i { font-size:18px; color:#84949d; }.cart-pickup-note strong,.cart-pickup-note span { display:block; font-size:10px; line-height:1.7; }.cart-pickup-note strong { font-weight:600; margin-bottom:3px; }.cart-pickup-note span { color:var(--store-muted); }
.cart-help { display:flex; flex-wrap:wrap; gap:9px; align-items:center; padding-top:30px; color:var(--store-muted); font-size:11px; line-height:1.8; }.cart-help>i { font-size:17px; }.cart-help a { color:var(--store-blue); margin-left:4px; }
.cart-footer { background:white; border-top:1px solid var(--store-line); padding:22px max(32px,calc((100% - 1136px)/2)); display:flex; justify-content:space-between; gap:12px; color:var(--store-muted); font-size:10px; }
.cart-empty { padding:48px 24px; text-align:center; }.cart-empty>i { display:block; font-size:42px; color:#9faeb7; margin-bottom:20px; }.cart-empty h3 { font-size:19px; font-weight:600; }.cart-empty p { font-size:12px; color:var(--store-muted); line-height:1.8; margin:12px 0 24px; }.hero-button { display:inline-flex; align-items:center; gap:20px; background:var(--store-blue); color:white; border:0; border-radius:5px; padding:14px 18px; font-size:12px; font-weight:600; }.hero-button:hover { background:#086a91; color:white; }
.modal-content { border:1px solid var(--store-line); border-radius:10px; overflow:hidden; }.modal-header { color:white; padding:20px 24px; }.modal-header .btn-close { filter:invert(1); }.modal-body { padding:24px; color:var(--store-ink) !important; font-size:13px; line-height:1.8; }.modal-body input,.modal-body textarea,.modal-body select { border-radius:5px; }.modal-footer { padding:16px 24px; border-color:var(--store-line); }.modal-footer .btn-primary { background:var(--store-blue); border-color:var(--store-blue); font-size:12px; padding:10px 18px; }
@media(max-width:1050px) { .cart-layout { grid-template-columns:minmax(0,1fr) 310px; gap:22px; }.cart-item { grid-template-columns:60px minmax(0,1fr) auto; gap:14px; padding:22px 18px; }.cart-item-image { width:60px; height:80px; }.cart-item-body { grid-column:2; grid-row:1 / span 2; }.cart-item-price { grid-column:3; grid-row:1; }.cart-remove { grid-column:3; justify-self:end; }.cart-table-heading { padding-right:20px; }.cart-summary { padding:24px; } }
@media(max-width:800px) { .cart-layout { grid-template-columns:1fr; gap:24px; }.cart-summary { position:static; }.cart-container { padding:24px 20px 40px; }.cart-breadcrumb { margin-bottom:28px; }.cart-heading h1 { font-size:32px; }.cart-summary h2 { font-size:18px; }.cart-checkout { padding:16px; font-size:12px; }.header-inner { padding:18px 20px; gap:20px; } }
@media(max-width:480px) { .shipping-strip { font-size:9px; }.shipping-strip span { padding:0 5px; }.header-inner { gap:12px; padding:16px; }.store-brand img { width:90px; height:35px; }.store-brand span { display:none; }.cart-back { font-size:10px; gap:6px; }.cart-header-label { padding-left:12px; font-size:0; gap:0; }.cart-header-label>i { font-size:20px; }#numerito { margin-left:6px; }.cart-container { padding:22px 16px 32px; }.cart-heading p { font-size:12px; }.cart-panel-heading { padding:20px 16px; }.cart-table-heading { display:none; }.cart-item { border-top:1px solid #edf0f2; border-bottom:0; padding:20px 14px; gap:10px; grid-template-columns:54px minmax(0,1fr) auto; }.cart-item-image { width:54px; height:70px; }.cart-item-body h3 { font-size:12px; }.cart-item-price strong { font-size:14px; }.cart-item-category { font-size:9px; }.cart-continue { border-top:1px solid var(--store-line); padding:20px 16px; }.cart-help a { margin-left:26px; }.cart-footer { padding:20px 16px; flex-direction:column; gap:8px; } }
@media(prefers-reduced-motion:reduce) { a,button { transition:none; } }

.modal-body .botonImagen { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--store-line); border-radius:5px; padding:9px 12px; background:#f5f8fa; color:var(--store-blue); font-size:12px; }
.modal-body .icon { width:22px; height:22px; object-fit:contain; }
