aboutsummaryrefslogtreecommitdiffstats
path: root/src/styles/themes
diff options
context:
space:
mode:
authorArmand Philippot <git@armandphilippot.com>2022-01-17 17:13:51 +0100
committerArmand Philippot <git@armandphilippot.com>2022-01-17 18:03:52 +0100
commit68138f0dcd8b3db2c23b31a20508726f245b5ba5 (patch)
tree0d6a31cfd0adcba4d4cb08666bc262bed6cb89ea /src/styles/themes
parent86d3e30ef02585d5089dce3aa2757ca2cb4e4edf (diff)
feat: implement dark mode
Diffstat (limited to 'src/styles/themes')
-rw-r--r--src/styles/themes/_dark.scss52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/styles/themes/_dark.scss b/src/styles/themes/_dark.scss
new file mode 100644
index 0000000..946403a
--- /dev/null
+++ b/src/styles/themes/_dark.scss
@@ -0,0 +1,52 @@
+@use "@styles/abstracts/functions" as fun;
+@use "@styles/abstracts/variables" as var;
+
+[data-theme="dark"] {
+ * {
+ text-shadow: none !important;
+ }
+
+ body {
+ font-variation-settings: "GRAD" -0.7;
+ }
+
+ img {
+ filter: brightness(0.8) contrast(1.1);
+
+ &[src*="png"] {
+ background: var(--color-bg-light);
+ }
+
+ &:active {
+ filter: none;
+ }
+ }
+
+ a {
+ &.external {
+ &::after {
+ content: "\0000a0"url(fun.encode-svg('<svg width="13" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><path fill="#{var.$dark-theme_blue}" d="M100 0 59.543 5.887l20.8 6.523-51.134 51.134 7.249 7.248L87.59 19.66l6.522 20.798z"/><path fill="#{var.$dark-theme_blue}" d="M4 10a4 4 0 0 0-4 4v82a4 4 0 0 0 4 4h82a4 4 0 0 0 4-4V62.314h-8V92H8V18h29.686v-8z"/></svg>'));
+ }
+
+ &:focus:not(:active)::after {
+ content: "\0000a0"url(fun.encode-svg('<svg width="13" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><path fill="#{var.$dark-theme_black}" d="M100 0 59.543 5.887l20.8 6.523-51.134 51.134 7.249 7.248L87.59 19.66l6.522 20.798z"/><path fill="#{var.$dark-theme_black}" d="M4 10a4 4 0 0 0-4 4v82a4 4 0 0 0 4 4h82a4 4 0 0 0 4-4V62.314h-8V92H8V18h29.686v-8z"/></svg>'));
+ }
+ }
+
+ &[hreflang] {
+ &.external {
+ &::after {
+ content: "\0000a0["attr(hreflang) "]\0000a0"url(fun.encode-svg(
+ '<svg width="13" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><path fill="#{var.$dark-theme_blue}" d="M100 0 59.543 5.887l20.8 6.523-51.134 51.134 7.249 7.248L87.59 19.66l6.522 20.798z"/><path fill="#{var.$dark-theme_blue}" d="M4 10a4 4 0 0 0-4 4v82a4 4 0 0 0 4 4h82a4 4 0 0 0 4-4V62.314h-8V92H8V18h29.686v-8z"/></svg>'
+ ));
+ }
+
+ &:focus:not(:active)::after {
+ content: "\0000a0["attr(hreflang) "]\0000a0"url(fun.encode-svg(
+ '<svg width="13" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><path fill="#{var.$dark-theme_black}" d="M100 0 59.543 5.887l20.8 6.523-51.134 51.134 7.249 7.248L87.59 19.66l6.522 20.798z"/><path fill="#{var.$dark-theme_black}" d="M4 10a4 4 0 0 0-4 4v82a4 4 0 0 0 4 4h82a4 4 0 0 0 4-4V62.314h-8V92H8V18h29.686v-8z"/></svg>'
+ ));
+ }
+ }
+ }
+ }
+}