/* * Canon theme presets. * * Every color on the site comes from these variables, so a custom theme only * needs to override them (Settings → Appearance → Custom CSS), e.g. * * :root, [data-theme] { --accent: #ff4f81; --bg: #120d14; } */ :root, [data-theme="midnight"] { color-scheme: dark; --bg: #0f1117; --surface: #171a22; --surface-2: #1f232e; --border: #2a2f3c; --text: #eceef4; --muted: #9aa1b2; --faint: #636a7c; --accent: #8b7dff; --accent-text: #ffffff; --accent-soft: rgba(139, 125, 255, 0.14); --danger: #ff6b7a; --success: #4fd1a1; --warn: #f5b84b; --gold: #f5c451; --silver: #cfd6e4; --bronze: #d99a6c; --shadow: 0 10px 30px rgba(0, 0, 0, 0.35); --font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; --font-display: var(--font); --radius: 10px; --radius-art: 8px; } [data-theme="obsidian"] { color-scheme: dark; --bg: #000000; --surface: #0c0c0c; --surface-2: #161616; --border: #262626; --text: #f5f5f5; --muted: #a3a3a3; --faint: #5f5f5f; --accent: #f5f5f5; --accent-text: #000000; --accent-soft: rgba(255, 255, 255, 0.09); --shadow: 0 10px 30px rgba(0, 0, 0, 0.6); } [data-theme="nord"] { color-scheme: dark; --bg: #242933; --surface: #2e3440; --surface-2: #3b4252; --border: #434c5e; --text: #eceff4; --muted: #b4bccb; --faint: #7b8598; --accent: #88c0d0; --accent-text: #1f242d; --accent-soft: rgba(136, 192, 208, 0.15); --danger: #bf616a; --success: #a3be8c; --warn: #ebcb8b; } [data-theme="dracula"] { color-scheme: dark; --bg: #21222c; --surface: #282a36; --surface-2: #343746; --border: #44475a; --text: #f8f8f2; --muted: #b6b9cf; --faint: #6272a4; --accent: #ff79c6; --accent-text: #21222c; --accent-soft: rgba(255, 121, 198, 0.14); --danger: #ff5555; --success: #50fa7b; --warn: #f1fa8c; } [data-theme="mocha"] { color-scheme: dark; --bg: #181825; --surface: #1e1e2e; --surface-2: #313244; --border: #45475a; --text: #cdd6f4; --muted: #a6adc8; --faint: #6c7086; --accent: #cba6f7; --accent-text: #1e1e2e; --accent-soft: rgba(203, 166, 247, 0.14); --danger: #f38ba8; --success: #a6e3a1; --warn: #f9e2af; } [data-theme="rose-pine"] { color-scheme: dark; --bg: #191724; --surface: #1f1d2e; --surface-2: #26233a; --border: #393552; --text: #e0def4; --muted: #a8a4c4; --faint: #6e6a86; --accent: #ebbcba; --accent-text: #191724; --accent-soft: rgba(235, 188, 186, 0.14); --danger: #eb6f92; --success: #9ccfd8; --warn: #f6c177; } [data-theme="gruvbox"] { color-scheme: dark; --bg: #1d2021; --surface: #282828; --surface-2: #32302f; --border: #45403d; --text: #ebdbb2; --muted: #bdae93; --faint: #7c6f64; --accent: #fe8019; --accent-text: #1d2021; --accent-soft: rgba(254, 128, 25, 0.14); --danger: #fb4934; --success: #b8bb26; --warn: #fabd2f; } [data-theme="forest"] { color-scheme: dark; --bg: #0f1612; --surface: #151f19; --surface-2: #1c2921; --border: #29392f; --text: #e4efe7; --muted: #9fb5a6; --faint: #62786a; --accent: #7fd49b; --accent-text: #0f1612; --accent-soft: rgba(127, 212, 155, 0.13); } [data-theme="synthwave"] { color-scheme: dark; --bg: #140b24; --surface: #1d1133; --surface-2: #281846; --border: #3b2663; --text: #f4eaff; --muted: #bca8dc; --faint: #7a649e; --accent: #ff4fd8; --accent-text: #140b24; --accent-soft: rgba(255, 79, 216, 0.15); --warn: #ffd166; --success: #36f1cd; --shadow: 0 10px 40px rgba(255, 79, 216, 0.12); } /* Red on true black: #000 backgrounds switch OLED pixels off. The accent passes 4.5:1 both as text on black and behind white button labels. */ [data-theme="crimson"] { color-scheme: dark; --bg: #000000; --surface: #0a0a0a; --surface-2: #151011; --border: #2e1418; --text: #f5f1f1; --muted: #b5a9ab; --faint: #75676a; --accent: #e0263a; --accent-text: #ffffff; --accent-soft: rgba(224, 38, 58, 0.16); --danger: #ff5c6c; --success: #4fd1a1; --warn: #f5b84b; --shadow: 0 10px 30px rgba(0, 0, 0, 0.7); } /* Small badge text on the red tint needs a brighter red to stay legible. */ [data-theme="crimson"] .badge:not(.badge--warn):not(.badge--muted) { color: #ff5a6a; } [data-theme="daylight"] { color-scheme: light; --bg: #f6f7f9; --surface: #ffffff; --surface-2: #eef0f4; --border: #e0e3ea; --text: #15171c; --muted: #5d6475; --faint: #9299a8; --accent: #5b4ef0; --accent-text: #ffffff; --accent-soft: rgba(91, 78, 240, 0.1); --danger: #d93a4b; --success: #17915f; --warn: #b7791f; --gold: #d69e1a; --silver: #8f98a8; --bronze: #b8734a; --shadow: 0 10px 30px rgba(20, 24, 40, 0.1); } [data-theme="paper"] { color-scheme: light; --bg: #f4efe6; --surface: #fbf8f2; --surface-2: #ece5d8; --border: #ddd3c2; --text: #2b2520; --muted: #6e6457; --faint: #a2978a; --accent: #b5452f; --accent-text: #fbf8f2; --accent-soft: rgba(181, 69, 47, 0.1); --danger: #b5452f; --success: #3f7d4f; --warn: #a8741a; --gold: #b88a1b; --silver: #8a8a8a; --bronze: #a0623b; --shadow: 0 10px 30px rgba(60, 40, 20, 0.1); --font-display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, ui-serif, serif; --radius: 4px; --radius-art: 3px; } [data-theme="latte"] { color-scheme: light; --bg: #eff1f5; --surface: #ffffff; --surface-2: #e6e9ef; --border: #ccd0da; --text: #4c4f69; --muted: #6c6f85; --faint: #9ca0b0; --accent: #8839ef; --accent-text: #ffffff; --accent-soft: rgba(136, 57, 239, 0.1); --danger: #d20f39; --success: #40a02b; --warn: #df8e1d; --gold: #df8e1d; --silver: #8c8fa1; --bronze: #c06d3a; --shadow: 0 10px 30px rgba(76, 79, 105, 0.12); }