Telegram Web K with changes to work inside I2P
https://web.telegram.i2p/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1004 lines
20 KiB
1004 lines
20 KiB
$placeholder-color: #9e9e9e; |
|
$border-radius: 8px; |
|
$border-radius-medium: 10px; |
|
$border-radius-big: 12px; |
|
$button-primary-background: #4EA4F6; |
|
|
|
$color-green: #4DCD5E; |
|
$color-error: #E53935; |
|
$color-gray: #707579; |
|
$color-blue: #50a2e9; |
|
|
|
$darkgreen: #50af4f; |
|
$color-text-green: $darkgreen; |
|
|
|
$lightgrey: #dadce0; |
|
|
|
$light: rgba($color-gray, 0.08); |
|
|
|
//$small-screen: 720px; |
|
$small-screen: 600px; |
|
//$small-screen: 900px; |
|
$medium-screen: 1275px; |
|
$large-screen: 1680px; |
|
//$large-screen: 16800px; |
|
|
|
$floating-left-sidebar: 925px; |
|
$messages-container-width: 728px; |
|
|
|
@mixin respond-to($media) { |
|
@if $media == handhelds { |
|
@media only screen and (max-width: $small-screen) { @content; } |
|
//@media only screen and (orientation: landscape) and (max-device-width: 896px) { @content; } // iPhone 11 Pro Max |
|
} |
|
@else if $media == small-screens { |
|
@media only screen and (min-width: $small-screen + 1) { @content; } |
|
} |
|
@else if $media == only-small-screens { |
|
@media only screen and (min-width: $small-screen + 1) and (max-width: $medium-screen) { @content; } |
|
} |
|
@else if $media == medium-screens { |
|
@media only screen and (min-width: $medium-screen + 1) { @content; } |
|
} |
|
@else if $media == only-medium-screens { |
|
@media only screen and (min-width: $medium-screen + 1) and (max-width: $large-screen) { @content; } |
|
} |
|
@else if $media == before-medium-screens { |
|
@media only screen and (max-width: $medium-screen) { @content; } |
|
} |
|
@else if $media == large-screens { |
|
@media only screen and (min-width: $large-screen + 1) { @content; } |
|
} |
|
@else if $media == not-handhelds { |
|
@media only screen and (min-width: $small-screen + 1) { @content; } |
|
} |
|
|
|
@else if $media == floating-left-sidebar { |
|
@media only screen and (min-width: $small-screen + 1) and (max-width: $floating-left-sidebar) { @content; } |
|
} |
|
@else if $media == until-floating-left-sidebar { |
|
@media only screen and (max-width: $floating-left-sidebar) { @content; } |
|
} |
|
@else if $media == no-floating-left-sidebar { |
|
@media only screen and (min-width: $floating-left-sidebar + 1) { @content; } |
|
} |
|
|
|
@else if $media == esg-top { // topbar + chat input + margin bottom + height of ESG |
|
@media only screen and (min-height: 570px) and (min-width: $small-screen + 1) { @content; } |
|
} |
|
|
|
@else if $media == esg-bottom { |
|
@media only screen and (max-height: 569px) { @content; } |
|
} |
|
} |
|
|
|
:root { |
|
--vh: 1vh; |
|
--z-below: -1; |
|
--color-gray: #c4c9cc; |
|
--color-gray-hover: rgba(112, 117, 121, .08); |
|
--pm-transition: .2s ease-in-out; |
|
--layer-transition: .2s ease-in-out; |
|
//--layer-transition: .3s cubic-bezier(.33, 1, .68, 1); |
|
//--layer-transition: none; |
|
--btn-corner-transition: transform .2s cubic-bezier(.34, 1.56, .64, 1); |
|
--message-handhelds-margin: 5.5625rem; |
|
--message-beside-button-margin: 2.875rem; |
|
--message-time-background: rgba(0, 0, 0, .35); |
|
--messages-container-width: #{$messages-container-width}; |
|
--esg-sticker-size: 80px; |
|
|
|
@include respond-to(handhelds) { |
|
--right-column-width: 100vw; |
|
--esg-sticker-size: 68px; |
|
} |
|
|
|
@include respond-to(not-handhelds) { |
|
--right-column-width: calc(#{$large-screen} / 4); |
|
} |
|
|
|
@include respond-to(only-medium-screens) { |
|
--right-column-width: 25vw; |
|
} |
|
} |
|
|
|
@import "partials/ico"; |
|
@import "partials/input"; |
|
@import "partials/button"; |
|
@import "partials/checkbox"; |
|
@import "partials/chatlist"; |
|
@import "partials/chat"; |
|
@import "partials/chatBubble"; |
|
@import "partials/chatPinned"; |
|
@import "partials/sidebar"; |
|
@import "partials/leftSidebar"; |
|
@import "partials/rightSidebar"; |
|
@import "partials/mediaViewer"; |
|
@import "partials/ckin"; |
|
@import "partials/emojiDropdown"; |
|
@import "partials/scrollable"; |
|
@import "partials/slider"; |
|
@import "partials/selector"; |
|
@import "partials/gifsMasonry"; |
|
@import "partials/preloader"; |
|
@import "partials/ripple"; |
|
@import "partials/avatar"; |
|
@import "partials/document"; |
|
@import "partials/audio"; |
|
|
|
@import "partials/popups/popup"; |
|
@import "partials/popups/editAvatar"; |
|
@import "partials/popups/mediaAttacher"; |
|
@import "partials/popups/peer"; |
|
@import "partials/popups/stickers"; |
|
@import "partials/popups/datePicker"; |
|
@import "partials/popups/createPoll"; |
|
@import "partials/popups/forward"; |
|
|
|
@import "partials/pages/pages"; |
|
@import "partials/pages/authCode"; |
|
@import "partials/pages/chats"; |
|
@import "partials/pages/password"; |
|
|
|
/* cyrillic */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 400; |
|
font-display: swap; |
|
src: local('Roboto'), local('Roboto-Regular'), url(assets/fonts/KFOmCnqEu92Fr1Mu5mxKKTU1Kvnz.woff2) format('woff2'); |
|
unicode-range:U + 0400-045F, U + 0490-0491, U + 04B0-04B1, U + 2116 |
|
} |
|
|
|
/* latin-ext */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 400; |
|
font-display: swap; |
|
src: local('Roboto'), local('Roboto-Regular'), url(assets/fonts/KFOmCnqEu92Fr1Mu7GxKKTU1Kvnz.woff2) format('woff2'); |
|
unicode-range:U + 0100-024F, U + 0259, U + 1E00-1EFF, U + 2020, U + 20A0-20AB, U + 20AD-20CF, U + 2113, U + 2C60-2C7F, U + A720-A7FF |
|
} |
|
|
|
/* latin */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 400; |
|
font-display: swap; |
|
src: local('Roboto'), local('Roboto-Regular'), url(assets/fonts/KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2) format('woff2'); |
|
unicode-range:U + 0000-00FF, U + 0131, U + 0152-0153, U + 02BB-02BC, U + 02C6, U + 02DA, U + 02DC, U + 2000-206F, U + 2074, U + 20AC, U + 2122, U + 2191, U + 2193, U + 2212, U + 2215, U + FEFF, U + FFFD |
|
} |
|
|
|
/* cyrillic */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 500; |
|
font-display: swap; |
|
src: local('Roboto Medium'), local('Roboto-Medium'), url(assets/fonts/KFOlCnqEu92Fr1MmEU9fABc4AMP6lbBP.woff2) format('woff2'); |
|
unicode-range:U + 0400-045F, U + 0490-0491, U + 04B0-04B1, U + 2116 |
|
} |
|
|
|
/* latin-ext */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 500; |
|
font-display: swap; |
|
src: local('Roboto Medium'), local('Roboto-Medium'), url(assets/fonts/KFOlCnqEu92Fr1MmEU9fChc4AMP6lbBP.woff2) format('woff2'); |
|
unicode-range:U + 0100-024F, U + 0259, U + 1E00-1EFF, U + 2020, U + 20A0-20AB, U + 20AD-20CF, U + 2113, U + 2C60-2C7F, U + A720-A7FF |
|
} |
|
|
|
/* latin */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 500; |
|
font-display: swap; |
|
src: local('Roboto Medium'), local('Roboto-Medium'), url(assets/fonts/KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2) format('woff2'); |
|
unicode-range:U + 0000-00FF, U + 0131, U + 0152-0153, U + 02BB-02BC, U + 02C6, U + 02DA, U + 02DC, U + 2000-206F, U + 2074, U + 20AC, U + 2122, U + 2191, U + 2193, U + 2212, U + 2215, U + FEFF, U + FFFD |
|
} |
|
|
|
// !!! FIX FOR [contenteditable] Ctrl+B, due to font-weight: 500; |
|
|
|
/* cyrillic */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 700; |
|
font-display: swap; |
|
src: local('Roboto Medium'), local('Roboto-Medium'), url(assets/fonts/KFOlCnqEu92Fr1MmEU9fABc4AMP6lbBP.woff2) format('woff2'); |
|
unicode-range:U + 0400-045F, U + 0490-0491, U + 04B0-04B1, U + 2116 |
|
} |
|
|
|
/* latin-ext */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 700; |
|
font-display: swap; |
|
src: local('Roboto Medium'), local('Roboto-Medium'), url(assets/fonts/KFOlCnqEu92Fr1MmEU9fChc4AMP6lbBP.woff2) format('woff2'); |
|
unicode-range:U + 0100-024F, U + 0259, U + 1E00-1EFF, U + 2020, U + 20A0-20AB, U + 20AD-20CF, U + 2113, U + 2C60-2C7F, U + A720-A7FF |
|
} |
|
|
|
/* latin */ |
|
@font-face { |
|
font-family: 'Roboto'; |
|
font-style: normal; |
|
font-weight: 700; |
|
font-display: swap; |
|
src: local('Roboto Medium'), local('Roboto-Medium'), url(assets/fonts/KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2) format('woff2'); |
|
unicode-range:U + 0000-00FF, U + 0131, U + 0152-0153, U + 02BB-02BC, U + 02C6, U + 02DA, U + 02DC, U + 2000-206F, U + 2074, U + 20AC, U + 2122, U + 2191, U + 2193, U + 2212, U + 2215, U + FEFF, U + FFFD |
|
} |
|
|
|
html, body { |
|
height: 100%; |
|
width: 100%; |
|
margin: 0; |
|
padding: 0; |
|
|
|
@include respond-to(handhelds) { |
|
overflow: hidden; |
|
height: calc(var(--vh, 1vh) * 100); |
|
} |
|
|
|
/* @include respond-to(handhelds) { |
|
//overflow-y: auto; |
|
height: 100%; |
|
min-height: 100%; |
|
min-width: 100%; |
|
} |
|
|
|
@include respond-to(not-handhelds) { |
|
width: 100%; |
|
height: 100%; |
|
} */ |
|
} |
|
|
|
html { |
|
font-size: 16px; |
|
//overflow: hidden; |
|
-webkit-font-smoothing: antialiased; |
|
-webkit-text-size-adjust: 100%; |
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0); |
|
text-rendering: optimizeSpeed; |
|
} |
|
|
|
/* body { |
|
position: absolute; |
|
top: 0; |
|
right: 0; |
|
bottom: 0; |
|
left: 0; |
|
min-height: 0!important; |
|
} */ |
|
|
|
a { |
|
color: $color-blue; |
|
} |
|
|
|
button, input, optgroup, select, textarea, html { |
|
font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; |
|
} |
|
|
|
input, textarea, button, select, a, div { |
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0); |
|
} |
|
|
|
.whole { |
|
min-height: 100%; |
|
width: 100%; |
|
//min-width: 100%; |
|
margin: 0 auto; |
|
max-width: $large-screen; |
|
|
|
//@include respond-to(not-handhelds) { |
|
height: 100%; |
|
//} |
|
} |
|
|
|
.disable-hover/* , |
|
.disable-hover * */ { |
|
pointer-events: none !important; |
|
} |
|
|
|
@include respond-to(not-handhelds) { |
|
.only-handhelds { |
|
display: none !important; |
|
} |
|
} |
|
|
|
.container { |
|
margin: 0 auto; |
|
} |
|
|
|
h1, h2, h3, h4, h5, h6 { |
|
font-weight: 500; |
|
} |
|
|
|
h4 { |
|
font-size: 2rem; |
|
//margin: 1.5rem 0 1rem 0; |
|
margin: 22px 0 14px; |
|
line-height: 110%; |
|
|
|
@include respond-to(handhelds) { |
|
font-size: 20px; |
|
margin: 2px 0 8px; |
|
} |
|
} |
|
|
|
input, [contenteditable=true] { |
|
caret-color: $button-primary-background; |
|
} |
|
|
|
input, textarea { |
|
-webkit-appearance: none; |
|
} |
|
|
|
.subtitle { |
|
/* font-weight: 500; */ |
|
color: #707579; |
|
line-height: 1.35; |
|
} |
|
|
|
.danger, .danger:before { |
|
color: $color-error!important; |
|
} |
|
|
|
.bg-warning { |
|
background: #fed85a; |
|
} |
|
|
|
#bubble-contextmenu, #dialogs-contextmenu { |
|
position: fixed; |
|
right: auto; |
|
bottom: auto; |
|
width: auto; |
|
z-index: 4; |
|
} |
|
|
|
@keyframes fade-in-opacity { |
|
0% { |
|
opacity: 0; |
|
} |
|
|
|
to { |
|
opacity: 1; |
|
} |
|
} |
|
|
|
@keyframes fade-out-opacity { |
|
0% { |
|
opacity: 1; |
|
} |
|
|
|
to { |
|
opacity: 0; |
|
} |
|
} |
|
|
|
@keyframes fade-in-backwards-opacity { |
|
0% { |
|
opacity: 1; |
|
} |
|
100% { |
|
opacity: 0; |
|
} |
|
} |
|
|
|
@keyframes fade-out-backwards-opacity { |
|
0% { |
|
opacity: 0; |
|
} |
|
100% { |
|
opacity: 1; |
|
} |
|
} |
|
|
|
@keyframes fade-in-opacity-fade-out-opacity { |
|
0% { |
|
opacity: 0; |
|
} |
|
|
|
10% { |
|
opacity: 1; |
|
} |
|
|
|
50% { |
|
opacity: 1; |
|
} |
|
|
|
to { |
|
opacity: 0; |
|
} |
|
} |
|
|
|
.toast { |
|
position: fixed; |
|
left: 50%; |
|
top: 50%; |
|
transform: translate(-50%, -50%); |
|
padding: .5rem 1rem; |
|
background-color: rgba(0, 0, 0, .66); |
|
color: #fff; |
|
font-size: 1rem; |
|
border-radius: $border-radius-medium; |
|
animation: fade-in-opacity-fade-out-opacity 3s linear forwards; |
|
z-index: 5; |
|
} |
|
|
|
hr { |
|
width: 100%; |
|
border: none; |
|
border-bottom: 1px solid #DADCE0; |
|
margin: 0 0 8px; |
|
} |
|
|
|
.user-title, b/* , .user-last-message b */ { |
|
color: #000; |
|
font-weight: bolder; |
|
//font-weight: 500; |
|
//font-weight: normal; |
|
} |
|
|
|
.user-last-message b { |
|
font-weight: 400; |
|
} |
|
|
|
.avatar-edit { |
|
position: relative; |
|
border-radius: 50%; |
|
cursor: pointer; |
|
overflow: hidden; |
|
|
|
&-canvas { |
|
max-width: 100%; |
|
max-height: 100%; |
|
width: 100%; |
|
height: 100%; |
|
background-color: $color-blue; |
|
} |
|
|
|
.tgico-cameraadd { |
|
position: absolute; |
|
font-size: 48px; |
|
line-height: 48px; |
|
top: 50%; |
|
left: 50%; |
|
transform: translateY(-50%) translateX(-50%); |
|
z-index: 2; |
|
color: #fff; |
|
} |
|
|
|
.avatar-placeholder { |
|
position: absolute; |
|
left: 0; |
|
top: 0; |
|
width: 100%; |
|
height: 100%; |
|
filter: brightness(0.7); |
|
} |
|
} |
|
|
|
.select-wrapper { |
|
max-height: 23.5rem; |
|
/* height: auto; */ |
|
position: absolute; |
|
width: 100%; |
|
top: calc(100% + .5rem); |
|
left: 0; |
|
overflow: hidden; |
|
background-color: #fff; |
|
z-index: 3; |
|
border-radius: $border-radius-medium; |
|
display: flex; |
|
flex-direction: column; |
|
flex-wrap: wrap; |
|
transition: opacity .2s ease-out, transform .2s ease-out; |
|
transform: scale(.95); |
|
transform-origin: top center; |
|
opacity: 0; |
|
|
|
&.active { |
|
transform: scale(1); |
|
opacity: 1; |
|
} |
|
|
|
ul { |
|
margin: .5rem 0; |
|
} |
|
|
|
li { |
|
/* display: flex; */ |
|
align-items: center; |
|
padding: 0 1rem; |
|
justify-content: space-between; |
|
height: 3.5rem; |
|
cursor: pointer; |
|
/* font-weight: 500; */ |
|
|
|
text-align: left; |
|
display: grid; |
|
grid-template-columns: calc(26px + 2rem) 1fr 50px; |
|
|
|
html.no-touch &:hover { |
|
background-color: var(--color-gray-hover); |
|
} |
|
} |
|
|
|
// +2 px bc of whitespace |
|
.emoji { |
|
height: 26px; |
|
width: 26px; |
|
font-size: 26px; |
|
line-height: 1; |
|
} |
|
|
|
.scrollable { |
|
position: relative; |
|
} |
|
} |
|
|
|
.phone-code { |
|
color: $placeholder-color; |
|
text-align: right; |
|
} |
|
|
|
// this dimensions will be used for monkey business |
|
.auth-image { |
|
width: 166px; |
|
height: 166px; |
|
margin: 0 auto 18px; |
|
|
|
@include respond-to(handhelds) { |
|
width: 120px; |
|
height: 120px; |
|
} |
|
} |
|
|
|
/* .phone-wrapper { |
|
display: flex; |
|
align-items: ; |
|
} */ |
|
|
|
.phone-edit { |
|
display: inline-block; |
|
width: 24px; |
|
height: 24px; |
|
margin-left: .4rem; |
|
opacity: .5; |
|
transition: .2s; |
|
cursor: pointer; |
|
font-size: 1.5rem; |
|
|
|
@include respond-to(handhelds) { |
|
margin-top: -14px; |
|
} |
|
|
|
html.no-touch &:hover { |
|
opacity: 1; |
|
} |
|
} |
|
|
|
span.emoji { |
|
display: inline !important; |
|
vertical-align: unset !important; |
|
//line-height: 1em; |
|
//font-size: 1em; |
|
|
|
font-family: apple color emoji,segoe ui emoji,noto color emoji,android emoji,emojisymbols,emojione mozilla,twemoji mozilla,segoe ui symbol; |
|
} |
|
|
|
img.emoji { |
|
width: 18px; |
|
height: 18px; |
|
margin: 0 .125rem; |
|
|
|
display: inline-block; |
|
/* width: 100%; |
|
height: 100%; */ |
|
max-width: 100%; |
|
max-height: 100%; |
|
vertical-align: middle; |
|
} |
|
|
|
.overlay::selection { |
|
background: transparent; |
|
} |
|
.crop-component::selection { |
|
background: transparent; |
|
} |
|
/* .crop-blur { |
|
-webkit-filter: blur(10px) sepia(0.2); |
|
filter: blur(10px) sepia(0.2); |
|
} */ |
|
.crop-image, |
|
.overlay > img { |
|
width: auto; |
|
height: auto; |
|
/* можно явно указать либо ширину, либо высоту */ |
|
/* width: 500px; */ |
|
/*либо height: 300px;*/ |
|
display: block; |
|
object-fit: contain; |
|
object-position: center; |
|
} |
|
/*add stretch*/ |
|
.crop-image { |
|
display: block; |
|
position: relative; |
|
pointer-events: none; |
|
} |
|
.crop-component { |
|
position: relative; |
|
z-index: 999; |
|
background-color: white; |
|
margin: 0 auto; |
|
overflow: hidden; |
|
|
|
> img { |
|
max-width: 100%; |
|
} |
|
|
|
.crop-overlay-color { |
|
position: absolute; |
|
top: 0; |
|
left: 0; |
|
width: 100%; |
|
height: 100%; |
|
background-color: rgba(255, 255, 255, 0.7); |
|
border-radius: $border-radius; |
|
} |
|
} |
|
.overlay { |
|
position: absolute; |
|
left: 50%; |
|
top: 50%; |
|
z-index: 999; |
|
margin-left: -100px; |
|
margin-top: -100px; |
|
width: 200px; |
|
height: 200px; |
|
/* box-shadow: 0 0 0 3px white; */ |
|
overflow: hidden; |
|
box-sizing: content-box; |
|
border-radius: 50%; |
|
|
|
html.no-touch &:hover, &:active { |
|
cursor: move; |
|
} |
|
|
|
> img { |
|
position: absolute; |
|
display: block; |
|
} |
|
} |
|
|
|
[contenteditable=true] { |
|
user-select: text; |
|
outline: none; |
|
cursor: text; |
|
} |
|
|
|
[contenteditable][data-placeholder] { |
|
&:empty:before { |
|
content: attr(data-placeholder); |
|
color: #a2acb4; |
|
display: block; /* For Firefox By Ariel Flesler */ |
|
pointer-events: none; |
|
} |
|
} |
|
|
|
.sticky_sentinel { |
|
position: absolute; |
|
left: 0; |
|
right: 0; /* needs dimensions */ |
|
visibility: hidden; |
|
pointer-events: none; |
|
} |
|
|
|
.rlottie { |
|
max-width: 100%; |
|
max-height: 100%; |
|
width: 100%; |
|
height: 100%; |
|
|
|
&.fade-in { |
|
animation: fade-in-opacity .2s ease forwards; |
|
} |
|
} |
|
|
|
.fade-in-transition { |
|
opacity: 1; |
|
transition: opacity .2s ease; |
|
} |
|
|
|
.show-more { |
|
padding-top: 13px; |
|
padding-bottom: 13px; |
|
cursor: pointer; |
|
user-select: none; |
|
position: relative; |
|
|
|
@include respond-to(not-handhelds) { |
|
padding-left: 8px; |
|
} |
|
|
|
.tgico-down { |
|
float: left; |
|
padding-right: 32px; |
|
padding-left: 16px; |
|
font-size: 24px; |
|
color: #707579; |
|
} |
|
} |
|
|
|
#folders-container .rp avatar-element { |
|
font-size: 20px; |
|
|
|
&:before { |
|
font-size: 26px; |
|
} |
|
|
|
&.tgico-avatar_deletedaccount:before { |
|
font-size: 56px; |
|
} |
|
} |
|
|
|
// .message .audio .preloader-container { |
|
// @include respond-to(handhelds) { |
|
// width: 30px; |
|
// height: 30px; |
|
// left: 2px; |
|
// } |
|
// } |
|
|
|
.content-empty { |
|
color: #707579; |
|
} |
|
|
|
@keyframes grow-icon { |
|
0% { |
|
transform: scale(.5); |
|
opacity: .8; |
|
} |
|
|
|
50% { |
|
transform: scale(1.1); |
|
opacity: 1; |
|
} |
|
|
|
100% { |
|
transform: scale(1); |
|
} |
|
} |
|
|
|
@keyframes hide-icon { |
|
from { |
|
transform: scale(1); |
|
opacity: .4; |
|
} |
|
|
|
to { |
|
transform: scale(.5); |
|
opacity: 0; |
|
} |
|
} |
|
|
|
.grid-item { |
|
height: 0; |
|
padding-bottom: 100%; |
|
//overflow: hidden; |
|
position: relative; |
|
cursor: pointer; |
|
user-select: none; |
|
|
|
&-media { |
|
position: absolute; |
|
left: 0; |
|
top: 0; |
|
width: 100%; |
|
height: 100%; |
|
-o-object-fit: cover; |
|
object-fit: cover; |
|
} |
|
} |
|
|
|
.animated-super { |
|
&-row { |
|
position: absolute; |
|
left: 0; |
|
top: 0; |
|
right: 0; |
|
bottom: 0; |
|
transition: transform var(--pm-transition), opacity var(--pm-transition); |
|
|
|
&.is-hiding { |
|
opacity: 0; |
|
|
|
&.from-top { |
|
transform: translateY(-100%); |
|
} |
|
|
|
&.from-bottom { |
|
transform: translateY(100%); |
|
} |
|
|
|
/* &.backwards { |
|
opacity: 1; |
|
transform: translateY(0) !important; |
|
} */ |
|
} |
|
} |
|
} |
|
|
|
.animated-counter { |
|
display: inline-flex; |
|
|
|
&-decimal { |
|
position: relative; |
|
|
|
&-placeholder { |
|
color: transparent; |
|
} |
|
|
|
&-wrapper { |
|
position: absolute; |
|
left: 0; |
|
top: 0; |
|
bottom: 0; |
|
right: 0; |
|
} |
|
|
|
/* &:not(:first-child) { |
|
.animated-super { |
|
&-row { |
|
&.is-hiding { |
|
&.from-top { |
|
transform: translateY(100%); |
|
} |
|
|
|
&.from-bottom { |
|
transform: translateY(-100%); |
|
} |
|
} |
|
} |
|
} |
|
} */ |
|
} |
|
|
|
/* &.from-top { |
|
.animated-super-row.is-hiding { |
|
&.from-top { |
|
transform: translateY(100%) !important; |
|
} |
|
} |
|
} */ |
|
} |
|
|
|
.transition { |
|
.transition-item { |
|
position: absolute; |
|
top: 0; |
|
left: 0; |
|
width: 100%; |
|
height: 100%; |
|
animation-fill-mode: forwards!important; |
|
|
|
&:not(.active):not(.from):not(.to) { |
|
display: none !important; // Best performance when animating container |
|
//transform: scale(0); // Shortest initial delay |
|
} |
|
} |
|
|
|
/* |
|
* zoom-fade |
|
*/ |
|
&.zoom-fade { |
|
> .from { |
|
transform-origin: center; |
|
transform: scale(1); |
|
opacity: 1; |
|
} |
|
|
|
> .to { |
|
transform-origin: center; |
|
opacity: 0; |
|
// We can omit `transform: scale(1.1);` here because `opacity` is 0. |
|
// We need to for proper position calculation in `InfiniteScroll`. |
|
} |
|
|
|
&.animating { |
|
> .from { |
|
animation: fade-out-opacity .15s ease; |
|
} |
|
|
|
> .to { |
|
animation: fade-in-opacity .15s ease, zoom-fade-in-move .15s ease; |
|
} |
|
} |
|
} |
|
|
|
&.zoom-fade.backwards { |
|
> .from { |
|
transform: scale(1); |
|
} |
|
|
|
> .to { |
|
transform: scale(0.95); |
|
} |
|
|
|
&.animating { |
|
> .from { |
|
animation: fade-in-backwards-opacity .1s ease, zoom-fade-in-backwards-move .15s ease; |
|
} |
|
|
|
> .to { |
|
animation: fade-out-backwards-opacity .15s ease, zoom-fade-out-backwards-move .15s ease; |
|
} |
|
} |
|
} |
|
} |
|
|
|
/* |
|
* zoom-fade |
|
*/ |
|
@keyframes zoom-fade-in-move { |
|
0% { |
|
transform: scale(1.1); |
|
} |
|
100% { |
|
transform: scale(1); |
|
} |
|
} |
|
|
|
@keyframes zoom-fade-in-backwards-move { |
|
0% { |
|
transform: scale(1); |
|
} |
|
100% { |
|
transform: scale(1.1); |
|
} |
|
} |
|
|
|
@keyframes zoom-fade-out-backwards-move { |
|
0% { |
|
transform: scale(0.95); |
|
} |
|
100% { |
|
transform: scale(1); |
|
} |
|
} |
|
|
|
/* .zoom-fade { |
|
transition: .15s ease-in-out opacity, .15s ease-in-out transform; |
|
transform: scale3d(1.1, 1.1, 1); |
|
opacity: 0; |
|
display: flex; |
|
|
|
&.active { |
|
transform: scale3d(1, 1, 1); |
|
transform-origin: center; |
|
opacity: 1; |
|
} |
|
} */ |
|
|
|
// *:not(input):not(textarea) { |
|
// -webkit-user-select: none; /* disable selection/Copy of UIWebView */ |
|
// -webkit-touch-callout: none; /* disable the IOS popup when long-press on a link */ |
|
// } |
|
|
|
middle-ellipsis-element { |
|
width: 100%; |
|
overflow: hidden; |
|
display: block; |
|
} |
|
|
|
.album-item { |
|
&-media { |
|
width: 100%; |
|
height: 100%; |
|
} |
|
}
|
|
|