$color-text: #36d6ae;
@mixin linear-gradient-danger($route) {
background: linear-gradient($route, rgba(0, 0, 0, 0) 0%, rgb(255, 0, 0) 100%);
}
@mixin linear-gradient-blue($route) {
background: linear-gradient(
$route,
rgba(0, 0, 0, 0) 0%,
rgba(31, 203, 255, 1) 100%
);
}
$time-animation: 0.5s;
@mixin ion-lamp {
content: '';
position: absolute;
background: #ffffff;
border: 1.5px solid #ffffff;
box-sizing: border-box;
top: 0;
bottom: 0;
}
@mixin styleGradientPseudoEl {
content: '';
position: absolute;
height: 100%;
top: 0;
bottom: 0;
opacity: 15%;
width: 100%;
}
.BtnPasport {
// position: absolute;
height: 50px;
// top: 0;
// bottom: 0;
transform: translate(18px, 0px);
// left: 100%;
outline: none;
border: none;
background: transparent;
cursor: pointer;
color: #fff;
font-size: 18px;
animation: openBtn $time-animation linear both;
max-width: 50px;
opacity: 1;
&:hover {
opacity: 0.8;
}
&Blue {
&::after {
@include ion-lamp;
right: 0;
// border-radius: 0px 2px 2px 0px;
box-shadow: 3px 0 20px 1.5px rgba(31, 203, 255, 0.7);
animation: blink 1s ease-in-out infinite;
opacity: 1;
}
}
&Red {
&::after {
@include ion-lamp;
right: 0;
// border-radius: 0px 2px 2px 0px;
box-shadow: 3px 0 20px 1.5px rgba(255, 0, 0, 0.7);
animation: blink 1s ease-in-out infinite;
opacity: 1;
}
}
}
@keyframes blink {
0%,
100% {
opacity: 1;
}
50% {
opacity: 0.7;
}
}
@keyframes openBtn {
0% {
width: 0px;
}
100% {
width: 100%;
}
}
.GradientContainer {
transform-style: preserve-3d;
position: relative;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
padding: 0 10px;
animation: padding $time-animation both linear;
&Blue {
&::after {
@include styleGradientPseudoEl;
@include linear-gradient-blue(90deg);
right: 0px;
animation: openGradient $time-animation both linear;
}
}
&Danger {
&::after {
@include styleGradientPseudoEl;
@include linear-gradient-danger(90deg);
right: 0px;
animation: openGradient $time-animation both linear;
}
}
}
@keyframes openGradient {
0% {
width: 0px;
}
100% {
width: 50px;
}
}
@keyframes padding {
0% {
padding: 0px;
opacity: 0;
}
100% {
padding: 0 10px;
opacity: 1;
}
}