.cart{display:flex;flex-direction:column;gap:20px}.cart-empty h2,.cart h2{font-size:var(--fs-h3);font-weight:600}.cart-empty p{margin-top:8px;color:var(--ink-2)}.cart-lines{display:grid;gap:20px}.cart-line{display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px}.cart-line img{display:block;width:80px;height:100px;-o-object-fit:cover;object-fit:cover;border-radius:8px;background:var(--sand)}.cart-line-name{font-weight:600;color:var(--ink)}.cart-line-meta{margin-top:4px;font-size:var(--fs-small);color:var(--ink-2)}.cart-line-row{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.cart-line-price{font-weight:600;font-variant-numeric:tabular-nums}.cart-stepper{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:var(--r-pill)}.cart-stepper button{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center}.cart-stepper button:disabled{color:var(--ink-2)}.cart-stepper output{min-width:28px;text-align:center;font-variant-numeric:tabular-nums}.cart-remove{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;color:var(--ink-2)}.cart-remove:hover{color:var(--ink)}.cart-steps{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:var(--fs-small);color:var(--ink-2)}.cart-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:12px 20px;border-radius:var(--r-pill);background:var(--forest);color:var(--white);font-weight:600}.cart-cta:hover{background:var(--forest-hover)}.cart-cta[aria-disabled=true]{background:var(--sand);color:var(--ink-2);pointer-events:none}.cart-keep{justify-content:center}.cart-coupon{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;font-size:.9375rem}.cart-coupon label{font-weight:600}.cart-coupon>div{display:flex;gap:8px}.cart-coupon input{flex:1;min-width:0;min-height:44px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--white);font-size:1rem;text-transform:uppercase}.cart-coupon button{min-height:44px;padding:0 16px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--paper);font-weight:600}.cart-coupon-problem{color:var(--error)}.cart-coupon-on{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.9375rem}.cart-coupon-on span{font-weight:600;letter-spacing:.04em}.cart-coupon-on button{min-height:44px;color:var(--forest);text-decoration:underline;text-underline-offset:4px}.cart-free{font-size:.9375rem;font-weight:600;color:var(--forest)}.cart[data-layout=page] .cart-line{padding-bottom:20px;border-bottom:1px solid var(--line)}.cart[data-layout=page] .order-summary{padding:24px;border-radius:12px;background:var(--sand)}@media(min-width:900px){.cart[data-layout=page]:not(.cart-empty){display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:48px;align-items:start}.cart[data-layout=page] .order-summary[data-sticky]{position:sticky;top:calc(var(--site-header-height, 72px) + 24px)}.cart[data-layout=page] .cart-line{grid-template-columns:96px minmax(0,1fr)}.cart[data-layout=page] .cart-line img{width:96px;height:120px}}.cart-link{display:inline-flex;min-height:44px;align-items:center;color:var(--forest);text-decoration:underline;text-underline-offset:4px}.cart-drawer{position:fixed;inset:0 0 0 auto;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:var(--paper);color:var(--ink)}.cart-drawer::backdrop{background:#00000073}.cart-drawer[open]{animation:cart-in var(--dur-3) var(--ease-out)}@keyframes cart-in{0%{transform:translate(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){.cart-drawer[open]{animation:none}}@media(min-width:600px){.cart-drawer{width:440px}}.cart-drawer-inner{display:flex;height:100%;flex-direction:column;padding:max(16px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) 20px;overflow-y:auto}.cart-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.cart-drawer-head h2{font-size:var(--fs-h3);font-weight:600}.cart-drawer-close{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center}.cart[data-layout=page] .order-summary .cart-cta[aria-disabled=true]{background:var(--paper);box-shadow:inset 0 0 0 1px var(--line-strong)}
