blob: 86ff48eb1e8d09419fd4ea4fa32ca05df23b7a3b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
@use "@styles/abstracts/functions" as fun;
@use "@styles/abstracts/mixins" as mix;
@use "@styles/abstracts/placeholders";
.item {
--btn-size: #{fun.convert-px(65)};
display: flex;
@include mix.media("screen") {
@include mix.dimensions("sm") {
justify-content: center;
}
}
}
.modal {
position: absolute;
top: var(--toolbar-size, calc(var(--btn-size) + var(--spacing-2xs)));
transition: all 0.8s ease-in-out 0s;
@include mix.media("screen") {
@include mix.dimensions(null, "sm") {
left: 0;
right: 0;
}
}
}
.label {
--draw-border-thickness: #{fun.convert-px(4)};
--draw-border-color1: var(--color-primary-light);
--draw-border-color2: var(--color-primary-lighter);
display: flex;
place-content: center;
place-items: center;
width: var(--btn-size);
height: var(--btn-size);
padding: var(--spacing-2xs);
&:hover,
&:focus {
@extend %draw-borders;
}
&:focus {
color: var(--color-primary-light);
}
&:active {
--draw-border-color1: var(--color-primary-dark);
--draw-border-color2: var(--color-primary-light);
@extend %draw-borders;
}
}
.checkbox {
position: absolute;
top: calc(var(--btn-size) / 2);
left: calc(var(--btn-size) / 2);
opacity: 0;
cursor: pointer;
&:hover,
&:focus {
~ .label {
@extend %draw-borders;
}
}
&:not(:checked) {
~ .modal {
opacity: 0;
visibility: hidden;
@include mix.media("screen") {
@include mix.dimensions(null, "sm") {
transform: translateX(-100vw);
}
@include mix.dimensions("sm") {
transform: perspective(#{fun.convert-px(400)})
translate3d(0, 0, #{fun.convert-px(-400)});
transform-origin: 50% -50%;
}
}
}
}
}
|