.hideEl {
    display: none !important;
}

.appStatusIcon {
    text-align: center;
    font-size: 20px;
}

.appStatusIcon i.pendingStep {
    color: #dc3545
}

.appStatusIcon i.completedStep {
    color: #2E7C27
}

.alignGroupText .form-control, .alignGroupText .input-group-text {
    height: calc(2.25rem + 2px);
}

.alignGroupText {
    flex-wrap: nowrap;
}

.alignGroupText .input-group-text {
    white-space: nowrap;
    min-width: auto;
}

.alignGroupText .calendar-icon {
    bottom: 1rem !important;
}

.boe-date.disabled {
    pointer-events: none;
    opacity: 0.6;
}

.badge-success {
    color: #ffffff;
    background-color: #2E7C27;
}

.badge-light {
    color: #363642;
    background-color: #f6f7f9;
}

.badge-subtle.badge-dark {
    color: #363642;
    background-color: rgba(34, 34, 48, 0.08);
}

#LocationIdsSelect option:checked {
    background-color: #e9ecef; /* Bootstrap gray-200 */
    color: #212529; /* Bootstrap dark text */
}

/* Remove browser-native valid styling completely */
input:valid,
select:valid {
    -webkit-box-shadow: none !important; /* Chrome/Safari */
    box-shadow: none !important; /* Firefox/Edge */
    outline: none !important;
}

select[multiple]:valid,
input[type="tel"]:valid {
    -webkit-appearance: none !important;
    appearance: none !important;
}

/* Remove green border for Bootstrap .was-validated */
.was-validated .form-control:valid,
.was-validated .form-select:valid,
.was-validated select[multiple]:valid {
    border-color: #ced4da !important; /* neutral border */
    background-color: #fff !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

/* Neutral look for valid radios / checkboxes, but still shows checked */
.was-validated .form-check-input:valid:checked {
    background-color: #0d6efd !important; /* white background */
}

.form-check-input.is-valid {
    border-color: #ced4da !important;
    box-shadow: none;
    color: inherit !important;
}

.form-check-input.is-valid, .was-validated .form-check-input:valid {
    border-color: #ced4da !important;
}

.form-check-input.is-valid ~ .form-check-label, .was-validated .form-check-input:valid ~ .form-check-label {
    color: inherit !important;
}

/* INVALID Select2 */
select.is-invalid + .select2 .select2-selection {
    border-color: #dc3545 !important; /* Bootstrap danger */
    box-shadow: none !important;
}

/* VALID Select2 (optional – remove green) */
select.is-valid + .select2 .select2-selection {
    border-color: #ced4da !important; /* neutral */
    box-shadow: none !important;
}

/* Remove green check icon from valid inputs */
.form-control.is-valid,
.was-validated .form-control:valid {
    background-image: none !important;
    padding-right: .75rem !important; /* reset spacing */
    box-shadow: none !important;
    border-color: var(--bs-border-color) !important; /* neutral border */
}

.alert.alert-sm {
    --bs-alert-padding-y: 0.5rem;
}

.visitedLink,
.visitedLink:visited,
.visitedLink:hover,
.visitedLink:active,
.visitedLink:focus {
    color: #0d6efd !important;
}

.permit-letter{
    width:55px!important;
}