mirror of
https://github.com/squidfunk/mkdocs-material.git
synced 2024-06-14 11:52:32 +03:00
154 lines
6.6 KiB
SCSS
154 lines
6.6 KiB
SCSS
////
|
|
/// Copyright (c) 2016-2023 Martin Donath <martin.donath@squidfunk.com>
|
|
///
|
|
/// Permission is hereby granted, free of charge, to any person obtaining a
|
|
/// copy of this software and associated documentation files (the "Software"),
|
|
/// to deal in the Software without restriction, including without limitation
|
|
/// the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
/// and/or sell copies of the Software, and to permit persons to whom the
|
|
/// Software is furnished to do so, subject to the following conditions:
|
|
///
|
|
/// The above copyright notice and this permission notice shall be included in
|
|
/// all copies or substantial portions of the Software.
|
|
///
|
|
/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
/// FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
|
/// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
/// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
/// DEALINGS
|
|
////
|
|
|
|
// ----------------------------------------------------------------------------
|
|
// Rules
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// Only use dark mode on screens
|
|
@media screen {
|
|
|
|
// Slate theme, i.e. dark mode
|
|
[data-md-color-scheme="slate"] {
|
|
|
|
// Indicate that the site is rendered with a dark color scheme
|
|
color-scheme: dark;
|
|
|
|
// Slate's hue in the range [0,360] - change this variable to alter the tone
|
|
// of the theme, e.g. to make it more redish or greenish. This is a slate-
|
|
// specific variable, but the same approach may be adapted to custom themes.
|
|
--md-hue: 214;
|
|
|
|
// Default color shades
|
|
--md-default-fg-color: hsla(var(--md-hue), 75%, 95%, 0.84);
|
|
--md-default-fg-color--light: hsla(var(--md-hue), 75%, 90%, 0.62);
|
|
--md-default-fg-color--lighter: hsla(var(--md-hue), 75%, 90%, 0.32);
|
|
--md-default-fg-color--lightest: hsla(var(--md-hue), 75%, 90%, 0.12);
|
|
--md-default-bg-color: hsla(var(--md-hue), 22%, 18%, 1);
|
|
--md-default-bg-color--light: hsla(var(--md-hue), 22%, 18%, 0.54);
|
|
--md-default-bg-color--lighter: hsla(var(--md-hue), 22%, 18%, 0.26);
|
|
--md-default-bg-color--lightest: hsla(var(--md-hue), 22%, 18%, 0.07);
|
|
|
|
// Code color shades
|
|
--md-code-fg-color: hsla(var(--md-hue), 18%, 86%, 1);
|
|
--md-code-bg-color: hsla(var(--md-hue), 22%, 15%, 1);
|
|
|
|
// Code highlighting color shades
|
|
--md-code-hl-color: hsla(#{hex2hsl($clr-blue-a200)}, 0.15);
|
|
--md-code-hl-number-color: hsla(6, 74%, 63%, 1);
|
|
--md-code-hl-special-color: hsla(340, 83%, 66%, 1);
|
|
--md-code-hl-function-color: hsla(291, 57%, 65%, 1);
|
|
--md-code-hl-constant-color: hsla(250, 62%, 70%, 1);
|
|
--md-code-hl-keyword-color: hsla(219, 66%, 64%, 1);
|
|
--md-code-hl-string-color: hsla(150, 58%, 44%, 1);
|
|
--md-code-hl-name-color: var(--md-code-fg-color);
|
|
--md-code-hl-operator-color: var(--md-default-fg-color--light);
|
|
--md-code-hl-punctuation-color: var(--md-default-fg-color--light);
|
|
--md-code-hl-comment-color: var(--md-default-fg-color--light);
|
|
--md-code-hl-generic-color: var(--md-default-fg-color--light);
|
|
--md-code-hl-variable-color: var(--md-default-fg-color--light);
|
|
|
|
// Typeset color shades
|
|
--md-typeset-color: var(--md-default-fg-color);
|
|
|
|
// Typeset `a` color shades
|
|
--md-typeset-a-color: var(--md-primary-fg-color);
|
|
|
|
// Typeset `kbd` color shades
|
|
--md-typeset-kbd-color: hsla(var(--md-hue), 15%, 94%, 0.12);
|
|
--md-typeset-kbd-accent-color: hsla(var(--md-hue), 15%, 94%, 0.2);
|
|
--md-typeset-kbd-border-color: hsla(var(--md-hue), 15%, 14%, 1);
|
|
|
|
// Typeset `mark` color shades
|
|
--md-typeset-mark-color: hsla(#{hex2hsl($clr-blue-a200)}, 0.3);
|
|
|
|
// Typeset `strong` color shades
|
|
--md-typeset-strong-color: hsla(0, 100%, 100%, 1);
|
|
|
|
// Typeset `table` color shades
|
|
--md-typeset-table-color: hsla(var(--md-hue), 75%, 95%, 0.12);
|
|
--md-typeset-table-color--light: hsla(var(--md-hue), 75%, 95%, 0.035);
|
|
|
|
// Admonition color shades
|
|
--md-admonition-fg-color: var(--md-default-fg-color);
|
|
--md-admonition-bg-color: var(--md-default-bg-color);
|
|
|
|
// Footer color shades
|
|
--md-footer-bg-color: hsla(var(--md-hue), 15%, 12%, 0.87);
|
|
--md-footer-bg-color--dark: hsla(var(--md-hue), 15%, 10%, 1);
|
|
|
|
// Shadow depth 1
|
|
--md-shadow-z1:
|
|
0 #{px2rem(4px)} #{px2rem(10px)} hsla(0, 0%, 0%, 0.2),
|
|
0 0 #{px2rem(1px)} hsla(0, 0%, 0%, 0.1);
|
|
|
|
// Shadow depth 2
|
|
--md-shadow-z2:
|
|
0 #{px2rem(4px)} #{px2rem(10px)} hsla(0, 0%, 0%, 0.3),
|
|
0 0 #{px2rem(1px)} hsla(0, 0%, 0%, 0.25);
|
|
|
|
// Shadow depth 3
|
|
--md-shadow-z3:
|
|
0 #{px2rem(4px)} #{px2rem(10px)} hsla(0, 0%, 0%, 0.4),
|
|
0 0 #{px2rem(1px)} hsla(0, 0%, 0%, 0.35);
|
|
|
|
// Hide images for light mode
|
|
img[src$="#only-light"],
|
|
img[src$="#gh-light-mode-only"] {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
|
|
// Adjust link colors for dark primary colors
|
|
@each $name, $color in (
|
|
"pink": hsl(340, 81%, 63%),
|
|
"purple": hsl(291, 43%, 63%),
|
|
"deep-purple": hsl(262, 63%, 70%),
|
|
"indigo": hsl(219, 66%, 67%),
|
|
"teal": hsl(174, 100%, 40%),
|
|
"green": hsl(122, 39%, 60%),
|
|
"deep-orange": hsl(14, 100%, 73%),
|
|
"brown": hsl(16, 45%, 60%),
|
|
|
|
// Set neutral colors to indigo
|
|
"grey": hsl(219, 56%, 63%),
|
|
"blue-grey": hsl(219, 56%, 63%),
|
|
"white": hsl(219, 56%, 63%),
|
|
"black": hsl(219, 56%, 63%)
|
|
) {
|
|
[data-md-color-scheme="slate"][data-md-color-primary="#{$name}"] {
|
|
--md-typeset-a-color: #{$color};
|
|
}
|
|
}
|
|
|
|
// --------------------------------------------------------------------------
|
|
|
|
// Switching in progress - disable all transitions temporarily
|
|
[data-md-color-switching] *,
|
|
[data-md-color-switching] *::before,
|
|
[data-md-color-switching] *::after {
|
|
transition-duration: 0ms !important; // stylelint-disable-line
|
|
}
|
|
}
|