@keyframes fcw-slideUpFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fcw-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fcw-scaleUpFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes fcw-badgePop{0%{transform:scale(0)}50%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes fcw-slideOutRight{to{opacity:0;transform:translateX(80px);height:0;padding:0;margin:0}}.fcw-floating-btn{position:fixed;bottom:100px;right:24px;width:60px;height:60px;border-radius:50%;border:1px solid hsla(0,0%,100%,.9);background:hsla(0,0%,100%,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 28px rgba(122,63,140,.18);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1000;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1);animation:fcw-slideUpFadeIn .5s cubic-bezier(.22,1,.36,1) both;color:#7c3aed}.fcw-floating-btn:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(122,63,140,.24)}.fcw-floating-btn:active{transform:translateY(-1px)}.fcw-floating-btn:focus-visible{outline:2px solid rgba(122,63,140,.45);outline-offset:3px}.fcw-floating-btn .fcw-cart-icon{width:24px;height:24px;display:block}.fcw-floating-btn .fcw-badge{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#db2777;color:#fff;font-size:11px;font-weight:700;font-family:Poppins,Work Sans,sans-serif;box-shadow:0 2px 8px rgba(196,91,106,.35);animation:fcw-badgePop .3s cubic-bezier(.22,1,.36,1)}.fcw-floating-btn .fcw-badge,.fcw-modal-overlay{display:flex;align-items:center;justify-content:center}.fcw-modal-overlay{position:fixed;inset:0;background:rgba(36,24,40,.42);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:10000;padding:24px;animation:fcw-fadeIn .3s cubic-bezier(.22,1,.36,1)}.fcw-modal-content{background:hsla(0,0%,100%,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid hsla(0,0%,100%,.85);border-radius:20px;box-shadow:0 20px 56px rgba(122,63,140,.16),0 4px 16px rgba(36,24,40,.06);width:100%;max-width:min(94vw,960px);max-height:85vh;display:flex;flex-direction:column;animation:fcw-scaleUpFadeIn .3s cubic-bezier(.22,1,.36,1);overflow:hidden;font-family:Poppins,Work Sans,sans-serif;color:#1c1917}.fcw-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 28px 18px;border-bottom:1px solid rgba(124,58,237,.14);background:linear-gradient(180deg,rgba(255,249,252,.9),rgba(255,255,255,.6))}.fcw-modal-header .fcw-header-content{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1}.fcw-modal-header .fcw-title{margin:0;font-family:Prata,Georgia,serif;font-size:1.35rem;font-weight:400;color:#1c1917;letter-spacing:.01em;display:flex;align-items:center;gap:10px;line-height:1.2}.fcw-modal-header .fcw-title-icon{width:22px;height:22px;color:#7c3aed;flex-shrink:0}.fcw-modal-header .fcw-items-count{font-size:.8125rem;font-weight:500;color:#78716c;padding-left:32px}.fcw-modal-header .fcw-close-btn{width:40px;height:40px;margin-top:-2px;border-radius:12px;border:1px solid rgba(124,58,237,.14);background:hsla(0,0%,100%,.9);color:#44403c;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s cubic-bezier(.22,1,.36,1),color .2s cubic-bezier(.22,1,.36,1),border-color .2s cubic-bezier(.22,1,.36,1)}.fcw-modal-header .fcw-close-btn svg{width:18px;height:18px}.fcw-modal-header .fcw-close-btn:hover{background:rgba(168,137,188,.14);color:#7c3aed;border-color:rgba(122,63,140,.28)}.fcw-modal-header .fcw-close-btn:focus-visible{outline:2px solid rgba(122,63,140,.45);outline-offset:2px}.fcw-modal-body{flex:1 1;overflow-y:auto;padding:20px 28px;min-height:200px}.fcw-modal-body::-webkit-scrollbar{width:6px}.fcw-modal-body::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.fcw-modal-body::-webkit-scrollbar-thumb{background:rgba(122,63,140,.2);border-radius:4px}.fcw-items-list{display:grid;grid-gap:14px;gap:14px}.fcw-items--single{grid-template-columns:1fr;justify-items:start}.fcw-items--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fcw-item-card{display:grid;grid-template-columns:96px minmax(0,1fr);grid-gap:0;gap:0;align-items:stretch;background:hsla(0,0%,100%,.88);border:1px solid rgba(124,58,237,.14);border-radius:14px;box-shadow:0 4px 16px rgba(122,63,140,.06);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1),border-color .3s cubic-bezier(.22,1,.36,1);position:relative;min-width:0;min-height:118px;overflow:hidden}.fcw-item-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(122,63,140,.12);border-color:rgba(122,63,140,.22)}.fcw-item-card.removing{animation:fcw-slideOutRight .3s ease forwards}.fcw-item-card .fcw-item-img-wrap{position:relative;width:96px;min-height:118px;flex-shrink:0;align-self:stretch}.fcw-item-card .fcw-item-img{width:100%;height:100%;min-height:118px;overflow:hidden;background:linear-gradient(135deg,#faf5fb,#f3eaf6);border:none;border-right:1px solid rgba(124,58,237,.14)}.fcw-item-card .fcw-item-img img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1)}.fcw-item-card .fcw-item-img.loaded img{opacity:1}.fcw-item-card:hover .fcw-item-img img{transform:scale(1.05)}.fcw-item-card .fcw-item-body{display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:12px 12px 10px;min-width:0}.fcw-item-card .fcw-item-top{display:flex;align-items:flex-start;gap:8px;min-width:0}.fcw-item-card .fcw-remove-btn{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1px solid rgba(124,58,237,.14);background:hsla(0,0%,100%,.96);color:#44403c;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.72;transition:all .22s cubic-bezier(.22,1,.36,1);box-shadow:0 2px 8px rgba(36,24,40,.08);margin-left:auto}.fcw-item-card .fcw-remove-btn svg{width:13px;height:13px}.fcw-item-card .fcw-remove-btn:hover{opacity:1;color:#fff;background:#7c3aed;border-color:#7c3aed}.fcw-item-card .fcw-remove-btn:focus-visible{opacity:1;outline:2px solid rgba(122,63,140,.45);outline-offset:2px}.fcw-item-card:hover .fcw-remove-btn{opacity:1}.fcw-item-card .fcw-item-details{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1 1}.fcw-item-card .fcw-item-name{margin:0;font-family:Prata,Georgia,serif;font-weight:400;font-size:.98rem;color:#1c1917;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fcw-item-card .fcw-item-category{font-size:.68rem;font-weight:600;color:#7c3aed;background:rgba(168,137,188,.16);padding:2px 8px;border-radius:999px;width:-moz-fit-content;width:fit-content;letter-spacing:.02em}.fcw-item-card .fcw-unit-price{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fcw-item-card .fcw-unit-price .price-label{font-size:.72rem;color:#78716c;font-weight:500}.fcw-item-card .fcw-unit-price .price-value{font-size:.82rem;font-weight:600;color:#1c1917}.fcw-item-card .fcw-item-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid rgba(124,58,237,.14)}.fcw-item-card .fcw-qty-section{display:flex;flex-direction:row;align-items:center;gap:8px}.fcw-item-card .fcw-qty-section .qty-label{font-size:.68rem;color:#78716c;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.fcw-item-card .fcw-qty-controls{display:flex;align-items:center;gap:0;background:rgba(168,137,188,.1);border-radius:8px;padding:2px;border:1px solid rgba(124,58,237,.14)}.fcw-item-card .fcw-qty-controls .qty-btn{width:28px;height:28px;border:none;background:rgba(0,0,0,0);color:#44403c;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s cubic-bezier(.22,1,.36,1),color .2s cubic-bezier(.22,1,.36,1)}.fcw-item-card .fcw-qty-controls .qty-btn svg{width:12px;height:12px}.fcw-item-card .fcw-qty-controls .qty-btn:hover:not(:disabled){background:rgba(122,63,140,.12);color:#7c3aed}.fcw-item-card .fcw-qty-controls .qty-btn:disabled{opacity:.35;cursor:not-allowed}.fcw-item-card .fcw-qty-controls .qty-btn:focus-visible{outline:2px solid rgba(122,63,140,.45);outline-offset:1px}.fcw-item-card .fcw-qty-controls .qty-value{min-width:28px;text-align:center;font-size:.85rem;font-weight:700;color:#1c1917}.fcw-item-card .fcw-subtotal{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.fcw-item-card .fcw-subtotal .subtotal-label{font-size:.65rem;font-weight:600;color:#78716c;letter-spacing:.04em;text-transform:uppercase}.fcw-item-card .fcw-subtotal .subtotal-value{font-size:.95rem;font-weight:700;color:#7c3aed;white-space:nowrap}.fcw-item-card--grid{grid-template-columns:96px minmax(0,1fr);min-height:118px}.fcw-item-card--grid .fcw-item-img-wrap{width:96px}.fcw-item-card--single{grid-template-columns:110px minmax(0,1fr);min-height:132px;max-width:560px}.fcw-item-card--single .fcw-item-img-wrap{width:110px;min-height:132px}.fcw-item-card--single .fcw-item-img{min-height:132px}.fcw-item-card--single .fcw-item-body{padding:14px 16px 12px;gap:12px}.fcw-item-card--single .fcw-item-name{font-size:1.1rem}.fcw-item-card--single .fcw-item-category{font-size:.72rem;padding:3px 9px}.fcw-item-card--single .fcw-unit-price .price-label{font-size:.75rem}.fcw-item-card--single .fcw-unit-price .price-value{font-size:.9rem}.fcw-item-card--single .fcw-qty-controls .qty-btn{width:30px;height:30px}.fcw-item-card--single .fcw-subtotal .subtotal-value{font-size:1.05rem}.fcw-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;min-height:260px}.fcw-empty-state .empty-icon{width:64px;height:64px;margin-bottom:16px;color:#a78bfa;opacity:.7}.fcw-empty-state .empty-icon svg{width:100%;height:100%}.fcw-empty-state .empty-text{font-family:Prata,Georgia,serif;font-size:1.15rem;font-weight:400;color:#1c1917;margin:0 0 6px}.fcw-empty-state .empty-hint{margin:0;font-size:.85rem;color:#78716c;max-width:240px;line-height:1.45}.fcw-modal-footer{padding:18px 28px 22px;border-top:1px solid rgba(124,58,237,.14);background:linear-gradient(180deg,rgba(250,245,251,.85),rgba(255,255,255,.95));display:flex;flex-direction:column;gap:14px}.fcw-modal-footer .fcw-summary{display:flex;flex-direction:column;gap:8px;padding:14px 18px;background:rgba(168,137,188,.08);border-radius:12px;border:1px solid rgba(124,58,237,.14)}.fcw-modal-footer .fcw-summary-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.fcw-modal-footer .fcw-summary-row .summary-label{font-size:.85rem;font-weight:500;color:#44403c}.fcw-modal-footer .fcw-summary-row .summary-value{font-size:.9rem;font-weight:600;color:#1c1917;text-align:right;white-space:nowrap}.fcw-modal-footer .fcw-total-row{padding-top:10px;margin-top:2px;border-top:1px dashed rgba(122,63,140,.18)}.fcw-modal-footer .fcw-total-row .total-label{font-size:1rem;font-weight:600;color:#1c1917;display:inline-flex;align-items:center;gap:8px}.fcw-modal-footer .fcw-total-row .fcw-total-icon{width:18px;height:18px;color:#7c3aed}.fcw-modal-footer .fcw-total-row .total-value{font-size:1.35rem;font-weight:700;color:#7c3aed;white-space:nowrap}.fcw-modal-footer .fcw-footer-actions{display:flex;align-items:stretch;gap:12px}.fcw-modal-footer .fcw-continue-btn{flex:1 1;min-width:0;padding:12px 16px;border-radius:999px;border:1.5px solid rgba(122,63,140,.28);background:hsla(0,0%,100%,.92);color:#1c1917;font-size:.82rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .25s cubic-bezier(.22,1,.36,1),border-color .25s cubic-bezier(.22,1,.36,1),color .25s cubic-bezier(.22,1,.36,1),transform .25s cubic-bezier(.22,1,.36,1)}.fcw-modal-footer .fcw-continue-btn:hover{background:rgba(168,137,188,.12);border-color:#7c3aed;color:#7c3aed}.fcw-modal-footer .fcw-continue-btn:focus-visible{outline:2px solid rgba(122,63,140,.45);outline-offset:2px}.fcw-modal-footer .fcw-checkout-btn{flex:1.15 1;min-width:0;padding:12px 18px;border-radius:999px;border:none;background:linear-gradient(120deg,#5b21b6,#7c3aed 55%,#a78bfa 88%,#e879a9);color:#fff;font-size:.82rem;font-weight:700;font-family:inherit;letter-spacing:.02em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 10px 22px rgba(122,63,140,.28);transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s cubic-bezier(.22,1,.36,1),filter .25s cubic-bezier(.22,1,.36,1)}.fcw-modal-footer .fcw-checkout-btn svg{width:15px;height:15px;flex-shrink:0}.fcw-modal-footer .fcw-checkout-btn:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 14px 28px rgba(122,63,140,.34)}.fcw-modal-footer .fcw-checkout-btn:active{transform:translateY(0)}.fcw-modal-footer .fcw-checkout-btn:focus-visible{outline:2px solid rgba(122,63,140,.45);outline-offset:3px}@media(min-width:641px)and (max-width:1023px){.fcw-floating-btn{bottom:110px}.fcw-modal-overlay{align-items:flex-end;padding:60px 0 0}.fcw-modal-content{width:100%;max-width:100%;max-height:calc(100vh - 5px);border-radius:20px 20px 0 0}.fcw-modal-body{flex:1 1 auto;min-height:0;-webkit-overflow-scrolling:touch}.fcw-modal-footer{flex-shrink:0}.fcw-items--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fcw-item-card--single{max-width:none}}@media(max-width:1024px){.fcw-modal-content{max-height:100vh}}@media(max-width:760px){.fcw-items--grid{grid-template-columns:1fr}}@media(max-width:640px){.fcw-floating-btn{width:54px;height:54px;bottom:90px;right:16px}.fcw-floating-btn .fcw-cart-icon{width:22px;height:22px}.fcw-floating-btn .fcw-badge{min-width:20px;height:20px;font-size:10px}.fcw-modal-overlay{padding:16px}.fcw-modal-content{max-width:100%;max-height:95vh}.fcw-modal-header{padding:18px 16px 14px;gap:12px}.fcw-modal-header .fcw-title{font-size:1.15rem}.fcw-modal-header .fcw-items-count{padding-left:30px;font-size:.75rem}.fcw-modal-header .fcw-close-btn{width:36px;height:36px}.fcw-modal-body{padding:12px}.fcw-items--grid{grid-template-columns:1fr}.fcw-item-card,.fcw-item-card--grid,.fcw-item-card--single{grid-template-columns:88px minmax(0,1fr);min-height:110px;max-width:none}.fcw-item-card .fcw-item-img-wrap,.fcw-item-card--grid .fcw-item-img-wrap,.fcw-item-card--single .fcw-item-img-wrap{width:88px;min-height:110px}.fcw-item-card .fcw-item-img,.fcw-item-card--grid .fcw-item-img,.fcw-item-card--single .fcw-item-img{min-height:110px}.fcw-item-card .fcw-item-body,.fcw-item-card--grid .fcw-item-body,.fcw-item-card--single .fcw-item-body{padding:10px 10px 9px;gap:8px}.fcw-item-card .fcw-item-name,.fcw-item-card--grid .fcw-item-name,.fcw-item-card--single .fcw-item-name{font-size:.92rem}.fcw-item-card .fcw-remove-btn,.fcw-item-card--grid .fcw-remove-btn,.fcw-item-card--single .fcw-remove-btn{opacity:1}.fcw-modal-footer{padding:14px 16px 18px}.fcw-modal-footer .fcw-footer-actions{flex-direction:column;gap:10px}.fcw-modal-footer .fcw-checkout-btn,.fcw-modal-footer .fcw-continue-btn{flex:none;width:100%}}@media(prefers-reduced-motion:reduce){.fcw-checkout-btn,.fcw-floating-btn,.fcw-item-card,.fcw-modal-content,.fcw-modal-overlay{animation:none!important;transition:none!important}.fcw-checkout-btn:hover,.fcw-floating-btn:hover,.fcw-item-card:hover{transform:none}}@media(hover:none)and (pointer:coarse){.fcw-item-card .fcw-remove-btn{opacity:1}.fcw-floating-btn:hover,.fcw-item-card:hover{transform:none}}