2025-03-25 06:17:41 +00:00
|
|
|
@use "../abstracts/variables" as *;
|
|
|
|
@use "../abstracts/mixins" as *;
|
|
|
|
|
|
|
|
.tools-container {
|
|
|
|
@include flex-center;
|
|
|
|
position: fixed;
|
2025-04-07 12:25:14 +00:00
|
|
|
bottom: 32px;
|
2025-03-25 06:17:41 +00:00
|
|
|
left: 50%;
|
|
|
|
transform: translate(-50%, 0);
|
|
|
|
padding: 8px;
|
|
|
|
gap: 10px;
|
|
|
|
box-shadow: #{$box-shadow-medium};
|
|
|
|
border-radius: #{$border-radius-large};
|
|
|
|
width: fit-content;
|
|
|
|
transition: width 0.2s;
|
2025-04-29 10:57:03 +00:00
|
|
|
background: var(--background-color);
|
|
|
|
backdrop-filter: blur(8px);
|
2025-05-02 12:09:11 +00:00
|
|
|
z-index: 2;
|
2025-04-30 10:53:24 +00:00
|
|
|
outline: 1px solid var(--border-color);
|
|
|
|
outline-offset: -1px;
|
2025-03-26 08:22:10 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.split {
|
|
|
|
height: 20px;
|
|
|
|
width: 2px;
|
|
|
|
border-radius: 2px;
|
2025-04-29 10:57:03 +00:00
|
|
|
background: var(--text-disabled);
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.draw-tools,
|
|
|
|
.general-options,
|
|
|
|
.activeDropicon {
|
|
|
|
@include flex-center;
|
2025-04-30 11:22:08 +00:00
|
|
|
gap: 2px;
|
2025-03-25 06:17:41 +00:00
|
|
|
interpolate-size: allow-keywords;
|
|
|
|
width: 0;
|
|
|
|
opacity: 0;
|
|
|
|
animation: expandWidth 0.2s ease-in-out forwards;
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.tool-button {
|
|
|
|
@include flex-center;
|
|
|
|
height: 28px;
|
|
|
|
width: 28px;
|
|
|
|
cursor: pointer;
|
2025-04-30 10:53:24 +00:00
|
|
|
border-radius: #{$border-radius-medium};
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
&:hover {
|
2025-03-25 08:55:51 +00:00
|
|
|
background: color-mix(in srgb,
|
|
|
|
var(--highlight-accent-color) 60%,
|
|
|
|
transparent);
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.active {
|
2025-04-29 12:49:03 +00:00
|
|
|
background: var(--background-color-accent);
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
&:hover {
|
2025-04-29 12:49:03 +00:00
|
|
|
background: var(--background-color-accent);
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.activeDropicon {
|
|
|
|
gap: 2px;
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.drop-down-option-button {
|
|
|
|
@include flex-center;
|
|
|
|
height: 28px;
|
|
|
|
cursor: pointer;
|
|
|
|
border-radius: #{$border-radius-small};
|
|
|
|
position: relative;
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
&:hover {
|
2025-03-25 08:55:51 +00:00
|
|
|
background: color-mix(in srgb,
|
|
|
|
var(--highlight-accent-color) 60%,
|
|
|
|
transparent);
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.drop-down-container {
|
|
|
|
position: absolute;
|
|
|
|
bottom: 40px;
|
|
|
|
left: 0;
|
2025-04-30 11:35:28 +00:00
|
|
|
padding: 2px 4px;
|
|
|
|
border-radius: #{$border-radius-medium};
|
2025-03-25 08:30:03 +00:00
|
|
|
background: var(--background-color);
|
2025-04-30 11:35:28 +00:00
|
|
|
backdrop-filter: blur(8px);
|
2025-04-30 14:15:29 +00:00
|
|
|
contain: layout paint;
|
|
|
|
will-change: backdrop-filter;
|
2025-03-26 06:00:17 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.option-list {
|
|
|
|
display: flex;
|
|
|
|
align-items: center;
|
|
|
|
white-space: nowrap;
|
|
|
|
border-radius: #{$border-radius-medium};
|
|
|
|
gap: 6px;
|
2025-04-30 11:35:28 +00:00
|
|
|
padding: 2px;
|
|
|
|
padding-right: 12px;
|
|
|
|
margin: 2px 0;
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
&:hover {
|
2025-04-29 10:57:03 +00:00
|
|
|
background: var(--highlight-accent-color);
|
2025-03-25 06:17:41 +00:00
|
|
|
color: var(--accent-color);
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
path {
|
|
|
|
stroke: var(--accent-color);
|
|
|
|
}
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.active-option {
|
|
|
|
height: 12px;
|
|
|
|
width: 12px;
|
|
|
|
@include flex-center;
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.option {
|
|
|
|
color: inherit;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.toggle-threed-button {
|
|
|
|
@include flex-center;
|
2025-04-30 10:53:24 +00:00
|
|
|
padding: 4px;
|
|
|
|
border-radius: #{$border-radius-medium};
|
|
|
|
background: var(--background-color);
|
2025-05-02 11:13:43 +00:00
|
|
|
outline: 1px solid var(--border-color);
|
|
|
|
outline-offset: -1px;
|
2025-04-30 10:53:24 +00:00
|
|
|
gap: 5px;
|
2025-03-25 06:17:41 +00:00
|
|
|
position: relative;
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.toggle-option {
|
|
|
|
font-size: var(--font-size-small);
|
|
|
|
padding: 2px;
|
|
|
|
z-index: 1;
|
|
|
|
transition: all 0.2s;
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
&::after {
|
|
|
|
content: "";
|
|
|
|
position: absolute;
|
2025-04-30 10:53:24 +00:00
|
|
|
background: var(--background-color-accent);
|
|
|
|
left: 2px;
|
|
|
|
top: 2px;
|
|
|
|
height: 23px;
|
|
|
|
width: 23px;
|
|
|
|
border-radius: #{$border-radius-medium};
|
2025-03-25 06:17:41 +00:00
|
|
|
transition: all 0.2s;
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.active {
|
2025-04-30 10:53:24 +00:00
|
|
|
color: var(--text-button-color);
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
.toggled {
|
|
|
|
&::after {
|
2025-04-30 10:53:24 +00:00
|
|
|
left: 25px;
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
|
|
|
}
|
2025-03-26 06:00:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
.exitPlay {
|
|
|
|
width: 30px;
|
|
|
|
height: 30px;
|
|
|
|
border-radius: 50%;
|
2025-04-29 10:57:03 +00:00
|
|
|
background: var(--highlight-accent-color);
|
2025-03-26 06:00:17 +00:00
|
|
|
cursor: pointer;
|
|
|
|
@include flex-center;
|
|
|
|
position: fixed;
|
2025-03-26 08:22:10 +00:00
|
|
|
bottom: 60px;
|
2025-03-26 06:00:17 +00:00
|
|
|
left: 50%;
|
|
|
|
transform: translate(-50%, 0);
|
2025-03-27 03:36:26 +00:00
|
|
|
color: var(--accent-color);
|
2025-03-26 08:22:10 +00:00
|
|
|
z-index: 100;
|
2025-03-27 03:36:26 +00:00
|
|
|
isolation: isolate;
|
|
|
|
font-weight: 700;
|
2025-03-26 06:00:17 +00:00
|
|
|
&:hover {
|
2025-03-27 03:36:26 +00:00
|
|
|
font-weight: 500;
|
2025-04-29 10:57:03 +00:00
|
|
|
background: var(--accent-color);
|
2025-03-27 03:36:26 +00:00
|
|
|
color: var(--highlight-accent-color);
|
|
|
|
&::after{
|
|
|
|
animation: pulse 1s ease-out infinite;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
&::after{
|
|
|
|
content: "";
|
|
|
|
position: absolute;
|
|
|
|
height: 100%;
|
|
|
|
width: 100%;
|
|
|
|
background: var(--background-color-secondary);
|
|
|
|
border-radius: #{$border-radius-circle};
|
|
|
|
z-index: -1;
|
2025-03-25 08:55:51 +00:00
|
|
|
}
|
2025-03-25 06:17:41 +00:00
|
|
|
}
|
|
|
|
|
2025-03-27 03:36:26 +00:00
|
|
|
@keyframes pulse {
|
|
|
|
0%{
|
|
|
|
opacity: 0;
|
|
|
|
scale: .5;
|
|
|
|
}
|
|
|
|
50%{
|
|
|
|
opacity: 1;
|
|
|
|
}
|
|
|
|
100%{
|
|
|
|
opacity: 0;
|
|
|
|
scale: 2;
|
|
|
|
}
|
|
|
|
}
|
2025-03-26 06:00:17 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
@keyframes expandWidth {
|
|
|
|
from {
|
|
|
|
width: 0;
|
|
|
|
opacity: 0;
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
|
2025-03-25 06:17:41 +00:00
|
|
|
to {
|
|
|
|
width: fit-content;
|
|
|
|
opacity: 1;
|
|
|
|
}
|
2025-03-25 08:55:51 +00:00
|
|
|
}
|