*{margin:0;padding:0;box-sizing:border-box}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(to bottom,#f8fafc,#fff);min-height:100vh}.cart-page{padding:3rem 0 4rem;min-height:80vh}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.cart-header{text-align:center;margin-bottom:3rem;animation:fadeInDown .6s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.cart-title{display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:2.5rem;font-weight:800;color:#1e293b;margin-bottom:.5rem}.cart-title svg{color:#3b82f6}.cart-subtitle{color:#64748b;font-size:1.125rem}.cart-content{display:grid;grid-template-columns:1fr 400px;gap:2rem;align-items:start}.cart-items-section{background:#fff;border-radius:1.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a;animation:fadeInLeft .6s ease}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.cart-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.cart-items-header h2{font-size:1.5rem;font-weight:700;color:#1e293b}.clear-cart-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fee2e2;color:#dc2626;border:none;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease}.clear-cart-btn:hover{background:#fecaca;transform:translateY(-2px)}.empty-cart{text-align:center;padding:4rem 2rem}.empty-cart-icon{margin-bottom:1.5rem;color:#cbd5e1;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-cart h3{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.empty-cart p{color:#64748b;margin-bottom:2rem}.empty-cart-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:2rem}.btn-shop{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;text-decoration:none;border-radius:.75rem;font-weight:600;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #3b82f640;position:relative;overflow:hidden}.btn-shop:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-shop:hover:before{width:300px;height:300px}.btn-shop:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 10px 25px #3b82f659}.btn-shop-primary{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b40}.btn-shop-primary:hover{box-shadow:0 10px 25px #f59e0b59}.btn-shop-secondary:hover{box-shadow:0 10px 25px #8b5cf659}.btn-shop svg{position:relative;z-index:1}.btn-shop{padding:.875rem 2rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;text-decoration:none;border-radius:.75rem;font-weight:600;transition:all .3s ease;display:inline-block}.btn-shop:hover{transform:translateY(-2px);box-shadow:0 10px 25px #3b82f64d}.btn-shop-secondary{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.btn-shop-secondary:hover{box-shadow:0 10px 25px #8b5cf64d}.cart-items-list{display:flex;flex-direction:column;gap:1rem}.cart-item{display:flex;gap:1.5rem;justify-content:space-between;padding:1.5rem;background:#f8fafc;border-radius:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideIn .5s cubic-bezier(.4,0,.2,1);border:2px solid transparent}@keyframes slideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}60%{transform:translateY(-5px) scale(1)}to{opacity:1;transform:translateY(0) scale(1)}}.cart-item:hover{background:#f1f5f9;border-color:#e2e8f0;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.cart-item-image{width:100px;height:100px;border-radius:.75rem;object-fit:cover;background:#fff;flex-shrink:0}.cart-item-details{flex:1;display:flex;flex-direction:column;gap:.5rem}.cart-item-name{font-size:1.125rem;font-weight:700;color:#1e293b;margin-bottom:.25rem}.cart-item-category{font-size:.875rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.cart-item-price{font-size:1.25rem;font-weight:700;color:#16a34a;margin-top:auto}.cart-item-actions{display:flex;flex-direction:column;gap:1rem;align-items:flex-end;justify-content:space-between}.quantity-controls{display:flex;align-items:center;gap:.5rem;background:#fff;border-radius:.75rem;padding:.25rem;box-shadow:0 2px 4px #0000001a}.quantity-btn{width:32px;height:32px;border:none;background:#f1f5f9;color:#1e293b;border-radius:.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-weight:700}.quantity-btn:hover{background:#e2e8f0;transform:scale(1.1)}.quantity-btn:active{transform:scale(.95)}.quantity-value{min-width:40px;text-align:center;font-weight:700;color:#1e293b}.remove-item-btn{padding:.5rem;background:#fee2e2;color:#dc2626;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.remove-item-btn:hover{background:#fecaca;transform:scale(1.1)}.cart-summary{position:sticky;top:2rem;display:flex;flex-direction:column;gap:1.5rem;animation:fadeInRight .6s ease}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.summary-card{background:#fff;border-radius:1.5rem;padding:2rem;box-shadow:0 4px 6px #0000000d}.summary-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:1.5rem}.summary-details{display:flex;flex-direction:column;gap:1rem}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1rem;color:#475569}.summary-row span:last-child{font-weight:600}.summary-divider{height:2px;background:linear-gradient(to right,#e2e8f0,transparent);margin:.5rem 0}.summary-total{font-size:1.5rem;color:#1e293b;font-weight:700}.summary-total span:last-child{color:#16a34a}.summary-info{display:flex;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:.75rem;border:1px solid #93c5fd;align-items:flex-start}.summary-info svg{flex-shrink:0;margin-top:.125rem;stroke:#2563eb}.discount-code-section{padding:1rem;background:#f8fafc;border-radius:.75rem;margin-bottom:1rem}.discount-label{display:block;font-size:.875rem;font-weight:600;color:#475569;margin-bottom:.5rem}.discount-input-wrapper{display:flex;gap:.5rem}.discount-input{flex:1;padding:.625rem .875rem;border:2px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;text-transform:uppercase;transition:all .2s ease}.discount-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.apply-discount-btn{padding:.625rem 1.25rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.apply-discount-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.apply-discount-btn:active{transform:translateY(0)}.apply-discount-btn:disabled{opacity:.5;cursor:not-allowed}.discount-message{margin-top:.5rem;font-size:.8125rem;min-height:1.25rem}.discount-message.success{color:#10b981;display:flex;align-items:center;gap:.25rem}.discount-message.error{color:#ef4444}.applied-discount{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem;padding:.75rem;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:.5rem;border:1px solid #6ee7b7}.applied-discount-info{display:flex;align-items:center;gap:.5rem;color:#065f46;font-size:.875rem;font-weight:600}.applied-discount-info svg{stroke:#10b981;flex-shrink:0}.remove-discount-btn{background:transparent;border:none;padding:.25rem;cursor:pointer;border-radius:.25rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.remove-discount-btn:hover{background:#ef44441a}.remove-discount-btn svg{stroke:#ef4444}.summary-info svg{flex-shrink:0;color:#3b82f6;margin-top:.125rem}.summary-info p{font-size:.875rem;color:#1e40af;line-height:1.5;margin:0}.summary-alert{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#fef3c7,#fef9e7);border:1px solid #fbbf24;border-radius:.75rem;margin-top:1rem;animation:slideDown .3s ease}.summary-alert svg{flex-shrink:0;color:#f59e0b;margin-top:.125rem}.summary-alert p{font-size:.875rem;color:#92400e;line-height:1.5;margin:0;font-weight:500}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.summary-info svg{flex-shrink:0;color:#3b82f6;margin-top:2px}.summary-info p{font-size:.875rem;color:#1e40af;line-height:1.5}.shipping-form{margin-top:2rem;padding-top:2rem;border-top:2px solid #e2e8f0}.shipping-title{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;color:#1e293b;margin-bottom:1.5rem}.shipping-title svg{color:#3b82f6}.form-group{margin-bottom:1.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:#475569;margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:.75rem;font-size:.9375rem;color:#1e293b;transition:all .3s ease;background:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-1px)}.form-input:hover,.form-textarea:hover{border-color:#cbd5e1}.form-textarea{resize:vertical;min-height:60px}.form-hint{font-size:.75rem;color:#64748b;margin-top:.375rem}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;padding-right:3rem;cursor:pointer;font-weight:500}select.form-input:disabled{background-color:#f8fafc;cursor:not-allowed;opacity:.6;color:#94a3b8;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}select.form-input option{padding:1rem;background:#fff;color:#1e293b;font-size:.9375rem}select.form-input option:checked,select.form-input option:hover{background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#1e40af}.phone-input-wrapper{display:flex;align-items:center;border:2px solid #e2e8f0;border-radius:.75rem;overflow:hidden;transition:all .3s ease}.phone-input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.phone-input-wrapper:hover{border-color:#cbd5e1}.phone-prefix{padding:.75rem;background:#f8fafc;color:#475569;font-weight:600;font-size:.9375rem;border-right:2px solid #e2e8f0}.phone-input{border:none!important;border-radius:0!important;padding-left:.75rem!important}.phone-input:focus{box-shadow:none!important;transform:none!important}.map-container{width:100%;height:300px;border-radius:1rem;overflow:hidden;margin-top:1.5rem;border:2px solid #e2e8f0;box-shadow:0 2px 8px #0000000d;transition:all .3s ease}.map-container:hover{box-shadow:0 4px 16px #0000001a}.payment-buttons{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.payment-btn{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid #e2e8f0;border-radius:.75rem;background:#fff;cursor:pointer;transition:all .3s ease}.payment-btn:hover{border-color:#3b82f6;background:#f0f9ff;transform:translateY(-2px);box-shadow:0 8px 20px #3b82f633}.payment-btn-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:.75rem;flex-shrink:0}.payment-btn-webpay .payment-btn-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.payment-btn-whatsapp .payment-btn-icon{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff}.payment-btn-content{display:flex;flex-direction:column;gap:.25rem;text-align:left}.payment-btn-title{font-size:1rem;font-weight:700;color:#111827}.payment-btn-desc{font-size:.875rem;color:#6b7280}.payment-security{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;padding:.75rem;background:#f0fdf4;border-radius:.5rem;font-size:.875rem;color:#166534}.payment-security svg{color:#16a34a}.info-cards{display:flex;flex-direction:column;gap:1rem}.info-card{display:flex;gap:1rem;align-items:center;background:#fff;padding:1.25rem;border-radius:1rem;box-shadow:0 1px 3px #0000001a}.info-card svg{color:#3b82f6;flex-shrink:0}.info-card h4{font-size:1rem;font-weight:700;color:#1e293b;margin-bottom:.25rem}.info-card p{font-size:.875rem;color:#64748b}.auth-modal{display:none;position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(4px);z-index:9999;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .3s ease}.auth-modal.show{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal-content{background:#fff;border-radius:1.5rem;padding:3rem 2rem;max-width:450px;width:100%;text-align:center;position:relative;animation:scaleIn .3s ease}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.auth-modal-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.auth-modal-content h2{font-size:1.75rem;font-weight:800;color:#1e293b;margin-bottom:.5rem}.auth-modal-content p{color:#64748b;margin-bottom:2rem;font-size:1.0625rem}.auth-modal-actions{display:flex;flex-direction:column;gap:1rem}.btn-auth{padding:1rem;border-radius:.75rem;font-weight:700;text-decoration:none;text-align:center;transition:all .3s ease}.btn-auth-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-auth-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f64d}.btn-auth-secondary{background:#fff;color:#3b82f6;border:2px solid #3b82f6}.btn-auth-secondary:hover{background:#eff6ff}.auth-modal-close{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;border:none;background:#f1f5f9;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.auth-modal-close:hover{background:#e2e8f0;transform:rotate(90deg)}.mp-payment-overlay{display:none;position:fixed;inset:0;background:linear-gradient(135deg,#0f172a,#1e293b,#0f172a);z-index:99999;align-items:center;justify-content:center;padding:1.5rem;animation:fadeIn .4s ease}.mp-payment-overlay.show{display:flex}.mp-payment-overlay-content{text-align:center;max-width:420px;width:100%}.mp-payment-loader{position:relative;width:120px;height:120px;margin:0 auto 2rem}.mp-payment-loader-ring{position:absolute;inset:0;border:3px solid transparent;border-radius:50%;animation:mp-ring-spin 2s linear infinite}.mp-payment-loader-ring:nth-child(1){border-top-color:#00b1ea;animation-delay:0s}.mp-payment-loader-ring:nth-child(2){inset:10px;border-right-color:#009ee3;animation-delay:.15s;animation-direction:reverse}.mp-payment-loader-ring:nth-child(3){inset:20px;border-bottom-color:#00a0dc;animation-delay:.3s}@keyframes mp-ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mp-payment-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#00b1ea;animation:mp-logo-pulse 2s ease-in-out infinite}@keyframes mp-logo-pulse{0%,to{opacity:.7;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.mp-payment-title{font-size:1.5rem;font-weight:800;color:#fff;margin-bottom:.75rem;line-height:1.3}.mp-payment-subtitle{font-size:1rem;color:#94a3b8;margin-bottom:2rem;line-height:1.5}.mp-payment-steps{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;text-align:left}.mp-payment-step{display:flex;align-items:center;gap:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:.875rem 1rem;color:#e2e8f0;font-size:.9rem}.mp-payment-step-number{width:28px;height:28px;background:linear-gradient(135deg,#00b1ea,#009ee3);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.mp-payment-hint{font-size:.85rem;color:#64748b;margin-bottom:1.5rem}.mp-payment-cancel{background:transparent;border:1px solid rgba(255,255,255,.2);color:#94a3b8;padding:.875rem 1.5rem;border-radius:.75rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.mp-payment-cancel:hover{background:#ffffff0d;border-color:#ffffff4d;color:#fff}:global(.cart-notification){position:fixed;top:2rem;right:2rem;background:#fff;padding:1rem 1.5rem;border-radius:.75rem;box-shadow:0 10px 25px #00000026;display:flex;align-items:center;gap:.75rem;z-index:10000;opacity:0;transform:translate(100px);transition:all .3s ease}:global(.cart-notification.show){opacity:1;transform:translate(0)}:global(.cart-notification-success){border-left:4px solid #16a34a}:global(.cart-notification-info){border-left:4px solid #3b82f6}:global(.notification-icon){width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.125rem}:global(.cart-notification-success .notification-icon){background:#dcfce7;color:#16a34a}:global(.cart-notification-info .notification-icon){background:#dbeafe;color:#3b82f6}:global(.notification-message){font-weight:600;color:#1e293b}@media(max-width:1024px){.cart-content{grid-template-columns:1fr}.cart-summary{position:static;order:2}}@media(max-width:640px){.cart-page{padding:2rem 0 3rem}.cart-title{font-size:2rem}.cart-items-section{padding:1.5rem}.cart-item{flex-direction:column}.cart-item-image{width:100%;height:200px}.cart-item-actions{flex-direction:row;width:100%;justify-content:space-between}:global(.cart-notification){left:1rem;right:1rem;top:1rem}}
