vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Merge change request 01M70WES5ZZDJ6RP226WB11BBZ: Let people rename and remove their own passkeys
keenan · 18m ago
4b8c9e1d
| 1 | /* Built-in palettes other than Everforest. Every block is scoped to the |
| 2 | data-theme value theme.js writes, so a page loads all of them and only the |
| 3 | selected one applies. The tokens are the same names everforest.css defines; |
| 4 | a palette that leaves one unset would inherit the fallback from vole.css. |
| 5 | |
| 6 | Catppuccin (MIT), Nord (MIT), and Solarized (MIT) are vendored as colour |
| 7 | values. See NOTICE and the matching license files beside this sheet. */ |
| 8 | |
| 9 | /* ---------- Catppuccin Mocha ---------- */ |
| 10 | |
| 11 | :root[data-theme="catppuccin-mocha"] { |
| 12 | color-scheme: dark; |
| 13 | |
| 14 | --bg: #1e1e2e; |
| 15 | --bg-panel: #181825; |
| 16 | --bg-raised: #313244; |
| 17 | --bg-hover: #45475a; |
| 18 | --bg-active: #585b70; |
| 19 | --border: #313244; |
| 20 | --border-strong: #585b70; |
| 21 | |
| 22 | --fg: #cdd6f4; |
| 23 | --fg-muted: #a6adc8; |
| 24 | --fg-faint: #7f849c; |
| 25 | |
| 26 | --accent: #89b4fa; |
| 27 | --accent-fg: #11111b; |
| 28 | --accent-soft: color-mix(in srgb, var(--accent) 16%, transparent); |
| 29 | --running: #74c7ec; |
| 30 | --good: #a6e3a1; |
| 31 | --good-soft: rgba(166, 227, 161, 0.14); |
| 32 | --bad: #f38ba8; |
| 33 | --bad-soft: rgba(243, 139, 168, 0.14); |
| 34 | --warn: #f9e2af; |
| 35 | --warn-soft: rgba(249, 226, 175, 0.14); |
| 36 | --merged: #cba6f7; |
| 37 | --merged-soft: rgba(203, 166, 247, 0.14); |
| 38 | |
| 39 | --syn-comment: #7f849c; |
| 40 | --syn-punctuation: #9399b2; |
| 41 | --syn-operator: #fab387; |
| 42 | --syn-number: #cba6f7; |
| 43 | --syn-string: #a6e3a1; |
| 44 | --syn-keyword: #f38ba8; |
| 45 | --syn-function: #89b4fa; |
| 46 | --syn-type: #f9e2af; |
| 47 | --syn-variable: #cdd6f4; |
| 48 | --syn-added: #a6e3a1; |
| 49 | --syn-deleted: #f38ba8; |
| 50 | } |
| 51 | |
| 52 | /* ---------- Catppuccin Latte ---------- */ |
| 53 | |
| 54 | :root[data-theme="catppuccin-latte"] { |
| 55 | color-scheme: light; |
| 56 | |
| 57 | --bg: #eff1f5; |
| 58 | --bg-panel: #e6e9ef; |
| 59 | --bg-raised: #ccd0da; |
| 60 | --bg-hover: #bcc0cc; |
| 61 | --bg-active: #acb0be; |
| 62 | --border: #ccd0da; |
| 63 | --border-strong: #acb0be; |
| 64 | |
| 65 | --fg: #4c4f69; |
| 66 | --fg-muted: #6c6f85; |
| 67 | --fg-faint: #8c8fa1; |
| 68 | |
| 69 | --accent: #1e66f5; |
| 70 | --accent-fg: #eff1f5; |
| 71 | --accent-soft: rgba(30, 102, 245, 0.12); |
| 72 | --running: #04a5e5; |
| 73 | --good: #40a02b; |
| 74 | --good-soft: rgba(64, 160, 43, 0.12); |
| 75 | --bad: #d20f39; |
| 76 | --bad-soft: rgba(210, 15, 57, 0.10); |
| 77 | --warn: #df8e1d; |
| 78 | --warn-soft: rgba(223, 142, 29, 0.12); |
| 79 | --merged: #8839ef; |
| 80 | --merged-soft: rgba(136, 57, 239, 0.12); |
| 81 | |
| 82 | --syn-comment: #8c8fa1; |
| 83 | --syn-punctuation: #7c7f93; |
| 84 | --syn-operator: #fe640b; |
| 85 | --syn-number: #8839ef; |
| 86 | --syn-string: #40a02b; |
| 87 | --syn-keyword: #d20f39; |
| 88 | --syn-function: #1e66f5; |
| 89 | --syn-type: #df8e1d; |
| 90 | --syn-variable: #4c4f69; |
| 91 | --syn-added: #40a02b; |
| 92 | --syn-deleted: #d20f39; |
| 93 | } |
| 94 | |
| 95 | /* ---------- Nord ---------- */ |
| 96 | |
| 97 | :root[data-theme="nord"] { |
| 98 | color-scheme: dark; |
| 99 | |
| 100 | --bg: #2e3440; |
| 101 | --bg-panel: #3b4252; |
| 102 | --bg-raised: #434c5e; |
| 103 | --bg-hover: #4c566a; |
| 104 | --bg-active: #4c566a; |
| 105 | --border: #434c5e; |
| 106 | --border-strong: #4c566a; |
| 107 | |
| 108 | --fg: #d8dee9; |
| 109 | --fg-muted: #a3adc2; |
| 110 | --fg-faint: #7b88a1; |
| 111 | |
| 112 | --accent: #88c0d0; |
| 113 | --accent-fg: #2e3440; |
| 114 | --accent-soft: color-mix(in srgb, var(--accent) 16%, transparent); |
| 115 | --running: #5e81ac; |
| 116 | --good: #a3be8c; |
| 117 | --good-soft: rgba(163, 190, 140, 0.14); |
| 118 | --bad: #bf616a; |
| 119 | --bad-soft: rgba(191, 97, 106, 0.14); |
| 120 | --warn: #ebcb8b; |
| 121 | --warn-soft: rgba(235, 203, 139, 0.14); |
| 122 | --merged: #b48ead; |
| 123 | --merged-soft: rgba(180, 142, 173, 0.14); |
| 124 | |
| 125 | --syn-comment: #7b88a1; |
| 126 | --syn-punctuation: #a3adc2; |
| 127 | --syn-operator: #d08770; |
| 128 | --syn-number: #b48ead; |
| 129 | --syn-string: #a3be8c; |
| 130 | --syn-keyword: #bf616a; |
| 131 | --syn-function: #88c0d0; |
| 132 | --syn-type: #ebcb8b; |
| 133 | --syn-variable: #d8dee9; |
| 134 | --syn-added: #a3be8c; |
| 135 | --syn-deleted: #bf616a; |
| 136 | } |
| 137 | |
| 138 | /* ---------- Solarized Light ---------- */ |
| 139 | |
| 140 | :root[data-theme="solarized-light"] { |
| 141 | color-scheme: light; |
| 142 | |
| 143 | --bg: #fdf6e3; |
| 144 | --bg-panel: #eee8d5; |
| 145 | --bg-raised: #e6dfc8; |
| 146 | --bg-hover: #ddd6c1; |
| 147 | --bg-active: #d5ceb8; |
| 148 | --border: #ddd6c1; |
| 149 | --border-strong: #c9c2ad; |
| 150 | |
| 151 | --fg: #586e75; |
| 152 | --fg-muted: #657b83; |
| 153 | --fg-faint: #93a1a1; |
| 154 | |
| 155 | --accent: #268bd2; |
| 156 | --accent-fg: #fdf6e3; |
| 157 | --accent-soft: rgba(38, 139, 210, 0.12); |
| 158 | --running: #2aa198; |
| 159 | --good: #859900; |
| 160 | --good-soft: rgba(133, 153, 0, 0.12); |
| 161 | --bad: #dc322f; |
| 162 | --bad-soft: rgba(220, 50, 47, 0.10); |
| 163 | --warn: #b58900; |
| 164 | --warn-soft: rgba(181, 137, 0, 0.12); |
| 165 | --merged: #6c71c4; |
| 166 | --merged-soft: rgba(108, 113, 196, 0.12); |
| 167 | |
| 168 | --syn-comment: #93a1a1; |
| 169 | --syn-punctuation: #657b83; |
| 170 | --syn-operator: #cb4b16; |
| 171 | --syn-number: #d33682; |
| 172 | --syn-string: #2aa198; |
| 173 | --syn-keyword: #859900; |
| 174 | --syn-function: #268bd2; |
| 175 | --syn-type: #b58900; |
| 176 | --syn-variable: #586e75; |
| 177 | --syn-added: #859900; |
| 178 | --syn-deleted: #dc322f; |
| 179 | } |
| 180 | |
| 181 | /* ---------- Rosé Pine Moon ---------- */ |
| 182 | |
| 183 | :root[data-theme="rose-pine-moon"] { |
| 184 | color-scheme: dark; |
| 185 | |
| 186 | --bg: #232136; |
| 187 | --bg-panel: #2a273f; |
| 188 | --bg-raised: #393552; |
| 189 | --bg-hover: #44415a; |
| 190 | --bg-active: #524f67; |
| 191 | --border: #393552; |
| 192 | --border-strong: #524f67; |
| 193 | |
| 194 | --fg: #e0def4; |
| 195 | --fg-muted: #908caa; |
| 196 | --fg-faint: #6e6a86; |
| 197 | |
| 198 | --accent: #c4a7e7; |
| 199 | --accent-fg: #232136; |
| 200 | --accent-soft: rgba(196, 167, 231, 0.16); |
| 201 | --running: #3e8fb0; |
| 202 | --good: #9ccfd8; |
| 203 | --good-soft: rgba(156, 207, 216, 0.14); |
| 204 | --bad: #eb6f92; |
| 205 | --bad-soft: rgba(235, 111, 146, 0.14); |
| 206 | --warn: #f6c177; |
| 207 | --warn-soft: rgba(246, 193, 119, 0.14); |
| 208 | --merged: #ea9a97; |
| 209 | --merged-soft: rgba(234, 154, 151, 0.14); |
| 210 | |
| 211 | --syn-comment: #6e6a86; |
| 212 | --syn-punctuation: #908caa; |
| 213 | --syn-operator: #ea9a97; |
| 214 | --syn-number: #f6c177; |
| 215 | --syn-string: #9ccfd8; |
| 216 | --syn-keyword: #eb6f92; |
| 217 | --syn-function: #3e8fb0; |
| 218 | --syn-type: #c4a7e7; |
| 219 | --syn-variable: #e0def4; |
| 220 | --syn-added: #9ccfd8; |
| 221 | --syn-deleted: #eb6f92; |
| 222 | } |
| 223 | |
| 224 | /* ---------- Rosé Pine Dawn ---------- */ |
| 225 | |
| 226 | :root[data-theme="rose-pine-dawn"] { |
| 227 | color-scheme: light; |
| 228 | |
| 229 | --bg: #faf4ed; |
| 230 | --bg-panel: #fffaf3; |
| 231 | --bg-raised: #f2e9e1; |
| 232 | --bg-hover: #dfdad9; |
| 233 | --bg-active: #cecacd; |
| 234 | --border: #f2e9e1; |
| 235 | --border-strong: #dfdad9; |
| 236 | |
| 237 | --fg: #464261; |
| 238 | --fg-muted: #797593; |
| 239 | --fg-faint: #9893a5; |
| 240 | |
| 241 | --accent: #907aa9; |
| 242 | --accent-fg: #faf4ed; |
| 243 | --accent-soft: rgba(144, 122, 169, 0.12); |
| 244 | --running: #56949f; |
| 245 | --good: #286983; |
| 246 | --good-soft: rgba(40, 105, 131, 0.12); |
| 247 | --bad: #b4637a; |
| 248 | --bad-soft: rgba(180, 99, 122, 0.10); |
| 249 | --warn: #ea9d34; |
| 250 | --warn-soft: rgba(234, 157, 52, 0.12); |
| 251 | --merged: #d7827e; |
| 252 | --merged-soft: rgba(215, 130, 126, 0.12); |
| 253 | |
| 254 | --syn-comment: #9893a5; |
| 255 | --syn-punctuation: #797593; |
| 256 | --syn-operator: #d7827e; |
| 257 | --syn-number: #907aa9; |
| 258 | --syn-string: #56949f; |
| 259 | --syn-keyword: #b4637a; |
| 260 | --syn-function: #286983; |
| 261 | --syn-type: #ea9d34; |
| 262 | --syn-variable: #464261; |
| 263 | --syn-added: #286983; |
| 264 | --syn-deleted: #b4637a; |
| 265 | } |
| 266 | |
| 267 | /* ---------- Kanagawa Wave ---------- */ |
| 268 | |
| 269 | :root[data-theme="kanagawa-wave"] { |
| 270 | color-scheme: dark; |
| 271 | |
| 272 | --bg: #1f1f28; |
| 273 | --bg-panel: #181820; |
| 274 | --bg-raised: #2a2a37; |
| 275 | --bg-hover: #363646; |
| 276 | --bg-active: #54546d; |
| 277 | --border: #2a2a37; |
| 278 | --border-strong: #54546d; |
| 279 | |
| 280 | --fg: #dcd7ba; |
| 281 | --fg-muted: #c8c093; |
| 282 | --fg-faint: #727169; |
| 283 | |
| 284 | --accent: #7e9cd8; |
| 285 | --accent-fg: #1f1f28; |
| 286 | --accent-soft: rgba(126, 156, 216, 0.16); |
| 287 | --running: #7fb4ca; |
| 288 | --good: #98bb6c; |
| 289 | --good-soft: rgba(152, 187, 108, 0.14); |
| 290 | --bad: #c34043; |
| 291 | --bad-soft: rgba(195, 64, 67, 0.14); |
| 292 | --warn: #dca561; |
| 293 | --warn-soft: rgba(220, 165, 97, 0.14); |
| 294 | --merged: #957fb8; |
| 295 | --merged-soft: rgba(149, 127, 184, 0.14); |
| 296 | |
| 297 | --syn-comment: #727169; |
| 298 | --syn-punctuation: #c8c093; |
| 299 | --syn-operator: #ffa066; |
| 300 | --syn-number: #d27e99; |
| 301 | --syn-string: #98bb6c; |
| 302 | --syn-keyword: #e46876; |
| 303 | --syn-function: #7e9cd8; |
| 304 | --syn-type: #e6c384; |
| 305 | --syn-variable: #dcd7ba; |
| 306 | --syn-added: #98bb6c; |
| 307 | --syn-deleted: #c34043; |
| 308 | } |
| 309 | |
| 310 | /* ---------- Dracula ---------- */ |
| 311 | |
| 312 | :root[data-theme="dracula"] { |
| 313 | color-scheme: dark; |
| 314 | |
| 315 | --bg: #282a36; |
| 316 | --bg-panel: #21222c; |
| 317 | --bg-raised: #44475a; |
| 318 | --bg-hover: #52556b; |
| 319 | --bg-active: #5f6379; |
| 320 | --border: #44475a; |
| 321 | --border-strong: #6272a4; |
| 322 | |
| 323 | --fg: #f8f8f2; |
| 324 | --fg-muted: #c5c8d6; |
| 325 | --fg-faint: #8f93b0; |
| 326 | |
| 327 | --accent: #bd93f9; |
| 328 | --accent-fg: #282a36; |
| 329 | --accent-soft: rgba(189, 147, 249, 0.16); |
| 330 | --running: #8be9fd; |
| 331 | --good: #50fa7b; |
| 332 | --good-soft: rgba(80, 250, 123, 0.14); |
| 333 | --bad: #ff5555; |
| 334 | --bad-soft: rgba(255, 85, 85, 0.14); |
| 335 | --warn: #f1fa8c; |
| 336 | --warn-soft: rgba(241, 250, 140, 0.14); |
| 337 | --merged: #ff79c6; |
| 338 | --merged-soft: rgba(255, 121, 198, 0.14); |
| 339 | |
| 340 | --syn-comment: #6272a4; |
| 341 | --syn-punctuation: #b0b3c5; |
| 342 | --syn-operator: #ff79c6; |
| 343 | --syn-number: #bd93f9; |
| 344 | --syn-string: #f1fa8c; |
| 345 | --syn-keyword: #ff79c6; |
| 346 | --syn-function: #50fa7b; |
| 347 | --syn-type: #8be9fd; |
| 348 | --syn-variable: #f8f8f2; |
| 349 | --syn-added: #50fa7b; |
| 350 | --syn-deleted: #ff5555; |
| 351 | } |
| 352 | |
| 353 | /* ---------- Tokyo Night ---------- */ |
| 354 | |
| 355 | :root[data-theme="tokyo-night"] { |
| 356 | color-scheme: dark; |
| 357 | |
| 358 | --bg: #1a1b26; |
| 359 | --bg-panel: #16161e; |
| 360 | --bg-raised: #292e42; |
| 361 | --bg-hover: #2f334d; |
| 362 | --bg-active: #363b54; |
| 363 | --border: #292e42; |
| 364 | --border-strong: #3b4261; |
| 365 | |
| 366 | --fg: #c0caf5; |
| 367 | --fg-muted: #a9b1d6; |
| 368 | --fg-faint: #565f89; |
| 369 | |
| 370 | --accent: #7aa2f7; |
| 371 | --accent-fg: #1a1b26; |
| 372 | --accent-soft: rgba(122, 162, 247, 0.16); |
| 373 | --running: #7dcfff; |
| 374 | --good: #9ece6a; |
| 375 | --good-soft: rgba(158, 206, 106, 0.14); |
| 376 | --bad: #f7768e; |
| 377 | --bad-soft: rgba(247, 118, 142, 0.14); |
| 378 | --warn: #e0af68; |
| 379 | --warn-soft: rgba(224, 175, 104, 0.14); |
| 380 | --merged: #bb9af7; |
| 381 | --merged-soft: rgba(187, 154, 247, 0.14); |
| 382 | |
| 383 | --syn-comment: #565f89; |
| 384 | --syn-punctuation: #a9b1d6; |
| 385 | --syn-operator: #89ddff; |
| 386 | --syn-number: #ff9e64; |
| 387 | --syn-string: #9ece6a; |
| 388 | --syn-keyword: #bb9af7; |
| 389 | --syn-function: #7aa2f7; |
| 390 | --syn-type: #2ac3de; |
| 391 | --syn-variable: #c0caf5; |
| 392 | --syn-added: #9ece6a; |
| 393 | --syn-deleted: #f7768e; |
| 394 | } |
| 395 | |
| 396 | /* ---------- Ayu Light ---------- */ |
| 397 | |
| 398 | :root[data-theme="ayu-light"] { |
| 399 | color-scheme: light; |
| 400 | |
| 401 | --bg: #fcfcfc; |
| 402 | --bg-panel: #f8f9fa; |
| 403 | --bg-raised: #ebeef0; |
| 404 | --bg-hover: #e1e5e8; |
| 405 | --bg-active: #d6dbdf; |
| 406 | --border: #e1e5e8; |
| 407 | --border-strong: #c9cfd4; |
| 408 | |
| 409 | --fg: #5c6773; |
| 410 | --fg-muted: #6b7d8f; |
| 411 | --fg-faint: #9aa5af; |
| 412 | |
| 413 | --accent: #d97706; |
| 414 | --accent-fg: #fcfcfc; |
| 415 | --accent-soft: rgba(217, 119, 6, 0.12); |
| 416 | --running: #22a4e6; |
| 417 | --good: #5c8a00; |
| 418 | --good-soft: rgba(92, 138, 0, 0.12); |
| 419 | --bad: #e65050; |
| 420 | --bad-soft: rgba(230, 80, 80, 0.10); |
| 421 | --warn: #b8860b; |
| 422 | --warn-soft: rgba(184, 134, 11, 0.12); |
| 423 | --merged: #a37acc; |
| 424 | --merged-soft: rgba(163, 122, 204, 0.12); |
| 425 | |
| 426 | --syn-comment: #9aa5af; |
| 427 | --syn-punctuation: #6b7d8f; |
| 428 | --syn-operator: #ed9366; |
| 429 | --syn-number: #a37acc; |
| 430 | --syn-string: #5c8a00; |
| 431 | --syn-keyword: #d97706; |
| 432 | --syn-function: #22a4e6; |
| 433 | --syn-type: #22a4e6; |
| 434 | --syn-variable: #5c6773; |
| 435 | --syn-added: #5c8a00; |
| 436 | --syn-deleted: #e65050; |
| 437 | } |
| 438 |