cartodb/assets/stylesheets/sessions/sessions.scss
2020-06-15 10:58:47 +08:00

621 lines
9.3 KiB
SCSS

// Sessions
// --------------------------------------------------
@import "_variables";
@import "_mixins";
@import "_helpers";
@import "../variables/mixins";
@import "_oauth_login_button";
$sessions-text-color: rgba(white, 0.5);
$sessions-link-color: rgba(white, 0.8);
$shadow-color: rgba(black, 0.1);
$cNavyBlue: #162945;
$cDarkBlue: #0E1C2E;
$cTypo3: #B1B8C1;
$cLocationBlue: #1785FB;
$cLocationRed: #F24440;
$cWhite: #FFF;
.Spinner {
position: relative;
margin: 0 auto;
animation: load8 1.1s infinite linear;
border-top: 2px solid #DDD;
border-right: 2px solid #DDD;
border-bottom: 2px solid #DDD;
border-left: 2px solid #0090D7;
}
.Spinner,
.Spinner::after {
width: 36px;
height: 36px;
border-radius: 50%;
}
.Spinner--formIcon,
.Spinner--formIcon::after {
position: absolute;
width: 12px;
height: 12px;
}
.Spinner.Spinner--center {
position: absolute;
top: 50%;
left: 50%;
margin: -(36px / 2) 0 0 - (36px / 2);
}
@keyframes load8 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.Sessions {
display: flex;
flex-direction: column;
min-height: 100vh;
background-size: cover;
}
.Sessions-navy {
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: $cNavyBlue;
background-size: cover;
}
.Sessions-centered {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin-top:180px;
div.header, div.footer {
text-align:center;
width: 562px;
}
div.footer {
margin-top: 35px;
}
h1.Sessions-title {
font-size: 30px;
font-weight: 700;
letter-spacing: -1px;
line-height: 31px;
margin: 0;
}
p.Sessions-text {
color: #b1b8c1;
font-size: 13px;
font-weight: 400;
line-height: 20px;
margin: 15px 0;
}
p.Sessions-link a {
color: #1785fb;
font-size: 13px;
font-weight: 400;
}
p.Sessions-text--qrCode {
font-size: 11px;
}
img.qr, p.Sessions-text--qrCode {
width: 180px;
}
p.Sessions-text--sharedSecret {
width: 100%;
height: auto;
margin: 0 auto;
padding: 10px;
position: relative;
text-align: center;
line-height: 220px;
}
.Sessions-sharedSecretContainer {
width: 100%;
background: rgba(255, 255, 255, 0.1);
height: 244px;
border-radius: 4px;
}
p.Sessions-text--code {
font-weight: 500;
font-size: 12px;
a {
text-decoration: underline;
}
}
}
.Sessions-noMargin {
margin: 0;
}
.Sessions-content {
display: flex;
flex-grow: 1;
align-items: center;
justify-content: center;
padding: 40px 0;
}
.Sessions-inner {
display: flex;
justify-content: space-between;
}
.Sessions .Sessions-title {
color: $cNavyBlue;
font-size: 32px;
font-weight: 300;
line-height: 48px;
}
.Sessions-navy .Sessions-title {
color: #FFF;
font-size: 32px;
font-weight: 300;
line-height: 48px;
}
.Sessions-logoContainer {
display: block;
}
.Sessions .Sessions-description {
margin-bottom: 16px;
color: #979EA1;
font-size: 13px;
font-weight: 200;
line-height: 20px;
text-align: center;
.Sessions-text--code, .Sessions-text--sharedSecret {
color: #979EA1;
}
a {
color: $cLocationBlue;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
}
.Sessions-navy .Sessions-description {
margin-bottom: 16px;
color: $sessions-text-color;
font-size: 13px;
font-weight: 200;
line-height: 20px;
text-align: center;
.Sessions-text--code, .Sessions-text--sharedSecret {
color: $cWhite;
}
a {
color: $cWhite;
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
}
.Sessions-loggedin,
.Sessions-notloggedin,
.Sessions-toggle {
display: none;
&.is-active {
display: block;
}
}
.users.create {
// TODO: errors, move to helper
.Sessions-notloggedin {
display: block;
}
.Sessions-loggedin {
display: none;
}
}
.Sessions-left {
display: flex;
flex-direction: column;
width: 320px;
}
.Sessions-leftInner {
width: 100%;
margin: auto;
}
.Sessions-right {
width: 560px;
}
.Sessions-field {
position: relative;
width: 100%;
margin-bottom: 5px;
float: left;
&:last-child {
margin-bottom: 0;
}
}
.Sessions-input {
width: 100%;
height: 48px;
padding: 10px;
border: 1px solid #EEE;
outline: none;
background: #FFF;
color: #162746;
font-size: 14px;
font-weight: 300;
&::-webkit-input-placeholder {
color: $cTypo3;
}
&:-moz-placeholder {
color: $cTypo3;
}
&::-moz-placeholder {
color: $cTypo3;
}
&:-ms-input-placeholder {
color: $cTypo3;
}
&:focus {
border: 1px solid $cLocationBlue;
}
&.inputWithError {
border-color: #FFF;
&:focus {
border: 1px solid $cLocationBlue;
}
}
}
.Sessions-navy-input {
width: 100%;
height: 48px;
padding: 10px;
border: 1px solid $cDarkBlue;
outline: none;
background: $cDarkBlue;
color: $cWhite;
font-size: 14px;
font-weight: 300;
&::-webkit-input-placeholder {
color: $cTypo3;
}
&:-moz-placeholder {
color: $cTypo3;
}
&::-moz-placeholder {
color: $cTypo3;
}
&:-ms-input-placeholder {
color: $cTypo3;
}
&:focus {
border: 1px solid $cLocationBlue;
}
&.inputWithError {
border-color: $cDarkBlue;
&:focus {
border: 1px solid $cLocationBlue;
}
}
}
.Sessions-input.topBorderRadius,
.Sessions-navy-input.topBorderRadius {
border-radius: 4px 4px 0 0;
}
.Sessions-input.bottomBorderRadius,
.Sessions-navy-input.bottomBorderRadius {
border-radius: 0 0 4px 4px;
}
.Sessions-input.withBorderRadius,
.Sessions-navy-input.withBorderRadius {
border-radius: 4px;
}
.Sessions-button {
&:hover,
&:active {
.Loading-itemInner {
background: #8EB83F;
}
}
}
.Sessions-submitButton {
width: 100%;
height: 48px;
margin: 2px 0 7px;
border-radius: 4px;
background-color: #60C556;
color: $cWhite;
font-size: 12px;
text-transform: uppercase;
&:hover {
background-color: #73C86B;
}
}
.Sessions-text {
color: $sessions-text-color;
font-size: 14px;
font-weight: 200;
a {
color: $cLocationBlue;
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
}
.Sessions-navy .Sessions-text a {
color: #FFF;
}
.Sessions .Sessions-inputLinkAside {
position: absolute;
top: 0;
right: 0;
height: 48px;
margin-right: 10px;
color: #1785FB;
font-size: 14px;
font-weight: 200;
line-height: 50px;
a {
color: #1785FB;
}
}
.Sessions-navy .Sessions-inputLinkAside {
position: absolute;
top: 0;
right: 0;
height: 48px;
margin-right: 10px;
color: $cWhite;
font-size: 14px;
font-weight: 200;
line-height: 50px;
a {
color: $cWhite;
}
}
.Sessions-text--forgotButton {
line-height: 41px;
}
.Sessions-text--footer {
margin-bottom: 16px;
padding: 0 20px;
color: #979EA1;
&:last-child {
margin-bottom: 0;
}
}
.Sessions-fieldError {
position: absolute;
top: 14px;
right: -32px;
width: 22px;
height: 22px;
border-radius: 50%;
background: $cLocationRed;
color: $cWhite;
font-weight: 400;
line-height: 22px;
text-align: center;
&:hover {
cursor: pointer;
}
}
.Loading-item {
display: inline-block;
position: relative;
width: 8px;
height: 8px;
margin-left: 1px;
list-style-type: none;
&:first-child {
margin-left: 0;
}
}
.Loading-itemInner {
display: block;
position: absolute;
top: 0;
right: 0;
width: 8px;
height: 8px;
-webkit-animation-name: loading;
animation-name: loading;
-webkit-animation-duration: 0.7s;
animation-duration: 0.7s;
-webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite;
border-radius: 50%;
opacity: 0.2;
background: #FFF;
}
.Loading-itemInner--01 {
-webkit-animation-delay: 0.1s;
animation-delay: 0.1s;
}
.Loading-itemInner--02 {
-webkit-animation-delay: 0.2s;
animation-delay: 0.2s;
}
.Loading-itemInner--03 {
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}
.tipsy {
font-size: 13px;
}
.Sessions-referrer {
position: absolute;
z-index: 10;
top: 50%;
left: 50%;
width: 300px;
height: 60px;
margin-top: -30px;
margin-left: -150px;
border-radius: 4px;
background: #FFF;
text-align: center;
picture,
img {
display: inline-block;
width: 100px;
height: 50px;
vertical-align: middle;
}
}
.Sessions-referrerItem {
display: inline-block;
width: 100px;
height: 50px;
}
.Sessions-footer {
margin-bottom: 32px;
}
@media (max-width: $sLayout-width-l) {
.Sessions-inner {
justify-content: center;
}
.Sessions-right {
display: none;
}
}
@media (max-width: 425px) {
.Sessions-fieldError {
display: none;
}
.Sessions-input.inputWithError {
border-color: $cLocationRed;
}
}
@media (max-width: $sLayout-width-l) {
.Sessions-inner {
justify-content: center;
}
.Sessions-right {
display: none;
}
}
@-webkit-keyframes loading {
0% {
-webkit-transform: scale3d(1, 1, 1);
opacity: 0.2;
}
50% {
-webkit-transform: scale3d(1.4, 1.4, 1);
opacity: 0.6;
}
100% {
-webkit-transform: scale3d(1, 1, 1);
opacity: 0.2;
}
}
@keyframes loading {
0% {
transform: scale3d(1, 1, 1);
opacity: 0.2;
}
50% {
transform: scale3d(1.4, 1.4, 1);
opacity: 0.6;
}
100% {
transform: scale3d(1, 1, 1);
opacity: 0.2;
}
}