﻿.cart-page { padding:24px 0 48px; color:var(--home-ink); background:var(--cart-bg); }
.cart-back { display:inline-flex; align-items:center; gap:8px; margin-bottom:18px; font-size:13px; color:var(--home-muted); }
.cart-back:hover { color:var(--home-green); }
.cart-hero { display:flex; align-items:center; justify-content:space-between; gap:28px; margin-bottom:26px; padding:30px 36px; border:1px solid #dce6d5; border-radius:20px; background:#e8f0e2; }
.cart-hero h1 { margin:12px 0; font-size:clamp(30px,3.5vw,44px); font-weight:800; line-height:1.1; letter-spacing:-.05em; }
.cart-hero h1 em { color:var(--home-green); font-style:normal; }
.cart-hero p { color:#5b7060; margin:0; font-size:14px; line-height:1.7; }
.cart-progress { display:flex; align-items:center; gap:10px; font-size:12px; color:var(--home-muted); }
.cart-progress > a,.cart-progress > span:not(.cart-progress-line) { display:flex; align-items:center; gap:7px; white-space:nowrap; }
.cart-progress > a { color:var(--home-muted); }
.cart-progress b { display:grid; place-items:center; width:27px; height:27px; border:1px solid #cad8c4; border-radius:50%; background:#ffffff5c; font-size:11px; font-weight:600; }
.cart-progress [aria-current] { color:var(--home-green); font-weight:700; }
.cart-progress [aria-current] b { color:#fff; background:var(--home-green); border-color:var(--home-green); }
.cart-progress-line { width:20px; height:1px; background:#c7d6c0; }
.cart-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:26px; align-items:start; }
.cart-products-column { min-width:0; }
.cart-card,.cart-summary { background:#fff; border:1px solid var(--home-line); border-radius:16px; }
.cart-card { overflow:hidden; }
.cart-card-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:24px; border-bottom:1px solid var(--home-line); }
.cart-card-heading h2 { display:flex; align-items:center; gap:10px; margin:0; font-size:19px; font-weight:750; }
.cart-card-heading h2 span { padding:4px 7px; border-radius:5px; background:#f0f4ec; color:var(--home-muted); font-size:11px; font-weight:500; }
.cart-card-heading > a { display:flex; align-items:center; gap:7px; color:var(--home-green); font-size:12px; font-weight:650; }
.cart-item { display:grid; grid-template-columns:80px minmax(0,1fr) auto auto 28px; align-items:center; gap:16px; margin:0 24px; padding:24px 0; border-bottom:1px solid var(--home-line); }
.cart-item:last-of-type { border-bottom:0; }
.cart-image { display:block; width:80px; height:80px; padding:4px; border:1px solid var(--home-line); border-radius:10px; background:#f5f6f3; }
.cart-image img { width:100%; height:100%; object-fit:contain; border-radius:6px; }
.cart-product { min-width:0; }
.cart-product h3 { margin:0 0 7px; font-size:14px; font-weight:650; line-height:1.5; overflow-wrap:anywhere; }
.cart-product h3 a { color:var(--home-ink); }
.cart-unit { display:block; color:var(--home-muted); font-size:11px; }
.cart-variant { display:inline-block; max-width:100%; padding:3px 7px; margin-bottom:7px; border-radius:4px; color:var(--home-muted); background:#f0f4ec; font-size:10px; overflow-wrap:anywhere; }
.cart-quantity-form { margin:0; }
.cart-quantity { display:flex; width:max-content; overflow:hidden; border:1px solid var(--home-line); border-radius:8px; }
.cart-quantity button { width:29px; height:36px; padding:0; border:0; background:#f0f4ec; color:var(--home-green); font-size:18px; cursor:pointer; }
.cart-quantity button:hover { background:#e3eddc; }
.cart-quantity input { width:34px; height:36px; padding:0; border:0; border-inline:1px solid var(--home-line); text-align:center; color:var(--home-ink); font-size:13px; font-weight:650; appearance:textfield; -moz-appearance:textfield; }
.cart-quantity input::-webkit-inner-spin-button,.cart-quantity input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.cart-line-total { color:var(--home-green); font-size:14px; font-weight:700; white-space:nowrap; }
.cart-remove { display:grid; place-items:center; width:28px; height:36px; color:#9aa69c; font-size:15px; border-radius:5px; }
.cart-remove:hover { color:#b42318; background:#fff2ef; }
.cart-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 24px; background:#fbfcfa; border-top:1px solid var(--home-line); }
.cart-actions span { display:flex; align-items:center; gap:7px; font-size:11px; color:var(--home-muted); }
.cart-actions > a { flex-shrink:0; color:#95665e; font-size:11px; }
.cart-assurances { display:flex; justify-content:space-around; gap:15px; padding:24px 5px; }
.cart-assurances span { display:flex; align-items:center; gap:7px; color:var(--home-muted); font-size:11px; }
.cart-assurances i { color:var(--home-green); font-size:16px; }
.cart-summary-column { position:sticky; top:110px; min-width:0; }
.cart-summary { padding:24px; }
.cart-summary h2 { margin:0 0 7px; font-size:19px; font-weight:750; }
.cart-summary-intro { color:var(--home-muted); margin:0 0 24px; font-size:12px; }
.cart-totals { padding-top:18px; border-top:1px solid var(--home-line); margin:0 0 20px; }
.cart-totals > div { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:15px; font-size:13px; }
.cart-totals dt { color:var(--home-muted); font-weight:400; }
.cart-totals dd { margin:0; color:var(--home-ink); font-weight:600; white-space:nowrap; }
.cart-totals dd.cart-delivery-hint { font-size:11px; color:var(--home-muted); font-weight:400; }
.cart-totals .cart-discount :is(dt,dd) { color:var(--home-green); }
.cart-coupon { padding:16px; background:#f0f4ec; border:1px solid #e1e9dc; border-radius:10px; }
.cart-coupon label { display:block; margin-bottom:10px; color:#536850; font-size:12px; font-weight:650; }
.cart-coupon-form { display:flex; gap:8px; }
.cart-coupon input { flex:1; min-width:0; height:43px; padding:10px; border:1px solid #dce6d5; border-radius:7px; color:var(--home-ink); background:#fff; font-size:12px; }
.cart-coupon button { padding:0 13px; height:43px; border:1px solid #c2d4bc; border-radius:7px; background:#fff; color:var(--home-green); font-size:12px; font-weight:700; }
.cart-coupon button:hover { background:var(--home-green); color:#fff; }
.cart-active-coupon { display:flex; justify-content:space-between; gap:10px; color:var(--home-green); font-size:12px; }
.cart-active-coupon span { overflow-wrap:anywhere; }
.cart-active-coupon a { color:#95665e; font-size:11px; }
.cart-coupon-message { margin:10px 0 0; color:#b42318; font-size:12px; }
.cart-summary-total { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:20px; margin-top:22px; border-top:1px solid var(--home-line); }
.cart-summary-total > span { color:var(--home-ink); font-size:17px; font-weight:750; }
.cart-summary-total small { display:block; color:var(--home-muted); font-size:11px; font-weight:400; margin-top:3px; }
.cart-summary-total strong { color:var(--home-green); font-size:26px; font-weight:800; letter-spacing:-.04em; }
.cart-checkout { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:50px; margin-top:22px; padding:13px 18px; border-radius:9px; background:var(--home-green); color:#fff; font-size:14px; font-weight:700; }
.cart-checkout:hover { color:#fff; background:var(--home-dark); }
.cart-payment-note { display:flex; align-items:center; justify-content:center; gap:6px; margin:14px 0 0; color:var(--home-muted); font-size:11px; }
.cart-payment-note i { color:var(--home-green); }
.cart-support { display:flex; align-items:center; justify-content:center; gap:12px; padding:22px 10px; }
.cart-support > i { color:var(--home-green); font-size:25px; }
.cart-support > span { color:var(--home-muted); font-size:12px; }
.cart-support strong { display:flex; align-items:center; gap:8px; margin-top:4px; color:var(--home-green); font-size:12px; font-weight:700; }
.cart-empty { display:flex; flex-direction:column; align-items:center; max-width:720px; margin:0 auto; padding:48px 30px; text-align:center; background:#fff; border:1px solid var(--home-line); border-radius:16px; }
.cart-empty-icon { display:grid; place-items:center; width:84px; height:84px; margin-bottom:24px; background:#eef3e8; color:var(--home-green); border-radius:50%; font-size:38px; }
.cart-empty h2 { max-width:450px; font-size:27px; line-height:1.3; font-weight:750; letter-spacing:-.035em; margin:14px 0; }
.cart-empty p { max-width:430px; color:var(--home-muted); font-size:14px; line-height:1.8; }
.cart-empty > a { display:inline-flex; align-items:center; gap:20px; margin-top:12px; padding:13px 20px; border-radius:8px; color:#fff; background:var(--home-green); font-size:14px; font-weight:700; }
@media (max-width:1199px) and (min-width:992px) { .cart-item { grid-template-columns:68px minmax(0,1fr) auto 25px; gap:12px; } .cart-image { width:68px; height:68px; grid-row:1 / 3; } .cart-product { grid-column:2; } .cart-remove { grid-column:4; grid-row:1; } .cart-quantity-form { grid-column:2; grid-row:2; } .cart-line-total { grid-column:3 / 5; grid-row:2; justify-self:end; } }
@media (max-width:991px) { .cart-hero { align-items:start; flex-direction:column; gap:22px; } .cart-layout { grid-template-columns:1fr; gap:10px; } .cart-summary-column { position:static; width:100%; } }
@media (max-width:767px) {
 .cart-page { padding-top:14px; }
 .cart-back { margin-bottom:14px; font-size:12px; }
 .cart-hero { padding:24px 20px; border-radius:13px; margin-bottom:18px; }
 .cart-hero h1 { font-size:33px; }
 .cart-hero p { font-size:12px; max-width:270px; }
 .cart-progress { gap:8px; font-size:10px; }
 .cart-progress b { width:23px; height:23px; font-size:10px; }
 .cart-progress-line { width:15px; }
 .cart-progress > a,.cart-progress > span:not(.cart-progress-line) { gap:5px; }
 .cart-card,.cart-summary { border-radius:13px; }
 .cart-card-heading { padding:18px; }
 .cart-card-heading h2 { font-size:16px; gap:7px; }
 .cart-card-heading h2 span { font-size:10px; }
 .cart-card-heading > a { font-size:11px; }
 .cart-item { grid-template-columns:64px minmax(0,1fr) 28px; align-items:start; gap:12px; margin:0 18px; padding:20px 0; }
 .cart-image { width:64px; height:64px; }
 .cart-product h3 { font-size:13px; margin-bottom:5px; }
 .cart-remove { grid-column:3; grid-row:1; width:28px; height:30px; }
 .cart-quantity-form { grid-column:1 / 3; grid-row:2; justify-self:start; }
 .cart-line-total { grid-column:2 / 4; grid-row:2; align-self:center; justify-self:end; font-size:15px; }
 .cart-actions { padding:15px 18px; }
 .cart-actions span { font-size:10px; }
 .cart-assurances { padding:20px 0; gap:8px; }
 .cart-assurances span { flex-direction:column; gap:5px; font-size:9px; text-align:center; }
 .cart-summary { padding:22px 18px; }
 .cart-summary h2 { font-size:18px; }
 .cart-summary-total strong { font-size:27px; }
 .cart-support { padding:20px 10px; }
 .cart-empty { padding:34px 22px; }
 .cart-empty h2 { font-size:23px; }
 .cart-empty p { font-size:13px; }
}
@media (max-width:359px) { .cart-hero { padding-inline:15px; } .cart-progress { gap:6px; font-size:9px; } .cart-progress-line { width:12px; } .cart-item { margin-inline:14px; gap:10px; } .cart-actions { padding-inline:14px; } .cart-quantity button { width:28px; } }
