.bag-scrim{position:fixed;inset:0;z-index:80;background:#1c140e59;opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility 0s linear .3s}.bag-scrim.is-open{opacity:1;visibility:visible;transition:opacity .3s var(--ease)}.bag{position:fixed;left:0;right:0;bottom:0;z-index:81;display:flex;flex-direction:column;max-height:92vh;background:var(--ground);color:var(--ink);font:400 14px/1.55 var(--font-body);transform:translateY(100%);visibility:hidden;transition:transform .35s var(--ease),visibility 0s linear .35s}@media(min-width:900px){.bag{left:auto;top:0;width:min(420px,100%);max-height:none;transform:translate(100%)}}.bag.is-open{transform:none;visibility:visible;transition:transform .35s var(--ease)}@media(prefers-reduced-motion:reduce){.bag,.bag-scrim{transition-duration:.01ms}}.bag__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px var(--gutter);border-bottom:1px solid var(--line)}.bag__head h2{margin:0;font:400 15px/1.4 var(--font-body);color:inherit}.bag__close{display:inline-flex;padding:6px;margin:-6px;border:0;background:none;color:inherit;cursor:pointer}.bag__scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.bag__items{list-style:none;margin:0;padding:0 var(--gutter)}.bag__line{display:grid;grid-template-columns:62px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.bag__line:last-child{border-bottom:0}.bag__line.is-new{animation:bag-added 1.8s var(--ease)}@keyframes bag-added{0%,40%{background:var(--pearl-200)}to{background:transparent}}@media(prefers-reduced-motion:reduce){.bag__line.is-new{animation:none}}.bag__thumb{width:62px;aspect-ratio:2 / 3;object-fit:cover;background:var(--pearl-200)}.bag__info{display:grid;align-content:start;gap:2px}.bag__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.bag__name{font-family:var(--font-header);font-style:italic;font-size:20px;line-height:1.15;color:var(--ink)}.bag__price{font-size:13px;white-space:nowrap}.bag__meta{margin:0;font-size:12.5px;color:var(--soft)}.bag__controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.bag__qty{display:inline-flex;align-items:center;border:1px solid var(--line)}.bag__qty button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:none;font-size:16px;line-height:1;cursor:pointer}.bag__qty span{min-width:24px;text-align:center;font-size:13px;font-weight:600}.bag__remove{padding:0;border:0;background:none;font-size:12px;color:var(--soft);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.bag__empty{margin:0;padding:40px var(--gutter);text-align:center;color:var(--ink-700)}.bag__empty a{text-decoration:underline;text-underline-offset:2px}.bag__foot{padding:16px var(--gutter) calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.bag__total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:14px;font-weight:600}.bag__checkout{display:block;width:100%;margin-top:14px;min-height:52px;padding:14px 20px;border:0;background:var(--chilli);color:#fff;font:600 14px/1.4 var(--font-body);letter-spacing:.02em;cursor:pointer;transition:background .2s}@media(hover:hover){.bag__checkout:hover{background:var(--chilli-600)}}.bag__checkout:active{background:var(--chilli-700)}.bag.is-empty .bag__total,.bag.is-empty .bag__checkout,.bag.is-empty .bag__keep{display:none}.bag.is-empty .bag__promises{margin-top:0;padding-top:4px;border-top:0}.bag__keep{display:block;width:100%;margin-top:12px;padding:4px 0;border:0;background:none;font-size:13px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.bag__promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);text-align:center}.bag__promise{display:grid;justify-items:center;gap:6px;font-size:10.5px;line-height:1.3;color:var(--ink-700)}.bag__promise svg{width:24px;height:24px;color:var(--ink)}.bag__promise span{display:block;white-space:nowrap}@media(max-width:359px){.bag__promises{gap:6px}.bag__promise{font-size:9.5px}}[data-bag-open]{position:relative}.bag-count{position:absolute;top:-1px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--chilli);color:#fff;font:600 10px/16px var(--font-body);text-align:center}.bag-count[hidden]{display:none}
