html {
    height: 100%;
    overflow: hidden;
}

.btn-block {
    width: 100%;
    display: block;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

.login {
    margin: 0 auto;
    margin-top: 15vh;
    width: 840px;
    height: 440px;
    font-size: 1.3em;
}

.login-ncolumns-1 {
    width: 440px
}


.login h1 {
    text-shadow: 0px 1px 0px rgba(255, 255, 255, .3), 0px -1px 0px rgba(0, 0, 0, .7);
    color: #fff;
    font-size: 1em;
    letter-spacing: 1px;
    text-align: center;
    font-weight: 100;
    margin-bottom: 2em;
}

.login-ncolumns-1 h1 {
    margin-bottom: 0;
}

.message {
    display: block;
    font-family: monospace;
    padding: 1em;
    text-align: center;
    color: #04e3ff;
    max-width: 380px;
    overflow-wrap: break-word;
}

input {
    width: 100%;
    margin-bottom: 1em;
    background: rgba(0, 0, 0, 0.3);
    border: none;
    outline: none;
    padding: 10px;
    color: #fff;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(0, 0, 0, 0.3);
    border-radius: 4px;
    box-shadow: inset 0 -5px 45px rgba(100, 100, 100, 0.2), 0 1px 1px rgba(255, 255, 255, 0.2);
    -webkit-transition: box-shadow .5s ease;
    -moz-transition: box-shadow .5s ease;
    -o-transition: box-shadow .5s ease;
    -ms-transition: box-shadow .5s ease;
    transition: box-shadow .5s ease;
}

input:focus {
    box-shadow: inset 0 -5px 45px rgba(100, 100, 100, 0.4), 0 1px 1px rgba(255, 255, 255, 0.2);
}


.loginButton {
    color: #666;
    text-decoration: none;
    font-size: 16px;
    width: 100%;
    padding: 10px 15px;
    background: #f3f3f3;
    background: -webkit-gradient(linear, 0% 40%, 0% 70%, from(#FFF), to(#DDD));
    background: -moz-linear-gradient(linear, 0% 40%, 0% 70%, from(#FFF), to(#DDD));
    border: solid 1px #dcdcdc;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
}

.loginButton:hover {
    color: #444;
    border-color: #999;
    -moz-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    background: -webkit-gradient(linear, 0% 40%, 0% 70%, from(#DFDFDF), to(#DDD));
    background: -moz-linear-gradient(linear, 0% 40%, 0% 70%, from(#DFDFDF), to(#DDD));
}

.samlButton:active {
    border: inset;
}

#connectors_auth {
    padding-top: 1rem;
}

.samlButton, .oidcButton {
    margin: 0.5em 0;
    color: #DDD;
    background: #092756;
    background: -webkit-linear-gradient(0deg, #092756 0%, rgb(21, 117, 144) 80%, rgb(22, 125, 167) 100%);
    background: -o-linear-gradient(0deg, #092756 0%, rgb(21, 117, 144) 80%, rgb(22, 125, 167) 100%);
    background: -ms-linear-gradient(0deg, #092756 0%, rgb(21, 117, 144) 80%, rgb(22, 125, 167) 100%);
    background: -moz-linear-gradient(0deg, #092756 0%, rgb(21, 117, 144) 80%, rgb(22, 125, 167) 100%);
    background: linear-gradient(0deg, #092756 0%, rgb(21, 117, 144) 80%, rgb(22, 125, 167) 100%);
    border: solid 0px #dcdcdc;
}

.samlButton:hover, .oidcButton:hover {
    color: #DDD;
    -moz-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    background: #092756;
    background: -webkit-linear-gradient(0deg, #092756 0%, rgb(11, 97, 124) 80%, rgb(12, 105, 147) 100%);
    background: -o-linear-gradient(0deg, #092756 0%, rgb(11, 97, 124) 80%, rgb(12, 105, 147) 100%);
    background: -ms-linear-gradient(0deg, #092756 0%, rgb(11, 97, 124) 80%, rgb(12, 105, 147) 100%);
    background: -moz-linear-gradient(0deg, #092756 0%, rgb(11, 97, 124) 80%, rgb(12, 105, 147) 100%);
    background: linear-gradient(0deg, #092756 0%, rgb(11, 97, 124) 80%, rgb(12, 105, 147) 100%);
}

.samlButton:active, .oidcButton:active {
    border: 0px inset;
}

body {
    width: 100%;
    height: 100%;
    font-family: 'Armata', 'Montserrat', sans-serif;
}

.ror-footer {
    position: fixed;
    font-size: 90%;
    font-style: italic;
    width: 100%;
    left: 0;
    bottom: 0;
    color: #aaa;
    background: rgba(0, 0, 0, 0.2)
}

.text-center {
    text-align: center;
}

.ror-logo {
    height: 1rem;
}

.ror-logo-ncolumns-2 {
    display: none;
}

.ror-logo-ncolumns-1 {
    height: 5rem;
}

.ror-logolink {
    text-decoration: none;
    color: #f3f3f3;
    text-shadow: 0px 1px 0px rgba(255, 255, 255, .3), 0px -1px 0px rgba(0, 0, 0, .7);
    font-size: 0.7rem;
    letter-spacing: 1px;
    margin-bottom: 1rem;
    font-style: normal;
    font-weight: 100;
}

.form-wrapper {
    background: rgba(255, 255, 255, 0.1);
    padding: 2rem 2rem 1rem 2rem;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    box-shadow: rgba(29, 29, 31, .33) 0 10px 60px;
}

/* "login-*" texts*/
.login-text {
    margin-bottom: 1.5em;
    line-height: 1.5em;
    color: #f3f3f3;
}

.login-title {
    font-size: 1.3em;
}

.login-subtitle {
    font-size: 0.6em
}

.lf-wrapper {
    margin: 15px;
    margin: 0 auto;
}

.lf-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
}

.lf-column {
    flex-direction: column;
    flex-basis: 100%;
    flex: 1;
    padding: 1em;
}

.lf-left-column {
    height: 100px;
}

.lf-left-column-ncolumns-1 {
    display: none;
}

.lf-right-column {
    height: 100px;
}

.lf-left-column a {
    color: #04e3ff;
    text-decoration: none;
}

@media (max-height: 600px) {
    html {
        overflow: scroll;
    }
}

@media (max-width: 800px) {
    body {
        /* otherwise if we many SAML connectors, it won't scroll down*/
        overflow: scroll;
    }

    .ror-footer {
        display: none !important;
    }

    .ror-logolink {
        display: none !important;
    }

    .lf-row {
        flex-direction: column !important;
    }

    .login {
        position: initial !important;
        top: initial !important;
        left: initial !important;
        margin: initial !important;
        width: initial !important;
    }

    .lf-column {
        max-width: 600px !important;
        margin: 0 auto !important;
    }
}
