.cart-loading,.cart-empty{font-size:var(--fs-lead);color:var(--c-muted)}.cart-empty .btn{margin-top:var(--sp-4)}.cart-grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,1rem + 3vw,3.5rem);align-items:start}.cart-main{min-width:0}.cart-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-5)}.cart-item{display:flex;gap:var(--sp-5);padding-bottom:var(--sp-5);border-bottom:1px solid var(--c-rule)}.cart-item:last-child{border-bottom:0}.cart-item.is-gone{opacity:.65}.cart-item-img{flex:none;width:clamp(84px,22vw,116px);aspect-ratio:auto 2 / 3;border-radius:var(--radius);overflow:hidden;background:var(--c-cream-soft)}.cart-item-img img{width:100%;height:100%;object-fit:cover}.cart-item-info{flex:1;min-width:0}.cart-item-name{font-size:var(--fs-h3);margin:0 0 var(--sp-3)}.cart-item-name a{text-decoration:none;color:inherit}.cart-item-gone{color:var(--c-error);margin:0 0 var(--sp-2)}.cart-item-total{color:var(--c-muted);font-size:var(--fs-sm)}.cart-summary{background:var(--c-cream-soft);border:1px solid var(--c-rule);border-radius:var(--radius-lg);padding:var(--sp-5);align-self:start}.cart-summary h2{margin:0 0 var(--sp-4);font-size:var(--fs-h3)}.cart-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-2)}.cart-row-promo{color:var(--c-brown);font-weight:var(--fw-medium)}.cart-total{border-top:1px solid var(--c-rule-strong);padding-top:var(--sp-3);margin-top:var(--sp-3);font-size:var(--fs-lead)}.cart-ship-note{font-size:var(--fs-xs);color:var(--c-muted);margin:var(--sp-4) 0}.cart-total-pending{border-top:1px solid var(--c-rule-strong);padding-top:var(--sp-3);margin:var(--sp-3) 0 0;font-size:var(--fs-sm);color:var(--c-brown)}.co-need{margin:0 0 var(--sp-3);padding:var(--sp-2) var(--sp-3);border-inline-start:3px solid var(--c-gold);background:var(--c-cream-soft);border-radius:var(--radius);font-size:var(--fs-sm);color:var(--c-brown)}.co{margin-top:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5)}.co-block,.co-ship{border-top:1px solid var(--c-rule);padding-top:var(--sp-5)}.co-h{display:block;font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.02em;color:var(--c-night);margin:0 0 var(--sp-3)}.co-ship-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.co-ship-list label{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1.5px solid var(--c-rule-strong);border-radius:var(--radius);background:#fff;cursor:pointer;min-height:44px}.co-ship-list label.is-on{border-color:var(--c-night);background:var(--c-cream-soft)}.co-ship-list input{width:20px;height:20px;flex:none;accent-color:var(--c-night)}.co-ship-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.co-ship-title{font-weight:var(--fw-medium);line-height:1.3}.co-ship-time{font-size:var(--fs-xs);color:var(--c-muted)}.co-ship-price{flex:none;font-weight:var(--fw-bold)}.co-ship-price.is-free{color:var(--c-brown)}.co-row{display:flex;gap:var(--sp-2);flex-wrap:wrap;max-width:30rem}.co-row input{font:inherit;flex:1;min-width:11rem;padding:.7rem .9rem;min-height:44px;border:1.5px solid var(--c-rule-strong);border-radius:var(--radius);background:#fff;color:var(--c-ink)}.co-applied{display:flex;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap;margin:0;color:var(--c-brown)}.co-link{background:none;border:0;padding:0;font:inherit;font-size:var(--fs-sm);color:var(--c-night);text-decoration:underline;cursor:pointer}.co-toggle{background:none;border:0;padding:.4rem 0;font:inherit;font-weight:var(--fw-medium);color:var(--c-night);text-decoration:underline;cursor:pointer;min-height:44px}.co-toggle[aria-expanded=true]{margin-bottom:var(--sp-3)}.co-pickup-note{margin:0 0 var(--sp-3);max-width:34rem;font-size:var(--fs-sm);color:var(--c-muted);line-height:1.5}.co-pickup-note.is-warn{padding:.7rem .9rem;border-radius:var(--radius);background:#c9922e24;color:#6b4a12}.co-note{font:inherit;width:100%;max-width:34rem;padding:.8rem 1rem;border:1.5px solid var(--c-rule-strong);border-radius:var(--radius);background:#fff;color:var(--c-ink);resize:vertical}.co-hint{margin:var(--sp-2) 0 0;font-size:var(--fs-xs);color:var(--c-muted);min-height:1.4em}.cart-checkout,.cart-continue{width:100%}.cart-continue{margin-top:var(--sp-2)}@media(min-width:900px){.cart-grid{grid-template-columns:1fr 22rem}.cart-summary{position:sticky;top:calc(var(--header-h) + var(--sp-5))}}
