/* Skat PX cart + checkout + order received. Values measured on the live cart page (skat.com.ua/cart);
   layout tokens come from base.css. */

/* ---- page frame: sand band, fluid vertical padding (80px @390, 101px @768, 140px @1440) ---- */
.shop-page{background:var(--sand);padding:min(140px,calc(57.7px + 5.714vw)) 0}
.shop-page__title{font-size:var(--text-4xl);line-height:var(--lh-tight);text-align:center;margin:0}
.cart-head{margin-bottom:var(--space-40)}

/* white rounded card used by the cart, totals and checkout panels */
.cart-card{background:var(--white);border-radius:var(--radius-lg)}

/* ---- empty cart ---- */
.cart-empty-card{text-align:center;padding:25px 20px}
@media (min-width:750px){.cart-empty-card{padding:80px 0 79px}}
@media (min-width:990px){.cart-empty-card{padding:120px 0 170px}}
.cart-empty-card__icon{margin-bottom:var(--space-20);color:var(--ink)}
.cart-empty-card__icon svg{display:block;margin:0 auto}
.cart-empty-card__title{font-size:var(--text-3xl);line-height:var(--lh-heading);margin-bottom:var(--space-10)}
@media (min-width:750px){.cart-empty-card__title{margin-bottom:var(--space-20)}}
.cart-empty-card__btn{min-height:0;padding:12px 16px;font-size:var(--text-control);border-radius:var(--radius-md)}
@media (min-width:750px){.cart-empty-card__btn{min-height:47px;padding:12px 20px}}

.cart-login{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:var(--space-25)}
@media (min-width:750px){.cart-login{flex-direction:row;justify-content:center;align-items:stretch;margin-top:45px}}
.cart-login__title{color:var(--ink-75);font-size:var(--text-base);line-height:var(--lh-body)}
.cart-login__link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;position:relative;padding:0 20px;
  color:var(--ink);font-size:var(--text-control);line-height:var(--lh-tight);font-weight:var(--fw-bold);text-decoration:none}
.cart-login__link svg{position:absolute;right:2px;top:50%;margin-top:-5px}
@media (min-width:750px){.cart-login__link{width:auto;padding:0}.cart-login__link svg{position:static;margin:0 2px}}
.cart-login__link:hover span{text-decoration:underline}

/* ---- notices (WooCommerce messages on cart / checkout) ---- */
.woocommerce-notices-wrapper:empty{display:none}
.shop-page .woocommerce-notices-wrapper{margin-top:calc(-1 * var(--space-10))}

/* ---- filled cart: line items ---- */
.cart-head--filled{margin-bottom:var(--space-30)}
@media (min-width:750px){.cart-head--filled{margin-bottom:var(--space-50)}}
@media (min-width:990px){.cart-head--filled{margin-bottom:80px}}
.cart-items__head{display:none}
.cart-items__actions{display:none}
.cart-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto;grid-template-areas:"media details details" "qty total remove";
  column-gap:var(--space-15);row-gap:var(--space-15);padding:var(--space-20);align-items:center}
.cart-item+.cart-item{border-top:1px solid var(--line)}
.cart-item__media{grid-area:media;align-self:start}
.cart-item__media a,.cart-item__media>img{display:block;height:126px}
.cart-item__image{display:block;width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white)}
.cart-item__details{grid-area:details;align-self:start;min-width:0}
.cart-item__name{display:block;color:var(--ink);font-size:var(--text-lg);line-height:var(--lh-body);font-weight:var(--fw-bold);text-decoration:none}
.cart-item__name:hover{text-decoration:underline}
.cart-item__unit{margin-top:6px;font-size:var(--text-sm);line-height:var(--lh-body)}
.cart-item__meta{margin:6px 0 0;font-size:var(--text-sm);line-height:var(--lh-body)}
.cart-item__meta div{margin:0}
.cart-item__meta dt{display:inline;color:var(--ink)}
.cart-item__meta dd{display:inline;margin:0}
.cart-item__note{margin-top:6px}
.cart-item__qty{grid-area:qty;min-height:44px}
.cart-item__total{grid-area:total;font-size:var(--text-base);line-height:var(--lh-body);white-space:nowrap}
.cart-item__remove{grid-area:remove;justify-self:end}
.cart-item__remove-link{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:var(--text-sm);line-height:var(--lh-tight);font-weight:var(--fw-bold);text-decoration:none}
.cart-item__remove-text,.cart-item__remove-chevron{display:none}
.cart-item__remove-link:hover .cart-item__remove-text{text-decoration:underline}

/* quantity stepper (measured: 120x42 phone, 152x47 from 750) */
.qty-field{width:120px;height:42px}
.qty-field__btn{flex-basis:35px}
.qty-field__btn .icon{width:16px;height:16px}
.cart-form.is-updating .cart-items__list,.cart-totals.is-updating{opacity:.6;pointer-events:none}

@media (min-width:750px){
  .cart-items__head,.cart-item{display:grid;grid-template-columns:100px minmax(0,1fr) 152px 88px 18px;column-gap:var(--space-20);grid-template-areas:none}
  .cart-items__head{padding:0 var(--space-30) var(--space-10);color:var(--ink);font-size:var(--text-base);line-height:var(--lh-tight);font-weight:var(--fw-medium)}
  .cart-items__h--product{grid-column:1 / 3}
  .cart-items__h--qty{grid-column:3;text-align:center}
  .cart-items__h--total{grid-column:4;text-align:right}
  .cart-item{padding:var(--space-30);align-items:center}
  .cart-item__media,.cart-item__details,.cart-item__qty,.cart-item__total,.cart-item__remove{grid-area:auto}
  .cart-item__total{text-align:right}
  .cart-item__media a,.cart-item__media>img{height:106px}
  .qty-field{width:152px;height:47px}
  .qty-field__btn{flex-basis:45px}
}
@media (min-width:990px){
  .cart-items__head,.cart-item{grid-template-columns:164px minmax(0,1fr) 157px 88px 161px;column-gap:var(--space-30)}
  .cart-items__head{padding:0 var(--space-40) var(--space-10)}
  .cart-item{padding:var(--space-40)}
  .cart-item__media{width:130px}
  .cart-item__media a,.cart-item__media>img{height:136px}
  .cart-item__name,.cart-item__meta{max-width:300px}
  .cart-item__remove-chevron{margin:0 2px}
  .cart-item__remove-text,.cart-item__remove-chevron{display:block}
  .cart-item__remove-bin{display:none}
}

/* ---- cart totals card ---- */
.cart-collaterals{margin-top:22px}
@media (min-width:750px){.cart-collaterals{display:flex;justify-content:flex-end;margin-top:var(--space-40)}}
.cart-totals{padding:var(--space-20)}
@media (min-width:750px){.cart-totals{width:390px;padding:var(--space-30)}}
.cart-totals__row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-15);margin-bottom:var(--space-20)}
.cart-totals__row--subtotal{padding-bottom:13px}
.cart-totals__row--total{color:var(--ink)}
.cart-totals__total-label{font-size:var(--text-xl);line-height:var(--lh-none);padding-top:5px}
.cart-totals__total-value{font-size:var(--text-xl);line-height:var(--lh-none)}
.cart-totals__note{margin-top:22px;font-size:var(--text-sm);line-height:var(--lh-body)}
.cart-totals__note a{color:inherit}
.cart-totals__comment{margin:16px 0 var(--space-20);padding:var(--space-20) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cart-totals__comment label{display:block;color:var(--ink);font-size:var(--text-base);line-height:var(--lh-snug);font-weight:var(--fw-medium)}
@media (min-width:750px){.cart-totals__comment{margin-top:22px}.cart-totals__comment label{line-height:var(--lh-body)}}
.cart-totals__textarea{display:block;margin-top:var(--space-10);height:150px;resize:vertical}
.cart-totals__checkout{width:100%;gap:6px;min-height:45px;padding:12px 16px;font-size:var(--text-control);border-radius:var(--radius-md)}
.cart-totals__checkout svg{flex:none;margin-top:-2px}
@media (min-width:750px){.cart-totals__checkout{min-height:47px;padding:12px 20px}}
.cart-totals__continue{display:inline-flex;align-items:center;gap:8px;margin-top:var(--space-20);color:var(--ink);font-size:var(--text-control);line-height:var(--lh-tight);font-weight:var(--fw-bold);text-decoration:none}
.cart-totals__continue:hover{text-decoration:underline}
