.profile-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:modalOverlayFadeIn .2s cubic-bezier(.4,0,.2,1)}.profile-modal{background:#fff;border-radius:16px;width:min(600px,90vw);max-height:90vh;min-height:min(85vh,700px);display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalScaleIn .25s cubic-bezier(.4,0,.2,1);position:relative}.profile-modal-close-btn{position:absolute;right:-50px;top:20px;width:32px;height:32px;border-radius:50%;background:#f0f0f0;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:transform .15s cubic-bezier(.4,0,.2,1),background-color .15s ease;will-change:transform}.profile-modal-close-btn:hover{background:#c5c5c5;transform:scale(.98)}.profile-modal-close-btn:active{background:#b0b0b0;transform:scale(.95)}.profile-modal-close-btn img{width:16px;height:16px}.profile-modal-content{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#fff}.profile-modal .profile-page{height:100%;background-color:transparent}.profile-modal .profile-container{max-width:none;margin:0;width:100%;height:100%}.profile-modal .profile-header{padding:20px 20px 0;border-bottom:none;background-color:transparent}.profile-modal .profile-content{padding:20px;gap:20px;flex:1;overflow:visible}.profile-modal-content:has(.profile-addresses-content){display:flex;flex-direction:column;min-height:0;overflow:hidden}.profile-modal-content:has(.profile-addresses-content) .profile-page{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.profile-modal-content:has(.profile-addresses-content) .profile-container{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.profile-modal-content:has(.profile-addresses-content) .profile-header{flex-shrink:0}.profile-modal-content:has(.profile-addresses-content) .profile-content{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;padding:0;gap:0}.profile-modal-content:has(.profile-addresses-content) .profile-addresses-content{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:1rem 20px .75rem;box-sizing:border-box}.profile-modal-content:has(.profile-addresses-content) .profile-addresses-fixed-bottom{flex-shrink:0;position:static;margin:0;padding:.75rem 20px 1rem;width:100%;box-sizing:border-box;border-top:1px solid #e5e7eb;background:#fff}.profile-modal .bottom-navigation{display:none}@media (max-width: 1024px){.profile-modal-close-btn{display:none}}@media (max-width: 768px){.profile-modal-overlay{display:none}}.location-permission-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.location-permission-modal{width:400px;background-color:#fff;border-radius:32px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;overflow:hidden}.location-permission-modal-header{padding:24px 24px 16px;border-bottom:1px solid #F3F4F6;text-align:center}.location-permission-icon{font-size:48px;margin-bottom:16px}.location-permission-modal-header h3{font-family:Inter,sans-serif;font-size:18px;font-weight:600;color:#111827;margin:0;text-align:center}.location-permission-modal-content{flex:1;padding:16px 24px;display:flex;align-items:center;justify-content:center}.location-permission-text{font-family:Inter,sans-serif;font-size:14px;color:#6b7280;margin:0;text-align:center;line-height:1.5}.location-permission-modal-actions{padding:16px 24px 24px;display:flex;flex-direction:column;gap:12px}.location-permission-btn{padding:12px 24px;border:none;border-radius:8px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px}.location-permission-btn:disabled{opacity:.6;cursor:not-allowed}.location-permission-btn--primary{background:#4bb755;color:#fff}.location-permission-btn--primary:hover:not(:disabled){background:#3a9a42}.location-permission-btn--secondary{background:#f8f9fa;color:#333;border:1px solid #dee2e6}.location-permission-btn--secondary:hover:not(:disabled){background:#e9ecef}.loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.location-permission-modal-overlay{padding:16px}.location-permission-modal{width:320px}.location-permission-modal-header{padding:20px 20px 12px}.location-permission-modal-header h3{font-size:16px}.location-permission-modal-content{padding:12px 20px}.location-permission-text{font-size:13px}.location-permission-modal-actions{padding:12px 20px 20px;gap:10px}}.checkout-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.checkout-modal-overlay.checkout-recipient-modal-overlay{z-index:3000}.checkout-modal-container{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.checkout-modal-container .checkout-page{background:#fff;border-radius:16px;overflow:hidden}.checkout-modal-container .checkout-container{max-width:none;margin:0;border-radius:16px}.checkout-modal-container .checkout-content{max-height:calc(90vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}.checkout-recipient-modal-body{display:flex;flex-direction:column;gap:1rem}.checkout-recipient-modal-body .checkout-recipient-purpose-caption{margin:0;padding:0;font-family:Inter,sans-serif;font-size:14px;font-weight:500;line-height:1.2;color:#6b7280}.checkout-recipient-modal-body .checkout-recipient-purpose-box{margin-top:0;padding:1rem}.checkout-recipient-modal-body .checkout-recipient-purpose-box .address-item{border-width:2px;border-style:solid;border-color:transparent;box-sizing:border-box}.checkout-recipient-modal-body .checkout-recipient-purpose-box .address-item:has(.address-radio:checked){border-color:#4bb755;background-color:#f0fdf4}.checkout-recipient-modal-actions{display:flex;gap:.75rem;align-items:stretch;margin-top:.5rem}.checkout-recipient-modal-actions .checkout-recipient-delete-btn{flex-shrink:0;width:56px;min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid #dee2e6;background:#fef2f2;cursor:pointer}.checkout-recipient-modal-actions .auth-primary-button{flex:1}@media (max-width: 768px){.checkout-modal-overlay{padding:0}.checkout-modal-container{border-radius:0;max-height:100vh;height:100vh}.checkout-modal-container .checkout-page,.checkout-modal-container .checkout-container{border-radius:0}}
