.shopping-cart{max-width:1080px;margin:auto;padding-bottom:clamp(40px,6vw,80px)}
.cart-items{list-style:none}
.cart-line{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:24px;border-bottom:1px solid var(--c-line);padding:24px 0}
.cart-photo img{display:block;width:100%;height:auto}
.cart-name{font:500 22px/1.6 var(--ff-mincho)}
.cart-size,.cart-price{color:#d1cfcb;line-height:1.7}
.cart-controls,.cart-totals,.cart-actions{display:flex;align-items:center;gap:12px}
.cart-controls button{background:transparent;color:inherit;font:inherit;border:1px solid var(--c-line);min-width:44px;min-height:44px;cursor:pointer}
.cart-controls button:disabled{opacity:.4;cursor:default}
.cart-controls [data-remove]{border:0;text-decoration:underline}
.cart-totals,.cart-actions{justify-content:flex-end;margin-top:24px}
.cart-totals strong{font-size:24px;font-variant-numeric:tabular-nums}
.cart-status{min-height:1.8em;margin-top:12px;text-align:right}
@media(max-width:700px){.cart-line{grid-template-columns:78px minmax(0,1fr);gap:16px}.cart-controls{grid-column:1/-1;justify-content:flex-end}.cart-totals{justify-content:space-between}.cart-name{font-size:20px}}
.cart-review,.cart-filled{scroll-margin-top:100px}
.cart-review h2{font:500 clamp(24px,3vw,36px)/1.5 var(--ff-mincho);margin:0 0 30px}
.cart-review-items{list-style:none}
.cart-review-items li{display:grid;grid-template-columns:minmax(130px,1fr) minmax(180px,1fr) auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--c-line)}
.cart-review-note{margin:28px 0 16px;line-height:1.8;max-width:46em;color:var(--c-ink-sub)}
@media(max-width:700px){.cart-review-items li{grid-template-columns:1fr;gap:3px}.cart-actions{flex-wrap:wrap;gap:18px}.cart-actions .btn{width:100%}}
