:root{--cart-black:#111;--cart-text:#363636;--cart-muted:#858585;--cart-line:#dedede;--cart-soft:#f4f4f4;--cart-white:#fff}.cart-fab,.cart-modal,.cart-modal *{box-sizing:border-box}.cart-fab,.cart-modal button,.cart-modal input,.cart-modal textarea{font-family:inherit}.cart-fab{position:fixed;z-index:900;right:30px;bottom:30px;display:flex;width:64px;height:64px;align-items:center;justify-content:center;border:1px solid var(--cart-black);border-radius:50%;color:#fff;background:var(--cart-black);box-shadow:0 12px 30px rgba(0,0,0,.16);cursor:pointer;transition:.2s}.cart-fab:hover{color:var(--cart-black);background:#fff}.cart-fab[hidden],.cart-modal[hidden]{display:none!important}.cart-fab svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cart-fab__count{position:absolute;top:-5px;right:-5px;min-width:24px;height:24px;padding:0 6px;border:2px solid #fff;border-radius:20px;color:#fff;background:var(--cart-black);font-size:12px;font-weight:600;line-height:20px;text-align:center}.cart-fab--pulse{animation:cart-pulse .35s ease}@keyframes cart-pulse{50%{transform:scale(1.08)}}
.cart-modal{position:fixed;z-index:1000;inset:0;color:var(--cart-text)}.cart-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.48)}.cart-dialog{position:relative;width:min(760px,calc(100% - 30px));max-height:calc(100vh - 48px);margin:24px auto;padding:38px 40px 40px;overflow-y:auto;border:1px solid var(--cart-line);border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.14);outline:none}.cart-dialog__header{padding-right:50px}.cart-dialog__eyebrow{margin:0 0 9px;color:var(--cart-muted);font-size:13px;font-weight:400}.cart-dialog h2{margin:0;color:var(--cart-black);font-size:30px;font-weight:500;line-height:1.15;letter-spacing:-.02em}.cart-dialog__close,.cart-item__remove{display:flex;align-items:center;justify-content:center;border:1px solid var(--cart-line);border-radius:50%;color:var(--cart-black);background:#fff;cursor:pointer;transition:.2s}.cart-dialog__close:hover,.cart-item__remove:hover{border-color:var(--cart-black);background:var(--cart-soft)}.cart-dialog__close{position:absolute;top:28px;right:28px;width:42px;height:42px;padding:0 0 3px;font-size:27px;line-height:1}
.cart-items{margin:30px 0 38px;border-top:1px solid var(--cart-line)}.cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto 38px;gap:18px;align-items:center;min-height:76px;padding:15px 0;border-bottom:1px solid var(--cart-line)}.cart-item__name{color:var(--cart-black);font-size:16px;font-weight:400;line-height:1.4}.cart-item__quantity{display:flex;align-items:center;overflow:hidden;border:1px solid #cfcfcf;border-radius:22px;background:#fff}.cart-quantity__button{width:36px;height:36px;padding:0;border:0;color:var(--cart-black);background:transparent;font-size:18px;line-height:36px;cursor:pointer}.cart-quantity__button:hover{background:var(--cart-soft)}.cart-quantity__input{width:42px;height:36px;padding:0 3px;border:0;color:var(--cart-black);background:transparent;font-size:14px;text-align:center;outline:none;-moz-appearance:textfield}.cart-quantity__input::-webkit-inner-spin-button,.cart-quantity__input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.cart-item__remove{width:38px;height:38px;padding:0 0 3px;font-size:24px;line-height:1}
.cart-form{padding-top:0}.cart-form h3{margin:0 0 22px;color:var(--cart-black);font-size:22px;font-weight:500}.cart-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cart-form label{display:grid;gap:8px;color:var(--cart-muted);font-size:13px;font-weight:400}.cart-form__wide{grid-column:1/-1}.cart-form input,.cart-form textarea{width:100%;border:1px solid #cfcfcf;border-radius:14px;padding:13px 15px;color:var(--cart-black);background:#fff;font-size:15px;outline:none;transition:border-color .2s}.cart-form input:focus,.cart-form textarea:focus{border-color:var(--cart-black)}.cart-form textarea{resize:vertical}.cart-form__status{min-height:20px;margin:16px 0 8px;color:var(--cart-muted);font-size:14px}.cart-form__status--error{color:#a52626}.cart-form__submit{width:100%;padding:14px 22px;border:1px solid var(--cart-black);border-radius:25px;color:#fff;background:var(--cart-black);font-size:15px;font-weight:500;cursor:pointer;transition:.2s}.cart-form__submit:hover{color:var(--cart-black);background:#fff}.cart-form__submit:disabled{cursor:wait;opacity:.55}body.cart-is-open{overflow:hidden}
@media(max-width:680px){.cart-fab{right:18px;bottom:18px;width:58px;height:58px}.cart-dialog{max-height:calc(100vh - 20px);margin:10px auto;padding:28px 20px 26px;border-radius:20px}.cart-dialog__close{top:18px;right:18px}.cart-item{grid-template-columns:minmax(0,1fr) 38px;gap:12px}.cart-item__quantity{grid-column:1/2;justify-self:start}.cart-item__remove{grid-column:2;grid-row:1/3}.cart-form__grid{grid-template-columns:1fr}.cart-form__wide{grid-column:auto}}@media(prefers-reduced-motion:reduce){.cart-fab,.cart-modal *{animation-duration:.01ms!important;transition-duration:.01ms!important}}
