@mixin gradient($opacityStart: 0.2, $opacityEnd: 0) {
border-radius: 2px 2px 0px 0px;
background-image: linear-gradient(
90deg,
rgba(var(--color-r), var(--color-g), var(--color-b), $opacityStart) 0%,
rgba(var(--color-r), var(--color-g), var(--color-b), $opacityEnd) 100%
);
filter: blur(14px);
}
.wrapper {
align-self: flex-start;
display: flex;
align-items: center;
justify-content: flex-start;
max-width: 62%;
&.myMessage {
direction: rtl;
align-self: flex-end;
.content {
direction: ltr;
text-align: right;
.amount {
direction: ltr;
justify-content: flex-end;
}
&:before {
transform: rotate(180deg);
}
}
}
// TODO: use mixin somehow
--color-r: var(--primary-color-r);
--color-g: var(--primary-color-g);
--color-b: var(--primary-color-b);
&.pending {
--color-r: var(--yellow-r);
--color-g: var(--yellow-g);
--color-b: var(--yellow-b);
}
&.error {
--color-r: var(--red-r);
--color-g: var(--red-g);
--color-b: var(--red-b);
}
}
.dateBlock {
display: flex;
align-items: center;
gap: 0 5px;
position: relative;
z-index: 1;
min-height: 40px;
padding: 5px;
.icon {
cursor: help;
}
&::before {
content: '';
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
@include gradient(0.2, 0.2);
pointer-events: none;
}
}
.content {
word-break: break-word;
padding: 13px 10px;
display: flex;
justify-content: center;
flex-direction: column;
font-size: 14px;
min-height: 50px;
min-width: 100px;
color: white !important;
position: relative;
gap: 10px 0;
cursor: pointer;
&:before {
content: ' ';
@include gradient(0.2, 0);
z-index: -1;
width: 100%;
top: 0;
left: 0;
position: absolute;
height: 100%;
display: block;
pointer-events: none;
}
&:hover {
&::before {
@include gradient(0.3, 0);
}
}
}
.amount {
margin-top: 10px;
display: flex;
gap: 0 10px;
}