.cft-bag{max-width:1280px;margin:auto;padding:28px 20px 48px;min-height:55vh}
.cft-bag[aria-busy=true]{cursor:progress}.cft-bag [hidden]{display:none!important}
.cft-bag-heading{margin-bottom:20px}.cft-bag-heading .cft-eyebrow{margin-bottom:8px}
.cft-bag h1{font-size:32px;line-height:1.15;font-weight:600;letter-spacing:-.025em}
.cft-bag-layout{display:grid;gap:28px;align-items:start}
.cft-bag-select-all{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--cft-stone);font-size:12px}
.cft-bag-choice{display:inline-flex;gap:10px;align-items:center;min-height:44px;cursor:pointer;flex-shrink:0}
.cft-bag-choice input{appearance:none;width:20px;height:20px;border:1px solid var(--cft-ink);border-radius:50%;margin:0;cursor:pointer;background:transparent}
.cft-bag-choice input:checked{background:var(--cft-ink);box-shadow:inset 0 0 0 4px var(--cft-white)}
.cft-bag-choice input:indeterminate{background:var(--cft-stone);box-shadow:inset 0 0 0 5px var(--cft-white)}
.cft-bag-row{display:grid;grid-template-columns:24px 86px minmax(0,1fr);gap:12px;padding:20px 0;border-bottom:1px solid var(--cft-stone)}
.cft-bag-row>.cft-bag-choice{align-items:flex-start;padding-top:5px;min-width:24px}
.cft-bag-image{aspect-ratio:1/1;overflow:hidden;background:#fff;display:block}.cft-bag-image img{width:100%;height:100%;object-fit:contain}
.cft-bag-copy{min-width:0}.cft-bag-copy h2{font-size:15px;line-height:1.4;font-weight:600;overflow-wrap:anywhere;margin-bottom:6px}
.cft-bag-specs{font-size:11px;line-height:1.6}.cft-bag-specs span{display:block}.cft-bag-unit{font-size:11px;margin-top:7px!important}
.cft-bag-line-price{font-size:13px;font-weight:600;margin-top:6px!important}.cft-bag-line-price s{font-weight:400;margin-right:8px;font-size:11px}
.cft-bag-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px}
.cft-bag-quantity{display:flex;align-items:center;border:1px solid var(--cft-ink);height:38px;max-width:128px}
.cft-bag-quantity button{border:0;background:transparent;padding:0;width:44px;min-width:44px;height:44px;font-size:18px}
.cft-bag-quantity input{width:32px;min-width:0;text-align:center;appearance:textfield;border:0;background:transparent;font:inherit;font-size:12px;padding:0;height:36px;border-radius:0}
.cft-bag-quantity input::-webkit-inner-spin-button{appearance:none}
.cft-bag-remove{border:0;padding:0;background:transparent;text-decoration:underline;text-underline-offset:4px;font-size:11px;min-height:44px}
.cft-bag-discount-label{font-size:11px;margin-top:6px!important}
.cft-bag-summary{padding:20px;background:#eeebe4}.cft-bag-summary h2{font-size:19px;line-height:1.3;font-weight:600;margin-bottom:16px}
.cft-bag-summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:12px;line-height:1.5;margin:9px 0}
.cft-bag-summary-row span:last-child{text-align:right;white-space:nowrap}
.cft-bag-total{font-size:17px;font-weight:600;padding-top:14px;margin-top:14px;border-top:1px solid #d9d5cc}
.cft-bag-summary-note{font-size:11px;line-height:1.6;margin-top:12px!important}
.cft-bag-actions{display:grid;gap:10px;margin-top:18px}.cft-bag-actions .cft-button{width:100%;min-height:48px;font-size:12px}
.cft-bag-selection-caption{font-size:11px;margin-bottom:14px!important}
.cft-bag-status{font-size:12px;line-height:1.6;margin:12px 0;min-height:0}.cft-bag-status:empty{display:none}
.cft-bag-empty{padding:28px 20px;background:#eeebe4;max-width:620px}.cft-bag-empty h2{font-size:24px;font-weight:600;line-height:1.25;margin-bottom:12px}.cft-bag-empty p{font-size:14px;margin-bottom:20px}.cft-bag-empty .cft-button{min-height:48px}
.cft-bag-no-script{font-size:12px;margin:16px 0}.cft-bag-sample-note{font-size:12px;margin-bottom:20px}
@media(min-width:750px){.cft-bag{padding:40px 48px 64px}.cft-bag h1{font-size:44px}.cft-bag-heading{margin-bottom:28px}.cft-bag-layout{grid-template-columns:minmax(0,1fr) 340px;gap:48px}.cft-bag-row{grid-template-columns:28px 128px minmax(0,1fr);gap:20px;padding:24px 0}.cft-bag-copy h2{font-size:17px}.cft-bag-specs,.cft-bag-unit{font-size:12px}.cft-bag-line-price{font-size:15px}.cft-bag-summary{padding:24px;position:sticky;top:24px}.cft-bag-controls{gap:20px}.cft-bag-summary-row{font-size:13px}.cft-bag-total{font-size:18px}.cft-bag-choice{gap:12px}}
@media(max-width:360px){.cft-bag{padding-inline:16px}.cft-bag-row{grid-template-columns:22px 72px minmax(0,1fr);gap:10px}.cft-bag-controls{gap:2px 10px}}

.cft-bag .cft-button-orange{background:var(--cft-orange,#E87524);border-color:var(--cft-orange,#E87524);color:var(--cft-ink)}
.cft-bag button:disabled{opacity:.45;cursor:wait}.cft-bag button:disabled[data-cart-checkout]{cursor:not-allowed}.cft-bag input:focus-visible,.cft-bag button:focus-visible{outline:2px solid var(--cft-ink);outline-offset:3px}
