/* ========================= */
/* MAIN LAYOUT */
/* ========================= */

.rtr-login-contatiner{
    display:flex;
    justify-content:space-between;
    max-width:1400px;
    gap:60px;
    margin-left: 45px;
}

.rtr-input--ex-large {
    width: 385px;
    color: #000;
}
.rtr-input--ex-large::placeholder {
    color: #000;
}

.rtr-input--full {
    width: 100%;
    color: #000;
}
.rtr-input--full::placeholder {
    color: #000;
}

.rtr-input-errors li {
    color: #666666;
    font-size: 14px;
    line-height: 140%;
    margin: 6px 0px;
    display: flex;
    text-align: left;
    align-items: center;
}
.rtr-input-errors {
    margin: 12px 0px;
    list-style: none;
    margin-bottom: 24px;
}

.cross-mark {
 background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M12 4L4 12M4 4L12 12' stroke='%23D20532' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    height: 16px;
    width: 16px;
    margin-right: 6px;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
}

.tick {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M13.3337 4L6.00033 11.3333L2.66699 8" stroke="%23138324" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    height: 16px;
    width: 16px;
    margin-right: 6px;
}

.eye-icon {
    display: inline-block;
    width: 28px;
    height: 15px;
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23141516' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 12s3.75-7.5 9.75-7.5S21.75 12 21.75 12s-3.75 7.5-9.75 7.5S2.25 12 2.25 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
}
.eye-icon.hide {
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23141516' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3 3l18 18'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M10.58 10.58A3 3 0 0012 15a3 3 0 002.42-4.42M9.88 5.09A9.77 9.77 0 0112 4.5c6 0 9.75 7.5 9.75 7.5a15.46 15.46 0 01-3.07 4.36M6.1 6.1A15.46 15.46 0 002.25 12s3.75 7.5 9.75 7.5c1.61 0 3.1-.36 4.41-1'/%3E%3C/svg%3E");
}

.password-field {
    position: relative;
    margin-bottom: 15px;
}
.toggle-btn {
    position: absolute;
    right: 0px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #141516;
    cursor: pointer;
    font-size: 14px;
}

/* ========================= */
/* FOOTER LAYOUT */
/* ========================= */

.collins-footer-links {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 52px;
    display: flex;
    align-items: center;
    padding-left:0px;
    justify-content: flex-start;
}

.collins-footer-links a {
    padding: 16px 14px;
    color: #1A4BF7;
    text-decoration: underline;
}

/* ========================= */
/* IMAGE LAYOUT */
/* ========================= */

.collins-right {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.collins-right .cmsimage {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.collins-right img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; /* keeps full image visible */
}

/* ========================= */
/* HEADER LAYOUT */
/* ========================= */

.password-header h1{
    font-size: 39px;
}

.loader-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.loader-spinner {
    width: 50px;
    height: 50px;
    border: 5px solid #ddd;
    border-top: 5px solid #d20532;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    100% { transform: rotate(360deg); }
}

/* SESSION POPUP OVERLAY */
#sessionPopup {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;

    background-color: rgba(0, 0, 0, 0.6); /* dark overlay */
}

/* POPUP BOX */
#sessionPopup .popup-content {
    background: #ffffff;
    padding: 24px;
    border-radius: 8px;
    width: 400px;
    max-width: 90%;

    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* MESSAGE TEXT */
#sessionExpMsg {
    color: #333;
    font-size: 14px;
    line-height: 1.5;
}

/* OPTIONAL: DISABLED FORM LOOK */
#passwordForm.disabled {
    opacity: 0.6;
    pointer-events: none;
}

/* OPTIONAL: LINK STYLE */
#sessionExpMsg a {
    color: #d9232e; /* match your red button theme */
    text-decoration: underline;
}

#accountCreatedPopup, #passwordErrorPopup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 9990;
}

.accountCreatedPopupContent, .passwordErrorPopupContent {
    background: #ffffff;
    margin: 10% auto;
    display: flex;
    max-width: 600px;
    flex-direction: column;
    padding: 12px 16px;
}

.accountCreatedPopupTitle, .passwordErrorPopupTitle {
    font-size: 14px;
    font-weight: 400;
    margin: 0;
}

.accountCreatedPopupHeader, .passwordErrorPopupHeader {
    display: flex;
    justify-content: space-between;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.accountCreatedMsg, .passwordErrorMsg {
    display: flex;
    padding: 12px 0 4px 0;
    flex-direction: column;
    gap: 5px;
}

.accountCreatedMsgTxt, .passwordErrorMsgTxt {
    text-align: center;
    font-size: 17px;
}

.accountCreatedSignInTxt, .passwordErrorContinueTxt {
    color: #6B7280;
    text-align: center;
    font-family: IBM Plex Sans;
    font-size: 14px;
    line-height: 20px;
    padding-bottom: 25px;
}

.accountCreatedSignIn, .enterNewPassword {
    padding: 12px 16px;
    background-color: #D20532;
    color: #ffffff !important;
    border: none;
    cursor: pointer;
    font-family: IBM Plex Sans;
    font-size: 14px;
    letter-spacing: 2px;
}

.accountCreatedImg {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 12px 0 4px 0;
    gap: 12px;
}

.accountCreatedInfo {
    color: #6b7280;
    font-family: IBM Plex Sans;
    font-size: 14px;
    padding-top:20px;
    text-align: justify;
}

.passwordErrorImg{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 12px 0 4px 0;
    gap: 12px;
}

.accountCreatedMsg{
    font-family: IBM Plex Sans;
}