body{font-family:-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);margin:0;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px));min-height:100vh;display:flex;justify-content:center}.main-wrapper{width:100%;max-width:600px;background:var(--bg-primary);min-height:100vh;position:relative;display:flex;flex-direction:column;border-left:1px solid var(--border-primary);border-right:1px solid var(--border-primary)}.cart-list{padding:var(--sp-5);flex:1;width:100%;box-sizing:border-box}.cart-list.is-empty{display:flex;align-items:center;justify-content:center}.cart-empty{text-align:center;color:var(--text-tertiary);padding-bottom:var(--sp-8)}.cart-empty>.material-icons{font-size:48px;display:block;margin:0 auto var(--sp-2)}.cart-empty__back{display:inline-flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-5);padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-full, 999px);background:var(--accent);color:#fff;font-weight:var(--fw-bold);font-size:var(--fs-sm);text-decoration:none}.cart-empty__back .material-icons{font-size:18px}.cart-item{display:flex;gap:0;align-items:stretch;padding:0;margin-bottom:var(--sp-2);background:var(--bg-card, var(--bg-secondary));border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden}.cart-item.is-custom{border-left:3px solid var(--accent)}.item-img{width:104px;min-height:104px;height:auto;align-self:stretch;border-radius:0;flex-shrink:0;background:var(--bg-tertiary)}.item-img.ff-media-wrap .material-icons{font-size:40px}.item-details{flex:1;min-width:0;padding:var(--sp-3)}.item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--sp-3)}.item-name{font-weight:var(--fw-bold);font-size:var(--fs-base);line-height:1.25;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.item-badge{font-size:9px;font-weight:var(--fw-bold);letter-spacing:.4px;text-transform:uppercase;color:#6f50d6;background:color-mix(in srgb,#6f50d6 12%,transparent);border-radius:var(--radius-sm);padding:2px 6px}.item-price{font-weight:var(--fw-bold);font-size:var(--fs-base);color:var(--text-primary);white-space:nowrap;text-align:right;line-height:1.25}.item-unit{font-size:var(--fs-xs);font-weight:400;color:var(--text-tertiary)}.item-comp{font-size:var(--fs-xs);color:var(--text-secondary);margin-top:2px;line-height:1.4}.item-formula{list-style:none;margin:2px 0 0;padding:0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:1.45}.item-formula li{display:flex;gap:6px;align-items:baseline}.item-formula li:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--accent);flex-shrink:0;position:relative;top:-2px}.item-step{color:var(--text-tertiary);font-size:10px;text-transform:uppercase;letter-spacing:.3px;min-width:0}.item-step:after{content:" ·"}.item-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-2)}.qty-controls{display:flex;align-items:center;gap:6px}.qty-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-secondary);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--dur-std);padding:0}.qty-btn .material-icons{font-size:16px}.qty-btn:active{transform:scale(.9)}.qty-btn.remove{border-color:var(--accent);color:var(--accent)}.qty-count{font-weight:var(--fw-bold);font-size:var(--fs-base);min-width:18px;text-align:center}.edit-btn{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 10px;border-radius:var(--radius-xl);border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--fs-xs);font-weight:var(--fw-semi);cursor:pointer;transition:var(--dur-std)}.edit-btn .material-icons{font-size:14px;color:var(--accent)}.edit-btn:hover{border-color:var(--accent)}.edit-btn:active{transform:scale(.96)}.cart-truck{display:flex;align-items:center;gap:8px;margin-bottom:var(--sp-3);padding-bottom:var(--sp-2);border-bottom:2px solid var(--accent)}.cart-truck .material-icons{color:var(--accent)}.cart-truck-name{font-weight:800;font-size:var(--fs-md)}@media(max-width:400px){.item-img{width:84px;min-height:84px}.item-img.ff-media-wrap .material-icons{font-size:32px}.edit-btn span:not(.material-icons){display:none}.edit-btn{padding:0 10px}}.checkout-bar{position:fixed;bottom:var(--sp-11);left:50%;transform:translate(-50%);width:100%;max-width:600px;background:var(--bg-secondary);border-top:1px solid var(--border-primary);padding:15px var(--sp-5);box-sizing:border-box;display:flex;flex-direction:column;gap:var(--sp-3);z-index:200;max-height:min(88vh,calc(100dvh - var(--sp-11) - 8px));overflow-y:auto;overscroll-behavior:contain}.pay-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin:-4px 0 0}.pay-head-title{display:inline-flex;align-items:center;gap:6px;font-weight:var(--fw-bold);font-size:var(--fs-sm)}.pay-head-title .material-icons{font-size:16px;color:var(--success)}.pay-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.pay-close .material-icons{font-size:18px}.checkout-bar.is-paying #subtotal-row,.checkout-bar.is-paying #fee-row,.checkout-bar.is-paying #loyalty-discount-row,.checkout-bar.is-paying #notes-row,.checkout-bar.is-paying #loyalty-section,.checkout-bar.is-paying #free-order-banner{display:none!important}.checkout-bar.is-paying{gap:var(--sp-2)}.checkout-bar.is-paying #payment-element-container{margin-bottom:4px!important}.checkout-bar.is-paying .btn-pay{padding:12px}.total-row{display:flex;justify-content:space-between;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.btn-pay{width:100%;padding:var(--sp-4);background:var(--success);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--fs-lg);font-weight:var(--fw-bold);cursor:pointer;text-align:center;transition:var(--dur-slow)}.btn-pay:disabled{opacity:.6;cursor:not-allowed;background:var(--text-tertiary)}.btn-pay:active{transform:scale(.98)}@media(min-width:768px){.main-wrapper,.checkout-bar{max-width:900px}.cart-list{max-width:700px;margin:0 auto}}@media(min-width:1024px){.main-wrapper{padding-bottom:0!important}body{padding-bottom:var(--sp-5)!important}.cart-list{max-width:750px;margin:0 auto}.checkout-bar{bottom:0!important;max-width:750px!important;border-radius:var(--radius-lg) 14px 0 0}}.totals-sub{display:flex;flex-direction:column;gap:2px}.total-row--sub{font-weight:400;font-size:13px;color:var(--text-secondary)}.pickup-bar{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2)}.pickup-field{flex:1 1 auto;min-width:0;display:flex;align-items:center;height:40px;border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);overflow:hidden}.pickup-label{display:inline-flex;align-items:center;justify-content:center;width:38px;height:100%;flex:none;border-right:1px solid var(--border-primary);color:var(--accent);cursor:pointer}.pickup-label .material-icons{font-size:18px}.pickup-select{flex:1 1 auto;min-width:0;height:100%;border:0;background:transparent;color:var(--text-primary);font-size:var(--fs-base);font-weight:var(--fw-bold);padding:0 12px;box-sizing:border-box;outline:none}.pickup-hint{font-size:var(--fs-xs);color:var(--text-tertiary);margin:-6px 0 0;line-height:1.35}.notes-btn{position:relative;flex:none;width:40px;height:40px;min-width:0;min-height:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer}.notes-btn .material-icons{font-size:20px}.notes-btn[aria-expanded=true],.notes-btn:focus-visible{border-color:var(--accent);color:var(--accent);outline:none}.notes-dot{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:1.5px solid var(--bg-secondary)}.notes-dot[hidden],.notes-row[hidden]{display:none}.notes-input{width:100%;border:1px solid var(--border-primary);border-radius:10px;padding:10px 12px;background:var(--bg-secondary);color:var(--text-primary);box-sizing:border-box;font:inherit;font-size:13px;resize:none;outline:none}.notes-input:focus{border-color:var(--accent)}.notes-counter{text-align:right;font-size:11px;color:var(--text-tertiary);margin-top:2px}.checkout-bar.is-paying .pickup-bar,.checkout-bar.is-paying .pickup-hint,.checkout-bar.is-paying .notes-row{display:none!important}
