.required-mark { color: #b42318; font-weight: bold; }
.registration-invalid { border: 1px solid #b42318 !important; box-shadow: 0 0 0 1px #b42318; }
#modal_RegistrationValidation .modal-header { background: #f2edf7; border-bottom: 1px solid #e5deec; padding: 22px 24px; }
#modal_RegistrationValidation .modal-title { color: #38204e; font-size: 23px; line-height: 1.4; }
#modal_RegistrationValidation .modal-title .fa { color: #a33b21; margin-right: 7px; }
#modal_RegistrationValidation .modal-body { padding: 20px 24px; }
#registration-validation-summary { font-size: 16px; color: #666; margin: 0 0 16px; }
#registration-validation-list { list-style: none; padding: 0; margin: 0; border: 1px solid #e5deec; border-radius: 8px; overflow: hidden; }
#registration-validation-list li + li { border-top: 1px solid #e5deec; }
.registration-validation-item { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; border: 0; background: #fff; padding: 14px 16px; text-align: left; cursor: pointer; }
.registration-validation-item strong { display: block; font-size: 16px; color: #38204e; margin-bottom: 3px; }
.registration-validation-item span span { display: block; font-size: 14px; line-height: 1.5; color: #666; }
.registration-validation-item > .fa { color: #75578e; font-size: 24px; }
.registration-validation-item:hover, .registration-validation-item:focus { background: #f7f3fa; }
.registration-validation-item:focus { outline: 2px solid #2074ad; outline-offset: -3px; }
#modal_RegistrationValidation .btn-primary { background: #5f3b82; border-color: #5f3b82; padding: 10px 20px; min-height: 46px; font-size: 17px; }
#modal_RegistrationValidation .btn:focus { outline: 3px solid #2074ad; outline-offset: 2px; }
.registration-document-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; }
.registration-document-controls .btn { min-height: 40px; padding: 8px 12px; font-size: 14px; background: #fff; border: 1px solid #ccc; color: #333; }
.registration-document-controls .btn:hover { background: #f5f5f5; border-color: #999; }
.registration-document-controls .fa { margin-right: 4px; color: #666; }
.upload-summary { font-size: 13px; color: #666; }
.upload-summary.has-files { color: #16794b; }
#modal_DocumentUpload .btn { min-height: 46px; padding: 10px 18px; font-size: 17px; white-space: normal; }
#modal_DocumentUpload .btn-primary { background: #5f3b82; border-color: #5f3b82; color: white; }
.registration-upload-open:focus, #modal_DocumentUpload button:focus { outline: 3px solid #2074ad; outline-offset: 3px; }
#modal_DocumentUpload .modal-title { font-size: 25px; color: #38204e; }
#modal_DocumentUpload .modal-body { font-size: 17px; line-height: 1.6; color: #24212a; }
#upload-drop-zone { border: 2px dashed #75578e; border-radius: 10px; padding: 24px 16px; text-align: center; margin: 18px 0; background: #faf8fc; }
#upload-drop-zone.drag-over { background: #eee4f6; border-style: solid; }

#upload-message { color: #963b13; font-weight: bold; }

#modal_DocumentUpload .modal-header { background: #f2edf7; border-bottom: 1px solid #d3c5df; }

.registration-document-controls .document-file-list { flex-basis: 100%; width: 100%; margin: 2px 0 0; }
.document-file-list { list-style: none; padding: 0; margin: 0; }
.document-file { display: flex; align-items: center; gap: 9px; padding: 7px 0; border-bottom: 1px solid #eee; font-size: 14px; }
.document-file:last-child { border-bottom: 0; }
.document-file-number { color: #777; flex-shrink: 0; }
.document-file-info { flex: 1; min-width: 0; }
.document-file-name { display: block; overflow-wrap: anywhere; color: #333; }
.document-file-size { display: block; color: #777; font-size: 12px; margin-top: 2px; }
.document-file-delete { flex-shrink: 0; width: 40px; height: 40px; padding: 0; background: transparent; border: 1px solid transparent; border-radius: 4px; color: #b42318; font-size: 18px; cursor: pointer; }
.document-file-delete:hover { background: #fff0ee; border-color: #f2c6c1; }
.document-file-delete:focus { outline: 2px solid #2074ad; outline-offset: 2px; }
.document-file-delete:disabled { opacity: .45; cursor: default; }
.registration-document-controls .document-file-delete .fa { color: inherit; margin: 0; }
#modal_DocumentUpload .modal-body { padding: 20px 24px; }
#modal_DocumentUpload .upload-help { margin: 0; color: #666; font-size: 15px; }
#upload-drop-zone { margin: 16px 0 12px; padding: 22px 16px 16px; }
.upload-area-icon { font-size: 32px; color: #75578e; }
.upload-drop-title { font-size: 20px; margin: 5px 0 12px; font-weight: 600; }
#modal_DocumentUpload .upload-formats { margin: 12px 0 0; font-size: 13px; color: #666; }
.upload-capacity { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; font-size: 13px; color: #666; }
#upload-selected { margin-top: 20px; }
#upload-selected-title { font-size: 15px; font-weight: 600; margin: 0 0 6px; }
#upload-message:empty { display: none; }
#upload-message { margin: 14px 0 0; font-size: 14px; }
#modal_DocumentUpload .upload-privacy { margin: 18px 0 0; font-size: 12px; line-height: 18px; color: #777; }
