TelegramPWA/src/components/modals/gift/GiftComposer.module.scss
2026-01-13 01:14:33 +01:00

238 lines
4.4 KiB
SCSS

@use "../../../styles/mixins";
.root {
overflow-x: hidden;
overflow-y: scroll;
display: flex;
flex-direction: column;
height: 100%;
padding-top: 3.5rem;
padding-inline: 0.75rem;
@include mixins.adapt-padding-to-scrollbar(0.75rem);
}
.header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.5rem;
padding-left: 4rem;
}
.spacer {
flex-grow: 1;
}
.title {
margin-inline: 0.5rem;
font-size: 1.25rem;
font-weight: var(--font-weight-medium);
}
.balance-container {
display: flex;
flex-direction: column;
align-items: flex-end;
margin-left: auto;
}
.balance-caption {
font-size: 1rem;
}
.star-balance {
margin-right: 0.1875rem;
}
.balance {
display: flex;
align-items: center;
font-size: 1rem;
font-weight: var(--font-weight-medium);
}
.optionsSection {
padding-top: 1rem;
padding-bottom: 0.5rem;
padding-inline: 0.25rem;
}
.checkboxTitle {
margin: 0;
font-size: 1rem;
color: var(--color-text);
text-transform: initial;
}
.actionMessageView {
position: relative;
overflow: hidden;
display: grid;
flex: 0 0 auto;
place-content: center;
height: 22.5rem;
margin-top: 0.75rem;
margin-bottom: 0;
padding: 0.5rem;
border-radius: var(--border-radius-default);
background-color: var(--theme-background-color);
background-repeat: no-repeat;
background-position: center;
background-size: 100% 100%;
@include mixins.chat-pattern-background("../../../assets/pattern.svg");
:global(html.theme-light) & {
background-image: url('../../../assets/chat-bg-br.png');
}
}
.messageInput, .limited {
margin-bottom: 0.5rem;
}
.footer {
position: sticky;
bottom: 0;
display: flex;
flex-direction: column;
justify-content: space-between;
margin-inline: -0.75rem; // Account for padding
padding: 1rem;
background-color: var(--color-background-secondary);
}
.switcher {
margin-bottom: 0.25rem;
}
.switcherStarIcon {
margin-inline-start: 0 !important;
margin-inline-end: 0.125rem !important;
}
.bottomDescription,
.description {
margin-bottom: 0.5rem;
margin-left: 1rem;
font-size: 0.875rem;
color: var(--color-text-secondary);
}
.bottomDescription {
margin-bottom: 1rem;
}
.main-button {
display: flex;
font-size: 1rem;
font-weight: var(--font-weight-semibold);
}
.buttonSubtitle {
display: block;
font-size: 0.8125rem;
font-weight: var(--font-weight-normal);
opacity: 0.7;
}
.star {
--color-fill: var(--color-white);
width: 1rem;
height: 1rem;
margin-right: 0.1875rem;
margin-left: 0.5rem;
}
.background {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow: hidden;
background-color: var(--theme-background-color);
&::before {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}
:global(html.theme-light) &:not(.customBgImage)::before {
background-image: url('../../../assets/chat-bg-br.png');
}
&:not(.customBgImage).customBgColor::before {
display: none;
}
&.customBgImage::before {
transform: scale(1.1);
background-image: var(--custom-background) !important;
}
:global(body:not(.no-page-transitions)) &.withTransition {
transition: background-color 0.2s;
&.customBgImage::before {
transition: background-image var(--layer-transition);
}
}
&.customBgImage.blurred::before {
filter: blur(12px);
}
:global(html.theme-light body:not(.no-page-transitions)) &:not(.customBgImage).withRightColumn::before {
@media screen and (min-width: 1276px) {
transform: scaleX(0.73) !important;
}
@media screen and (min-width: 1921px) {
transform: scaleX(0.8) !important;
}
@media screen and (min-width: 2600px) {
transform: scaleX(0.95) !important;
}
}
/* stylelint-disable-next-line @stylistic/max-line-length */
:global(html.theme-light body:not(.no-page-transitions)) &:not(.customBgImage).withRightColumn.withTransition::before {
transition: transform var(--layer-transition);
}
&:not(.customBgImage):not(.customBgColor)::after {
@include mixins.chat-pattern-styles("../../../assets/pattern.svg");
}
@media screen and (min-width: 1276px) {
:global(body:not(.no-page-transitions)) &:not(.customBgImage)::before {
transform-origin: left center;
transform: scale(1);
overflow: hidden;
}
}
}