signal-desktop/stylesheets/components/InstallScreenQrCodeNotScannedStep.scss

160 lines
3.1 KiB
SCSS

// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
.module-InstallScreenQrCodeNotScannedStep {
@include install-screen;
&__contents {
$base-max-width: 760px;
align-items: center;
background: $color-white;
border-radius: 8px;
color: $color-black;
display: flex;
flex-direction: row;
animation: 500ms module-InstallScreenQrCodeNotScannedStep__slide-in;
position: relative;
top: 0;
@include light-theme {
max-width: $base-max-width;
padding: 22px;
}
@include dark-theme {
max-width: $base-max-width + 44px;
padding: 44px;
margin-top: 44px; // Avoids overlap with the Signal logo
}
}
&__qr-code {
$size: 256px;
align-items: center;
border: 1.5px solid transparent;
box-sizing: content-box;
display: flex;
flex-direction: column;
justify-content: center;
margin-block: 8px;
margin-inline: 8px 38px;
min-height: $size;
min-width: $size;
width: $size;
&--loaded {
background: $color-white;
}
&--load-failed {
@include font-subtitle;
border-color: $color-gray-05;
border-radius: 10px;
color: $color-gray-60;
}
&__link {
@include button-reset;
@include font-body-2-bold;
display: flex;
gap: 4px;
align-items: center;
color: $color-ultramarine;
margin-block-start: 16px;
&::before {
@include color-svg(
'../images/icons/v3/refresh/refresh-bold.svg',
$color-ultramarine
);
content: '';
display: block;
height: 16px;
width: 16px;
}
}
&__code {
height: $size;
width: $size;
animation: 1s module-InstallScreenQrCodeNotScannedStep__slide-in;
position: relative;
}
&__error-message {
text-align: center;
@include font-body-2;
&::before {
@include color-svg(
'../images/icons/v3/error/error-circle.svg',
$color-accent-red
);
content: '';
display: block;
height: 22px;
margin-block: 0 8px;
margin-inline: auto;
width: 22px;
}
margin-inline: 24px;
}
&__error-message p {
margin-block: 0;
}
&__get-help {
@include font-body-2-bold;
display: flex;
gap: 4px;
align-items: center;
margin-block-start: 16px;
color: $color-ultramarine;
text-decoration: none;
&::before {
@include color-svg(
'../images/icons/v3/open/open-compact-bold.svg',
$color-ultramarine
);
content: '';
display: block;
height: 16px;
width: 16px;
}
}
}
ol {
@include font-body-1;
line-height: 26px;
list-style-position: inside;
padding-inline-start: 0;
}
a {
// We want the right link color in dark mode. This is a no-op in light mode.
color: $color-ultramarine;
}
}
@keyframes module-InstallScreenQrCodeNotScannedStep__slide-in {
from {
transform: translateY(-8px);
opacity: 0;
}
to {
transform: translateY(0px);
opacity: 1;
}
}