.wexbespokeq-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;}
.wexbespokeq-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.7);backdrop-filter:blur(4px);}
.wexbespokeq-modal-content{position:relative;background:white;border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.25);z-index:1;}
.wexbespokeq-modal-close{position:absolute;top:20px;right:20px;background:rgba(0, 0, 0, 0.05);border:none;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;cursor:pointer;color:#6b7280;transition:all 0.2s;z-index:10;}
.wexbespokeq-modal-close:hover{background:rgba(0, 0, 0, 0.1);color:#111827;transform:rotate(90deg);}
.wexbespokeq-modal-header{padding:30px 30px 20px;border-bottom:1px solid #e5e7eb;}
.wexbespokeq-modal-title{margin:0 0 10px;font-size:28px;font-weight:700;color:#111827;}
.wexbespokeq-modal-description{margin:0;font-size:15px;color:#6b7280;line-height:1.6;}
.wexbespokeq-modal-body{padding:30px;}
.wexbespokeq-form-section{margin-bottom:30px;}
.wexbespokeq-section-title{margin:0 0 15px;font-size:18px;font-weight:600;color:#111827;padding-bottom:10px;border-bottom:2px solid #e5e7eb;}
.wexbespokeq-form-group{margin-bottom:20px;}
.wexbespokeq-form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:600;color:#374151;}
.wexbespokeq-form-group .required{color:#dc2626;}
.wexbespokeq-form-group input[type="text"],
.wexbespokeq-form-group input[type="email"],
.wexbespokeq-form-group input[type="tel"],
.wexbespokeq-form-group textarea{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:15px;color:#111827;transition:all 0.2s;font-family:inherit;}
.wexbespokeq-form-group input:focus, .wexbespokeq-form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37, 99, 235, 0.1);}
.wexbespokeq-form-group textarea{resize:vertical;min-height:100px;}
.wexbespokeq-form-row{display:grid;gap:15px;}
.wexbespokeq-form-row-2{grid-template-columns:repeat(2, 1fr);}
@media(max-width:640px){
.wexbespokeq-form-row-2{grid-template-columns:1fr;}
} .wexbespokeq-mapbox-suggestions{position:relative;background:white;border:1px solid #d1d5db;border-radius:6px;margin-top:5px;max-height:250px;overflow-y:auto;box-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1);display:none;}
.wexbespokeq-mapbox-suggestions.active{display:block;}
.wexbespokeq-suggestion-item{padding:12px 14px;cursor:pointer;border-bottom:1px solid #f3f4f6;font-size:14px;color:#374151;transition:background 0.15s;}
.wexbespokeq-suggestion-item:last-child{border-bottom:none;}
.wexbespokeq-suggestion-item:hover{background:#f3f4f6;}
.wexbespokeq-upload-area{border:2px dashed #d1d5db;border-radius:8px;padding:40px 20px;text-align:center;cursor:pointer;transition:all 0.3s;background:#f9fafb;}
.wexbespokeq-upload-area:hover{border-color:#2563eb;background:#eff6ff;}
.wexbespokeq-upload-area.dragover{border-color:#2563eb;background:#dbeafe;}
.wexbespokeq-upload-icon{width:48px;height:48px;margin:0 auto 15px;color:#9ca3af;}
.wexbespokeq-upload-text{margin:0 0 5px;font-size:15px;font-weight:500;color:#374151;}
.wexbespokeq-upload-subtext{margin:0;font-size:13px;color:#9ca3af;}
.wexbespokeq-upload-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:15px;}
.wexbespokeq-file-preview{display:flex;align-items:center;gap:12px;}
.wexbespokeq-file-preview img{width:60px;height:60px;object-fit:cover;border-radius:6px;border:1px solid #e5e7eb;}
.wexbespokeq-file-icon{width:40px;height:40px;color:#dc2626;flex-shrink:0;}
.wexbespokeq-file-name{flex:1;font-size:14px;color:#374151;font-weight:500;word-break:break-word;}
.wexbespokeq-file-remove{width:32px;height:32px;background:#fee2e2;border:none;border-radius:50%;font-size:20px;color:#dc2626;cursor:pointer;flex-shrink:0;transition:all 0.2s;}
.wexbespokeq-file-remove:hover{background:#fecaca;}
.wexbespokeq-form-actions{margin-top:30px;}
.wexbespokeq-submit-btn{width:100%;padding:14px 24px;background:#2563eb;color:white;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s;}
.wexbespokeq-submit-btn:hover:not(:disabled){background:#1d4ed8;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(37, 99, 235, 0.3);}
.wexbespokeq-submit-btn:disabled{opacity:0.6;cursor:not-allowed;}
.wexbespokeq-form-message{margin-top:20px;padding:12px 16px;border-radius:6px;font-size:14px;}
.wexbespokeq-message-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;}
.wexbespokeq-message-error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;}
.wexbespokeq-thankyou{text-align:center;padding:40px 20px;}
.wexbespokeq-thankyou-icon{width:80px;height:80px;background:#d1fae5;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;}
.wexbespokeq-thankyou-icon svg{width:50px;height:50px;stroke:#059669;stroke-width:3;}
.wexbespokeq-thankyou-title{margin:0 0 12px;font-size:32px;font-weight:700;color:#111827;}
.wexbespokeq-thankyou-subtitle{margin:0 0 20px;font-size:18px;font-weight:500;color:#6b7280;}
.wexbespokeq-thankyou-message{margin:0 0 30px;font-size:15px;color:#6b7280;line-height:1.6;}
.wexbespokeq-thankyou-btn{padding:12px 32px;background:#2563eb;color:white;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s;}
.wexbespokeq-thankyou-btn:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(37, 99, 235, 0.3);}
@media(max-width:768px){
.wexbespokeq-modal{padding:10px;}
.wexbespokeq-modal-content{max-height:95vh;}
.wexbespokeq-modal-header{padding:20px 20px 15px;}
.wexbespokeq-modal-title{font-size:24px;}
.wexbespokeq-modal-body{padding:20px;}
.wexbespokeq-section-title{font-size:16px;}
.wexbespokeq-upload-area{padding:30px 15px;}
} .wexbespokeq-modal-content::-webkit-scrollbar{width:8px;}
.wexbespokeq-modal-content::-webkit-scrollbar-track{background:#f3f4f6;}
.wexbespokeq-modal-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px;}
.wexbespokeq-modal-content::-webkit-scrollbar-thumb:hover {
background: #9ca3af;
}