.modal-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.6);backdrop-filter:blur(4px)}.modal-container{width:100%;max-height:90vh;background:#fff;border-radius:20px;box-shadow:0 25px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;overflow:hidden}.modal-sm{max-width:400px}.modal-md{max-width:500px}.modal-content,.modal-lg{max-width:600px}.modal-content{background:#fff;border-radius:24px;width:100%;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s ease;box-shadow:0 25px 50px rgba(0,0,0,.2)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e2e8f0}.header-content,.modal-header{display:flex;align-items:center}.header-content{gap:.75rem}.header-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.header-icon.green{background:linear-gradient(135deg,rgba(16,185,129,.15),rgba(5,150,105,.15));color:#059669}.header-icon.yellow{background:linear-gradient(135deg,rgba(245,158,11,.15),rgba(217,119,6,.15));color:#d97706}.modal-title{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.modal-header h2{font-size:1.5rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.75rem}.modal-header h2 i{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem}.modal-header.green h2 i,.modal-header h2 i{background:linear-gradient(135deg,#10b981,#059669)}.modal-header.yellow h2 i{background:linear-gradient(135deg,#f59e0b,#d97706)}.modal-header.red h2 i{background:linear-gradient(135deg,#ef4444,#dc2626)}.modal-header.blue h2 i{background:linear-gradient(135deg,#3b82f6,#2563eb)}.close-btn{width:40px;height:40px;border:none;background:#f1f5f9;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:#64748b;font-size:1.25rem}.close-btn:hover{background:#e2e8f0;color:#1e293b}.modal-body{padding:2rem;max-height:calc(90vh - 150px)}.modal-steps{display:flex;gap:1rem;margin-bottom:2rem}.step{flex:1;flex-direction:column;gap:.5rem}.step,.step-number{display:flex;align-items:center}.step-number{width:36px;height:36px;border-radius:50%;background:#f1f5f9;color:#94a3b8;justify-content:center;font-weight:600;font-size:.875rem;transition:all .3s}.step.active .step-number{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.step.completed .step-number{background:#10b981;color:#fff}.step-label{font-size:.75rem;color:#94a3b8;font-weight:500;text-align:center}.step.active .step-label{color:#059669}.step.completed .step-label{color:#10b981}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group label span.required{color:#ef4444;margin-left:2px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .2s;background:#fff;color:#1f2937}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.1)}.form-group.yellow-focus input:focus,.form-group.yellow-focus select:focus,.form-group.yellow-focus textarea:focus{border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.1);background:#fff}.form-group input::-moz-placeholder,.form-group textarea::-moz-placeholder{color:#9ca3af}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{min-height:120px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.checkbox-group,.radio-group{display:flex;flex-wrap:wrap;gap:.75rem}.checkbox-option,.radio-option{position:relative}.checkbox-option input,.radio-option input{position:absolute;opacity:0;cursor:pointer}.checkbox-option label,.radio-option label{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#f8fafc;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s}.checkbox-option input:checked+label,.radio-option input:checked+label{background:rgba(16,185,129,.1);border-color:#10b981;color:#059669}.info-box{padding:1rem 1.25rem;background:#f0fdf4;border:1px solid #86efac;border-radius:12px;margin-bottom:1.5rem}.info-box.warning{background:#fffbeb;border-color:#fcd34d}.info-box.error{background:#fef2f2;border-color:#fca5a5}.info-box p{font-size:.875rem;color:#166534;line-height:1.5}.info-box.warning p{color:#92400e}.info-box.error p{color:#991b1b}.file-upload{position:relative;border:2px dashed #d1d5db;border-radius:12px;padding:2rem;text-align:center;transition:all .2s;cursor:pointer}.file-upload:hover{border-color:#10b981;background:#f0fdf4}.file-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-upload i{font-size:2rem;color:#10b981;margin-bottom:.5rem}.file-upload p{font-size:.875rem;color:#64748b}.file-upload span{color:#10b981;font-weight:600}.uploaded-files{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.uploaded-file{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f8fafc;border-radius:8px}.uploaded-file span{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#475569}.uploaded-file button{width:28px;height:28px;border:none;background:#fee2e2;color:#ef4444;border-radius:6px;cursor:pointer;transition:all .2s}.uploaded-file button:hover{background:#ef4444;color:#fff}.image-upload-area{border:2px dashed #e2e8f0;border-radius:12px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:#fafafa}.image-upload-area:hover{border-color:#10b981;background:rgba(16,185,129,.02)}.image-upload-area.has-image{border-style:solid;border-color:#10b981;padding:.75rem;cursor:default}.upload-placeholder{color:#94a3b8}.upload-placeholder i{font-size:2.5rem;margin-bottom:.75rem;display:block}.upload-placeholder p{font-size:.9rem;margin:0 0 .25rem;color:#64748b}.upload-placeholder span{font-size:.8rem;color:#94a3b8}.image-preview{position:relative;display:inline-block;max-width:100%}.image-preview img{max-width:100%;max-height:200px;border-radius:8px;-o-object-fit:contain;object-fit:contain}.image-preview .remove-image{position:absolute;top:-8px;right:-8px;width:28px;height:28px;background:#ef4444;color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;box-shadow:0 2px 8px rgba(0,0,0,.2);transition:all .2s ease}.image-preview .remove-image:hover{background:#dc2626;transform:scale(1.1)}.optional{color:#94a3b8;font-weight:400;font-size:.8rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:1px solid #e2e8f0;margin-top:1.5rem}.btn-cancel{padding:.875rem 1.5rem;border:2px solid #e5e7eb;background:#fff;color:#64748b;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f8fafc;border-color:#cbd5e1}.btn-submit{padding:.875rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,185,129,.3)}.btn-submit.green{background:linear-gradient(135deg,#10b981,#059669)}.btn-submit.green:hover:not(:disabled){box-shadow:0 8px 20px rgba(16,185,129,.3)}.btn-submit.yellow{background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-submit.yellow:hover:not(:disabled){box-shadow:0 8px 20px rgba(245,158,11,.3)}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.required{color:#ef4444}.service-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.service-option{padding:1.25rem;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;text-align:center}.service-option:hover{border-color:#10b981;background:#f0fdf4}.service-option.selected{border-color:#10b981;background:rgba(16,185,129,.1)}.service-option i{font-size:1.5rem;color:#10b981;margin-bottom:.5rem}.service-option h4{font-size:.875rem;font-weight:600;color:#1e293b;margin-bottom:.25rem}.service-option p{font-size:.75rem;color:#64748b}.datetime-picker{display:flex;gap:1rem}.datetime-picker input{flex:1}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc}.form-content{display:flex;flex-direction:column;gap:1rem}.form-description{color:#64748b;font-size:.9rem;margin-bottom:.5rem}.form-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:640px){.form-grid{grid-template-columns:1fr 1fr}}.notice-box{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;color:#065f46;font-size:.875rem}.notice-box i{margin-top:.125rem}.notice-box.warning{background:#fffbeb;border-color:#fcd34d;color:#92400e}.notice-box.info{background:#eff6ff;border-color:#93c5fd;color:#1e40af}.notice-box.emergency{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.notice-box a{color:#10b981}@media (max-width:640px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.modal-header{padding:1rem 1.5rem}.modal-body{padding:1.5rem}.form-row,.service-options{grid-template-columns:1fr}.modal-steps{flex-wrap:wrap;justify-content:center}.step{flex:0 0 auto}}.modal-fade-enter-active,.modal-fade-leave-active{transition:opacity .3s ease}.modal-fade-enter,.modal-fade-leave-to{opacity:0}.modal-scale-enter-active,.modal-scale-leave-active{transition:all .3s ease}.modal-scale-enter,.modal-scale-leave-to{opacity:0;transform:scale(.9)}.item-image[data-v-2dc85b40]{width:64px;height:64px;border-radius:10px;overflow:hidden;flex:0 0 64px;border:1px solid rgba(0,0,0,.08);background:#f8fafc}.item-image img[data-v-2dc85b40]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}