
body {
    --rt-dark-background-color: #222;
    --rt-background-color: #fafaf9;
    --rt-text-color: #262922;
    --rt-dark-text-color: #e1e1e1;
    --color-corporate: #00a77f;
    --color-corporate-r: 0;
    --color-corporate-g: 167;
    --color-corporate-b: 127;
    --color-corporate-lighten-005: #00c092;
    --color-corporate-lighten-010: #00daa6;
    --color-corporate-darken-002: #00b187 font-family: Roboto, "Helvetica Neue", sans-serif;
    font-size: 15px;
    line-height: 1.42857143;
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
}



* {
    box-sizing: border-box
}

::-moz-selection {
    background: #00a77f;
    color: #fff
}

::selection {
    background: #00a77f;
    color: #fff
}

a {
    text-decoration: none;
    transition: color .3s;
    cursor: pointer;
}

    a:hover {
        color: var(--color-corporate-lighten-005)
    }

        a:focus:active,
        a:hover:active {
            color: var(--color-corporate-lighten-010)
        }


#toast-container .toast {
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16), 0 3px 6px rgba(0, 0, 0, .23);
    transition: opacity .3s, box-shadow .3s cubic-bezier(.25, .8, .25, 1)
}

    #toast-container .toast:hover {
        box-shadow: 0 10px 20px rgba(0, 0, 0, .19), 0 6px 6px rgba(0, 0, 0, .23)
    }

    #toast-container .toast.toast-success {
        background-color: #00a77f;
    }

    #toast-container .toast.toast-error {
        background-color: #b5152b
    }

    #toast-container .toast.toast-info {
        background-color: #8a8e89
    }

    #toast-container .toast.toast-warning {
        background-color: #e29200
    }

    #toast-container .toast progress-bar {
        height: 2px
    }


h1 {
    font-weight: 700
}

h2,
h3,
h4,
h5,
h6,
label {
    font-weight: 500
}

div,
em,
span {
    font-weight: 400
}

    div.ng2-dropdown-menu {
        max-height: 360px;
        width: 360px
    }


/*----------------------------------------*/


.page-background {
    z-index: -1;
    position: fixed;
    width: 104%;
    height: 104%;
    left: -2%;
    top: -2%;
    background-size: cover;
    background-position: center top;
    filter: blur(15px);
}

rt-login {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    /*overflow: hidden;*/
}

.login-wrapper {
    margin-top: 15vh;
    z-index: 1;
}

.login-content {
    width: 350px;
}

.login-logo {
    background-image: url(../assets/images/dot4-logo-entry.png);
    width: 100%;
    height: 100px;
    margin-bottom: 15px;
    display: inline-block;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    filter: drop-shadow(0 5px 5px rgba(0, 0, 0, .5));
}


rt-dialog {
    display: block;
    border: 1px solid #00a77f;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .19), 0 6px 6px rgba(0, 0, 0, .23);
    max-height: 96vh;
    max-width: 96vw;
    margin: auto;
}

rt-dialog-header {
    display: block;
    padding: 11px 16px;
    max-height: 50px;
    /*border-bottom: 1px solid #afb1ad;*/
    background: #00a77f;
    color: #fff;
    font-size: 106%;
    font-weight: 400;
    height: 50px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

    rt-dialog-header > h3 {
        color: #fff;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        font-weight: 500;
        margin: 0;
        padding: 0;
        border: 0;
        vertical-align: baseline;
    }

rt-dialog-content {
    display: block;
    border: none;
    /*background-color: #fff;*/
    position: relative;
    /*min-height: 90px;*/
    min-width: 310px;
    max-height: calc(96vh - 50px - 50px);
}

    rt-dialog-content > section {
        border: 0;
        vertical-align: baseline;
        display: block;
        margin: 10px;
        padding: 6px 10px;
    }

        rt-dialog-content > section + section {
            padding: 0px 10px;
        }

rt-dialog-footer {
    margin-top: 25px;
    text-align: right;
    display: block;
    padding: 10px 16px;
    max-height: 50px;
    height: 50px;
}

rt-text-input {
    display: inline-block;
    position: relative;
    font-size: 15px;
    width: 100%;
}

    rt-text-input > input,
    rt-text-input > select {
        display: block;
        height: 30px;
        width: 100%;
        padding: 6px 12px;
        border-radius: 3px;
        font-size: 100%;
        font: inherit;
        line-height: 1.42857143;
        box-shadow: none;
        outline: 0;
        transition: border-color .3s, box-shadow .3s cubic-bezier(.25, .8, .25, 1);
    }


rt-button {
    font-family: Roboto, "Helvetica Neue", sans-serif;
    font-size: 15px;
    line-height: 1.42857143;
    color: #262922;
    text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent;
    --color-corporate: #00a77f;
    --color-corporate-r: 0;
    --color-corporate-g: 167;
    --color-corporate-b: 127;
    --color-corporate-lighten-005: #00c092;
    --color-corporate-lighten-010: #00daa6;
    --color-corporate-darken-002: #00b187;
    text-align: right;
    box-sizing: border-box;
}


    rt-button > button {
        margin: 0;
        font: inherit;
        overflow: visible;
        text-transform: none;
        -webkit-appearance: button;
        font-family: inherit;
        background-image: none;
        border: 1px solid #817c70;
        border-radius: 3px;
        color: #fff;
        box-shadow: none;
        white-space: nowrap;
        display: inline-flex;
        transition: background-color .3s, color .3s, box-shadow .3s cubic-bezier(.25, .8, .25, 1);
        touch-action: manipulation;
        text-align: center;
        align-items: center;
        justify-content: center;
        vertical-align: middle;
        text-decoration: none;
        user-select: none;
        cursor: pointer;
        outline: 0;
        height: 30px;
        font-size: 100%;
        line-height: 1.2;
        padding: 2px 6px;
        background-color: #00a77f;
        border-color: #009d77;
    }


        rt-button > button > rt-icon {
            color: #fff;
            white-space: nowrap;
            text-align: center;
            user-select: none;
            cursor: pointer;
            font-size: 100%;
            line-height: 1.2;
            box-sizing: border-box;
            display: inline-block;
            position: relative;
        }

            rt-button > button > rt-icon > i {
                color: #fff;
                white-space: nowrap;
                user-select: none;
                cursor: pointer;
                box-sizing: border-box;
                margin: 0;
                padding: 0;
                border: 0;
                -webkit-font-smoothing: antialiased;
                display: inline-block;
                font-style: normal;
                font-variant: normal;
                text-rendering: auto;
                line-height: 1;
                text-align: center;
                width: 1.25em;
                font-family: 'Font Awesome 5 Pro';
                font-weight: 900;
                font-size: 1.2em;
                vertical-align: middle;
                touch-action: none;
            }

        rt-button > button > span {
            color: #fff;
            white-space: nowrap;
            text-align: center;
            user-select: none;
            cursor: pointer;
            font-size: 100%;
            line-height: 1.2;
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            border: 0;
            vertical-align: baseline;
            font-weight: 400;
            margin-left: 5px;
        }

rt-powered-by {
    position: absolute;
    bottom: 30px;
    float: left;
    white-space: nowrap;
    left: calc(50% - 75px);
}

.poweredby-label {
    font-size: 60%;
    margin-left: 5px;
}

.poweredby-logo {
    background-size: contain;
    background-repeat: no-repeat;
    height: 10px;
    width: 150px;
    background-image: url(../assets/images/realtech-logo-no-whitespace.svg);
}

.password-input {
    display: block;
}

    .password-input > rt-text-input {
        padding-bottom: 5px;
    }

.logged-out-link {
    text-decoration: underline;
}

.forgot-password-link {
    transition: color .3s;
    cursor: pointer;
    margin-top: 6px;
    padding: 0 1px;
    font-size: 88%;
    line-height: 15px;
}

.switch-wrapper {
    display: inline-flex;
}

.switch-label {
    font-weight: 400;
}

.switch {
    margin-right: 5px;
}

@-webkit-keyframes pulse {
    0%, 100% {
        -webkit-transform: scale(0.97);
    }

    50% {
        -webkit-transform: scale(1);
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(0.97);
    }

    50% {
        transform: scale(1);
    }
}

.redirect-logo {
    background-image: url(../assets/images/dot4-logo-entry.png);
    top: -2%;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    animation: pulse 1.5s infinite ease-in;
    /*-webkit-filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.5));*/
    filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.5));
}


.redirect-background {
    position: fixed;
    width: 104%;
    height: 104%;
    left: -2%;
    top: -2%;
    z-index: -1;
    /*background-image: url(../assets/images/bg1.jpg);*/
    /*background: #ededed;*/
    background-size: cover;
    background-position: center top;
    overflow: hidden;
    filter: blur(15px);
}

.redirect-logo-wrapper {
    width: 14%;
    min-width: 140px;
    height: 100%;
    position: absolute;
    left: 50%;
    transform: translate(-50%);
}

.margin-bottom-15 {
    margin-bottom: 15px;
}

.select-language-form > button {
    margin-top: 70px;
    margin-bottom: -50px;
    float: right;
    margin-right: 15%;
    color: #fff;
    background-color: #00a77f;
    border-color: #00a77f;
}

    .select-language-form > button:hover,
    .select-language-form > button:focus,
    .select-language-form > button.focus {
        color: #fff;
    }

.alert-max-height {
    max-height: 40vh;
    overflow: auto;
}

hr {
    margin-top: 90px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #00a77f;
}


@media (prefers-color-scheme: dark) {
    body {
        background: var(--rt-dark-background-color);
        color: var(--rt-dark-text-color);
    }

    a {
        color: var(--rt-dark-text-color);
    }

    .page-background {
        background: var(--rt-dark-background-color);
        color: var(--rt-dark-text-color);
    }

    rt-dialog {
        background-color: #333; /*#353835; */ /*#434442;*/
        color: #b1b1b1;
    }

    rt-dialog-footer {
        border-top: 1px solid var(--rt-dark-background-color);
        background: var(--rt-dark-background-color);
    }

    rt-text-input > input {
        background: #4a4b49;
        color: #b1b1b1;
        border: 1px solid #353835;
    }

    .poweredby-label {
        color: var(--rt-dark-text-color);
    }

    .logged-out-link {
        color: var(--rt-background-color);
    }

    .forgot-password-link {
        color: var(--rt-background-color);
    }

    .redirect-background {
        background: var(--rt-dark-background-color);
        color: var(--rt-dark-text-color);
    }

    .logged-out,
    .logged-out > h1,
    .logged-out > h1 > small {
        background: var(--rt-dark-background-color);
        color: var(--rt-dark-text-color);
    }
}

@media (prefers-color-scheme: light) {
    body {
        background-color: var(--rt-background-color);
        color: var(--rt-text-color);
    }

    a {
        color: var(--rt-text-color);
    }

    .page-background {
        background-color: var(--rt-background-color);
        color: var(--rt-text-color);
    }

    rt-dialog {
        background-color: var(--rt-background-color);
        color: #424242;
    }

    rt-dialog-footer {
        background: #e4e4e3; /* #d7d8d6*/
        border-top: 1px solid #d7d8d6;
    }

    rt-text-input > input {
        border: 1px solid #d7d8d6;
        background-color: var(--rt-background-color);
        color: #262922;
    }

    .poweredby-label {
        color: var(--rt-text-color);
    }

    .logged-out-link {
        color: #262922;
    }

    .forgot-password-link {
        color: #262922;
    }

    .redirect-background {
        background-color: var(--rt-background-color);
        color: var(--rt-text-color);
    }

    .logged-out,
    .logged-out > h1,
    .logged-out > h1 > small {
        background-color: var(--rt-background-color);
        color: var(--rt-text-color);
    }
}
