diff --git a/action.sh b/action.sh new file mode 100644 index 000000000..9ddf569f9 --- /dev/null +++ b/action.sh @@ -0,0 +1,160 @@ +#!/bin/bash + +# To fetch and use this script in a GitHub action: +# +# curl -s -S https://raw.githubusercontent.com/saberzero1/quartz-themes/master/action.sh | bash -s -- + +RED='\033[0;31m' +YELLOW='\033[1;33m' +GREEN='\033[0;32m' +BLUE='\033[1;34m' +NC='\033[0m' + +echo_err() { echo -e "${RED}$1${NC}"; } +echo_warn() { echo -e "${YELLOW}$1${NC}"; } +echo_ok() { echo -e "${GREEN}$1${NC}"; } +echo_info() { echo -e "${BLUE}$1${NC}"; } + +THEME_DIR="themes" +QUARTZ_STYLES_DIR="quartz/styles" + +if test -f ${QUARTZ_STYLES_DIR}/custom.scss; then + echo_ok "Quartz root succesfully detected..." + THEME_DIR="${QUARTZ_STYLES_DIR}/${THEME_DIR}" +else + echo_warn "Quartz root not detected, checking if we are in the styles directory..." + if test -f custom.scss; then + echo_ok "Styles directory detected..." + else + echo_err "Cannot detect Quartz repository. Are you in the correct working directory?" 1>&2 + exit 1 + fi +fi + +echo -e "Input theme: ${BLUE}$*${NC}" + +echo "Parsing input theme..." + +# Concat parameters +result="" + +for param in "$@"; do + if [ -n "$result" ]; then + result="$result-" + fi + + result="$result$param" +done + +if "$result" = ""; then + echo_warn "No theme provided, defaulting to Tokyo Night..." + result="tokyo-night" +fi + +# Convert to lowercase +THEME=$(echo "$result" | tr '[:upper:]' '[:lower:]') + +echo -e "Theme ${BLUE}$*${NC} parsed to $(echo_info ${THEME})" + +echo "Validating theme..." + +GITHUB_URL_BASE="https://raw.githubusercontent.com/saberzero1/quartz-themes/master/__CONVERTER/" +GITHUB_OUTPUT_DIR="__OUTPUT/" +GITHUB_OVERRIDE_DIR="__OVERRIDES/" +GITHUB_THEME_DIR="${THEME}/" +CSS_INDEX_URL="${GITHUB_URL_BASE}${GITHUB_OUTPUT_DIR}${GITHUB_THEME_DIR}_index.scss" +CSS_FONT_URL="${GITHUB_URL_BASE}${GITHUB_OUTPUT_DIR}${GITHUB_THEME_DIR}_fonts.scss" +CSS_DARK_URL="${GITHUB_URL_BASE}${GITHUB_OUTPUT_DIR}${GITHUB_THEME_DIR}_dark.scss" +CSS_LIGHT_URL="${GITHUB_URL_BASE}${GITHUB_OUTPUT_DIR}${GITHUB_THEME_DIR}_light.scss" +CSS_OVERRIDE_URL="${GITHUB_URL_BASE}${GITHUB_OVERRIDE_DIR}${GITHUB_THEME_DIR}_index.scss" +README_URL="${GITHUB_URL_BASE}${GITHUB_OVERRIDE_DIR}${GITHUB_THEME_DIR}README.md" + +PULSE=$(curl -o /dev/null --silent -lw '%{http_code}' "${CSS_INDEX_URL}") + +if [ "${PULSE}" = "200" ]; then + echo_ok "Theme '${THEME}' found. Preparing to fetch files..." +else + if [ "${PULSE}" = "404" ]; then + echo_err "Theme '${THEME}' not found. Please check the compatibility list." 1>&2 + exit 1 + else + echo_err "Something weird happened. If this issue persists, please open an Issue on GitHub." !>&2 + exit 1 + fi +fi + +echo "Cleaning theme directory..." + +rm -rf ${THEME_DIR} + +echo "Creating theme directory..." + +mkdir -p ${THEME_DIR}/overrides + +echo "Fetching theme files..." + +curl -s -S -o ${THEME_DIR}/_index.scss "${CSS_INDEX_URL}" +curl -s -S -o ${THEME_DIR}/_fonts.scss "${CSS_FONT_URL}" +curl -s -S -o ${THEME_DIR}/_dark.scss "${CSS_DARK_URL}" +curl -s -S -o ${THEME_DIR}/_light.scss "${CSS_LIGHT_URL}" +curl -s -S -o ${THEME_DIR}/overrides/_index.scss "${CSS_OVERRIDE_URL}" + +echo "Fetching README file..." + +curl -s -S -o ${THEME_DIR}/README.md "${README_URL}" + +echo "Checking theme files..." + +if test -f ${THEME_DIR}/_index.scss; then + echo_ok "_index.scss exists" +else + echo_err "_index.scss missing" 1>&2 + exit 1 +fi + +if test -f ${THEME_DIR}/_fonts.scss; then + echo_ok "_fonts.scss exists" +else + echo_err "_fonts.scss missing" 1>&2 + exit 1 +fi + +if test -f ${THEME_DIR}/_dark.scss; then + echo_ok "_dark.scss exists" +else + echo_err "_dark.scss missing" 1>&2 + exit 1 +fi + +if test -f ${THEME_DIR}/_light.scss; then + echo_ok "_light.scss exists" +else + echo_err "_light.scss missing" 1>&2 + exit 1 +fi + +if test -f ${THEME_DIR}/overrides/_index.scss; then + echo_ok "overrides/_index.scss exists" +else + echo_err "overrides/_index.scss missing" 1>&2 + exit 1 +fi + +if test -f ${THEME_DIR}/README.md; then + echo_ok "README file exists" +else + echo_warn "README file missing" +fi + +echo "Verifying setup..." + +if grep -q '^@use "./themes";' ${THEME_DIR}/../custom.scss; then + # Import already present in custom.scss + echo_warn "Theme import line already present in custom.scss. Skipping..." +else + # Add `@use "./themes";` import to custom.scss + sed -ir 's#@use "./base.scss";#@use "./base.scss";\n@use "./themes";#' ${THEME_DIR}/../custom.scss + echo_info "Added import line to custom.scss..." +fi + +echo_ok "Finished fetching and applying theme '${THEME}'." diff --git a/quartz/styles/custom.scss b/quartz/styles/custom.scss index b0c09dcb9..bd90443fd 100644 --- a/quartz/styles/custom.scss +++ b/quartz/styles/custom.scss @@ -1,3 +1,4 @@ @use "./base.scss"; +@use "./themes"; // put your custom CSS here! diff --git a/quartz/styles/custom.scssr b/quartz/styles/custom.scssr new file mode 100644 index 000000000..b0c09dcb9 --- /dev/null +++ b/quartz/styles/custom.scssr @@ -0,0 +1,3 @@ +@use "./base.scss"; + +// put your custom CSS here! diff --git a/quartz/styles/themes/README.md b/quartz/styles/themes/README.md new file mode 100644 index 000000000..1becba2bb --- /dev/null +++ b/quartz/styles/themes/README.md @@ -0,0 +1 @@ +404: Not Found \ No newline at end of file diff --git a/quartz/styles/themes/_dark.scss b/quartz/styles/themes/_dark.scss new file mode 100644 index 000000000..99b0c3199 --- /dev/null +++ b/quartz/styles/themes/_dark.scss @@ -0,0 +1,170 @@ +:root[saved-theme="dark"] { + --accent-h: 202; + --accent-s: 100%; + --accent-l: 75%; + --bg_dark2_x: 18, 18, 24; + --bg_dark2: rgb(var(--bg_dark2_x)); + --bg_dark_x: 22, 22, 30; + --bg_dark: rgb(var(--bg_dark_x)); + --bg_x: 26, 27, 38; + --bg: rgb(var(--bg_x)); + --bg_highlight_x: 41, 46, 66; + --bg_highlight: rgb(var(--bg_highlight_x)); + --bg_highlight_dark_x: 36, 40, 59; + --bg_highlight_dark: rgb(var(--bg_highlight_dark_x)); + --terminal_black_x: 65, 72, 104; + --terminal_black: rgb(var(--terminal_black_x)); + --fg_x: 192, 202, 245; + --fg: rgb(var(--fg_x)); + --fg_dark_x: 169, 177, 214; + --fg_dark: rgb(var(--fg_dark_x)); + --comment_x: 86, 95, 137; + --comment: rgb(var(--comment_x)); + --blue0_x: 61, 89, 161; + --blue0: rgb(var(--blue0_x)); + --blue_x: 122, 162, 247; + --blue: rgb(var(--blue_x)); + --cyan_hsl: 202 100% 75%; + --cyan_x: 125, 207, 255; + --cyan: rgb(var(--cyan_x)); + --magent_hsl: 261 85% 79%; + --magenta_x: 187, 154, 247; + --magenta: rgb(var(--magenta_x)); + --orange_x: 255, 158, 100; + --orange: rgb(var(--orange_x)); + --yellow_x: 224, 175, 104; + --yellow: rgb(var(--yellow_x)); + --green_x: 158, 206, 106; + --green: rgb(var(--green_x)); + --teal_x: 26, 188, 156; + --teal: rgb(var(--teal_x)); + --red_x: 255, 117, 127; + --red: rgb(var(--red_x)); + --red1_x: 219, 75, 75; + --red1: rgb(var(--red1_x)); + --unknown: #ffffff; + --color_red_rgb: var(--red_x); + --color-red: var(--red); + --color_purple_rgb: var(--magenta_x); + --color-purple: var(--magenta); + --color_green_rgb: var(--green_x); + --color-green: var(--green); + --color_cyan_rgb: var(--cyan_x); + --color-cyan: var(--cyan); + --color_blue_rgb: var(--blue_x); + --color-blue: var(--blue); + --color_yellow_rgb: var(--yellow_x); + --color-yellow: var(--yellow); + --color_orange_rgb: var(--orange_x); + --color-orange: var(--orange); + --color_pink_rgb: var(--magenta_x); + --color-pink: var(--magenta); + --background-primary: var(--bg); + --background-primary-alt: var(--bg); + --background-secondary: var(--bg_dark); + --background-secondary-alt: var(--bg_dark); + --background-modifier-border: var(--bg_highlight); + --background-modifier-border-focus: var(--bg_highlight); + --background-modifier-border-hover: var(--bg_highlight); + --background-modifier-form-field: var(--bg_dark); + --background-modifier-form-field-highlighted: var(--bg_dark); + --background-modifier-box-shadow: rgba(0, 0, 0, 0.3); + --background-modifier-success: var(--green); + --background-modifier-error: var(--red1); + --background-modifier-error-hover: var(--red); + --background-modifier-cover: rgba(var(--bg_dark_x), 0.8); + --background-modifier-hover: var(--bg_highlight); + --background-modifier-message: rgba(var(--bg_highlight_x), 0.9); + --background-modifier-active-hover: var(--bg_highlight); + --text-normal: var(--fg); + --text-faint: var(--comment); + --text-muted: var(--fg_dark); + --text-error: var(--red); + --text-accent: var(--magenta); + --text-accent-hover: var(--cyan); + --text-error: var(--red1); + --text-error-hover: var(--red); + --text-selection: var(--unknown); + --text-on-accent: var(--bg); + --text-highlight-bg: rgba(var(--orange_x), 0.4); + --text-selection: rgba(var(--blue0_x), 0.6); + --bold-color: var(--cyan); + --italic-color: var(--cyan); + --interactive-normal: var(--bg_dark); + --interactive-hover: var(--bg); + --interactive-success: var(--green); + --interactive-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l)); + --interactive-accent-hover: var(--blue); + --scrollbar-bg: var(--bg_dark2); + --scrollbar-thumb-bg: var(--comment); + --scrollbar-active-thumb-bg: var(--bg_dark); + --scrollbar-width: 0px; + --h1-color: var(--red); + --h2-color: var(--yellow); + --h3-color: var(--green); + --h4-color: var(--cyan); + --h5-color: var(--blue); + --h6-color: var(--magenta); + --border-width: 2px; + --tag-color: var(--magenta); + --tag-background: rgba(var(--magenta_x), 0.15); + --tag-color-hover: var(--cyan); + --tag-background-hover: rgba(var(--cyan_x), 0.15); + --link-color: var(--magenta); + --link-color-hover: var(--cyan); + --link-external-color: var(--magenta); + --link-external-color-hover: var(--cyan); + --checkbox-radius: var(--radius-l); + --checkbox-color: var(--green); + --checkbox-color-hover: var(--green); + --checkbox-marker-color: var(--bg); + --checkbox-border-color: var(--comment); + --checkbox-border-color-hover: var(--comment); + --table-header-background: var(--bg_dark2); + --table-header-background-hover: var(--bg_dark2); + --flashing-background: rgba(var(--blue0_x), 0.3); + --code-normal: var(--fg); + --code-background: var(--bg_highlight_dark); + --mermaid-note: var(--blue0); + --mermaid-actor: var(--fg_dark); + --mermaid-loopline: var(--blue); + --blockquote-background-color: var(--bg_dark); + --callout-default: var(--blue_x); + --callout-info: var(--blue_x); + --callout-summary: var(--cyan_x); + --callout-tip: var(--cyan_x); + --callout-todo: var(--cyan_x); + --callout-bug: var(--red_x); + --callout-error: var(--red1_x); + --callout-fail: var(--red1_x); + --callout-example: var(--magenta_x); + --callout-important: var(--green_x); + --callout-success: var(--teal_x); + --callout-question: var(--yellow_x); + --callout-warning: var(--orange_x); + --callout-quote: var(--fg_dark_x); + --icon-color-hover: var(--blue); + --icon-color-focused: var(--magenta); + --icon-color-active: var(--magenta); + --nav-item-color-hover: var(--fg); + --nav-item-background-hover: var(--bg_highlight); + --nav-item-color-active: var(--red); + --nav-item-background-active: var(--bg_highlight); + --nav-file-tag: rgba(var(--yellow_x), 0.9); + --nav-indentation-guide-color: var(--bg_highlight); + --indentation-guide-color: var(--comment); + --indentation-guide-color-active: var(--comment); + --graph-line: var(--comment); + --graph-node: var(--fg); + --graph-node-tag: var(--orange); + --graph-node-attachment: var(--blue); + --tab-text-color-focused-active: rgba(var(--red_x), 0.8); + --tab-text-color-focused-active-current: var(--red); + --modal-border-color: var(--bg_highlight); + --prompt-border-color: var(--bg_highlight); + --slider-track-background: var(--bg_highlight); + --embed-background: var(--bg_dark); + --embed-padding: 1.5rem 1.5rem 0.5rem; + --canvas-color: var(--bg_highlight_x); + --toggle-thumb-color: var(--bg); +} diff --git a/quartz/styles/themes/_fonts.scss b/quartz/styles/themes/_fonts.scss new file mode 100644 index 000000000..e69de29bb diff --git a/quartz/styles/themes/_index.scss b/quartz/styles/themes/_index.scss new file mode 100644 index 000000000..764b6c00f --- /dev/null +++ b/quartz/styles/themes/_index.scss @@ -0,0 +1,1468 @@ +@use "sass:map"; +@use "sass:meta"; +@use "sass:string"; +@use "sass:list"; +@use "sass:color"; +@use "fonts"; + +@use "overrides"; + +/* Get an option from a set. */ +@function get($collection, $value, $sub: false) { + @if $sub { + @return map-get(#{$collection}, #{$value}); + } @else { + @return map-get(#{$collection}, #{$sub}, #{$value}); + } +} + +/* Color converter*/ +@function color_convert($color, $opacity: 0%) { + @return color-mix(in srgb, #{$color}, #0000 calc(100% - #{$opacity})); +} + +/* Callouts */ +$callout-types: "note", "abstract", "info", "todo", "tip", "success", "question", "warning", + "failure", "danger", "bug", "example", "quote"; + +:root { + --anim-duration-none: 0; + --anim-duration-superfast: 70ms; + --anim-duration-fast: 140ms; + --anim-duration-moderate: 300ms; + --anim-duration-slow: 560ms; + --anim-motion-smooth: cubic-bezier(0.45, 0.05, 0.55, 0.95); + --anim-motion-delay: cubic-bezier(0.65, 0.05, 0.36, 1); + --anim-motion-jumpy: cubic-bezier(0.68, -0.55, 0.27, 1.55); + --anim-motion-swing: cubic-bezier(0, 0.55, 0.45, 1); + --blockquote-border-thickness: 2px; + --blockquote-border-color: var(--interactive-accent); + --blockquote-font-style: normal; + --blockquote-color: inherit; + --blockquote-background-color: transparent; + --bold-modifier: 200; + --bold-color: inherit; + --bold-weight: calc(var(--font-weight) + var(--bold-modifier)); + --border-width: 1px; + --button-radius: var(--input-radius); + --callout-border-width: 0px; + --callout-border-opacity: 0.25; + --callout-padding: var(--size-4-3) var(--size-4-3) var(--size-4-3) var(--size-4-6); + --callout-radius: var(--radius-s); + --callout-blend-mode: var(--highlight-mix-blend-mode); + --callout-title-color: inherit; + --callout-title-padding: 0; + --callout-title-size: inherit; + --callout-title-weight: calc(var(--font-weight) + var(--bold-modifier)); + --callout-content-padding: 0; + --callout-content-background: transparent; + --callout-bug: var(--color-red-rgb); + --callout-default: var(--color-blue-rgb); + --callout-error: var(--color-red-rgb); + --callout-example: var(--color-purple-rgb); + --callout-fail: var(--color-red-rgb); + --callout-important: var(--color-cyan-rgb); + --callout-info: var(--color-blue-rgb); + --callout-question: var(--color-orange-rgb); + --callout-success: var(--color-green-rgb); + --callout-summary: var(--color-cyan-rgb); + --callout-tip: var(--color-cyan-rgb); + --callout-todo: var(--color-blue-rgb); + --callout-warning: var(--color-orange-rgb); + --callout-quote: 158, 158, 158; + --callout-abstract: var(--callout-summary); + --callout-note: var(--callout-default); + --callout-failure: var(--callout-fail); + --callout-danger: var(--callout-error); + --canvas-background: var(--background-primary); + --canvas-card-label-color: var(--text-faint); + --canvas-color-1: var(--color-red-rgb); + --canvas-color-2: var(--color-orange-rgb); + --canvas-color-3: var(--color-yellow-rgb); + --canvas-color-4: var(--color-green-rgb); + --canvas-color-5: var(--color-cyan-rgb); + --canvas-color-6: var(--color-purple-rgb); + --canvas-dot-pattern: var(--color-base-30); + --caret-color: var(--text-normal); + --checkbox-radius: var(--radius-s); + --checkbox-size: var(--font-text-size); + --checkbox-marker-color: var(--background-primary); + --checkbox-color: var(--interactive-accent); + --checkbox-color-hover: var(--interactive-accent-hover); + --checkbox-border-color: var(--text-faint); + --checkbox-border-color-hover: var(--text-muted); + --checkbox-margin-inline-start: 0.85em; + --checklist-done-decoration: line-through; + --checklist-done-color: var(--text-muted); + --code-white-space: pre-wrap; + --code-radius: var(--radius-s); + --code-size: var(--font-smaller); + --code-background: var(--background-primary-alt); + --code-normal: var(--text-muted); + --code-comment: var(--text-faint); + --code-function: var(--color-yellow); + --code-important: var(--color-orange); + --code-keyword: var(--color-pink); + --code-operator: var(--color-red); + --code-property: var(--color-cyan); + --code-punctuation: var(--text-muted); + --code-string: var(--color-green); + --code-tag: var(--color-red); + --code-value: var(--color-purple); + --collapse-icon-color: var(--text-faint); + --collapse-icon-color-collapsed: var(--text-accent); + --cursor: default; + --cursor-link: pointer; + --divider-color: var(--background-modifier-border); + --divider-color-hover: var(--interactive-accent); + --font-weight: var(--font-normal); + --font-thin: 100; + --font-extralight: 200; + --font-light: 300; + --font-normal: 400; + --font-medium: 500; + --font-semibold: 600; + --font-bold: 700; + --font-extrabold: 800; + --font-black: 900; + --footnote-size: var(--font-smaller); + --graph-text: var(--text-normal); + --graph-line: var(--color-base-35, var(--background-modifier-border-focus)); + --graph-node: var(--text-muted); + --graph-node-unresolved: var(--text-faint); + --graph-node-focused: var(--text-accent); + --graph-node-tag: var(--color-green); + --graph-node-attachment: var(--color-yellow); + --h1-color: var(--text-normal); + --h2-color: var(--text-normal); + --h3-color: var(--text-normal); + --h4-color: var(--text-normal); + --h5-color: var(--text-normal); + --h6-color: var(--text-normal); + --h1-font: inherit; + --h2-font: inherit; + --h3-font: inherit; + --h4-font: inherit; + --h5-font: inherit; + --h6-font: inherit; + --h1-line-height: 1.2; + --h2-line-height: 1.2; + --h3-line-height: 1.3; + --h4-line-height: 1.4; + --h5-line-height: var(--line-height-normal); + --h6-line-height: var(--line-height-normal); + --h1-size: 1.802em; + --h2-size: 1.602em; + --h3-size: 1.424em; + --h4-size: 1.266em; + --h5-size: 1.125em; + --h6-size: 1em; + --h1-style: normal; + --h2-style: normal; + --h3-style: normal; + --h4-style: normal; + --h5-style: normal; + --h6-style: normal; + --h1-variant: normal; + --h2-variant: normal; + --h3-variant: normal; + --h4-variant: normal; + --h5-variant: normal; + --h6-variant: normal; + --h1-weight: 700; + --h2-weight: 600; + --h3-weight: 600; + --h4-weight: 600; + --h5-weight: 600; + --h6-weight: 600; + --header-height: 40px; + --hr-color: var(--background-modifier-border); + --hr-thickness: 2px; + --icon-color: var(--text-muted); + --icon-color-hover: var(--text-muted); + --icon-color-active: var(--text-accent); + --icon-color-focused: var(--text-normal); + --indentation-guide-color: rgba(var(--mono-rgb-100), 0.12); + --indentation-guide-color-active: rgba(var(--mono-rgb-100), 0.3); + --inline-title-color: var(--h1-color); + --inline-title-font: var(--h1-font); + --inline-title-line-height: var(--h1-line-height); + --inline-title-size: var(--h1-size); + --inline-title-style: var(--h1-style); + --inline-title-variant: var(--h1-variant); + --inline-title-weight: var(--h1-weight); + --input-font-weight: var(--font-normal); + --input-border-width: 1px; + --italic-color: inherit; + --italic-weight: inherit; + --nav-item-color: var(--text-muted); + --nav-item-color-hover: var(--text-normal); + --nav-item-color-active: var(--text-normal); + --nav-item-color-selected: var(--text-normal); + --nav-item-color-highlighted: var(--text-accent); + --nav-item-background-hover: var(--background-modifier-hover); + --nav-item-background-active: var(--background-modifier-hover); + --nav-item-background-selected: hsla(var(--color-accent-hsl), 0.15); + --nav-item-weight: inherit; + --nav-item-weight-hover: inherit; + --nav-item-weight-active: inherit; + --nav-item-white-space: pre; + --nav-collapse-icon-color: var(--collapse-icon-color); + --nav-collapse-icon-color-collapsed: var(--text-faint); + --nav-heading-color: var(--text-normal); + --nav-heading-color-hover: var(--text-normal); + --nav-heading-color-collapsed: var(--text-faint); + --nav-heading-color-collapsed-hover: var(--text-muted); + --nav-heading-weight: var(--font-medium); + --nav-heading-weight-hover: var(--font-medium); + --pill-color: var(--text-muted); + --pill-color-hover: var(--text-normal); + --pill-color-remove: var(--text-faint); + --pill-color-remove-hover: var(--text-accent); + --pill-decoration: none; + --pill-decoration-hover: none; + --pill-background: transparent; + --pill-background-hover: transparent; + --pill-border-color: var(--background-modifier-border); + --pill-border-color-hover: var(--background-modifier-border-hover); + --pill-border-width: var(--border-width); + --pill-padding-x: 0.65em; + --pill-padding-y: 0.25em; + --pill-radius: 2em; + --pill-weight: inherit; + --radius-s: 4px; + --radius-m: 8px; + --radius-l: 12px; + --radius-xl: 16px; + --scrollbar-active-thumb-bg: rgba(var(--mono-rgb-100), 0.2); + --scrollbar-bg: rgba(var(--mono-rgb-100), 0.05); + --scrollbar-thumb-bg: rgba(var(--mono-rgb-100), 0.1); + --search-clear-button-color: var(--text-muted); + --search-clear-button-size: 13px; + --search-icon-color: var(--text-muted); + --search-icon-size: 18px; + --search-result-background: var(--background-primary); + --size-2-1: 2px; + --size-2-2: 4px; + --size-2-3: 6px; + --size-4-1: 4px; + --size-4-2: 8px; + --size-4-3: 12px; + --size-4-4: 16px; + --size-4-5: 20px; + --size-4-6: 24px; + --size-4-8: 32px; + --size-4-9: 36px; + --size-4-10: 40px; + --size-4-12: 48px; + --size-4-16: 64px; + --size-4-18: 72px; + --tag-size: var(--font-smaller); + --tag-color: var(--text-accent); + --tag-color-hover: var(--text-accent); + --tag-decoration: none; + --tag-decoration-hover: none; + --tag-background: hsla(var(--interactive-accent-hsl), 0.1); + --tag-background-hover: hsla(var(--interactive-accent-hsl), 0.2); + --tag-border-color: hsla(var(--interactive-accent-hsl), 0.15); + --tag-border-color-hover: hsla(var(--interactive-accent-hsl), 0.15); + --tag-border-width: 0px; + --tag-padding-x: 0.65em; + --tag-padding-y: 0.25em; + --tag-radius: 2em; + --tag-weight: inherit; + --titlebar-background: var(--background-secondary); + --titlebar-background-focused: var(--background-secondary-alt); + --titlebar-border-width: 0px; + --titlebar-border-color: var(--background-modifier-border); + --titlebar-text-color: var(--text-muted); + --titlebar-text-color-focused: var(--text-normal); + --titlebar-text-weight: var(--font-bold); + --accent-h: 258; + --accent-s: 88%; + --accent-l: 66%; + --background-primary: var(--color-base-00); + --background-primary-alt: var(--color-base-10); + --background-secondary: var(--color-base-20); + --background-modifier-hover: rgba(var(--mono-rgb-100), 0.075); + --background-modifier-active-hover: hsla(var(--interactive-accent-hsl), 0.15); + --background-modifier-border: var(--color-base-30); + --background-modifier-border-hover: var(--color-base-35); + --background-modifier-border-focus: var(--color-base-40); + --background-modifier-error-rgb: var(--color-red-rgb); + --background-modifier-error: var(--color-red); + --background-modifier-error-hover: var(--color-red); + --background-modifier-success-rgb: var(--color-green-rgb); + --background-modifier-success: var(--color-green); + --background-modifier-message: rgba(0, 0, 0, 0.9); + --background-modifier-form-field: var(--color-base-00); + --text-normal: var(--color-base-100); + --text-muted: var(--color-base-70); + --text-faint: var(--color-base-50); + --text-on-accent: white; + --text-on-accent-inverted: black; + --text-error: var(--color-red); + --text-warning: var(--color-orange); + --text-success: var(--color-green); + --text-selection: hsla(var(--color-accent-hsl), 0.2); + --text-highlight-bg-rgb: 255, 208, 0; + --text-highlight-bg: rgba(var(--text-highlight-bg-rgb), 0.4); + --text-accent: var(--color-accent); + --text-accent-hover: var(--color-accent-2); + --interactive-normal: var(--color-base-00); + --interactive-hover: var(--color-base-10); + --interactive-accent-hsl: var(--color-accent-hsl); + --interactive-accent: var(--color-accent-1); + --interactive-accent-hover: var(--color-accent-2); + --font-default: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Inter", + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Microsoft YaHei Light", sans-serif; + --font-monospace-default: ui-monospace, SFMono-Regular, "Cascadia Mono", "Roboto Mono", + "DejaVu Sans Mono", "Liberation Mono", Menlo, Monaco, "Consolas", "Source Code Pro", monospace; + --font-interface-override: "??"; + --font-interface-theme: "??"; + --font-interface: var(--font-interface-override), var(--font-interface-theme), + var(--default-font, "??"), var(--font-default); + --font-text-override: "??"; + --font-text-theme: "??"; + --font-text: var(--font-text-override), var(--font-text-theme), var(--font-default); + --font-print-override: "??"; + --font-print: var(--font-print-override), var(--font-text-override), var(--font-text-theme), + "Arial"; + --font-monospace-override: "??"; + --font-monospace-theme: "??"; + --font-monospace: var(--font-monospace-override), var(--font-monospace-theme), + var(--font-monospace-default); + --font-text-size: 16px; + --font-mermaid: var(--font-text); + --icon-color: var(--interactive-accent); + --icon-color-hover: var(--interactive-accent); + --icon-color-active: var(--interactive-accent-hover); + --icon-color-focus: var(--interactive-accent-hover); + --icon-stroke: var(--icon-l-stroke-width); + + --default-font: '"JetBrains Mono", monospace, "Inter", sans-serif'; + --font-monospace: '"JetBrains Mono", monospace, "Source Code Pro", monospace'; + + --table-width: 88cqw; +} + +body { + /* Links */ + --link-color: var(--text-accent); + --link-color-hover: var(--text-accent-hover); + --link-decoration: underline; + --link-decoration-hover: underline; + --link-decoration-thickness: auto; + --link-weight: var(--font-weight); + --link-external-color: var(--text-accent); + --link-external-color-hover: var(--text-accent-hover); + --link-external-decoration: underline; + --link-external-decoration-hover: underline; + --link-external-filter: none; + --link-unresolved-color: var(--text-accent); + --link-unresolved-opacity: 0.7; + --link-unresolved-filter: none; + --link-unresolved-decoration-style: solid; + --link-unresolved-decoration-color: hsla(var(--interactive-accent-hsl), 0.3); + /* Metadata */ + --metadata-background: transparent; + --metadata-display-reading: block; + --metadata-display-editing: block; + --metadata-max-width: none; + --metadata-padding: var(--size-4-2) 0; + --metadata-border-color: var(--background-modifier-border); + --metadata-border-radius: 0; + --metadata-border-width: 0; + --metadata-divider-color: var(--background-modifier-border); + --metadata-divider-color-hover: transparent; + --metadata-divider-color-focus: transparent; + --metadata-divider-width: 0; + --metadata-gap: 3px; + --metadata-property-padding: 0; + --metadata-property-radius: 6px; + --metadata-property-radius-hover: 6px; + --metadata-property-radius-focus: 6px; + --metadata-property-background: transparent; + --metadata-property-background-hover: transparent; + --metadata-property-background-active: var(--background-modifier-hover); + --metadata-label-background-hover: transparent; + --metadata-label-background-active: var(--background-modifier-hover); + --metadata-label-font: var(--font-interface); + --metadata-label-font-size: var(--font-smaller); + --metadata-label-font-weight: inherit; + --metadata-label-text-color: var(--text-muted); + --metadata-label-text-color-hover: var(--text-muted); + --metadata-label-width: 9em; + --metadata-input-height: calc(var(--font-text-size) * 1.75); + --metadata-input-text-color: var(--text-normal); + --metadata-input-font: var(--font-interface); + --metadata-input-font-size: var(--font-smaller); + --metadata-input-background: transparent; + --metadata-input-background-hover: transparent; + --metadata-input-background-active: var(--background-modifier-hover); + --metadata-sidebar-label-font-size: var(--font-ui-small); + --metadata-sidebar-input-font-size: var(--font-ui-small); +} + +:root[saved-theme="dark"], +html[saved-theme="dark"] { + --highlight-mix-blend-mode: lighten; + --mono-rgb-0: 0, 0, 0; + --mono-rgb-100: 255, 255, 255; + --color-red-rgb: 251, 70, 76; + --color-red: #fb464c; + --color-orange-rgb: 233, 151, 63; + --color-orange: #e9973f; + --color-yellow-rgb: 224, 222, 113; + --color-yellow: #e0de71; + --color-green-rgb: 68, 207, 110; + --color-green: #44cf6e; + --color-cyan-rgb: 83, 223, 221; + --color-cyan: #53dfdd; + --color-blue-rgb: 2, 122, 255; + --color-blue: #027aff; + --color-purple-rgb: 168, 130, 255; + --color-purple: #a882ff; + --color-pink-rgb: 250, 153, 205; + --color-pink: #fa99cd; + --color-base-00: #1e1e1e; + --color-base-05: #212121; + --color-base-10: #242424; + --color-base-20: #262626; + --color-base-25: #2a2a2a; + --color-base-30: #363636; + --color-base-35: #3f3f3f; + --color-base-40: #555555; + --color-base-50: #666666; + --color-base-60: #999999; + --color-base-70: #b3b3b3; + --color-base-100: #dadada; + --color-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l)); + --color-accent-1: hsl( + calc(var(--accent-h) - 3), + calc(var(--accent-s) * 1.02), + calc(var(--accent-l) * 1.15) + ); + --color-accent-2: hsl( + calc(var(--accent-h) - 5), + calc(var(--accent-s) * 1.05), + calc(var(--accent-l) * 1.29) + ); + --background-modifier-form-field: var(--color-base-25); + --background-secondary-alt: var(--color-base-30); + --interactive-normal: var(--color-base-30); + --interactive-hover: var(--color-base-35); + --text-accent: var(--color-accent-1); + --interactive-accent: var(--color-accent); + --interactive-accent-hover: var(--color-accent-1); + --background-modifier-box-shadow: rgba(0, 0, 0, 0.3); + --background-modifier-cover: rgba(10, 10, 10, 0.4); + --text-selection: hsla(var(--interactive-accent-hsl), 0.25); + --pdf-shadow: 0 0 0 1px var(--background-modifier-border); + --pdf-thumbnail-shadow: 0 0 0 1px var(--background-modifier-border); + + --accent-h: 202; + --accent-s: 100%; + --accent-l: 75%; + --bg_dark2_x: 18, 18, 24; + --bg_dark2: rgb(var(--bg_dark2_x)); + --bg_dark_x: 22, 22, 30; + --bg_dark: rgb(var(--bg_dark_x)); + --bg_x: 26, 27, 38; + --bg: rgb(var(--bg_x)); + --bg_highlight_x: 41, 46, 66; + --bg_highlight: rgb(var(--bg_highlight_x)); + --bg_highlight_dark_x: 36, 40, 59; + --bg_highlight_dark: rgb(var(--bg_highlight_dark_x)); + --terminal_black_x: 65, 72, 104; + --terminal_black: rgb(var(--terminal_black_x)); + --fg_x: 192, 202, 245; + --fg: rgb(var(--fg_x)); + --fg_dark_x: 169, 177, 214; + --fg_dark: rgb(var(--fg_dark_x)); + --comment_x: 86, 95, 137; + --comment: rgb(var(--comment_x)); + --blue0_x: 61, 89, 161; + --blue0: rgb(var(--blue0_x)); + --blue_x: 122, 162, 247; + --blue: rgb(var(--blue_x)); + --cyan_hsl: 202 100% 75%; + --cyan_x: 125, 207, 255; + --cyan: rgb(var(--cyan_x)); + --magent_hsl: 261 85% 79%; + --magenta_x: 187, 154, 247; + --magenta: rgb(var(--magenta_x)); + --orange_x: 255, 158, 100; + --orange: rgb(var(--orange_x)); + --yellow_x: 224, 175, 104; + --yellow: rgb(var(--yellow_x)); + --green_x: 158, 206, 106; + --green: rgb(var(--green_x)); + --teal_x: 26, 188, 156; + --teal: rgb(var(--teal_x)); + --red_x: 255, 117, 127; + --red: rgb(var(--red_x)); + --red1_x: 219, 75, 75; + --red1: rgb(var(--red1_x)); + --unknown: #ffffff; + --color_red_rgb: var(--red_x); + --color-red: var(--red); + --color_purple_rgb: var(--magenta_x); + --color-purple: var(--magenta); + --color_green_rgb: var(--green_x); + --color-green: var(--green); + --color_cyan_rgb: var(--cyan_x); + --color-cyan: var(--cyan); + --color_blue_rgb: var(--blue_x); + --color-blue: var(--blue); + --color_yellow_rgb: var(--yellow_x); + --color-yellow: var(--yellow); + --color_orange_rgb: var(--orange_x); + --color-orange: var(--orange); + --color_pink_rgb: var(--magenta_x); + --color-pink: var(--magenta); + --background-primary: var(--bg); + --background-primary-alt: var(--bg); + --background-secondary: var(--bg_dark); + --background-secondary-alt: var(--bg_dark); + --background-modifier-border: var(--bg_highlight); + --background-modifier-border-focus: var(--bg_highlight); + --background-modifier-border-hover: var(--bg_highlight); + --background-modifier-form-field: var(--bg_dark); + --background-modifier-form-field-highlighted: var(--bg_dark); + --background-modifier-box-shadow: rgba(0, 0, 0, 0.3); + --background-modifier-success: var(--green); + --background-modifier-error: var(--red1); + --background-modifier-error-hover: var(--red); + --background-modifier-cover: rgba(var(--bg_dark_x), 0.8); + --background-modifier-hover: var(--bg_highlight); + --background-modifier-message: rgba(var(--bg_highlight_x), 0.9); + --background-modifier-active-hover: var(--bg_highlight); + --text-normal: var(--fg); + --text-faint: var(--comment); + --text-muted: var(--fg_dark); + --text-error: var(--red); + --text-accent: var(--magenta); + --text-accent-hover: var(--cyan); + --text-error: var(--red1); + --text-error-hover: var(--red); + --text-selection: var(--unknown); + --text-on-accent: var(--bg); + --text-highlight-bg: rgba(var(--orange_x), 0.4); + --text-selection: rgba(var(--blue0_x), 0.6); + --bold-color: var(--cyan); + --italic-color: var(--cyan); + --interactive-normal: var(--bg_dark); + --interactive-hover: var(--bg); + --interactive-success: var(--green); + --interactive-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l)); + --interactive-accent-hover: var(--blue); + --scrollbar-bg: var(--bg_dark2); + --scrollbar-thumb-bg: var(--comment); + --scrollbar-active-thumb-bg: var(--bg_dark); + --scrollbar-width: 0px; + --h1-color: var(--red); + --h2-color: var(--yellow); + --h3-color: var(--green); + --h4-color: var(--cyan); + --h5-color: var(--blue); + --h6-color: var(--magenta); + --border-width: 2px; + --tag-color: var(--magenta); + --tag-background: rgba(var(--magenta_x), 0.15); + --tag-color-hover: var(--cyan); + --tag-background-hover: rgba(var(--cyan_x), 0.15); + --link-color: var(--magenta); + --link-color-hover: var(--cyan); + --link-external-color: var(--magenta); + --link-external-color-hover: var(--cyan); + --checkbox-radius: var(--radius-l); + --checkbox-color: var(--green); + --checkbox-color-hover: var(--green); + --checkbox-marker-color: var(--bg); + --checkbox-border-color: var(--comment); + --checkbox-border-color-hover: var(--comment); + --table-header-background: var(--bg_dark2); + --table-header-background-hover: var(--bg_dark2); + --flashing-background: rgba(var(--blue0_x), 0.3); + --code-normal: var(--fg); + --code-background: var(--bg_highlight_dark); + --mermaid-note: var(--blue0); + --mermaid-actor: var(--fg_dark); + --mermaid-loopline: var(--blue); + --blockquote-background-color: var(--bg_dark); + --callout-default: var(--blue_x); + --callout-info: var(--blue_x); + --callout-summary: var(--cyan_x); + --callout-tip: var(--cyan_x); + --callout-todo: var(--cyan_x); + --callout-bug: var(--red_x); + --callout-error: var(--red1_x); + --callout-fail: var(--red1_x); + --callout-example: var(--magenta_x); + --callout-important: var(--green_x); + --callout-success: var(--teal_x); + --callout-question: var(--yellow_x); + --callout-warning: var(--orange_x); + --callout-quote: var(--fg_dark_x); + --icon-color-hover: var(--blue); + --icon-color-focused: var(--magenta); + --icon-color-active: var(--magenta); + --nav-item-color-hover: var(--fg); + --nav-item-background-hover: var(--bg_highlight); + --nav-item-color-active: var(--red); + --nav-item-background-active: var(--bg_highlight); + --nav-file-tag: rgba(var(--yellow_x), 0.9); + --nav-indentation-guide-color: var(--bg_highlight); + --indentation-guide-color: var(--comment); + --indentation-guide-color-active: var(--comment); + --graph-line: var(--comment); + --graph-node: var(--fg); + --graph-node-tag: var(--orange); + --graph-node-attachment: var(--blue); + --tab-text-color-focused-active: rgba(var(--red_x), 0.8); + --tab-text-color-focused-active-current: var(--red); + --modal-border-color: var(--bg_highlight); + --prompt-border-color: var(--bg_highlight); + --slider-track-background: var(--bg_highlight); + --embed-background: var(--bg_dark); + --embed-padding: 1.5rem 1.5rem 0.5rem; + --canvas-color: var(--bg_highlight_x); + --toggle-thumb-color: var(--bg); + + /*--light: var(--background-primary); + --lightgray: var(--background-modifier-border); + --gray: var(--checkbox-border-color); + --darkgray: var(--text-normal); + --dark: var(--h1-color); + --secondary: var(--link-color); + --tertiary: var(--link-color-hover); + --highlight: var(--tag-background); + --textHighlight: var(--text-highlight-bg);*/ + .callout { + @each $type in $callout-types { + &[data-callout="#{$type}"] { + --color: rgb(var(#{"--callout-#{$type}"})); + --border: rgba(var(#{"--callout-#{$type}"}), 0.267); + --bg: rgba(var(#{"--callout-#{$type}"}), 0.063); + } + } + } +} + +:root[saved-theme="light"], +html[saved-theme="light"] { + --highlight-mix-blend-mode: darken; + --mono-rgb-0: 255, 255, 255; + --mono-rgb-100: 0, 0, 0; + --color-red-rgb: 233, 49, 71; + --color-red: #e93147; + --color-orange-rgb: 236, 117, 0; + --color-orange: #ec7500; + --color-yellow-rgb: 224, 172, 0; + --color-yellow: #e0ac00; + --color-green-rgb: 8, 185, 78; + --color-green: #08b94e; + --color-cyan-rgb: 0, 191, 188; + --color-cyan: #00bfbc; + --color-blue-rgb: 8, 109, 221; + --color-blue: #086ddd; + --color-purple-rgb: 120, 82, 238; + --color-purple: #7852ee; + --color-pink-rgb: 213, 57, 132; + --color-pink: #d53984; + --color-base-00: #ffffff; + --color-base-05: #fcfcfc; + --color-base-10: #fafafa; + --color-base-20: #f6f6f6; + --color-base-25: #e3e3e3; + --color-base-30: #e0e0e0; + --color-base-35: #d4d4d4; + --color-base-40: #bdbdbd; + --color-base-50: #ababab; + --color-base-60: #707070; + --color-base-70: #5c5c5c; + --color-base-100: #222222; + --color-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l)); + --color-accent-1: hsl( + calc(var(--accent-h) - 1), + calc(var(--accent-s) * 1.01), + calc(var(--accent-l) * 1.075) + ); + --color-accent-2: hsl( + calc(var(--accent-h) - 3), + calc(var(--accent-s) * 1.02), + calc(var(--accent-l) * 1.15) + ); + --background-secondary-alt: var(--color-base-05); + --background-modifier-box-shadow: rgba(0, 0, 0, 0.1); + --background-modifier-cover: rgba(220, 220, 220, 0.4); + + --accent-h: 202; + --accent-s: 86%; + --accent-l: 43%; + --bg_dark2_x: 188, 189, 194; + --bg_dark2: rgb(var(--bg_dark2_x)); + --bg_dark_x: 203, 204, 209; + --bg_dark: rgb(var(--bg_dark_x)); + --bg_x: 213, 214, 219; + --bg: rgb(var(--bg_x)); + --bg_highlight_x: 220, 222, 226; + --bg_highlight: rgb(var(--bg_highlight_x)); + --bg_highlight_dark_x: 195, 197, 201; + --bg_highlight_dark: rgb(var(--bg_highlight_dark_x)); + --terminal_black_x: 15, 15, 20; + --terminal_black: rgb(var(--terminal_black_x)); + --fg_x: 52, 59, 88; + --fg: rgb(var(--fg_x)); + --fg_dark_x: 39, 46, 75; + --fg_dark: rgb(var(--fg_dark_x)); + --comment_x: 150, 153, 163; + --comment: rgb(var(--comment_x)); + --blue0_x: 39, 71, 125; + --blue0: rgb(var(--blue0_x)); + --blue_x: 52, 84, 138; + --blue: rgb(var(--blue_x)); + --cyan_x: 15, 75, 110; + --cyan: rgb(var(--cyan_x)); + --magent_hsl: 261 24% 38%; + --magenta_x: 90, 74, 120; + --magenta: rgb(var(--magenta_x)); + --orange_x: 150, 80, 39; + --orange: rgb(var(--orange_x)); + --yellow_x: 143, 94, 21; + --yellow: rgb(var(--yellow_x)); + --green_x: 51, 99, 92; + --green: rgb(var(--green_x)); + --teal_x: 22, 103, 117; + --teal: rgb(var(--teal_x)); + --red_x: 140, 67, 81; + --red: rgb(var(--red_x)); + --red1_x: 115, 42, 56; + --red1: rgb(var(--red1_x)); + --unknown: #000000; + --color_red_rgb: var(--red_x); + --color-red: var(--red); + --color_purple_rgb: var(--magenta_x); + --color-purple: var(--magenta); + --color_green_rgb: var(--green_x); + --color-green: var(--green); + --color_cyan_rgb: var(--cyan_x); + --color-cyan: var(--cyan); + --color_blue_rgb: var(--blue_x); + --color-blue: var(--blue); + --color_yellow_rgb: var(--yellow_x); + --color-yellow: var(--yellow); + --color_orange_rgb: var(--orange_x); + --color-orange: var(--orange); + --color_pink_rgb: var(--magenta_x); + --color-pink: var(--magenta); + --background-primary: var(--bg); + --background-primary-alt: var(--bg); + --background-secondary: var(--bg_dark); + --background-secondary-alt: var(--bg_dark); + --background-modifier-border: var(--bg_highlight); + --background-modifier-border-focus: var(--bg_highlight); + --background-modifier-border-hover: var(--bg_highlight); + --background-modifier-form-field: var(--bg_dark); + --background-modifier-form-field-highlighted: var(--bg_dark); + --background-modifier-box-shadow: rgba(0, 0, 0, 0.3); + --background-modifier-success: var(--green); + --background-modifier-error: var(--red1); + --background-modifier-error-hover: var(--red); + --background-modifier-cover: rgba(var(--bg_dark_x), 0.8); + --background-modifier-hover: var(--bg_highlight); + --background-modifier-message: rgba(var(--bg_highlight_x), 0.9); + --background-modifier-active-hover: var(--bg_highlight); + --text-normal: var(--fg); + --text-faint: var(--comment); + --text-muted: var(--fg_dark); + --text-error: var(--red); + --text-accent: var(--magenta); + --text-accent-hover: var(--cyan); + --text-error: var(--red1); + --text-error-hover: var(--red); + --text-selection: var(--unknown); + --text-on-accent: var(--bg); + --text-highlight-bg: rgba(var(--orange_x), 0.4); + --text-selection: rgba(var(--blue0_x), 0.6); + --bold-color: var(--cyan); + --italic-color: var(--cyan); + --interactive-normal: var(--bg_dark); + --interactive-hover: var(--bg); + --interactive-success: var(--green); + --interactive-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l)); + --interactive-accent-hover: var(--blue); + --scrollbar-bg: var(--bg_dark2); + --scrollbar-thumb-bg: var(--comment); + --scrollbar-active-thumb-bg: var(--bg_dark); + --scrollbar-width: 0px; + --h1-color: var(--red); + --h2-color: var(--yellow); + --h3-color: var(--green); + --h4-color: var(--cyan); + --h5-color: var(--blue); + --h6-color: var(--magenta); + --border-width: 2px; + --tag-color: var(--magenta); + --tag-background: rgba(var(--magenta_x), 0.15); + --tag-color-hover: var(--cyan); + --tag-background-hover: rgba(var(--cyan_x), 0.15); + --link-color: var(--magenta); + --link-color-hover: var(--cyan); + --link-external-color: var(--magenta); + --link-external-color-hover: var(--cyan); + --checkbox-radius: var(--radius-l); + --checkbox-color: var(--green); + --checkbox-color-hover: var(--green); + --checkbox-marker-color: var(--bg); + --checkbox-border-color: var(--comment); + --checkbox-border-color-hover: var(--comment); + --table-header-background: var(--bg_dark2); + --table-header-background-hover: var(--bg_dark2); + --flashing-background: rgba(var(--blue0_x), 0.3); + --code-normal: var(--fg); + --code-background: var(--bg_highlight_dark); + --mermaid-note: var(--blue0); + --mermaid-actor: var(--fg_dark); + --mermaid-loopline: var(--blue); + --blockquote-background-color: var(--bg_dark); + --callout-default: var(--blue_x); + --callout-info: var(--blue_x); + --callout-summary: var(--cyan_x); + --callout-tip: var(--cyan_x); + --callout-todo: var(--cyan_x); + --callout-bug: var(--red_x); + --callout-error: var(--red1_x); + --callout-fail: var(--red1_x); + --callout-example: var(--magenta_x); + --callout-important: var(--green_x); + --callout-success: var(--teal_x); + --callout-question: var(--yellow_x); + --callout-warning: var(--orange_x); + --callout-quote: var(--fg_dark_x); + --icon-color-hover: var(--blue); + --icon-color-focused: var(--magenta); + --icon-color-active: var(--magenta); + --nav-item-color-hover: var(--fg); + --nav-item-background-hover: var(--bg_highlight); + --nav-item-color-active: var(--red); + --nav-item-background-active: var(--bg_highlight); + --nav-file-tag: rgba(var(--yellow_x), 0.9); + --nav-indentation-guide-color: var(--bg_highlight); + --indentation-guide-color: var(--comment); + --indentation-guide-color-active: var(--comment); + --graph-line: var(--comment); + --graph-node: var(--fg); + --graph-node-tag: var(--orange); + --graph-node-attachment: var(--blue); + --tab-text-color-focused-active: rgba(var(--red_x), 0.8); + --tab-text-color-focused-active-current: var(--red); + --modal-border-color: var(--bg_highlight); + --prompt-border-color: var(--bg_highlight); + --slider-track-background: var(--bg_highlight); + --embed-background: var(--bg_dark); + --embed-padding: 1.5rem 1.5rem 0.5rem; + --canvas-color: var(--bg_highlight_x); + --toggle-thumb-color: var(--bg); + + /*--light: var(--background-primary); + --lightgray: var(--background-modifier-border); + --gray: var(--checkbox-border-color); + --darkgray: var(--text-normal); + --dark: var(--h1-color); + --secondary: var(--link-color); + --tertiary: var(--link-color-hover); + --highlight: var(--tag-background); + --textHighlight: var(--text-highlight-bg);*/ + .callout { + @each $type in $callout-types { + &[data-callout="#{$type}"] { + --color: rgb(var(#{"--callout-#{$type}"})); + --border: rgba(var(#{"--callout-#{$type}"}), 0.267); + --bg: rgba(var(#{"--callout-#{$type}"}), 0.063); + } + } + } +} + +body { + background-color: var(--background-primary); + + .callout { + border: 1px solid var(--border); + background-color: var(--bg); + } + + /* LINKS */ + a { + --font-weight: var(--link-weight); + color: var(--text-a, var(--link-color)); + font-weight: var(--link-weight); + outline: none; + /* text-decoration-line: var(--link-decoration); */ + /* text-decoration-thickness: var(--link-decoration-thickness); */ + cursor: var(--cursor-link); + transition: opacity 0.15s ease-in-out; + background-position: center right; + background-repeat: no-repeat; + &:hover { + color: var(--text-a-hover, var(--link-color-hover)); + /* text-decoration-line: var(--link-decoration-hover); */ + } + &.internal { + color: var(--text-a, var(--link-color)); + background-color: color_convert(var(--text-a, var(--link-color)), 15%); + &.tag-link { + --highlight-fallback: 258, 88%, 66%; + --textHighlight-fallback: 255, 208, 0; + color: var(--tag-color, var(--text-accent)); + text-decoration: var(--tag-decoration, none); + background-color: var( + --tag-background, + hsla( + var(--interactive-accent-hsl, var(--color-accent-hsl, var(--highlight-fallback))), + 0.1 + ) + ); + &:hover { + color: var(--tag-color-hover, var(--text-accent)); + text-decoration: var(--tag-decoration-hover, none); + background-color: var( + --tag-background-hover, + hsla(var(--interactive-accent-hsl, var(--highlight-fallback)), 0.2) + ); + } + } + } + &.external { + color: var(--link-external-color); + /* text-decoration-line: var(--link-external-decoration); */ + background-position: center right; + background-repeat: no-repeat; + background-image: linear-gradient(transparent, transparent); + background-color: transparent; + /* background-size: 13px; */ + /* padding-inline-end: 16px; */ + /* background-position-y: 4px; */ + cursor: var(--cursor-link); + filter: var(--link-external-filter); + transition: opacity 0.15s ease-in-out; + &:hover { + color: var(--link-external-color-hover); + /* text-decoration-line: var(--link-external-decoration-hover); */ + } + } + } + + /* TAGS */ + a.tag { + background-color: var(--tag-background); + border: var(--tag-border-width) solid var(--tag-border-color); + border-radius: var(--tag-radius); + color: var(--tag-color); + /* font-size: var(--tag-size); */ + font-weight: var(--tag-weight); + /* text-decoration: var(--tag-decoration); */ + /* padding: var(--tag-padding-y) var(--tag-padding-x); */ + /* line-height: 1; */ + &:hover { + background-color: var(--tag-background-hover); + border: var(--tag-border-width) solid var(--tag-border-color-hover); + color: var(--tag-color-hover); + text-decoration: var(--tag-decoration-hover); + } + } + input[type="checkbox"] { + appearance: none; + appearance: none; + border-radius: var(--checkbox-radius); + border: 1px solid var(--checkbox-border-color); + flex-shrink: 0; + padding: 0; + margin: 0; + margin-inline-end: 6px; + width: var(--checkbox-size); + height: var(--checkbox-size); + position: relative; + transition: box-shadow 0.15s ease-in-out; + } + input[type="checkbox"]:hover, + input[type="checkbox"]:active, + input[type="checkbox"]:focus { + outline: 0; + border-color: var(--checkbox-border-color-hover); + } + input[type="checkbox"]:focus-visible { + box-shadow: 0 0 0 2px var(--background-modifier-border-focus); + } + input[type="checkbox"]:checked:after { + content: ""; + top: -1px; + inset-inline-start: -1px; + position: absolute; + width: var(--checkbox-size); + height: var(--checkbox-size); + display: block; + background-color: var(--checkbox-marker-color); + mask-position: 52% 52%; + mask-size: 65%; + mask-repeat: no-repeat; + mask-image: url('data:image/svg+xml; utf8, '); + } + input[type="checkbox"]:checked { + background-color: var(--checkbox-color); + border-color: var(--checkbox-color); + } + @media (hover: hover) { + input[type="checkbox"]:checked:hover { + background-color: var(--checkbox-color-hover); + border-color: var(--checkbox-color-hover); + } + } + input[type="checkbox"][data-indeterminate="true"]:not(:checked):after { + content: ""; + position: absolute; + top: calc(var(--checkbox-size) / 2 - 2px); + width: calc(var(--checkbox-size) - 6px); + left: 0; + right: 0; + margin: 0 auto; + height: 2px; + display: block; + border-radius: 2px; + background-color: var(--text-normal); + } + + /* HEADINGS */ + h1 { + --font-weight: var(--h1-weight); + font-variant: var(--h1-variant); + /* letter-spacing: -0.015em; */ + /* line-height: var(--h1-line-height); */ + /* font-size: var(--h1-size); */ + color: var(--text-title-h1, var(--h1-color)); + font-weight: var(--font-weight); + font-style: var(--h1-style); + /* font-family: var(--h1-font); */ + /* margin-block-start: var(--p-spacing); */ + /* margin-block-end: var(--p-spacing); */ + } + h1 a { + --link-weight: var(--h1-weight); + } + h2 { + --font-weight: var(--h2-weight); + font-variant: var(--h2-variant); + /* letter-spacing: -0.015em; */ + /* line-height: var(--h2-line-height); */ + /* font-size: var(--h2-size); */ + color: var(--text-title-h2, var(--h2-color)); + font-weight: var(--font-weight); + font-style: var(--h2-style); + /* font-family: var(--h2-font); */ + /* margin-block-start: var(--p-spacing); */ + /* margin-block-end: var(--p-spacing); */ + } + h2 a { + --link-weight: var(--h2-weight); + } + h3 { + --font-weight: var(--h3-weight); + font-variant: var(--h3-variant); + /* letter-spacing: -0.015em; */ + /* line-height: var(--h3-line-height); */ + /* font-size: var(--h3-size); */ + color: var(--text-title-h3, var(--h3-color)); + font-weight: var(--font-weight); + font-style: var(--h3-style); + /* font-family: var(--h3-font); */ + /* margin-block-start: var(--p-spacing); */ + /* margin-block-end: var(--p-spacing); */ + } + h3 a { + --link-weight: var(--h3-weight); + } + h4 { + --font-weight: var(--h4-weight); + font-variant: var(--h4-variant); + /* letter-spacing: 0.015em; */ + /* line-height: var(--h4-line-height); */ + /* font-size: var(--h4-size); */ + color: var(--text-title-h4, var(--h4-color)); + font-weight: var(--font-weight); + font-style: var(--h4-style); + /* font-family: var(--h4-font); */ + /* margin-block-start: var(--p-spacing); */ + /* margin-block-end: var(--p-spacing); */ + } + h4 a { + --link-weight: var(--h4-weight); + } + h5 { + --font-weight: var(--h5-weight); + font-variant: var(--h5-variant); + /* letter-spacing: 0.015em; */ + /* font-size: var(--h5-size); */ + /* line-height: var(--h5-line-height); */ + color: var(--text-title-h5, var(--h5-color)); + font-weight: var(--font-weight); + font-style: var(--h5-style); + /* font-family: var(--h5-font); */ + /* margin-block-start: var(--p-spacing); */ + /* margin-block-end: var(--p-spacing); */ + } + h5 a { + --link-weight: var(--h5-weight); + } + h6 { + --font-weight: var(--h6-weight); + font-variant: var(--h6-variant); + /* letter-spacing: 0.015em; */ + /* font-size: var(--h6-size); */ + /* line-height: var(--h6-line-height); */ + color: var(--text-title-h6, var(--h6-color)); + font-weight: var(--font-weight); + font-style: var(--h6-style); + /* font-family: var(--h6-font); */ + /* margin-block-start: var(--p-spacing); */ + /* margin-block-end: var(--p-spacing); */ + } + h6 a { + --link-weight: var(--h6-weight); + } + + /* CODE */ + pre { + border: 1px solid var(--background-modifier-border, var(--border)); + } + code { + color: var(--code-normal); + font-family: var(--font-monospace); + } + *:is(:not(pre)) > code { + color: var(--markup-code, var(--code-normal)); + background-color: var(--code-background); + } + + /* EXPLORER, TOC, BACKLINKS */ + .toc-content, + .explorer-content, + .backlinks { + ul { + li > a { + color: var(--nav-item-color, var(--text-muted, var(--dark))); + &:hover { + color: var(--nav-item-color-hover, var(--text-normal, var(--tertiary))); + } + } + } + } + + .backlinks:after { + background: unset; + } + + .explorer { + &:after { + background: unset; + } + button.explorer { + color: var(--collapse-icon-color-collapsed, var(--nav-heading-color-collapsed)); + } + .explorer-content { + background-color: var(--background-primary); + & ul { + & li a { + color: var(--nav-item-color, var(--nav-heading-color-collapsed)); + } + } + } + } + + .folder-container { + .folder-icon { + color: var(--collapse-icon-color-collapsed, var(--nav-heading-color-collapsed)); + &:hover { + .folder-icon { + color: var(--collapse-icon-color-collapsed, var(--nav-heading-color-collapsed-hover)); + } + } + } + div > a, + div > button, + div > button > span { + color: var(--nav-item-color, var(--nav-heading-color-collapsed)); + &:hover { + color: var(--nav-item-color-hover, var(--nav-heading-color-collapsed-hover)); + } + } + &:has(+ div.folder-outer.open) { + .folder-icon { + color: var(--collapse-icon-color, var(--nav-heading-color)); + &:hover { + color: var(--collapse-icon-color, var(--nav-heading-color-hover)); + } + } + div > a, + div > button, + div > button > span { + color: var(--nav-heading-color); + &:hover { + color: var(--nav-heading-color-hover); + } + } + } + } + + /* SEARCH */ + .search .search-button { + background-color: var( + --background-modifier-form-field, + var(--search-result-background, var(--background-primary, var(--lightgray))) + ); + color: var(--search-clear-button-color, var(--text-muted, var(--darkgray))); + svg { + color: var(--search-icon-color, var(--text-muted, var(--darkgray))); + stroke: var(--search-icon-color, var(--text-muted, var(--darkgray))); + } + } + + /* DARKMODE */ + .darkmode { + & svg { + color: var(--search-icon-color, var(--text-muted, var(--darkgray))); + fill: var(--search-icon-color, var(--text-muted, var(--darkgray))); + } + } + + /* PAGE TITLE */ + .page-title a { + color: var(--h2-color, var(--link-color, var(--darkgray))); + } + + /* METADATA */ + .content-meta { + color: var(--text-faint); + } + + /* GRAPH */ + .graph { + & > .graph-outer { + border: 1px solid var(--background-modifier-border-hover, var(--color-base-35)); + --background-modifier-border-focus: var(--color-base-40); + & > .global-graph-icon { + color: var(--search-icon-color, var(--text-muted, var(--darkgray))); + &:hover { + background-color: var(--background-modifier-hover); + } + } + } + & > .global-graph-outer { + & > .global-graph-container { + border: 1px solid var(--background-modifier-border-hover, var(--color-base-35)); + background-color: var(--background-primary); + } + } + } + + /* MISC */ + hr { + border: none; + border-top: var(--hr-thickness, 2px) solid; + border-color: var(--hr-color, var(--background-modifier-border, var(--lightgray))); + } + + .clipboard-button { + color: var(--text-muted); + border-color: var(--checkbox-border-color, var(--text-faint)); + background-color: transparent; + &:hover { + border-color: var(--checkbox-border-color-hover, var(--text-muted)); + background-color: var(--background-modifier-hover); + } + & > svg { + fill: var(--search-icon-color, var(--text-muted, var(--darkgray))); + } + } + + details.toc { + & summary { + cursor: pointer; + + &::marker { + color: var(--text-muted); + } + } + } + + /* POPOVER */ + .popover { + & .popover-inner { + border: var(--background-modifier-border, var(--color-base-30)); + background-color: var(--background-primary); + } + } + + /* BACKGROUNDS */ + section { + background-color: var(--background-primary); + } + .page > #quartz-body { + .sidebar { + background-color: var(--background-primary); + &.left:has(.explorer) { + background-color: var(--background-primary); + } + } + } + + .search > .search-container > .search-space > * { + background-color: var(--background-secondary, var(--background-primary)); + } + + /* TEXT */ + strong { + color: var(--bold-color); + } + i, + em { + color: var(--italic-color); + } + p, + ul, + text, + a, + tr, + td, + li, + ol, + ul, + .katex, + .math { + color: var(--text-normal); + } +} + +/* START CANVAS GRAPH WORKAROUND */ +:root:root { + --highlight-fallback: 258, 88%, 66%; + --textHighlight-fallback: 255, 208, 0; + --light: var( + --graph-node, + var(--text-muted, var(--background-primary, var(--color-base-00, #ffffff))) + ) !important; + --lightgray: var( + --graph-line, + var( + --color-base-35, + var( + --background-modifier-border-focus, + var(--background-modifier-border, var(--color-base-30, #e0e0e0)) + ) + ) + ) !important; + --gray: var( + --graph-node, + var( + --text-muted, + var( + --graph-text, + var(--text-normal, var(--checkbox-border-color, var(--text-faint, #ababab))) + ) + ) + ) !important; + --darkgray: var( + --graph-node-unresolved, + var(--text-faint, var(--text-normal, var(--color-base-100, #222222))) + ) !important; + --dark: var(--h1-color, var(--text-faint, #ababab)) !important; + --secondary: var( + --graph-node-focused, + var( + --text-accent, + var(--link-color, var(--text-accent, var(--color-accent, hsl(258, 88%, 66%)))) + ) + ) !important; + --tertiary: var( + --graph-node-tag, + var( + --color-green, + var( + --link-color-hover, + var(--text-accent-hover, var(--color-accent-2, hsl(258 - 3, 88% * 1.02, 66% * 1.15))) + ) + ) + ) !important; + --highlight: var( + --tag-background, + hsla(var(--interactive-accent-hsl, var(--color-accent-hsl, var(--highlight-fallback))), 0.1) + ) !important; + --textHighlight: var( + --text-highlight-bg, + rgba(var(--text-highlight-bg-rgb, var(--textHighlight-fallback)), 0.4) + ) !important; +} + +:root:root[saved-theme="dark"] { + --highlight-fallback: 258, 88%, 66%; + --textHighlight-fallback: 255, 208, 0; + --light: var( + --graph-node, + var(--text-muted, var(--background-primary, var(--color-base-00, #1e1e1e))) + ) !important; + --lightgray: var( + --graph-line, + var( + --color-base-35, + var( + --background-modifier-border-focus, + var(--background-modifier-border, var(--color-base-30, #363636)) + ) + ) + ) !important; + --gray: var( + --graph-node, + var( + --text-muted, + var( + --graph-text, + var(--text-normal, var(--checkbox-border-color, var(--text-faint, #666666))) + ) + ) + ) !important; + --darkgray: var( + --graph-node-unresolved, + var(--text-faint, var(--text-normal, var(--color-base-100, #dadada))) + ) !important; + --dark: var(--h1-color, var(--text-faint, #666666)) !important; + --secondary: var( + --graph-node-focused, + var( + --text-accent, + var( + --link-color, + var(--text-accent, var(--color-accent-1, hsl(258 - 3, 88% * 1.02, 66% * 1.15))) + ) + ) + ) !important; + --tertiary: var( + --graph-node-tag, + var( + --color-green, + var( + --link-color-hover, + var(--text-accent-hover, var(--color-accent-2, hsl(258 - 5, 88% * 1.05, 66% * 1.29))) + ) + ) + ) !important; + --highlight: var( + --tag-background, + hsla(var(--interactive-accent-hsl, var(--color-accent-hsl, var(--highlight-fallback))), 0.2) + ) !important; + --textHighlight: var( + --text-highlight-bg, + rgba(var(--text-highlight-bg-rgb, var(--textHighlight-fallback)), 0.4) + ) !important; +} +/* END CANVAS GRAPH WORKAROUND */ diff --git a/quartz/styles/themes/_light.scss b/quartz/styles/themes/_light.scss new file mode 100644 index 000000000..526016cb5 --- /dev/null +++ b/quartz/styles/themes/_light.scss @@ -0,0 +1,169 @@ +:root[saved-theme="light"] { + --accent-h: 202; + --accent-s: 86%; + --accent-l: 43%; + --bg_dark2_x: 188, 189, 194; + --bg_dark2: rgb(var(--bg_dark2_x)); + --bg_dark_x: 203, 204, 209; + --bg_dark: rgb(var(--bg_dark_x)); + --bg_x: 213, 214, 219; + --bg: rgb(var(--bg_x)); + --bg_highlight_x: 220, 222, 226; + --bg_highlight: rgb(var(--bg_highlight_x)); + --bg_highlight_dark_x: 195, 197, 201; + --bg_highlight_dark: rgb(var(--bg_highlight_dark_x)); + --terminal_black_x: 15, 15, 20; + --terminal_black: rgb(var(--terminal_black_x)); + --fg_x: 52, 59, 88; + --fg: rgb(var(--fg_x)); + --fg_dark_x: 39, 46, 75; + --fg_dark: rgb(var(--fg_dark_x)); + --comment_x: 150, 153, 163; + --comment: rgb(var(--comment_x)); + --blue0_x: 39, 71, 125; + --blue0: rgb(var(--blue0_x)); + --blue_x: 52, 84, 138; + --blue: rgb(var(--blue_x)); + --cyan_x: 15, 75, 110; + --cyan: rgb(var(--cyan_x)); + --magent_hsl: 261 24% 38%; + --magenta_x: 90, 74, 120; + --magenta: rgb(var(--magenta_x)); + --orange_x: 150, 80, 39; + --orange: rgb(var(--orange_x)); + --yellow_x: 143, 94, 21; + --yellow: rgb(var(--yellow_x)); + --green_x: 51, 99, 92; + --green: rgb(var(--green_x)); + --teal_x: 22, 103, 117; + --teal: rgb(var(--teal_x)); + --red_x: 140, 67, 81; + --red: rgb(var(--red_x)); + --red1_x: 115, 42, 56; + --red1: rgb(var(--red1_x)); + --unknown: #000000; + --color_red_rgb: var(--red_x); + --color-red: var(--red); + --color_purple_rgb: var(--magenta_x); + --color-purple: var(--magenta); + --color_green_rgb: var(--green_x); + --color-green: var(--green); + --color_cyan_rgb: var(--cyan_x); + --color-cyan: var(--cyan); + --color_blue_rgb: var(--blue_x); + --color-blue: var(--blue); + --color_yellow_rgb: var(--yellow_x); + --color-yellow: var(--yellow); + --color_orange_rgb: var(--orange_x); + --color-orange: var(--orange); + --color_pink_rgb: var(--magenta_x); + --color-pink: var(--magenta); + --background-primary: var(--bg); + --background-primary-alt: var(--bg); + --background-secondary: var(--bg_dark); + --background-secondary-alt: var(--bg_dark); + --background-modifier-border: var(--bg_highlight); + --background-modifier-border-focus: var(--bg_highlight); + --background-modifier-border-hover: var(--bg_highlight); + --background-modifier-form-field: var(--bg_dark); + --background-modifier-form-field-highlighted: var(--bg_dark); + --background-modifier-box-shadow: rgba(0, 0, 0, 0.3); + --background-modifier-success: var(--green); + --background-modifier-error: var(--red1); + --background-modifier-error-hover: var(--red); + --background-modifier-cover: rgba(var(--bg_dark_x), 0.8); + --background-modifier-hover: var(--bg_highlight); + --background-modifier-message: rgba(var(--bg_highlight_x), 0.9); + --background-modifier-active-hover: var(--bg_highlight); + --text-normal: var(--fg); + --text-faint: var(--comment); + --text-muted: var(--fg_dark); + --text-error: var(--red); + --text-accent: var(--magenta); + --text-accent-hover: var(--cyan); + --text-error: var(--red1); + --text-error-hover: var(--red); + --text-selection: var(--unknown); + --text-on-accent: var(--bg); + --text-highlight-bg: rgba(var(--orange_x), 0.4); + --text-selection: rgba(var(--blue0_x), 0.6); + --bold-color: var(--cyan); + --italic-color: var(--cyan); + --interactive-normal: var(--bg_dark); + --interactive-hover: var(--bg); + --interactive-success: var(--green); + --interactive-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l)); + --interactive-accent-hover: var(--blue); + --scrollbar-bg: var(--bg_dark2); + --scrollbar-thumb-bg: var(--comment); + --scrollbar-active-thumb-bg: var(--bg_dark); + --scrollbar-width: 0px; + --h1-color: var(--red); + --h2-color: var(--yellow); + --h3-color: var(--green); + --h4-color: var(--cyan); + --h5-color: var(--blue); + --h6-color: var(--magenta); + --border-width: 2px; + --tag-color: var(--magenta); + --tag-background: rgba(var(--magenta_x), 0.15); + --tag-color-hover: var(--cyan); + --tag-background-hover: rgba(var(--cyan_x), 0.15); + --link-color: var(--magenta); + --link-color-hover: var(--cyan); + --link-external-color: var(--magenta); + --link-external-color-hover: var(--cyan); + --checkbox-radius: var(--radius-l); + --checkbox-color: var(--green); + --checkbox-color-hover: var(--green); + --checkbox-marker-color: var(--bg); + --checkbox-border-color: var(--comment); + --checkbox-border-color-hover: var(--comment); + --table-header-background: var(--bg_dark2); + --table-header-background-hover: var(--bg_dark2); + --flashing-background: rgba(var(--blue0_x), 0.3); + --code-normal: var(--fg); + --code-background: var(--bg_highlight_dark); + --mermaid-note: var(--blue0); + --mermaid-actor: var(--fg_dark); + --mermaid-loopline: var(--blue); + --blockquote-background-color: var(--bg_dark); + --callout-default: var(--blue_x); + --callout-info: var(--blue_x); + --callout-summary: var(--cyan_x); + --callout-tip: var(--cyan_x); + --callout-todo: var(--cyan_x); + --callout-bug: var(--red_x); + --callout-error: var(--red1_x); + --callout-fail: var(--red1_x); + --callout-example: var(--magenta_x); + --callout-important: var(--green_x); + --callout-success: var(--teal_x); + --callout-question: var(--yellow_x); + --callout-warning: var(--orange_x); + --callout-quote: var(--fg_dark_x); + --icon-color-hover: var(--blue); + --icon-color-focused: var(--magenta); + --icon-color-active: var(--magenta); + --nav-item-color-hover: var(--fg); + --nav-item-background-hover: var(--bg_highlight); + --nav-item-color-active: var(--red); + --nav-item-background-active: var(--bg_highlight); + --nav-file-tag: rgba(var(--yellow_x), 0.9); + --nav-indentation-guide-color: var(--bg_highlight); + --indentation-guide-color: var(--comment); + --indentation-guide-color-active: var(--comment); + --graph-line: var(--comment); + --graph-node: var(--fg); + --graph-node-tag: var(--orange); + --graph-node-attachment: var(--blue); + --tab-text-color-focused-active: rgba(var(--red_x), 0.8); + --tab-text-color-focused-active-current: var(--red); + --modal-border-color: var(--bg_highlight); + --prompt-border-color: var(--bg_highlight); + --slider-track-background: var(--bg_highlight); + --embed-background: var(--bg_dark); + --embed-padding: 1.5rem 1.5rem 0.5rem; + --canvas-color: var(--bg_highlight_x); + --toggle-thumb-color: var(--bg); +} diff --git a/quartz/styles/themes/overrides/_index.scss b/quartz/styles/themes/overrides/_index.scss new file mode 100644 index 000000000..e69de29bb