1// Copyright 2023 The Pigweed Authors 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); you may not 4// use this file except in compliance with the License. You may obtain a copy of 5// the License at 6// 7// https://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12// License for the specific language governing permissions and limitations under 13// the License. 14 15import { css } from 'lit'; 16 17export const themeDark = css` 18 /* Automatic theme styles */ 19 @media (prefers-color-scheme: dark) { 20 :host { 21 color-scheme: dark; 22 23 /* Material Design tokens */ 24 --md-sys-color-primary: #a8c7fa; 25 --md-sys-color-primary-60: #4c8df6; 26 --md-sys-color-primary-container: #0842a0; 27 --md-sys-color-on-primary: #062e6f; 28 --md-sys-color-on-primary-container: #d3e3fd; 29 --md-sys-color-inverse-primary: #0b57d0; 30 --md-sys-color-secondary: #7fcfff; 31 --md-sys-color-secondary-container: #004a77; 32 --md-sys-color-on-secondary: #003355; 33 --md-sys-color-on-secondary-container: #c2e7ff; 34 --md-sys-color-tertiary: #6dd58c; 35 --md-sys-color-tertiary-container: #0f5223; 36 --md-sys-color-on-tertiary: #0a3818; 37 --md-sys-color-on-tertiary-container: #c4eed0; 38 --md-sys-color-surface: #131314; 39 --md-sys-color-surface-dim: #131314; 40 --md-sys-color-surface-bright: #37393b; 41 --md-sys-color-surface-container-lowest: #0e0e0e; 42 --md-sys-color-surface-container-low: #1b1b1b; 43 --md-sys-color-surface-container: #1e1f20; 44 --md-sys-color-surface-container-high: #282a2c; 45 --md-sys-color-surface-container-highest: #333537; 46 --md-sys-color-on-surface: #e3e3e3; 47 --md-sys-color-on-surface-variant: #c4c7c5; 48 --md-sys-color-inverse-surface: #e3e3e3; 49 --md-sys-color-inverse-on-surface: #303030; 50 --md-sys-color-outline: #8e918f; 51 --md-sys-color-outline-variant: #444746; 52 --md-sys-color-shadow: #000000; 53 --md-sys-color-scrim: #000000; 54 --md-sys-color-inverse-surface-rgb: 230, 225, 229; 55 56 /* REPL */ 57 --sys-repl-gutter-bg: var(--md-sys-color-surface-container-high); 58 --sys-repl-active-gutter-bg: var(--md-sys-color-surface-bright); 59 60 /* Log Viewer */ 61 --sys-log-viewer-color-primary: var(--md-sys-color-primary); 62 --sys-log-viewer-color-on-primary: var(--md-sys-color-on-primary); 63 --sys-log-viewer-color-bg: var(--md-sys-color-surface); 64 65 /* Log View */ 66 --sys-log-viewer-color-view-outline: var(--md-sys-color-outline-variant); 67 68 /* Log View Controls */ 69 --sys-log-viewer-color-controls-bg: var( 70 --md-sys-color-surface-container-high 71 ); 72 --sys-log-viewer-color-controls-text: var( 73 --md-sys-color-on-surface-variant 74 ); 75 --sys-log-viewer-color-controls-input-outline: transparent; 76 --sys-log-viewer-color-controls-input-bg: var(--md-sys-color-surface); 77 --sys-log-viewer-color-controls-button-enabled: var( 78 --md-sys-color-primary-container 79 ); 80 81 /* Log List */ 82 --sys-log-viewer-color-table-header-bg: var( 83 --md-sys-color-surface-container 84 ); 85 --sys-log-viewer-color-table-header-text: var(--md-sys-color-on-surface); 86 --sys-log-viewer-color-table-bg: var( 87 --md-sys-color-surface-container-lowest 88 ); 89 --sys-log-viewer-color-table-text: var(--md-sys-color-on-surface); 90 --sys-log-viewer-color-table-cell-outline: var( 91 --md-sys-color-outline-variant 92 ); 93 --sys-log-viewer-color-overflow-indicator: var( 94 --md-sys-color-surface-container-lowest 95 ); 96 --sys-log-viewer-color-table-mark: var(--md-sys-color-primary-container); 97 --sys-log-viewer-color-table-mark-text: var( 98 --md-sys-color-on-primary-container 99 ); 100 --sys-log-viewer-color-table-mark-outline: var( 101 --md-sys-color-outline-variant 102 ); 103 --sys-log-viewer-color-table-row-highlight: var( 104 --md-sys-color-inverse-surface-rgb 105 ); 106 107 /* Log Level */ 108 --sys-log-viewer-color-error-bright: #e46962; 109 --sys-log-viewer-color-surface-error: #601410; 110 --sys-log-viewer-color-on-surface-error: #f9dedc; 111 --sys-log-viewer-color-orange-bright: #ee9836; 112 --sys-log-viewer-color-surface-yellow: #402d00; 113 --sys-log-viewer-color-on-surface-yellow: #ffdfa0; 114 --sys-log-viewer-color-debug: var(--md-sys-color-primary-60); 115 --sys-log-viewer-color-info: #575c5b; 116 } 117 } 118 119 /* Manual theme styles */ 120 :host([colorscheme='dark']) { 121 color-scheme: dark; 122 123 /* Material Design tokens */ 124 --md-sys-color-primary: #a8c7fa; 125 --md-sys-color-primary-60: #4c8df6; 126 --md-sys-color-primary-container: #0842a0; 127 --md-sys-color-on-primary: #062e6f; 128 --md-sys-color-on-primary-container: #d3e3fd; 129 --md-sys-color-inverse-primary: #0b57d0; 130 --md-sys-color-secondary: #7fcfff; 131 --md-sys-color-secondary-container: #004a77; 132 --md-sys-color-on-secondary: #003355; 133 --md-sys-color-on-secondary-container: #c2e7ff; 134 --md-sys-color-tertiary: #6dd58c; 135 --md-sys-color-tertiary-container: #0f5223; 136 --md-sys-color-on-tertiary: #0a3818; 137 --md-sys-color-on-tertiary-container: #c4eed0; 138 --md-sys-color-surface: #131314; 139 --md-sys-color-surface-dim: #131314; 140 --md-sys-color-surface-bright: #37393b; 141 --md-sys-color-surface-container-lowest: #0e0e0e; 142 --md-sys-color-surface-container-low: #1b1b1b; 143 --md-sys-color-surface-container: #1e1f20; 144 --md-sys-color-surface-container-high: #282a2c; 145 --md-sys-color-surface-container-highest: #333537; 146 --md-sys-color-on-surface: #e3e3e3; 147 --md-sys-color-on-surface-variant: #c4c7c5; 148 --md-sys-color-inverse-surface: #e3e3e3; 149 --md-sys-color-inverse-on-surface: #303030; 150 --md-sys-color-outline: #8e918f; 151 --md-sys-color-outline-variant: #444746; 152 --md-sys-color-shadow: #000000; 153 --md-sys-color-scrim: #000000; 154 --md-sys-color-inverse-surface-rgb: 230, 225, 229; 155 156 /* REPL */ 157 --sys-repl-gutter-bg: var(--md-sys-color-surface-container-high); 158 --sys-repl-active-gutter-bg: var(--md-sys-color-surface-bright); 159 160 /* Log Viewer */ 161 --sys-log-viewer-color-primary: var(--md-sys-color-primary); 162 --sys-log-viewer-color-on-primary: var(--md-sys-color-on-primary); 163 --sys-log-viewer-color-bg: var(--md-sys-color-surface); 164 165 /* Log View */ 166 --sys-log-viewer-color-view-outline: var(--md-sys-color-outline-variant); 167 168 /* Log View Controls */ 169 --sys-log-viewer-color-controls-bg: var( 170 --md-sys-color-surface-container-high 171 ); 172 --sys-log-viewer-color-controls-text: var( 173 --md-sys-color-on-surface-variant 174 ); 175 --sys-log-viewer-color-controls-input-outline: transparent; 176 --sys-log-viewer-color-controls-input-bg: var(--md-sys-color-surface); 177 --sys-log-viewer-color-controls-button-enabled: var( 178 --md-sys-color-primary-container 179 ); 180 181 /* Log List */ 182 --sys-log-viewer-color-table-header-bg: var( 183 --md-sys-color-surface-container 184 ); 185 --sys-log-viewer-color-table-header-text: var(--md-sys-color-on-surface); 186 --sys-log-viewer-color-table-bg: var( 187 --md-sys-color-surface-container-lowest 188 ); 189 --sys-log-viewer-color-table-text: var(--md-sys-color-on-surface); 190 --sys-log-viewer-color-table-cell-outline: var( 191 --md-sys-color-outline-variant 192 ); 193 --sys-log-viewer-color-overflow-indicator: var( 194 --md-sys-color-surface-container-lowest 195 ); 196 --sys-log-viewer-color-table-mark: var(--md-sys-color-primary-container); 197 --sys-log-viewer-color-table-mark-text: var( 198 --md-sys-color-on-primary-container 199 ); 200 --sys-log-viewer-color-table-mark-outline: var( 201 --md-sys-color-outline-variant 202 ); 203 --sys-log-viewer-color-table-row-highlight: var( 204 --md-sys-color-inverse-surface-rgb 205 ); 206 207 /* Log Level */ 208 --sys-log-viewer-color-error-bright: #e46962; 209 --sys-log-viewer-color-surface-error: #601410; 210 --sys-log-viewer-color-on-surface-error: #f9dedc; 211 --sys-log-viewer-color-orange-bright: #ee9836; 212 --sys-log-viewer-color-surface-yellow: #402d00; 213 --sys-log-viewer-color-on-surface-yellow: #ffdfa0; 214 --sys-log-viewer-color-debug: var(--md-sys-color-primary-60); 215 --sys-log-viewer-color-info: #575c5b; 216 } 217`; 218