:root{--bag-ink:#111;--bag-muted:#777;--bag-line:#dedede}
*{box-sizing:border-box}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.desktop-bag-header{display:none}
.bag-screen{min-height:100dvh;background:#fff;color:var(--bag-ink);font-family:Manrope,Arial,sans-serif;padding:72px 26px 130px}
.bag-inner{max-width:620px;margin:0 auto}
.bag-screen h1{font-size:28px;letter-spacing:-.06em;margin:0 0 36px}
.bag-items{display:grid}
.bag-item{display:grid;grid-template-columns:145px minmax(0,1fr);gap:15px;padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid var(--bag-line)}
.bag-item-image{width:145px;height:145px;background:#f1f1ef;object-fit:cover;mix-blend-mode:multiply}
.bag-item-info{min-width:0}
.bag-item-info h2{font-size:15px;margin:3px 0 6px;letter-spacing:-.04em}
.bag-item-info p{font-size:13px;color:var(--bag-muted);margin:3px 0;line-height:1.35}
.bag-item-price{display:block;margin-top:9px;font-size:14px}
.bag-item-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px}
.bag-item-controls label{font-size:12px;font-weight:800}
.bag-item-controls select{margin-left:5px;border:1px solid #bbb;border-radius:7px;background:#fff;padding:8px}
.bag-remove{border:0;background:none;padding:8px;color:#555;font:700 12px Manrope,Arial,sans-serif;text-decoration:underline;text-underline-offset:3px}
.bag-empty{display:grid;place-items:center;min-height:260px;padding:40px 24px;margin-bottom:24px;border:1px solid var(--bag-line);border-radius:18px;text-align:center}
.bag-empty h2{font-size:20px;margin:0 0 8px}.bag-empty p{color:var(--bag-muted);font-size:13px;margin:0 0 20px}.bag-empty a{display:inline-flex;padding:13px 20px;border-radius:999px;background:var(--bag-ink);color:#fff;text-decoration:none;font-size:12px;font-weight:800}
.bag-shipping{padding:25px 0 34px;border-bottom:1px solid var(--bag-line);font-size:14px;line-height:1.6}
.bag-shipping b{display:block;font-size:15px}.bag-shipping a{font-weight:800;color:var(--bag-ink);text-underline-offset:3px}
.bag-summary{padding-top:28px}.bag-summary h2{font-size:24px;letter-spacing:-.05em;margin:0 0 12px}
.bag-promo{width:100%;display:flex;justify-content:space-between;align-items:center;padding:21px 0;border:0;border-bottom:1px solid var(--bag-line);background:none;font:800 14px Manrope,Arial,sans-serif;text-align:left}
.bag-promo b{font-size:28px;font-weight:300;line-height:1;transition:transform .2s}.bag-promo[aria-expanded=true] b{transform:rotate(45deg)}
.bag-promo-open{display:none;border-bottom:1px solid var(--bag-line);padding:17px 0;gap:8px}.bag-promo-open.open{display:flex}
.bag-promo-open input{min-width:0;flex:1;border:1px solid #bbb;border-radius:7px;padding:11px;font:13px Manrope}.bag-promo-open button{border:0;background:var(--bag-ink);color:#fff;border-radius:7px;padding:0 15px;font:700 12px Manrope}
.bag-totals{padding:25px 0 8px;display:grid;gap:12px}.bag-totals p{display:flex;justify-content:space-between;margin:0;font-size:14px;color:var(--bag-muted)}.bag-totals p:last-child{font-weight:800;color:var(--bag-ink)}
.bag-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:45px}.bag-actions button{min-height:58px;border-radius:32px;font:800 13px Manrope,Arial,sans-serif}.bag-pay{background:#fff;border:1px solid #bbb;color:#888}.bag-checkout{border:0;background:var(--bag-ink);color:#fff}.bag-checkout:disabled{opacity:.4;cursor:not-allowed}
.bag-terms{text-align:center;color:var(--bag-muted);font-size:10px;line-height:1.6;margin:22px auto 0;max-width:315px}.bag-terms a{color:var(--bag-ink)}
.bag-toast{position:fixed;z-index:80;bottom:94px;left:50%;transform:translate(-50%,12px);padding:12px 17px;border-radius:999px;background:var(--bag-ink);color:#fff;font:700 12px Manrope;opacity:0;transition:.2s;pointer-events:none}.bag-toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:851px){
  .desktop-bag-header{height:82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 3.3vw;border-bottom:1px solid #eee;background:#fff}
  .desktop-bag-header a{color:var(--bag-ink);text-decoration:none}.desktop-bag-brand{font-weight:800;font-size:20px;letter-spacing:-.08em}.desktop-bag-nav{display:flex;gap:28px}.desktop-bag-nav a{font-size:14px;font-weight:800}.desktop-bag-actions{justify-self:end;display:flex;gap:15px}.desktop-bag-actions a{font-size:12px;font-weight:800}
  .bag-screen{padding:74px 30px 100px}.bag-inner{max-width:1120px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr);column-gap:64px;align-items:start}.bag-screen h1{grid-column:1}.bag-items{grid-column:1}.bag-shipping{grid-column:1}.bag-summary{grid-column:2;grid-row:1/5;position:sticky;top:30px;padding-top:0}.bag-summary h2{font-size:29px;margin-bottom:24px}.bag-actions{grid-template-columns:1fr;margin-top:30px}.bag-pay{display:none}.bag-terms{text-align:left;margin-left:0}.bag-item{grid-template-columns:180px minmax(0,1fr)}.bag-item-image{width:180px;height:180px}.bag-toast{bottom:35px}
}
@media(max-width:390px){.bag-screen{padding:66px 21px 125px}.bag-item{grid-template-columns:128px minmax(0,1fr)}.bag-item-image{width:128px;height:128px}.bag-actions{grid-template-columns:1fr}}
