1
1
<template >
2
- <div
3
- class =" front-page-card relative group"
4
- :class =" checked ? 'checked' : ''"
5
- @click =" cardClicked"
6
- >
2
+ <div class =" front-page-card relative group" :class =" checked ? 'checked' : ''" @click =" cardClicked" >
7
3
<div class =" relative checkbox" >
8
- <span
9
- class =" absolute transition-opacity duration-300 ease-out"
10
- :class =" { 'opacity-0': checked, 'opacity-100 delay-500': !checked }"
11
- >
4
+ <span class =" absolute transition-opacity duration-300 ease-out"
5
+ :class =" { 'opacity-0': checked, 'opacity-100 delay-500': !checked }" >
12
6
{{ step }}
13
7
</span >
14
- <Icon
15
- class =" w-7 h-7 bg-white transition-opacity duration-300 ease-out"
16
- :class =" { 'opacity-0': !checked, 'opacity-100 delay-500': checked }"
17
- name =" heroicons:check-20-solid"
18
- ></Icon >
8
+ <Icon class =" w-7 h-7 bg-white transition-opacity duration-300 ease-out"
9
+ :class =" { 'opacity-0': !checked, 'opacity-100 delay-500': checked }" name =" heroicons:check-20-solid" ></Icon >
19
10
</div >
20
11
<div class =" content" >
21
12
<h3 class =" relative" >
22
13
{{ title }}
23
- <span
24
- class =" absolute left-0 top-1/2 transform -translate-y-1/2 transition-all bg-slate-400 duration-300"
25
- :class =" checked ? 'w-full h-1 opacity-100' : 'w-0 opacity-0'"
26
- ></span >
14
+ <span class =" absolute left-0 top-1/2 transform -translate-y-1/2 transition-all bg-slate-400 duration-300"
15
+ :class =" checked ? 'w-full h-1 opacity-100' : 'w-0 opacity-0'" ></span >
27
16
</h3 >
28
17
<p class =" text-sm relative" >
29
18
{{ description }}
30
19
<span
31
20
class =" absolute left-0 top-1/2 transform -translate-y-1/2 transition-all bg-slate-400 delay-100 duration-300"
32
- :class =" checked ? 'w-full h-1 opacity-100' : 'w-0 opacity-0'"
33
- ></span >
21
+ :class =" checked ? 'w-full h-1 opacity-100' : 'w-0 opacity-0'" ></span >
34
22
</p >
35
23
</div >
36
24
<div v-if =" !checked" class =" overlay opacity-0 group-hover:opacity-100" >
37
25
<div class =" overlay-content not-prose" >
38
26
<h3 >{{ overlay.title }}</h3 >
39
27
<p >{{ overlay.description }}</p >
40
28
</div >
41
- <Icon
42
- class =" w-8 h-8 bg-white transition-opacity duration-300 ease-out"
43
- name =" icon-park-outline:double-right"
44
- ></Icon >
29
+ <Icon class =" w-8 h-8 bg-white transition-opacity duration-300 ease-out" name =" icon-park-outline:double-right" >
30
+ </Icon >
45
31
</div >
46
32
</div >
47
33
</template >
@@ -88,21 +74,19 @@ let cardClicked = () => {
88
74
@apply dark :text-slate-50;
89
75
90
76
@apply border;
91
- @apply border-gray-100 ;
92
- @apply dark :border-gray-950 ;
77
+ @apply border-slate-200 ;
78
+ @apply dark :border-slate-800 ;
93
79
94
80
@apply rounded-lg;
95
- @apply shadow-sm;
96
- @apply hover :shadow-slate-200;
97
81
98
82
@apply text-pretty;
99
83
100
84
.overlay {
101
85
@apply flex items-center justify-between space-x-2 absolute inset-0 px-10;
102
- @apply bg-gradient-to-r from -cyan -500 to -blue -500;
86
+ @apply bg-gradient-to-r from -orange -500 to -amber -500;
103
87
@apply h-full w-full;
104
88
@apply rounded-md;
105
- @apply transition-opacity duration-300 ease-in-out;
89
+ @apply transition-opacity duration-100 ease-in-out;
106
90
107
91
h3 {
108
92
@apply text-white text-2xl font-bold;
@@ -114,22 +98,22 @@ let cardClicked = () => {
114
98
}
115
99
116
100
.checkbox {
117
- @apply transition-colors duration-300 ease-in delay-300;
118
101
@apply flex items-center justify-center;
119
102
@apply font-mono font-bold text-slate-300 text-2xl;
120
103
@apply w-12 h-12;
121
104
@apply rounded-full;
122
- @apply bg-slate-100;
123
- @apply border-2 border-slate-200;
105
+ @apply bg-slate-100 dark :bg-slate-950 ;
106
+ @apply border-2 border-slate-200 dark :border-slate-800 ;
124
107
}
125
108
126
109
.content {
127
110
@apply ml-6;
128
- @apply text-slate-500;
111
+ @apply text-slate-500 dark :text-slate-400 ;
129
112
130
113
h3 {
131
114
@apply m-0;
132
115
@apply text-slate-900;
116
+ @apply dark :text-slate-200;
133
117
}
134
118
135
119
p {
@@ -138,6 +122,12 @@ let cardClicked = () => {
138
122
}
139
123
}
140
124
125
+ &:not (.checked ) {
126
+ @apply shadow-sm;
127
+ @apply hover :shadow-amber-200;
128
+ @apply dark :hover:shadow-amber-800;
129
+ }
130
+
141
131
& .checked {
142
132
.content {
143
133
@apply text-slate-400;
0 commit comments