html{
    box-sizing:border-box;
    font-family: Roboto, sans-serif;
    font-size:0.75em;
}
*{
    box-sizing:inherit;
}
body{
    display:flex;
    flex-direction:column;
    margin:0;
    height:100%;
}

.tc-login-help-header{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding:0.5rem;
    margin-bottom: 0.5rem;
    gap: 2rem;
    font-size: 1.5em;
    border-bottom-style: solid;
    border-bottom-width: 2px;
}
.tc-login-help-header-logo{
    height:calc(1em + 0.5rem);
    padding-top:0.25rem;
    padding-bottom:0.25rem;
}
.tc-login-help-header-logo>img{
    height:100%;
}
.tc-login-help-content-root{
    display:flex;
    flex-direction:column;
    padding: 0.5rem;
    gap: 0.5rem;
    flex-grow:1;
}
.tc-login-help-message{
    padding-top:1rem;
}
.tc-login-help-footer{
    display:flex;
    flex-direction:row;
    gap: 0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    border-top-style: solid;
    border-top-width: 1px;
}
.tc-login-help-footer>*{
    padding-top:0.25rem;
    padding-bottom:0.25rem;
}
.tc-login-help-footer>*:not(:last-child){
    padding-right:0.75rem;
    border-right-style:solid;
    border-right-width:1px;
}
.tc-login-help-legal{
    flex-grow:1;
    text-align:right;
}

.login-overlay{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

form.edge-login{
    position:absolute;
    display:flex;
    flex-direction:column;
    align-items:center;
    top:30%;
    left:50%;
    transform:translate(-50%, 0);
}
form.edge-login h1{
    font-weight:bold;
    width:36em;
    max-width:90vw;
    border-bottom-width:1px;
    border-bottom-style:solid;
    margin:0.6em;
    padding-bottom: 0.6em;
    line-height:1.2;
}

form.edge-login .form-group{
    display:flex;
    flex-direction:column;
    width:36em;
    max-width:90vw;
    max-height:14vh;
    margin:0 0.6em 1.2em 0.6em;
}

label{
    display: inline-block;
    margin-bottom: .5rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

.form-control{
    display: block;
    width: 100%;
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
input:-internal-autofill-selected {
    font-family:inherit;
}
.btn{
    font-size:1rem;
}
.btn-primary{
    color:white;
    background-color:#007bff;
    border-color:#007bff;
}


#problems-list{
    display:flex;
    flex-direction:column;
    align-items:center;
    font-weight:bold;
}

form.edge-login input{
    height:2.9em;
    max-height:9vh;
}
form.edge-login label{
    font-weight:normal;
}
form.edge-login .btn-primary{
    width:100%;
    height:2.9em;
    max-height:9vh;
    padding:0;
}

.edge-login-google{
    position:absolute;
    display:flex;
    flex-direction:column;
    align-items:center;
    margin-top:24em;
    top:30%;
    left:50%;
    width:15em;
    transform:translate(-50%, 0);
}
.edge-login-google input{
    height:2.9em;
    max-height:9vh;
}
.edge-login-google .btn-primary{
    width:100%;
    height:2.9em;
    max-height:9vh;
    padding:0;
}

.login-branding-logo{
    position:absolute;
    top:0;
    left:50%;
    height:25%;
    width:36em;
    max-width:95vw;

    background-size:contain;
    background-repeat: no-repeat;
    background-position: center bottom;
    transform:translate(-50%, 0);
}

form.edge-login .login-options{
    position:absolute;
    display:flex;
    justify-content:space-between;
    justify-items:center;
    align-items:center;
    gap:8rem;
    padding:1rem;
    padding-left:2rem;
    padding-right:2rem;
    top:100%;
}
form.edge-login .login-options > *{
    font-size:1.2em;
}
.link-customer-support{
    display:none;
}

[hidden]{
    display:none;
}
