]> git.0d.be Git - chloro.git/blobdiff - chloro/rdio/static/css/style.scss
add dark mode style for rdio
[chloro.git] / chloro / rdio / static / css / style.scss
index 9bef07ddd3fe2acb231bf1b1a53907f36700ae72..ebbd8933ba4212638eff1ae3eed1c2ca63e4ca1b 100644 (file)
@@ -4,23 +4,64 @@ $text-color: #222;
 $link-color: #386ede;
 $visited-link-color: #551a8b;
 
+html {
+       --text-color: #222;
+       --text-background: #fafaff;
+       --light-text-color: lighten(#222, 20%);
+       --lighter-text-color: lighten(#222, 30%);
+       --header-background: #eaeaff;
+       --header-box-shadow-color: #b2987f;
+       --link-color: #386ede;
+       --visited-link-color: #551a8b;
+       --border-color: #555;
+       --note-background: #fbf7c1;
+       --blockquote-background: #eeeefd;
+       --toc-background: rgba(255, 255, 255, 0.8);
+       --toc-background-mobile: #eee;
+       --search-hit-hover-background: #eee;
+}
+
+@media (prefers-color-scheme: dark) {
+       html {
+               --text-background: #100;
+               --text-color: #eef;
+               --light-text-color: lighten(#eef, 20%);
+               --lighter-text-color: lighten(#eef, 30%);
+               --header-background: #080000;
+               --header-box-shadow-color: #211;
+               --link-color: #aaf;
+               --visited-link-color: #b767ff;
+               --border-color: #555;
+               --note-background: #331;
+               --blockquote-background: #111;
+               --toc-background: rgba(15, 15, 25, 0.8);
+               --toc-background-mobile: rgba(25, 15, 15);
+               --search-hit-hover-background: #002;
+       }
+
+
+}
+
 @import "../../../phyll/static/css/_opensans.scss";
 
 body {
        font-family: "Open Sans", sans-serif;
        background: url(6138240034_68f81350a2_o-x.jpg) top center no-repeat fixed;
+       @media (prefers-color-scheme: dark) {
+               background-image: url(6138240034_68f81350a2_o-x-dark.jpg);
+       }
        background-size: cover;
-       color: $text-color;
+       color: var(--text-color);
        font-size: 100%;
 }
 
 a {
-       color: $link-color;
+       color: var(--link-color);
        text-decoration: none;
-       border-bottom: 1px dotted $link-color;
+       border-bottom: 1px dotted var(--link-color);
        &:visited {
-               color: $visited-link-color;
-               border-color: $visited-link-color;
+               color: var(--visited-link-color);
+               border-color: var(--visited-link-color);
        }
        &:hover {
                border-bottom-style: solid;
@@ -40,10 +81,10 @@ header {
                text-transform: uppercase;
                margin: 0 0 0 1em;
                padding: 0 0.5em;
-               color: lighten($text-color, 20%);
-               background: #eaeaff;
+               color: var(--light-text-color);
+               background: var(--header-background);
                display: inline-block;
-               box-shadow: 0 0 3px 1px #b2987f;
+               box-shadow: 0 0 3px 1px var(--header-box-shadow-color);
                a {
                        border: none;
                }
@@ -64,15 +105,15 @@ main, footer {
 
 main {
        position: relative;
-       background: #fafaff;
+       background: var(--text-background);
        min-height: 80vh;
-       border: 1px solid #555;
+       border: 1px solid var(--border-color);
 }
 
 footer {
-       border: 1px solid #555;
+       border: 1px solid var(--border-color);
        margin-top: 1em;
-       background: #fafaff;
+       background: var(--text-background);
        display: flex;
        justify-content: space-between;
        p {
@@ -131,31 +172,31 @@ article {
        }
        div.meta {
                margin-top: 3em;
-               color: lighten($text-color, 30%);
+               color: var(----lighter-text-color);
        }
        div.note {
-               background: #fbf7c1 url(yelp-note.png) 5px 10px no-repeat;
+               background: var(--note-background) url(yelp-note.png) 5px 10px no-repeat;
                padding: 0.2em 0.5em 0.2em 2em;
                p {
                        margin: 0.5em 0;
                }
        }
        blockquote {
-               background: #eeeefd;
+               background: var(--blockquote-background);
                padding: 0.1em 1em;
                clip-path: polygon(0px 0px, 94.27% 2px, 99.63% 2.65%, 98.39% 97.48%, 10% 100%, 0% 100%, 0px 0px);
        }
 }
 
 .latest-changes {
-       border-top: 1px solid #555;
+       border-top: 1px solid var(--border-color);
        padding-top: 0;
        h3 {
                font-weight: normal;
        }
        &--date {
                font-size: 80%;
-               color: lighten($link-color, 10%);
+               color: var(--light-text-color);
        }
 }
 
@@ -281,6 +322,7 @@ input#image-upload, input#document-upload {
        #search-enable:checked {
                + label {
                        &::after {
+                               color: black;
                                content: "×";
                        }
                }
@@ -315,7 +357,7 @@ input#image-upload, input#document-upload {
                                border: 1px solid $link-color;
                                margin-top: -1px;
                                &:hover {
-                                       background: #eee;
+                                       background: var(--search-hit-hover-background);
                                }
                        }
                }
@@ -344,7 +386,7 @@ article h2:hover {
        padding: 1em 0 1em 1em;
        float: left;
        width: 15em;
-       background: rgba(255, 255, 255, 0.8);
+       background: var(--toc-background);
        margin-left: -17em;
        position: sticky;
        top: 1em;
@@ -358,7 +400,7 @@ article h2:hover {
                border-right: 0.3em solid transparent;
                padding: 5px 0.5em 5px 0;
                &.active {
-                       border-right: 0.3em solid #555;
+                       border-right: 0.3em solid var(--border-color);
                }
        }
        a {
@@ -368,7 +410,7 @@ article h2:hover {
 
 @media screen and (max-width: 80em) {
        #toc {
-               background: #eee;
+               background: var(--toc-background-mobile);
                float: none;
                margin: 0;
                width: auto;