.form-container{background-color:#fff;border-radius:10px;box-shadow:0 5px 20px #0000000d;padding:30px;margin-bottom:30px}.form-label{font-weight:500}.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .25rem #fcb91340}.form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}.section-header{background-color:var(--light-gray);padding:15px;margin-bottom:20px;border-radius:5px;border-left:5px solid var(--primary)}.section-header h3{margin-bottom:0;font-size:1.25rem;font-weight:600}.form-step{display:none}.form-step.active{display:block}.step-indicator{margin-bottom:30px}.step-indicator .step{width:30px;height:30px;background-color:#e9ecef;color:var(--gray);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;margin:0 auto 10px}.step-indicator .step.active{background-color:var(--primary);color:#fff}.step-indicator .step.completed{background-color:#28a745;color:#fff}.step-indicator .step-title{font-size:.875rem;text-align:center;color:var(--gray)}.step-indicator .step.active+.step-title{color:var(--primary);font-weight:600}.step-indicator .step-line{flex:1;height:2px;background-color:#e9ecef;margin:15px 10px 0}.step-indicator .step-line.active{background-color:var(--primary)}.invalid-feedback{display:none}.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-select:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-feedback{display:block}.required-field:after{content:" *";color:var(--accent)}#success-message{display:none;text-align:center;padding:50px 0}#success-icon{font-size:5rem;color:#28a745;margin-bottom:20px}.budget-slider{height:5px;border-radius:5px;background:var(--light-gray);border:none}.budget-slider .ui-slider-range{background:var(--primary)}.budget-slider .ui-slider-handle{border-radius:50%;width:20px;height:20px;background:var(--primary);border:none;top:-8px;cursor:pointer}.budget-value{padding:5px 10px;background:var(--primary);color:#fff;border-radius:20px;font-size:.875rem;font-weight:600;margin-top:15px;display:inline-block}.spinner-container{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffffb3;display:flex;justify-content:center;align-items:center;z-index:9999;display:none}.status-card{border-left:4px solid var(--primary);margin-bottom:20px;background-color:#fff;box-shadow:0 2px 10px #0000000d}
