diff --git a/assets/components/container/container.vue b/assets/components/container/container.vue
index e7d3a4b3..bec16317 100644
--- a/assets/components/container/container.vue
+++ b/assets/components/container/container.vue
@@ -73,6 +73,7 @@ export default {
overflow: hidden;
background: var(--background-dim);
color: var(--text);
+ transition: background var(--theme-transition);
}
.content {
diff --git a/assets/components/header/filter-bar.vue b/assets/components/header/filter-bar.vue
index d9516015..cf6657ab 100644
--- a/assets/components/header/filter-bar.vue
+++ b/assets/components/header/filter-bar.vue
@@ -175,6 +175,7 @@ export default {
z-index: 1;
font-size: 0;
box-shadow: 0 0 3px var(--darken);
+ transition: background var(--theme-transition);
.icon {
fill: var(--shadow);
@@ -205,6 +206,7 @@ export default {
box-shadow: 0 0 2px var(--shadow-weak);
font-size: .8rem;
font-weight: bold;
+ transition: background var(--theme-transition), color var(--theme-transition);
&:hover {
color: var(--text);
diff --git a/assets/components/header/filters.vue b/assets/components/header/filters.vue
index b35ea3a2..20590349 100644
--- a/assets/components/header/filters.vue
+++ b/assets/components/header/filters.vue
@@ -124,6 +124,7 @@ export default {
font-size: .9rem;
font-weight: bold;
cursor: pointer;
+ transition: color var(--theme-transition);
.check {
display: none;
diff --git a/assets/components/header/header.vue b/assets/components/header/header.vue
index 24dce7f4..a7ce9ea8 100644
--- a/assets/components/header/header.vue
+++ b/assets/components/header/header.vue
@@ -185,6 +185,7 @@ export default {
color: var(--primary);
box-shadow: 0 1px 0 var(--darken-hint);
font-size: 0;
+ transition: background var(--theme-transition);
}
.header-nav {
@@ -253,6 +254,7 @@ export default {
font-size: .9rem;
font-weight: bold;
cursor: pointer;
+ transition: color var(--theme-transition);
&.active {
color: var(--primary);
diff --git a/assets/components/header/search.vue b/assets/components/header/search.vue
index 8d14a1bd..8d878923 100644
--- a/assets/components/header/search.vue
+++ b/assets/components/header/search.vue
@@ -93,9 +93,11 @@ export default {
outline: none;
font-size: 1rem;
outline: none;
+ transition: background var(--theme-transition), color var(--theme-transition);
&::placeholder {
color: var(--shadow);
+ transition: color var(--theme-transition);
}
&::-webkit-search-cancel-button {
diff --git a/assets/components/icon/icon.vue b/assets/components/icon/icon.vue
index a2a6cc79..1bf9d4a0 100644
--- a/assets/components/icon/icon.vue
+++ b/assets/components/icon/icon.vue
@@ -43,6 +43,7 @@ export default {
flex-shrink: 0;
width: 1rem;
height: 1rem;
+ transition: fill var(--theme-transition);
svg {
width: 100%;
diff --git a/assets/components/networks/networks.vue b/assets/components/networks/networks.vue
index 73d7d309..fde9bb59 100644
--- a/assets/components/networks/networks.vue
+++ b/assets/components/networks/networks.vue
@@ -113,6 +113,7 @@ export default {
margin: 1rem 0;
font-size: 1rem;
outline: none;
+ transition: background var(--theme-transition);
&:focus {
box-shadow: 0 0 3px var(--primary);
diff --git a/assets/components/releases/release.vue b/assets/components/releases/release.vue
index e33ff5be..994b65ab 100644
--- a/assets/components/releases/release.vue
+++ b/assets/components/releases/release.vue
@@ -210,24 +210,11 @@
class="link added"
>{{ formatDate(release.dateAdded, 'MMMM D, YYYY') }}
-
-
-
-
-
-
@@ -313,7 +285,7 @@ export default {
.details {
background: var(--profile);
color: var(--text-light);
- box-shadow: 0 0 3px var(--shadow-weak);
+ box-shadow: 0 0 3px var(--darken-weak);
cursor: default;
.column {
@@ -324,6 +296,7 @@ export default {
.link {
color: var(--text-light);
+ transition: color var(--theme-transition);
}
}
@@ -385,10 +358,12 @@ export default {
.title {
margin: 0 0 1.5rem 0;
+ transition: color var(--theme-transition);
}
.description {
line-height: 1.5;
+ transition: color var(--theme-transition);
}
.duration {
@@ -440,9 +415,10 @@ export default {
display: inline-block;
padding: .5rem;
margin: 0 .25rem .25rem 0;
- box-shadow: 0 0 2px var(--shadow-weak);
+ box-shadow: 0 0 2px var(--darken-weak);
text-decoration: none;
text-transform: capitalize;
+ transition: background var(--theme-transition);
&:hover {
color: var(--primary);
diff --git a/assets/components/releases/releases.vue b/assets/components/releases/releases.vue
index 81bb4f19..19676756 100644
--- a/assets/components/releases/releases.vue
+++ b/assets/components/releases/releases.vue
@@ -83,6 +83,7 @@ export default {
.empty {
color: var(--shadow-strong);
font-weight: bold;
+ transition: color var(--theme-transition);
}
@media(max-width: $breakpoint4) {
diff --git a/assets/components/tile/release.vue b/assets/components/tile/release.vue
index 62cdf8fa..d877c903 100644
--- a/assets/components/tile/release.vue
+++ b/assets/components/tile/release.vue
@@ -184,13 +184,14 @@ export default {
.tile {
background: var(--background);
+ height: 100%;
display: flex;
flex-direction: column;
box-sizing: border-box;
padding: 0 0 .5rem 0;
overflow: hidden;
- box-shadow: 0 0 3px var(--shadow-weak);
- height: 100%;
+ box-shadow: 0 0 3px var(--darken-weak);
+ transition: background var(--theme-transition);
}
.poster {
@@ -299,6 +300,7 @@ export default {
line-height: 1.5;
text-overflow: ellipsis;
overflow: hidden;
+ transition: color var(--theme-transition);
.icon {
margin: 0 .25rem 0 0;
@@ -316,6 +318,7 @@ export default {
overflow: hidden;
max-height: 2.75rem;
line-height: 1.5rem;
+ transition: color var(--theme-transition);
}
.tags {
@@ -358,6 +361,7 @@ export default {
text-decoration: none;
line-height: 1;
border: solid 1px var(--shadow-hint);
+ transition: color var(--theme-transition), border-color var(--theme-transition);
&:hover {
color: var(--primary);
diff --git a/assets/components/tile/site.vue b/assets/components/tile/site.vue
index 2be37b39..8b370db6 100644
--- a/assets/components/tile/site.vue
+++ b/assets/components/tile/site.vue
@@ -47,18 +47,18 @@ export default {
.logo {
width: 100%;
height: 5rem;
- color: $text-contrast;
+ color: var(--text-contrast);
display: flex;
align-items: center;
justify-content: center;
object-fit: contain;
font-size: 1rem;
font-weight: bold;
- filter: $logo-highlight;
+ filter: var(--logo-highlight);
}
.title {
- color: $text;
+ color: var(--text);
height: 100%;
display: flex;
align-items: center;
diff --git a/assets/css/_states.scss b/assets/css/_states.scss
index 2d2e35eb..44f3e2b9 100644
--- a/assets/css/_states.scss
+++ b/assets/css/_states.scss
@@ -1,3 +1,9 @@
+$breakpoint0: 540px;
+$breakpoint: 720px;
+$breakpoint2: 900px;
+$breakpoint3: 1200px;
+$breakpoint4: 1500px;
+
.noselect {
user-select: none;
-webkit-user-select: none;
@@ -14,7 +20,6 @@
li {
display: inline-block;
padding: 0;
- margin: 0;
}
}
diff --git a/assets/css/_theme.scss b/assets/css/_theme.scss
index b4592055..8ad793e4 100644
--- a/assets/css/_theme.scss
+++ b/assets/css/_theme.scss
@@ -1,9 +1,6 @@
+@import 'states';
+
/* $primary: #ff886c; */
-$breakpoint0: 540px;
-$breakpoint: 720px;
-$breakpoint2: 900px;
-$breakpoint3: 1200px;
-$breakpoint4: 1500px;
$primary: #ff6c88;
$background: #fff;
@@ -36,6 +33,8 @@ $male: #0af;
$female: #f0a;
:root {
+ --theme-transition: .5s ease;
+
--primary: #ff6c88;
--text-dark: #222;
@@ -53,8 +52,8 @@ $female: #f0a;
--lighten-weak: rgba(255, 255, 255, .2);
--lighten-hint: rgba(255, 255, 255, .1);
- --logo-shadow: drop-shadow(1px 0 0 $shadow-weak) drop-shadow(-1px 0 0 $shadow-weak) drop-shadow(0 1px 0 $shadow-weak) drop-shadow(0 -1px 0 $shadow-weak);
- --logo-highlight: drop-shadow(0 0 1px $highlight);
+ --logo-shadow: drop-darken(1px 0 0 $darken-weak) drop-darken(-1px 0 0 $darken-weak) drop-darken(0 1px 0 $darken-weak) drop-darken(0 -1px 0 $darken-weak);
+ --logo-highlight: drop-shadow(0 0 1px $lighten);
--alert: #f00;
--warn: #fa0;
diff --git a/assets/css/style.scss b/assets/css/style.scss
index 6519319b..f24d0fb1 100644
--- a/assets/css/style.scss
+++ b/assets/css/style.scss
@@ -1,6 +1,5 @@
@import 'theme';
@import 'inputs';
-@import 'states';
@import 'tooltip';
html,
@@ -28,6 +27,7 @@ body {
padding: 0;
margin: 0 0 1rem 0;
font-size: 1.5rem;
+ transition: color var(--theme-transition);
}
.icon.icon-href {