.required-indicator {color:#dc3545 !important;font-weight:bold}.form-control.is-valid,.form-select.is-valid {border-color:#198754;padding-right:calc(1.5em+0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='m2.3 6.73.94-.94 1.44 1.44 2.81-2.81.94.94L3.24 9.26z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em+0.1875rem) center;background-size:calc(0.75em+0.375rem) calc(0.75em+0.375rem)}.form-control.is-invalid,.form-select.is-invalid {border-color:#dc3545;padding-right:calc(1.5em+0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath d='m5.8 4.6 1.4 1.4M7.2 4.6l-1.4 1.4'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em+0.1875rem) center;background-size:calc(0.75em+0.375rem) calc(0.75em+0.375rem)}.validation-feedback {width:100%;margin-top:0.25rem;font-size:0.875rem}.validation-feedback.text-success {color:#198754 !important}.validation-feedback.text-danger {color:#dc3545 !important}.form-control:focus,.form-select:focus {border-color:#86b7fe;outline:0;box-shadow:0 0 0 0.25rem rgba(13,110,253,0.25)}.form-control.is-valid:focus,.form-select.is-valid:focus {border-color:#198754;box-shadow:0 0 0 0.25rem rgba(25,135,84,0.25)}.form-control.is-invalid:focus,.form-select.is-invalid:focus {border-color:#dc3545;box-shadow:0 0 0 0.25rem rgba(220,53,69,0.25)}.btn:disabled {opacity:0.65;cursor:not-allowed}.btn-secondary:disabled {background-color:#6c757d;border-color:#6c757d}#validation-summary {border-left:4px solid #dc3545;animation:slideDown 0.3s ease-out}@keyframes slideDown {from {opacity:0;transform:translateY(-10px)} to {opacity:1;transform:translateY(0)}}#validation-summary ul {padding-left:1.5rem}#validation-summary li {margin-bottom:0.25rem}.form-floating .form-control.is-valid~label,.form-floating .form-control.is-invalid~label {opacity:0.65}@media (max-width:768px) {.validation-feedback {font-size:0.8rem} #validation-summary {margin:1rem -15px;border-radius:0}}.form-submitting {pointer-events:none;opacity:0.7}.form-submitting .form-control,.form-submitting .form-select {background-color:#f8f9fa}.form-success {border:2px solid #198754;border-radius:0.375rem;background-color:#d1e7dd;padding:1rem;margin-bottom:1rem}.form-success .alert {margin-bottom:0}.form-error {border:2px solid #dc3545;border-radius:0.375rem;background-color:#f8d7da;padding:1rem;margin-bottom:1rem}.form-text {margin-top:0.25rem;font-size:0.875rem;color:#6c757d}.form-control.is-invalid~.form-text,.form-select.is-invalid~.form-text {color:#dc3545}.form-control.is-valid~.form-text,.form-select.is-valid~.form-text {color:#198754}