/* Accessibility: Screen reader only text */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

/* Refactored specific styles to use more generic class names */
.validation-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 10px;
}

/* Updated references to use the new class */
#emailValidationContainer {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 10px;
}

/* ✅ General success message */
.success-message {
    color: black !important;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-top: 20px;
    line-height: 1;
}

#lookupResult {
    line-height: 1.4;
}

#lookupResult p {
    line-height: 1.4;
    margin: 0.5em 0;
}

.general-message {
    line-height: 1;
}

/* ❌ General error message */
.error-message {
    color: red;
    font-size: 16px;
    margin-top: 10px;
    font-weight: bold;
    line-height: 1;
}
/* 🟢 Button hover effect */
#lookupSubmit:hover,
#verifyButton:hover,
#continueButton:hover {
    background-color: #f0f0f0;
}
/* 🔴 Disabled button styling */
#verifyButton.disabled {
    pointer-events: none;
    opacity: 0.5;
    cursor: not-allowed;
    background-color: #ccc !important; /* Gray out */
    color: #666 !important;
}

/* Date of Birth field styling */
.dob-field-group {
    margin-bottom: 15px;
    text-align: center;
}

.dob-field-group label {
    display: block;
    margin-bottom: 5px;
}

.dob-inputs {
    display: inline-flex;
    gap: 8px;
    align-items: center;
}

.dob-inputs select,
.dob-inputs input {
    padding: 8px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

/* Day dropdown - smallest */
.dob-inputs select[name="dob_day"] {
    width: 70px;
}

/* Month dropdown - needs more space for text */
.dob-inputs select[name="dob_month"] {
    width: 120px;
}

/* Year dropdown */
.dob-inputs select[name="dob_year"] {
    width: 90px;
}

/* Responsive design for smaller screens */
@media (max-width: 600px) {
    .dob-inputs {
        flex-direction: column;
        gap: 8px;
        max-width: 100%;
    }

    .dob-inputs select,
    .dob-inputs input {
        width: 100% !important;
    }
}