.login { background-image: linear-gradient(to right, mc('blue', '400'), mc('blue', '600')); width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; &.is-error { background-image: linear-gradient(to right, mc('red', '400'), mc('red', '600')); } &::before { content: ''; position: absolute; background-image: url('../svg/login-bg.svg'); background-position: center bottom; background-size: cover; top: 0; left: 0; width: 100vw; height: 100vh; } &-container { position: relative; display: flex; width: 400px; align-items: stretch; box-shadow: 0 14px 28px rgba(0,0,0,0.2); border-radius: 6px; &.is-expanded { width: 650px; .login-frame { border-radius: 0 6px 6px 0; } } @include until($tablet) { width: 350px; &.is-expanded { width: 400px; } } } &-error { position: absolute; bottom: 105%; width: 100%; min-height: 50px; background-image: radial-gradient(ellipse at top left, rgba(255,255,255,.9) 0%,rgba(255,255,255,.8) 100%); box-shadow: 0 5px 10px rgba(0,0,0,0.2); border-radius: 6px; color: mc('red', '800'); display: flex; justify-content: center; align-items: center; padding: 1rem; strong { font-weight: 600; text-transform: uppercase; display: block; padding: 0 1rem 0 0; border-right: 1px solid mc('red', '200'); } span { padding: 0 0 0 1rem; display: block; } } &-providers { display: flex; flex-direction: column; width: 250px; border-right: none; border-radius: 6px 0 0 6px; background-color: mc('grey', '900'); z-index: 1; overflow: hidden; @include until($tablet) { width: 50px; } button { flex: 1 1; padding: 5px 15px; border: none; color: #FFF; background-color: mc('light-blue', '800'); border-top: 1px solid mc('light-blue', '900'); font-family: $core-font-standard; font-weight: 600; text-align: left; min-height: 40px; display: flex; justify-content: flex-start; align-items: center; transition: all .4s ease; @include until($tablet) { justify-content: center; } &:hover { background-color: mc('light-blue', '600'); } &:first-child { border-top: none; } &.is-active { background-color: mc('grey', '100'); background-image: radial-gradient(circle at top left, rgba(mc('grey', '200'),1) 0%,rgba(255,255,255,1) 100%); color: mc('light-blue', '700'); } i { margin-right: 10px; font-size: 16px; @include until($tablet) { margin-right: 0; font-size: 20px; } } svg { margin-right: 10px; width: auto; height: 20px; max-width: 18px; max-height: 20px; path { fill: #FFF; } @include until($tablet) { margin-right: 0; font-size: 20px; } } span { font-weight: 600; @include until($tablet) { display: none; } } } } &-frame { background-image: radial-gradient(circle at top left, rgba(255,255,255,1) 5%,rgba(240,240,240,.6) 100%); border-radius: 6px; width: 400px; padding: 1rem; color: mc('grey', '700'); display: flex; justify-content: center; flex-direction: column; text-align: center; @include until($tablet) { width: 350px; } h1 { font-size: 2rem; font-weight: 600; color: mc('light-blue', '700'); padding: 0; margin: 0; } h2 { font-size: 1.5rem; font-weight: 300; color: mc('grey', '700'); padding: 0; margin: 0 0 25px 0; } form { display: flex; flex-direction: column; } input[type=text], input[type=password] { width: 100%; border: 1px solid #FFF; border-radius: 3px; background-color: rgba(255,255,255,.9); padding: 0 15px; height: 40px; margin: 0 0 10px 0; color: mc('grey', '700'); font-weight: 600; font-size: .8rem; transition: all 0.4s ease; text-align: center; &:focus { outline: none; border-color: mc('light-blue','500'); } } } &-copyright { display: flex; align-items: center; justify-content: center; position: absolute; left: 0; bottom: 10vh; width: 100%; z-index: 2; color: mc('grey', '500'); font-weight: 400; a { font-weight: 600; color: mc('light-blue', '500'); margin-left: .25rem; } } }