/* ==========================================================================
   Login User Control
   ========================================================================== */

.ascx-user-login-control {
    font-size: 16px;
    line-height: 1.4;
}



/* ==========================================================================
   Title
   ========================================================================== */

.ascx-user-login-control__title {
    padding: 48px 0 0;
    margin: 0 0 16px;
    text-align: center;
}

@media (max-height: 500px) {
    .ascx-user-login-control__title {
        padding: 18px 0 0;
        margin: 0 0 8px;
        font-size: 22px;
    }
}

@media (min-height: 840px) {
    .ascx-user-login-control__title {
        padding: 120px 0 0;
    }
}

@media (min-height: 1024px) {
    .ascx-user-login-control__title {
        padding: 180px 0 0;
        padding: 120px 0 0;
    }
}



/* ==========================================================================
   School Name
   ========================================================================== */

.ascx-user-login-control__school-name {
    font-size: 26px;
    line-height: 1.3;
    margin: 0;
}



/* ==========================================================================
   Login Panel
   ========================================================================== */

.ascx-user-login-control__login-panel {
    padding: 48px 42px 32px;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);
    border-radius: 12px;
    max-width: 268px;
    margin: 0 auto 24px;
    background-color: #fff;
}

.is-mobile .ascx-user-login-control__login-panel {
    padding: 32px 24px 16px;
}




/* ==========================================================================
    School Logo
   ========================================================================== */

.ascx-user-login-control__school-logo {
    text-align: center;
    inline-size: 26rem;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
}

.is-mobile .ascx-user-login-control__school-logo {
    inline-size: 20rem;
    padding: 16px;
}



/* ==========================================================================
    School Logo Image
   ========================================================================== */

.ascx-user-login-control__school-logo-image {
    max-inline-size: 100%;
    max-block-size: 4rem;
    object-fit: contain;
    vertical-align: middle;
    block-size: auto;
}



/* ==========================================================================
   Sub Title
   ========================================================================== */

.ascx-user-login-control__sub-title {
    margin: 0px 0 24px;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    line-height: 1.1;
}



/* ==========================================================================
   Conditions Panel
   ========================================================================== */

.ascx-user-login-control__conditions-panel {
    background-color: #fff;
    padding: 48px;
    box-shadow: 0 4px 16px rgba(0,0,0,.1);
    border-radius: 12px;
    margin: 10px auto 64px;
    max-width: 530px;
}

.is-mobile .ascx-user-login-control__conditions-panel {
    padding: 24px;
}



/* ==========================================================================
   Conditions Lead Paragraph
   ========================================================================== */

.ascx-user-login-control__conditions-lead-paragraph {
    background-color: #e5f0fb;
    padding: 16px 16px;
    border-radius: 4px;
    margin: 0 -2px 16px;
}



/* ==========================================================================
   Conditions Save and Cancel Buttons
   ========================================================================== */

.ascx-user-login-control__conditions-save-and-cancel-buttons {
    display: flex;
    gap: 8px;
    margin: 32px 0 0 0;
    justify-content: flex-end;
}



/* ==========================================================================
   Form Section
   ========================================================================== */

.ascx-user-login-control__form-section {
    margin-bottom: 16px;
    position: relative;
}



/* ==========================================================================
   Form Section Links
   ========================================================================== */

.ascx-user-login-control__form-section-links {
    text-align: center;
    margin-bottom: 10px;
}



/* ==========================================================================
   Form Section Link
   ========================================================================== */

.ascx-user-login-control__form-section-link {
    display: block;
}



/* ==========================================================================
   Form Section Token Error
   ========================================================================== */

.ascx-user-login-control__form-section-token-error {
    margin-bottom: 24px;
}



/* ==========================================================================
   Form Section Support Link
   ========================================================================== */

.ascx-user-login-control__form-section-support-link {
    text-align: center;
    margin-bottom: 128px;
    font-size: 14px;
}



/* ==========================================================================
   Form Section Radio Buttons
   ========================================================================== */

.ascx-user-login-control__form-section-radio-buttons {
    margin: 32px 0;
}



/* ==========================================================================
   Form Section Radio Button
   ========================================================================== */

.ascx-user-login-control__form-section-radio-button {
    display: block;
    margin-bottom: 8px;
}

.ascx-user-login-control__form-section-radio-button input[type="radio" i] {
    margin-left: 0;
    margin-right: 5px;
}



/* ==========================================================================
   Form Label
   ========================================================================== */

.ascx-user-login-control__form-label {
    display: block;
    margin-bottom: 3px;
    font-weight: 600;
}



/* ==========================================================================
   Password Input
   ========================================================================== */

/* Hide microsoft's own solution to show passwords */
.ascx-user-login-control__password-input::-ms-reveal {
    display: none
}



/* ==========================================================================
   Login Button Container
   ========================================================================== */

.ascx-user-login-control__login-button-container {
    margin-top: 26px;
    margin-bottom: 26px;
}



/* ==========================================================================
   Keep Me Logged In Container
   ========================================================================== */

.ascx-user-login-control__keep-me-logged-in-container {
    position: relative;
    line-height: 1.3;
    margin-bottom: 32px;
}



/* ==========================================================================
   Keep Me Logged In Container Label
   ========================================================================== */

.ascx-user-login-control__keep-me-logged-in-label {
    padding: 7px 0 7px 32px;
    cursor: pointer;
}



/* ==========================================================================
   Keep Me Logged In Checkbox and Tick Symbol
   ========================================================================== */

/* Hide the standard checkbox */
.ascx-user-login-control__keep-me-logged-in-checkbox {
    position: absolute;
    opacity: 0;
    padding: 0;
    margin: 0;
    width: 0;
    height: 0;
}

    /* Costum checkbox */
    .ascx-user-login-control__keep-me-logged-in-checkbox + span::before {
        position: absolute;
        content: '';
        left: 0;
        top: 1px;
        width: 20px;
        height: 20px;
        display: block;
        border: 1px solid #b5b5b5;
        background-color: #fff;
        border-radius: 3px;
        transition-property: border-color, box-shadow;
        transition-timing-function: linear;
        transition-duration: .08s;
    }

    /* Costum checkbox when focused */
    .ascx-user-login-control__keep-me-logged-in-checkbox.keyboard-focus:focus + span::before {
        border-color: #3C9AF4;
        box-shadow: 0 0 6px rgba(60, 154, 244, .8);
    }

    /* Costum checkbox when checked */
    .ascx-user-login-control__keep-me-logged-in-checkbox:checked + span::before {
        border-color: #0780ff;
        background-color: #0780ff;
    }

    /* Tick symbol */
    .ascx-user-login-control__keep-me-logged-in-checkbox + span::after {
        content: "";
        position: absolute;
        display: block;
        top: 3px;
        left: 7px;
        opacity: 0;
        width: 5px;
        height: 12px;
        border-style: solid;
        border-color: #fff;
        border-width: 0 2px 2px 0;
        transform: rotate(40deg);
        transition-property: opacity;
        transition-timing-function: linear;
        transition-duration: .08s;
    }

    /* Tick symbol when checked */
    .ascx-user-login-control__keep-me-logged-in-checkbox:checked + span::after {
        opacity: 1;
    }



/* ==========================================================================
   Save and Cancel Buttons
   ========================================================================== */

.ascx-user-login-control__save-and-cancel-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 32px 0;
}



/* ==========================================================================
   Support Text
   ========================================================================== */

.ascx-user-login-control__support-text {
    text-align: center;
    margin-top: 24px;
}



/* ==========================================================================
   Txt Forgot Password
   ========================================================================== */

.ascx-user-login-control__txt-forgot-password {
    display: block;
    margin-bottom: 2px;
}

.is-mobile .ascx-user-login-control__txt-forgot-password {
    margin-bottom: 6px;
}



/* ==========================================================================
   Change Password Panel
   ========================================================================== */

.ascx-user-login-control__change-password-panel {
    padding: 48px 42px;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);
    border-radius: 12px;
    max-width: 268px;
    margin: 0 auto 24px;
    background-color: #fff;
}

.is-mobile .ascx-user-login-control__change-password-panel {
    padding: 32px 24px 42px;
}



/* ==========================================================================
   Form Section Change Password
   ========================================================================== */

.ascx-user-login-control__form-section-change-password {
    margin-bottom: 20px;
    position: relative;
}



/* ==========================================================================
   Conditions Sub Title
   ========================================================================== */

.ascx-user-login-control__conditions-sub-title {
    margin: 0px 0 24px;
    font-size: 20px;
    font-weight: 600;
}



/* ==========================================================================
   Change Password Error
   ========================================================================== */

.ascx-user-login-control__change-password-error {
    display: block;
    color: red;
    font-size: 15px;
}



/* ==========================================================================
   Change Password Save And Cancel
   ========================================================================== */

.ascx-user-login-control__change-password-save-and-cancel-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 32px 0 0;
}



/* ==========================================================================
   Password Policy Info
   ========================================================================== */

.ascx-user-login-control__password-policy-info {
    background-color: lightyellow;
    padding: 6px;
    display: none;
}



/* ==========================================================================
   Validation Error General
   ========================================================================== */

.ascx-user-login-control__validation-error-general {
    display: block;
    padding: 7px 8px 5px 10px;
    border-radius: 3px;
    border: 2px solid #e00;
    color: #e00;
    font-weight: 600;
    font-size: 15px;
}



/* ==========================================================================
   Validation Error Specific
   ========================================================================== */

.ascx-user-login-control__validation-error-specific {
    color: red;
    font-size: 14px;
    margin-top: 4px;
}