/* Shared cart/checkout layout; preserve the site's type and color variables. */
.cart-mobile-action{display:none}
@media(max-width:759px){
 body.has-cart-action{padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}
 .cart-mobile-action:not([hidden]){position:fixed;inset-inline:0;bottom:0;z-index:10010;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--paper,#fffefc);border-top:1px solid var(--line,#ddd);box-shadow:0 -4px 18px #1c19170a}
 .cart-mobile-action>div{display:flex;flex-direction:column;gap:2px;font-size:12px}
 .cart-mobile-action strong{font-size:19px}.cart-mobile-action small{font-size:11px}
 .cart-mobile-action .btn{width:auto;min-height:48px;padding-inline:20px;flex-shrink:0}
 body.has-cart-action .jolly-assistant{bottom:calc(112px + env(safe-area-inset-bottom,0px))}
 body.has-cart-action #jolly-assistant-panel{max-height:calc(100dvh - 210px)}
}
#root:has(.items){display:grid;gap:24px;padding:20px var(--gut) 40px;max-width:var(--maxw);margin-inline:auto}
.cart-message{grid-column:1/-1;font-size:14px;line-height:1.7}
.items{display:flex;flex-direction:column;gap:12px}
.item{display:grid;grid-template-columns:78px 1fr auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.item__media{width:78px;aspect-ratio:4/5;position:relative;overflow:hidden}
.item__media img{width:100%;height:100%;object-fit:contain}
.item__body{display:flex;flex-direction:column;gap:5px;min-width:0}
.item__title{font-size:13.5px;font-weight:700;line-height:1.4}
.item__opts{display:flex;gap:6px;flex-wrap:wrap}
.opt-chip{font-size:10.5px;font-weight:700;background:var(--bone);padding:3px 8px;border-radius:6px}
.item__body small{overflow-wrap:anywhere}
.item__price{font-size:13px;font-weight:800}
.item__price s{font-weight:400;margin-inline-start:6px}
.item__aside{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.qty{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:5px 8px}
.qty button{width:30px;height:30px;font-size:17px}
.qty button:disabled,.remove-btn:disabled{opacity:.4}
.remove-btn{font-size:12px;color:var(--coral);text-decoration:underline}
.summary{border:1px solid var(--line);border-radius:18px;padding:20px;background:var(--bone);display:flex;flex-direction:column;gap:14px}
.summary__total{display:flex;justify-content:space-between;gap:12px;font-weight:800;font-size:20px}
.summary__note{font-size:13px;line-height:1.7}
@media(min-width:760px){#root:has(.items){grid-template-columns:1.6fr 1fr;align-items:start}}
@media(max-width:420px){.item{grid-template-columns:62px 1fr;gap:10px}.item__media{width:62px}.item__aside{grid-column:2;align-items:flex-start}.item__aside>b{font-size:13px}}

.cart-shipping{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.6}.cart-shipping label{font-weight:700}.cart-shipping select{font:inherit;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--paper);color:var(--ink);width:100%}.cart-shipping p{margin:0}
