mirror of
https://github.com/mastodon/mastodon.git
synced 2024-11-25 07:05:20 +00:00
814 lines
13 KiB
SCSS
814 lines
13 KiB
SCSS
.modal-container--preloader {
|
|
background: lighten($ui-base-color, 8%);
|
|
}
|
|
|
|
.modal-root {
|
|
position: relative;
|
|
transition: opacity 0.3s linear;
|
|
will-change: opacity;
|
|
z-index: 9999;
|
|
}
|
|
|
|
.modal-root__overlay {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
background: rgba($base-overlay-background, 0.7);
|
|
}
|
|
|
|
.modal-root__container {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
align-content: space-around;
|
|
z-index: 9999;
|
|
pointer-events: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.modal-root__modal {
|
|
pointer-events: auto;
|
|
display: flex;
|
|
z-index: 9999;
|
|
}
|
|
|
|
.onboarding-modal,
|
|
.error-modal,
|
|
.embed-modal {
|
|
background: $ui-secondary-color;
|
|
color: $inverted-text-color;
|
|
border-radius: 8px;
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.onboarding-modal__pager {
|
|
height: 80vh;
|
|
width: 80vw;
|
|
max-width: 520px;
|
|
max-height: 470px;
|
|
|
|
.react-swipeable-view-container > div {
|
|
width: 100%;
|
|
height: 100%;
|
|
box-sizing: border-box;
|
|
display: none;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
display: flex;
|
|
user-select: text;
|
|
}
|
|
}
|
|
|
|
.error-modal__body {
|
|
height: 80vh;
|
|
width: 80vw;
|
|
max-width: 520px;
|
|
max-height: 420px;
|
|
position: relative;
|
|
|
|
& > div {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
box-sizing: border-box;
|
|
padding: 25px;
|
|
display: none;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
display: flex;
|
|
opacity: 0;
|
|
user-select: text;
|
|
}
|
|
}
|
|
|
|
.error-modal__body {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
text-align: center;
|
|
}
|
|
|
|
@media screen and (max-width: 550px) {
|
|
.onboarding-modal {
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: 0;
|
|
}
|
|
|
|
.onboarding-modal__pager {
|
|
width: 100%;
|
|
height: auto;
|
|
max-width: none;
|
|
max-height: none;
|
|
flex: 1 1 auto;
|
|
}
|
|
}
|
|
|
|
.onboarding-modal__paginator,
|
|
.error-modal__footer {
|
|
flex: 0 0 auto;
|
|
background: darken($ui-secondary-color, 8%);
|
|
display: flex;
|
|
padding: 25px;
|
|
|
|
& > div {
|
|
min-width: 33px;
|
|
}
|
|
|
|
.onboarding-modal__nav,
|
|
.error-modal__nav {
|
|
color: $lighter-text-color;
|
|
border: 0;
|
|
font-size: 14px;
|
|
font-weight: 500;
|
|
padding: 10px 25px;
|
|
line-height: inherit;
|
|
height: auto;
|
|
margin: -10px;
|
|
border-radius: 4px;
|
|
background-color: transparent;
|
|
|
|
&:hover,
|
|
&:focus,
|
|
&:active {
|
|
color: darken($lighter-text-color, 4%);
|
|
background-color: darken($ui-secondary-color, 16%);
|
|
}
|
|
|
|
&.onboarding-modal__done,
|
|
&.onboarding-modal__next {
|
|
color: $inverted-text-color;
|
|
|
|
&:hover,
|
|
&:focus,
|
|
&:active {
|
|
color: lighten($inverted-text-color, 4%);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.error-modal__footer {
|
|
justify-content: center;
|
|
}
|
|
|
|
.onboarding-modal__dots {
|
|
flex: 1 1 auto;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.onboarding-modal__dot {
|
|
width: 14px;
|
|
height: 14px;
|
|
border-radius: 14px;
|
|
background: darken($ui-secondary-color, 16%);
|
|
margin: 0 3px;
|
|
cursor: pointer;
|
|
|
|
&:hover {
|
|
background: darken($ui-secondary-color, 18%);
|
|
}
|
|
|
|
&.active {
|
|
cursor: default;
|
|
background: darken($ui-secondary-color, 24%);
|
|
}
|
|
}
|
|
|
|
.onboarding-modal__page__wrapper {
|
|
pointer-events: none;
|
|
padding: 25px;
|
|
padding-bottom: 0;
|
|
|
|
&.onboarding-modal__page__wrapper--active {
|
|
pointer-events: auto;
|
|
}
|
|
}
|
|
|
|
.onboarding-modal__page {
|
|
cursor: default;
|
|
line-height: 21px;
|
|
|
|
h1 {
|
|
font-size: 18px;
|
|
font-weight: 500;
|
|
color: $inverted-text-color;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
a {
|
|
color: $highlight-text-color;
|
|
|
|
&:hover,
|
|
&:focus,
|
|
&:active {
|
|
color: lighten($highlight-text-color, 4%);
|
|
}
|
|
}
|
|
|
|
.navigation-bar a {
|
|
color: inherit;
|
|
}
|
|
|
|
p {
|
|
font-size: 16px;
|
|
color: $lighter-text-color;
|
|
margin-top: 10px;
|
|
margin-bottom: 10px;
|
|
|
|
&:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
strong {
|
|
font-weight: 500;
|
|
background: $ui-base-color;
|
|
color: $secondary-text-color;
|
|
border-radius: 4px;
|
|
font-size: 14px;
|
|
padding: 3px 6px;
|
|
|
|
@each $lang in $cjk-langs {
|
|
&:lang(#{$lang}) {
|
|
font-weight: 700;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.onboarding-modal__page__wrapper-0 {
|
|
background: url('~images/elephant_ui_greeting.svg') no-repeat left bottom / auto 250px;
|
|
height: 100%;
|
|
padding: 0;
|
|
}
|
|
|
|
.onboarding-modal__page-one {
|
|
&__lead {
|
|
padding: 65px;
|
|
padding-top: 45px;
|
|
padding-bottom: 0;
|
|
margin-bottom: 10px;
|
|
|
|
h1 {
|
|
font-size: 26px;
|
|
line-height: 36px;
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
p {
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
|
|
&__extra {
|
|
padding-right: 65px;
|
|
padding-left: 185px;
|
|
text-align: center;
|
|
}
|
|
}
|
|
|
|
.display-case {
|
|
text-align: center;
|
|
font-size: 15px;
|
|
margin-bottom: 15px;
|
|
|
|
&__label {
|
|
font-weight: 500;
|
|
color: $inverted-text-color;
|
|
margin-bottom: 5px;
|
|
text-transform: uppercase;
|
|
font-size: 12px;
|
|
}
|
|
|
|
&__case {
|
|
background: $ui-base-color;
|
|
color: $secondary-text-color;
|
|
font-weight: 500;
|
|
padding: 10px;
|
|
border-radius: 4px;
|
|
}
|
|
}
|
|
|
|
.onboarding-modal__page-two,
|
|
.onboarding-modal__page-three,
|
|
.onboarding-modal__page-four,
|
|
.onboarding-modal__page-five {
|
|
p {
|
|
text-align: left;
|
|
}
|
|
|
|
.figure {
|
|
background: darken($ui-base-color, 8%);
|
|
color: $secondary-text-color;
|
|
margin-bottom: 20px;
|
|
border-radius: 4px;
|
|
padding: 10px;
|
|
text-align: center;
|
|
font-size: 14px;
|
|
box-shadow: 1px 2px 6px rgba($base-shadow-color, 0.3);
|
|
|
|
.onboarding-modal__image {
|
|
border-radius: 4px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
&.non-interactive {
|
|
pointer-events: none;
|
|
text-align: left;
|
|
}
|
|
}
|
|
}
|
|
|
|
.onboarding-modal__page-four__columns {
|
|
.row {
|
|
display: flex;
|
|
margin-bottom: 20px;
|
|
|
|
& > div {
|
|
flex: 1 1 0;
|
|
margin: 0 10px;
|
|
|
|
&:first-child {
|
|
margin-left: 0;
|
|
}
|
|
|
|
&:last-child {
|
|
margin-right: 0;
|
|
}
|
|
|
|
p {
|
|
text-align: center;
|
|
}
|
|
}
|
|
|
|
&:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
|
|
.column-header {
|
|
color: $primary-text-color;
|
|
}
|
|
}
|
|
|
|
@media screen and (max-width: 320px) and (max-height: 600px) {
|
|
.onboarding-modal__page p {
|
|
font-size: 14px;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.onboarding-modal__page-two .figure,
|
|
.onboarding-modal__page-three .figure,
|
|
.onboarding-modal__page-four .figure,
|
|
.onboarding-modal__page-five .figure {
|
|
font-size: 12px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.onboarding-modal__page-four__columns .row {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.onboarding-modal__page-four__columns .column-header {
|
|
padding: 5px;
|
|
font-size: 12px;
|
|
}
|
|
}
|
|
|
|
.onboard-sliders {
|
|
display: inline-block;
|
|
max-width: 30px;
|
|
max-height: auto;
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.boost-modal,
|
|
.favourite-modal,
|
|
.confirmation-modal,
|
|
.report-modal,
|
|
.actions-modal,
|
|
.mute-modal {
|
|
background: lighten($ui-secondary-color, 8%);
|
|
color: $inverted-text-color;
|
|
border-radius: 8px;
|
|
overflow: hidden;
|
|
max-width: 90vw;
|
|
width: 480px;
|
|
position: relative;
|
|
flex-direction: column;
|
|
|
|
.status__display-name {
|
|
display: flex;
|
|
}
|
|
|
|
.status__avatar {
|
|
height: 28px;
|
|
left: 10px;
|
|
top: 10px;
|
|
width: 48px;
|
|
}
|
|
|
|
.status__content__spoiler-link {
|
|
color: lighten($secondary-text-color, 8%);
|
|
}
|
|
}
|
|
|
|
.actions-modal {
|
|
.status {
|
|
background: $white;
|
|
border-bottom-color: $ui-secondary-color;
|
|
padding-top: 10px;
|
|
padding-bottom: 10px;
|
|
}
|
|
|
|
.dropdown-menu__separator {
|
|
border-bottom-color: $ui-secondary-color;
|
|
}
|
|
}
|
|
|
|
.boost-modal__container,
|
|
.favourite-modal__container {
|
|
overflow-x: scroll;
|
|
padding: 10px;
|
|
|
|
.status {
|
|
user-select: text;
|
|
border-bottom: 0;
|
|
}
|
|
}
|
|
|
|
.boost-modal__action-bar,
|
|
.favourite-modal__action-bar,
|
|
.confirmation-modal__action-bar,
|
|
.mute-modal__action-bar {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
background: $ui-secondary-color;
|
|
padding: 10px;
|
|
line-height: 36px;
|
|
|
|
& > div {
|
|
flex: 1 1 auto;
|
|
text-align: right;
|
|
color: $lighter-text-color;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
.button {
|
|
flex: 0 0 auto;
|
|
}
|
|
}
|
|
|
|
.boost-modal__status-header,
|
|
.favourite-modal__status-header {
|
|
font-size: 15px;
|
|
}
|
|
|
|
.boost-modal__status-time,
|
|
.favourite-modal__status-time {
|
|
float: right;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.confirmation-modal {
|
|
max-width: 85vw;
|
|
|
|
@media screen and (min-width: 480px) {
|
|
max-width: 380px;
|
|
}
|
|
}
|
|
|
|
.mute-modal {
|
|
line-height: 24px;
|
|
}
|
|
|
|
.mute-modal .react-toggle {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.report-modal {
|
|
width: 90vw;
|
|
max-width: 700px;
|
|
}
|
|
|
|
.report-modal__container {
|
|
display: flex;
|
|
border-top: 1px solid $ui-secondary-color;
|
|
|
|
@media screen and (max-width: 480px) {
|
|
flex-wrap: wrap;
|
|
overflow-y: auto;
|
|
}
|
|
}
|
|
|
|
.report-modal__statuses,
|
|
.report-modal__comment {
|
|
box-sizing: border-box;
|
|
width: 50%;
|
|
|
|
@media screen and (max-width: 480px) {
|
|
width: 100%;
|
|
}
|
|
}
|
|
|
|
.report-modal__statuses {
|
|
flex: 1 1 auto;
|
|
min-height: 20vh;
|
|
max-height: 80vh;
|
|
overflow-y: auto;
|
|
overflow-x: hidden;
|
|
|
|
.status__content a {
|
|
color: $highlight-text-color;
|
|
}
|
|
|
|
@media screen and (max-width: 480px) {
|
|
max-height: 10vh;
|
|
}
|
|
}
|
|
|
|
.report-modal__comment {
|
|
padding: 20px;
|
|
border-right: 1px solid $ui-secondary-color;
|
|
max-width: 320px;
|
|
|
|
p {
|
|
font-size: 14px;
|
|
line-height: 20px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.setting-text {
|
|
display: block;
|
|
box-sizing: border-box;
|
|
width: 100%;
|
|
margin: 0;
|
|
color: $inverted-text-color;
|
|
background: $white;
|
|
padding: 10px;
|
|
font-family: inherit;
|
|
font-size: 14px;
|
|
resize: vertical;
|
|
border: 0;
|
|
outline: 0;
|
|
border-radius: 4px;
|
|
border: 1px solid $ui-secondary-color;
|
|
margin-bottom: 20px;
|
|
|
|
&:focus {
|
|
border: 1px solid darken($ui-secondary-color, 8%);
|
|
}
|
|
}
|
|
|
|
.setting-toggle {
|
|
margin-top: 20px;
|
|
margin-bottom: 24px;
|
|
|
|
&__label {
|
|
color: $inverted-text-color;
|
|
font-size: 14px;
|
|
}
|
|
}
|
|
|
|
@media screen and (max-width: 480px) {
|
|
padding: 10px;
|
|
max-width: 100%;
|
|
order: 2;
|
|
|
|
.setting-toggle {
|
|
margin-bottom: 4px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.report-modal__target {
|
|
padding: 20px;
|
|
|
|
.media-modal__close {
|
|
top: 19px;
|
|
right: 15px;
|
|
}
|
|
}
|
|
|
|
.actions-modal {
|
|
.status {
|
|
overflow-y: auto;
|
|
max-height: 300px;
|
|
}
|
|
|
|
strong {
|
|
display: block;
|
|
font-weight: 500;
|
|
}
|
|
|
|
max-height: 80vh;
|
|
max-width: 80vw;
|
|
|
|
.actions-modal__item-label {
|
|
font-weight: 500;
|
|
}
|
|
|
|
ul {
|
|
overflow-y: auto;
|
|
flex-shrink: 0;
|
|
|
|
li:empty {
|
|
margin: 0;
|
|
}
|
|
|
|
li:not(:empty) {
|
|
a {
|
|
color: $inverted-text-color;
|
|
display: flex;
|
|
padding: 12px 16px;
|
|
font-size: 15px;
|
|
align-items: center;
|
|
text-decoration: none;
|
|
|
|
&,
|
|
button {
|
|
transition: none;
|
|
}
|
|
|
|
&.active,
|
|
&:hover,
|
|
&:active,
|
|
&:focus {
|
|
&,
|
|
button {
|
|
background: $ui-highlight-color;
|
|
color: $primary-text-color;
|
|
}
|
|
}
|
|
|
|
& > .react-toggle,
|
|
& > .icon,
|
|
button:first-child {
|
|
margin-right: 10px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.confirmation-modal__action-bar,
|
|
.mute-modal__action-bar {
|
|
.confirmation-modal__cancel-button,
|
|
.mute-modal__cancel-button {
|
|
background-color: transparent;
|
|
color: $lighter-text-color;
|
|
font-size: 14px;
|
|
font-weight: 500;
|
|
|
|
&:hover,
|
|
&:focus,
|
|
&:active {
|
|
color: darken($lighter-text-color, 4%);
|
|
}
|
|
}
|
|
}
|
|
|
|
.confirmation-modal__do_not_ask_again {
|
|
padding-left: 20px;
|
|
padding-right: 20px;
|
|
padding-bottom: 10px;
|
|
|
|
font-size: 14px;
|
|
|
|
label, input {
|
|
vertical-align: middle;
|
|
}
|
|
}
|
|
|
|
.confirmation-modal__container,
|
|
.mute-modal__container,
|
|
.report-modal__target {
|
|
padding: 30px;
|
|
font-size: 16px;
|
|
text-align: center;
|
|
|
|
strong {
|
|
font-weight: 500;
|
|
|
|
@each $lang in $cjk-langs {
|
|
&:lang(#{$lang}) {
|
|
font-weight: 700;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.embed-modal {
|
|
max-width: 80vw;
|
|
max-height: 80vh;
|
|
|
|
h4 {
|
|
padding: 30px;
|
|
font-weight: 500;
|
|
font-size: 16px;
|
|
text-align: center;
|
|
}
|
|
|
|
.embed-modal__container {
|
|
padding: 10px;
|
|
|
|
.hint {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.embed-modal__html {
|
|
outline: 0;
|
|
box-sizing: border-box;
|
|
display: block;
|
|
width: 100%;
|
|
border: none;
|
|
padding: 10px;
|
|
font-family: 'mastodon-font-monospace', monospace;
|
|
background: $ui-base-color;
|
|
color: $primary-text-color;
|
|
font-size: 14px;
|
|
margin: 0;
|
|
margin-bottom: 15px;
|
|
|
|
&::-moz-focus-inner {
|
|
border: 0;
|
|
}
|
|
|
|
&::-moz-focus-inner,
|
|
&:focus,
|
|
&:active {
|
|
outline: 0 !important;
|
|
}
|
|
|
|
&:focus {
|
|
background: lighten($ui-base-color, 4%);
|
|
}
|
|
|
|
@media screen and (max-width: 600px) {
|
|
font-size: 16px;
|
|
}
|
|
}
|
|
|
|
.embed-modal__iframe {
|
|
width: 400px;
|
|
max-width: 100%;
|
|
overflow: hidden;
|
|
border: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
.focal-point {
|
|
position: relative;
|
|
cursor: pointer;
|
|
overflow: hidden;
|
|
|
|
&.dragging {
|
|
cursor: move;
|
|
}
|
|
|
|
img {
|
|
max-width: 80vw;
|
|
max-height: 80vh;
|
|
width: auto;
|
|
height: auto;
|
|
margin: auto;
|
|
}
|
|
|
|
&__reticle {
|
|
position: absolute;
|
|
width: 100px;
|
|
height: 100px;
|
|
transform: translate(-50%, -50%);
|
|
background: url('~images/reticle.png') no-repeat 0 0;
|
|
border-radius: 50%;
|
|
box-shadow: 0 0 0 9999em rgba($base-shadow-color, 0.35);
|
|
}
|
|
|
|
&__overlay {
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
}
|