.booking-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.booking-modal.active{opacity:1;visibility:visible}.booking-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.booking-modal-content{position:relative;background:#fff;border-radius:20px;box-shadow:0 25px 60px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;padding:0;transform:scale(.9) translateY(20px);transition:transform .3s ease}.booking-modal.active .booking-modal-content{transform:scale(1) translateY(0)}.booking-modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:none;background:#f1f5f9;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.booking-modal-close:hover{background:#e2e8f0;transform:rotate(90deg)}.booking-modal-close svg{color:#64748b}.booking-modal-header{padding:32px 32px 20px;text-align:center;border-bottom:1px solid #e2e8f0}.booking-modal-title{font-family:Montserrat,sans-serif;font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#00ced1,#9370db);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.booking-modal-subtitle{font-size:.95rem;color:#64748b;margin:0}.booking-modal-summary{background:linear-gradient(135deg,#00ced114,#9370db14);padding:20px 32px;border-bottom:1px solid #e2e8f0}.booking-summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:.95rem}.booking-summary-label{color:#64748b;font-weight:500}.booking-summary-value{color:#1e293b;font-weight:600;text-align:right;max-width:60%}.booking-summary-total{border-top:2px solid rgba(0,206,209,.3);margin-top:12px;padding-top:16px}.booking-summary-total .booking-summary-value{font-size:1.25rem;background:linear-gradient(135deg,#00ced1,#9370db);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.booking-payment-form{padding:24px 32px}.booking-form-group{margin-bottom:20px}.booking-label{display:block;font-size:.9rem;font-weight:600;color:#374151;margin-bottom:8px}.booking-label .required{color:#ef4444}.booking-input{width:100%;padding:14px 16px;font-size:1rem;border:2px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#1e293b;transition:all .2s ease;font-family:inherit}.booking-input:focus{outline:none;border-color:#00ced1;background:#fff;box-shadow:0 0 0 4px #00ced11a}.booking-input::placeholder{color:#94a3b8}.booking-payment-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.booking-payment-option{cursor:pointer}.booking-payment-option input{position:absolute;opacity:0;pointer-events:none}.booking-payment-option-content{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid #e2e8f0;border-radius:12px;background:#f8fafc;transition:all .2s ease}.booking-payment-option input:checked+.booking-payment-option-content{border-color:#00ced1;background:linear-gradient(135deg,#00ced11a,#9370db1a);box-shadow:0 0 0 4px #00ced11a}.booking-payment-option:hover .booking-payment-option-content{border-color:#00ced1}.booking-payment-icon{font-size:1.5rem;line-height:1}.booking-payment-text{display:flex;flex-direction:column}.booking-payment-text strong{font-size:.9rem;color:#1e293b}.booking-payment-text small{font-size:.75rem;color:#64748b}.booking-form-actions{display:flex;gap:12px;margin-top:24px}.booking-btn-secondary,.booking-btn-primary{flex:1;padding:16px 24px;font-size:1rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;transition:all .2s ease;font-family:inherit}.booking-btn-secondary{background:#f1f5f9;color:#64748b}.booking-btn-secondary:hover{background:#e2e8f0;color:#475569}.booking-btn-primary{background:linear-gradient(135deg,#00ced1,#9370db);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px}.booking-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00ced166}.booking-btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.booking-btn-loading{display:inline-flex;align-items:center;gap:8px}.booking-spinner{animation:booking-spin 1s linear infinite}@keyframes booking-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.booking-modal-footer{padding:16px 32px 24px;text-align:center}.booking-modal-footer p{font-size:.85rem;color:#64748b;margin:0}.booking-error,.booking-success{margin:0 32px 16px;padding:14px 18px;border-radius:10px;font-size:.9rem;font-weight:500}.booking-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.booking-success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}@media(max-width:640px){.booking-modal-content{width:95%;max-height:95vh;border-radius:16px}.booking-modal-header{padding:24px 20px 16px}.booking-modal-title{font-size:1.5rem}.booking-modal-summary{padding:16px 20px}.booking-payment-form{padding:20px}.booking-payment-options{grid-template-columns:1fr}.booking-form-actions{flex-direction:column-reverse}.booking-modal-footer{padding:12px 20px 20px}.booking-error,.booking-success{margin:0 20px 12px}}.booking-modal-content::-webkit-scrollbar{width:6px}.booking-modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.booking-modal-content::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#00ced1,#9370db);border-radius:3px}.booking-modal-content::-webkit-scrollbar-thumb:hover{background:#00ced1}
/*# sourceMappingURL=/cdn/shop/t/43/assets/booking-modal.css.map */
