﻿/* Validation Error Box Styling */
.validation-error-container {
    margin-bottom: 20px;
}

.alert {
    padding: 5px !important;
    border: none !important;
}

.validation-alert {
    color: #000000;
    background-color: #ff7400;
    border-color: #ff7400;
    border-radius: 4px;
    font-size: 0.9rem;
}

.validation-alert ul {
    list-style-type: none;
    padding: 5px;
    margin: 5px;
}

.validation-alert li {
    margin-bottom: 5px; 
}

.forgot-link {
    background: none;
    border: none;
    text-decoration: underline;
    cursor: pointer;
    font-size: inherit; 
    padding: 0;
}

.forgot-link:hover {
    color: #0056b3;
}

/* Login Page */
.form-page-main {
    min-height: 80vh; 
    display: flex;
    align-items: center; 
    justify-content: center;
}

.logo-container {
    text-align: left;
    margin-bottom: 20px; 
}

.logo {
    max-width: 40px;
}

.form-card-main {
    background-color: white;
    padding: 20px;
    max-width: 380px;
    width: 100%;
    border-radius: 8px;
    border: none;
    position: relative;
}

.heading-main {
    font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: 10px;
    color: #333;
    text-align: left;
}

.line-under-heading {
    height: 3px;
    width: 40px;
    background-color: #d40000;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    font-weight: bold;
    font-size: 0.85rem;
    color: #333;
    display: block;
    margin-bottom: 5px;
}

.form-control {
    border: 1px solid #ced4da;
    border-radius: 0;
    padding: 12px;
    font-size: 1rem;
    width: 100%;
}

.form-control-transparent {
    border: none !important;
    color: #a20106 !important;
    background-color: transparent !important;
    cursor: default;
}

.form-check {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.form-check-input {
    margin-right: 8px;
    color: #a20106;
}

.form-check-label {
    font-size: 0.9rem;
}

.links-container {
    margin-top: 15px;
    text-align: center;
}

.forgot-password {
    margin-bottom: 10px;
}

.link-text-label {
    font-size: 0.85rem;
    color: #333;
}

.btn-submit-main {
    background-color: #a20106;
    color: white;
    width: 100%;
    padding: 12px;
    font-weight: bold;
    border: none;
    text-transform: uppercase;
    cursor: pointer;
}

.btn-danger {
    color: #fff;
    background-color: #a20106 !important;
    border-color: #a20106 !important;
}

.btn-submit-main:hover {
    background-color: #b30000;
}

.links-container {
    margin-top: 15px;
    text-align: center;
}

.forgot-link {
    font-size: 0.85rem;
    color: #000000;
    text-decoration: underline;
}

.forgot-link:hover {
    color: #a20106;
}

.link-text-label {
    font-size: 0.85rem;
    color: #333;
}

.link-text-link {
    color: #000000;
    text-decoration: underline;
}

.link-text-link:hover {
    color: #a20106;
}

.custom-checkbox {
    display: none; /* Hide the default checkbox */
}

.form-check {
    padding-left: 0 !important;
}

.form-check-label {
    position: relative;
    padding-left: 30px; /* Space for the custom checkbox */
    cursor: pointer; /* Pointer cursor on hover */
}

.form-check-label .checkmark {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20px; /* Size of the checkbox */
    height: 20px; /* Size of the checkbox */
    border: 2px solid #a20106; /* Border color */
    border-radius: 3px; /* Optional: rounded corners */
    background-color: white; /* Background color */
}

.custom-checkbox:checked + .form-check-label .checkmark {
    background-color: #a20106; /* Background color when checked */
    border-color: #a20106; /* Border color when checked */
}

.custom-checkbox:checked + .form-check-label .checkmark:after {
    content: '';
    position: absolute;
    left: 6px; /* Adjust position for tick mark */
    top: 2px; /* Adjust position for tick mark */
    width: 5px; /* Width of the tick mark */
    height: 10px; /* Height of the tick mark */
    border: solid white; /* Color of the tick mark */
    border-width: 0 2px 2px 0; /* Create the tick mark shape */
    transform: rotate(45deg); /* Rotate to create the tick mark */
}

/* Reset password*/
.reset-password-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.reset-password-card {
    max-width: 500px;
    width: 100%;
    box-shadow: none !important;
}

.reset-password-heading {
    font-weight: bold;
    font-size: 1.75rem;
    margin-bottom: 10px;
    color: #333;
    text-align: left;
}

/* Email Confirmation Page */
.secondary-page {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.confirmation-message {
    max-width: 400px;
    width: 100%;
    border-radius: 8px;
    background-color: #f8f9fa;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.confirmation-heading {
    font-weight: bold;
    font-size: 1.75rem;
    margin-bottom: 10px;
    color: #333;
}

.confirmation-text {
    color: #666;
}

/* Resend Confirmation Page */
.resend-confirmation-page {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.text-left {
    text-align: left;
}

.external-login-logo {
    margin: 5px;
    max-height: 15px !important;
    width: auto;
}

.password-input-container {
    position: relative;
}

.phone-input-container {
    position: relative;
}

.eye-icon {
    position: absolute; /* Position the icon relative to the input container */
    right: 10px; /* Adjust the icon position from the right edge */
    top: 50%; /* Move the icon to the vertical center */
    transform: translateY(-50%); /* Adjust to truly center */
    cursor: pointer; /* Add pointer cursor for better UX */
    width: 20px; /* Optional: set a consistent size for the icon */
    height: 20px;
}
