signal-desktop/stylesheets/components/SafetyNumberViewer.scss

225 lines
3.9 KiB
SCSS

// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
.module-SafetyNumberViewer {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
gap: 16px;
a {
text-decoration: none;
}
&__migration {
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
width: 100%;
margin-block: 0 8px;
&__text {
flex-grow: 1;
text-align: start;
@include font-subtitle;
@include light-theme {
color: $color-gray-60;
}
@include dark-theme {
color: $color-gray-25;
}
p {
margin: 0;
}
}
&__icon {
flex-shrink: 0;
display: inline-block;
width: 48px;
height: 48px;
background: url('../images/safety-number-migration.svg');
}
}
&__card-container {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
&__card {
display: flex;
flex-direction: column;
gap: 16px;
align-items: center;
max-width: 248px;
padding: 24px;
border-radius: 12px;
&--e164 {
background-color: $color-bright-gray;
.module-SafetyNumberViewer__card__number {
color: $color-gray-75;
}
}
&--aci {
background-color: $color-borage-blue;
.module-SafetyNumberViewer__card__number {
color: $color-white;
}
}
&__qr {
width: 120px;
height: 120px;
padding: 10px;
border-radius: 8px;
background: $color-white;
}
&__number {
display: flex;
flex-wrap: wrap;
gap: 8px;
justify-content: center;
font-family: $monospace;
margin-block: 0 4px;
@include keyboard-mode {
&:focus {
box-shadow: 0 0 0 3px $color-ultramarine;
}
}
}
&__prev,
&__next {
--height: 36px;
position: absolute;
top: calc(50% - var(--height) / 2);
width: 18px;
height: var(--height);
opacity: 0;
transition: opacity 200ms ease-in-out;
&:hover {
opacity: 1;
}
}
&__prev {
inset-inline-start: 0;
@include light-theme {
@include color-svg(
'../images/icons/v3/chevron/chevron-shallow-left.svg',
$color-gray-75
);
}
@include dark-theme {
@include color-svg(
'../images/icons/v3/chevron/chevron-shallow-left.svg',
$color-gray-15
);
}
}
&__next {
inset-inline-end: 0;
@include light-theme {
@include color-svg(
'../images/icons/v3/chevron/chevron-shallow-right.svg',
$color-gray-75
);
}
@include dark-theme {
@include color-svg(
'../images/icons/v3/chevron/chevron-shallow-right.svg',
$color-gray-15
);
}
}
}
&__carousel {
display: flex;
gap: 8px;
&__dot {
@include button-reset;
width: 8px;
height: 8px;
border-radius: 4px;
@include light-theme {
background: $color-gray-25;
}
@include dark-theme {
background: $color-gray-60;
}
@include keyboard-mode {
&:focus {
box-shadow: 0 0 0 3px $color-ultramarine;
}
}
&[aria-pressed='true'] {
@include light-theme {
background: $color-black;
}
@include dark-theme {
background: $color-white;
}
}
}
}
&__help {
@include font-subtitle;
@include light-theme {
color: $color-gray-60;
}
@include dark-theme {
color: $color-gray-25;
}
}
&__verification-status {
margin-block: 30px 10px;
margin-inline: 0;
text-align: center;
}
&__button {
margin-block: 0 16px;
}
&__buttons {
text-align: end;
}
&__modal.module-Modal {
max-width: 500px;
}
}