1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-30 13:29:56 +00:00

First pass at switchable colour palettes

Fixes #410

Still some cleaning up to do, and we need a way for incomplete palettes
to inherit from a base palette.
This commit is contained in:
Jermolene 2014-02-17 12:09:10 +00:00
parent 5e9dae8fb4
commit ca1daf5a4e
7 changed files with 320 additions and 102 deletions

80
core/palettes/Sky.tid Normal file
View File

@ -0,0 +1,80 @@
title: $:/palettes/Sky
name: Sky
description: Largely blue
tags: $:/tags/Palette
type: application/x-tiddler-dictionary
primary: #5778D8
alert-background: #ffe476
alert-border: #b99e2f
alert-highlight: #881122
alert-muted-foreground: #b99e2f
background: #f9f9ff
blockquote-bar: <<colour muted-foreground>>
code-background: #f7f7f9
code-border: #e1e1e8
code-foreground: #dd1144
download-background: #34c734
download-foreground: <<colour foreground>>
dragger-background: <<colour foreground>>
dragger-foreground: <<colour background>>
dropdown-background: <<colour background>>
dropdown-border: <<colour muted-foreground>>
dropdown-tab-background-selected: #fff
dropdown-tab-background: #ececec
dropzone-background: rgba(0,200,0,0.7)
foreground: #333353
message-background: #ecf2ff
message-border: #cfd6e6
message-foreground: #547599
modal-backdrop: <<colour foreground>>
modal-background: <<colour background>>
modal-border: #999999
modal-footer-background: #f5f5f5
modal-footer-border: #dddddd
modal-header-border: #eeeeee
muted-foreground: #999999
notification-background: #ffffdd
notification-border: #999999
page-background: #ececfc
pre-background: #f5f5f5
pre-border: #cccccc
primary: #5778d8
sidebar-controls-foreground-hover: #000000
sidebar-controls-foreground: #ffffff
sidebar-foreground: #acacac
sidebar-muted-foreground-hover: #444444
sidebar-muted-foreground: #c0c0c0
sidebar-tab-background-selected: #ececec
sidebar-tiddler-link-foreground-hover: #444444
sidebar-tiddler-link-foreground: #999999
static-alert-foreground: #aaaaaa
tab-background-selected: #ffffff
tab-background: #d8d8d8
tab-border-selected: #d8d8d8
tab-border: #cccccc
tab-divider: #d8d8d8
tab-foreground: #666666
table-border: #dddddd
table-footer-background: #a8a8a8
table-header-background: #f0f0f0
tag-background: #d5ad34
tag-foreground: #ffffff
tiddler-background: <<colour background>>
tiddler-controls-foreground-hover: #888888
tiddler-controls-foreground-selected: #444444
tiddler-controls-foreground: #cccccc
tiddler-editor-background: #f8f8f8
tiddler-editor-border-image: #ffffff
tiddler-editor-border: #cccccc
tiddler-editor-fields-even: #e0e8e0
tiddler-editor-fields-odd: #f0f4f0
tiddler-info-background: #f8f8f8
tiddler-info-border: #dddddd
tiddler-info-tab-background: #f8f8f8
tiddler-link-background: <<colour background>>
tiddler-link-foreground: <<colour primary>>
tiddler-subtitle-foreground: #c0c0c0
tiddler-title-foreground: #182955
untagged-background: #999999
very-muted-foreground: #888888

79
core/palettes/Vanilla.tid Normal file
View File

@ -0,0 +1,79 @@
title: $:/palettes/Vanilla
name: Vanilla
description: Pale and unobtrusive
tags: $:/tags/Palette
type: application/x-tiddler-dictionary
alert-background: #ffe476
alert-border: #b99e2f
alert-highlight: #881122
alert-muted-foreground: #b99e2f
background: #ffffff
blockquote-bar: <<colour muted-foreground>>
code-background: #f7f7f9
code-border: #e1e1e8
code-foreground: #dd1144
download-background: #34c734
download-foreground: <<colour background>>
dragger-background: <<colour foreground>>
dragger-foreground: <<colour background>>
dropdown-background: <<colour background>>
dropdown-border: <<colour muted-foreground>>
dropdown-tab-background-selected: #fff
dropdown-tab-background: #ececec
dropzone-background: rgba(0,200,0,0.7)
foreground: #333333
message-background: #ecf2ff
message-border: #cfd6e6
message-foreground: #547599
modal-backdrop: <<colour foreground>>
modal-background: <<colour background>>
modal-border: #999999
modal-footer-background: #f5f5f5
modal-footer-border: #dddddd
modal-header-border: #eeeeee
muted-foreground: #999999
notification-background: #ffffdd
notification-border: #999999
page-background: #ececec
pre-background: #f5f5f5
pre-border: #cccccc
primary: #5778d8
sidebar-controls-foreground-hover: #000000
sidebar-controls-foreground: #ffffff
sidebar-foreground: #acacac
sidebar-muted-foreground-hover: #444444
sidebar-muted-foreground: #c0c0c0
sidebar-tab-background-selected: #ececec
sidebar-tiddler-link-foreground-hover: #444444
sidebar-tiddler-link-foreground: #999999
static-alert-foreground: #aaaaaa
tab-background-selected: #ffffff
tab-background: #d8d8d8
tab-border-selected: #d8d8d8
tab-border: #cccccc
tab-divider: #d8d8d8
tab-foreground: #666666
table-border: #dddddd
table-footer-background: #a8a8a8
table-header-background: #f0f0f0
tag-background: #d5ad34
tag-foreground: #ffffff
tiddler-background: <<colour background>>
tiddler-controls-foreground-hover: #888888
tiddler-controls-foreground-selected: #444444
tiddler-controls-foreground: #cccccc
tiddler-editor-background: #f8f8f8
tiddler-editor-border-image: #ffffff
tiddler-editor-border: #cccccc
tiddler-editor-fields-even: #e0e8e0
tiddler-editor-fields-odd: #f0f4f0
tiddler-info-background: #f8f8f8
tiddler-info-border: #dddddd
tiddler-info-tab-background: #f8f8f8
tiddler-link-background: <<colour background>>
tiddler-link-foreground: <<colour primary>>
tiddler-subtitle-foreground: #c0c0c0
tiddler-title-foreground: #182955
untagged-background: #999999
very-muted-foreground: #888888

View File

@ -0,0 +1,5 @@
title: $:/core/ui/ControlPanel/Appearance/Palette
tags: $:/tags/ControlPanel/Appearance
caption: {{$:/language/ControlPanel/Appearance/Palette/Caption}}
{{$:/snippets/paletteswitcher}}

3
core/wiki/palette.tid Normal file
View File

@ -0,0 +1,3 @@
title: $:/palette
$:/palettes/Vanilla

View File

@ -0,0 +1,9 @@
title: $:/snippets/paletteswitcher
\define lingo-base() $:/language/ControlPanel/Appearance/Palette/
<<lingo Prompt>> <$view tiddler={{$:/palette}} field="name"/>
<$linkcatcher to="$:/palette">
<$list filter="[is[shadow]tag[$:/tags/Palette]] [!is[shadow]tag[$:/tags/Palette]] +[sort[description]]"><div><$reveal state="$:/palette" type="match" text={{!!title}}>&bull;</$reveal><$reveal state="$:/palette" type="nomatch" text={{!!title}}>&nbsp;</$reveal> <$link to={{!!title}}>''<$view field="name" format="text"/>'' - <$view field="description" format="text"/></$link></div>
</$list>
</$linkcatcher>

View File

@ -0,0 +1,43 @@
created: 20140216102454178
modified: 20140216102722184
tags: concepts
title: ColourPalettes
type: text/vnd.tiddlywiki
Colour palettes bind logical colour names (such as ''page-background'') to actual CSS colours (such as ''#fe0'').
Entire colour palettes are stored in a single [[data tiddler|DataTiddlers]].
The title of the tiddler containing the current colour palette is identified by the tiddler [[$:/palette]].
To retrieve a named colour from the current palette you can use the ''colour'' macro:
```
<<colour page-background>>
```
The ''colour'' macro is defined like this:
```
\define colour(name)
<$transclude tiddler={{$:/palette}} index="$name$"/>
\end
```
By convention, each theme provides a default colour palette in the tiddler [[$:/config/DefaultPalette]] tiddler. Thus, setting the tiddler [[$:/theme]] to the string `$:/config/DefaultPalette` will revert to the palette packaged with the current theme (as long as it hasn't been redefined, since it is a shadow tiddler).
Palette tiddlers should have the following fields:
|!Field |!Description |
|title |Any title can be used, typically a system title starting with "$:/" |
|type |`application/x-tiddler-dictionary` to identify this tiddler as a [[data tiddler|DataTiddlers]] |
|tags |`$:/tags/Palette` to identify this tiddler as a palette |
|description |Description to be displayed in palette browser |
|text |Colour definitions (see below) |
The text of a palette tiddler consists of name value pairs like this:
```
foreground: #000
background: #fff
```

View File

@ -2,6 +2,9 @@ title: $:/themes/tiddlywiki/vanilla/base
tags: [[$:/tags/stylesheet]] tags: [[$:/tags/stylesheet]]
\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline \rules only filteredtranscludeinline transcludeinline macrodef macrocallinline
\define colour(name)
<$transclude tiddler={{$:/palette}} index="$name$"/>
\end
\define border-radius(radius) \define border-radius(radius)
``` ```
-webkit-border-radius: $radius$; -webkit-border-radius: $radius$;
@ -33,8 +36,8 @@ html {
body.tw-body { body.tw-body {
font-size: {{$:/themes/tiddlywiki/vanilla/metrics##fontsize}}; font-size: {{$:/themes/tiddlywiki/vanilla/metrics##fontsize}};
line-height: {{$:/themes/tiddlywiki/vanilla/metrics##lineheight}}; line-height: {{$:/themes/tiddlywiki/vanilla/metrics##lineheight}};
color: {{$:/themes/tiddlywiki/vanilla/colourmappings##foreground}}; color: <<colour foreground>>;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##pagebackground}}; background-color: <<colour page-background>>;
word-wrap: break-word; word-wrap: break-word;
} }
@ -51,23 +54,23 @@ pre {
word-wrap: break-word; word-wrap: break-word;
white-space: pre; white-space: pre;
white-space: pre-wrap; white-space: pre-wrap;
background-color: #f5f5f5; background-color: <<colour pre-background>>;
border: 1px solid #ccc; border: 1px solid <<colour pre-border>>;
padding: 0 3px 2px; padding: 0 3px 2px;
<<border-radius 3px>> <<border-radius 3px>>
} }
code { code {
color: #d14; color: <<colour code-foreground>>;
background-color: #f7f7f9; background-color: <<colour code-background>>;
border: 1px solid #e1e1e8; border: 1px solid <<colour code-border>>;
white-space: pre-wrap; white-space: pre-wrap;
padding: 0 3px 2px; padding: 0 3px 2px;
<<border-radius 3px>> <<border-radius 3px>>
} }
blockquote { blockquote {
border-left: 5px solid #ddd; border-left: 5px solid <<colour blockquote-bar>>;
margin-left: 25px; margin-left: 25px;
padding-left: 10px; padding-left: 10px;
} }
@ -88,7 +91,7 @@ pre > code {
} }
table { table {
border: 1px solid #ddd; border: 1px solid <<colour table-border>>;
width: auto; width: auto;
max-width: 100%; max-width: 100%;
caption-side: bottom; caption-side: bottom;
@ -96,17 +99,17 @@ table {
table th, table td { table th, table td {
padding: 0 7px 0 7px; padding: 0 7px 0 7px;
border-top: 1px solid #ddd; border-top: 1px solid <<colour table-border>>;
border-left: 1px solid #ddd; border-left: 1px solid <<colour table-border>>;
} }
table thead tr td, table th { table thead tr td, table th {
background-color: #f0f0f0; background-color: <<colour table-header-background>>;
font-weight: bold; font-weight: bold;
} }
table tfoot tr td { table tfoot tr td {
background-color: #a8a8a8; background-color: <<colour table-footer-background>>;
} }
.tw-tiddler-frame img, .tw-tiddler-frame svg, .tw-tiddler-frame canvas, .tw-tiddler-frame embed { .tw-tiddler-frame img, .tw-tiddler-frame svg, .tw-tiddler-frame canvas, .tw-tiddler-frame embed {
@ -125,16 +128,16 @@ table tfoot tr td {
a.tw-tiddlylink { a.tw-tiddlylink {
text-decoration: none; text-decoration: none;
font-weight: normal; font-weight: normal;
color: {{$:/themes/tiddlywiki/vanilla/colourmappings##linkforeground}}; color: <<colour tiddler-link-foreground>>;
-webkit-user-select: inherit; /* Otherwise the draggable attribute makes links impossible to select */ -webkit-user-select: inherit; /* Otherwise the draggable attribute makes links impossible to select */
} }
.tw-sidebar-lists a.tw-tiddlylink { .tw-sidebar-lists a.tw-tiddlylink {
color: #999; color: <<colour sidebar-tiddler-link-foreground>>;
} }
.tw-sidebar-lists a.tw-tiddlylink:hover { .tw-sidebar-lists a.tw-tiddlylink:hover {
color: #444; color: <<colour sidebar-tiddler-link-foreground-hover>>;
} }
a.tw-tiddlylink:hover { a.tw-tiddlylink:hover {
@ -176,17 +179,17 @@ a.tw-tiddlylink-external {
font-size: 16.9px; font-size: 16.9px;
font-weight: bold; font-weight: bold;
line-height: 20px; line-height: 20px;
color: #fff; color: <<colour dragger-foreground>>;
text-shadow: 0 1px 0 rgba(0, 0, 0, 1); text-shadow: 0 1px 0 rgba(0, 0, 0, 1);
white-space: nowrap; white-space: nowrap;
vertical-align: baseline; vertical-align: baseline;
background-color: #000; background-color: <<colour dragger-background>>;
<<border-radius 20px>> <<border-radius 20px>>
} }
.tw-tiddler-dragger-cover { .tw-tiddler-dragger-cover {
position: absolute; position: absolute;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##pagebackground}}; background-color: <<colour page-background>>;
} }
.tw-dropzone { .tw-dropzone {
@ -200,7 +203,7 @@ a.tw-tiddlylink-external {
top: 0; top: 0;
left: 0; left: 0;
right: 0; right: 0;
background: rgba(0,200,0,0.7); background: <<colour dropzone-background>>;
text-align: center; text-align: center;
content: "Drop here"; content: "Drop here";
} }
@ -219,26 +222,26 @@ a.tw-tiddlylink-external {
.btn-icon svg { .btn-icon svg {
height: 1em; height: 1em;
width: 1em; width: 1em;
fill: #999; fill: <<colour muted-foreground>>;
} }
.btn-big-green { .btn-big-green {
padding: 8px; padding: 8px;
margin: 4px 8px 4px 8px; margin: 4px 8px 4px 8px;
background: #34C734; background: <<colour download-background>>;
color: #fff; color: <<colour download-foreground>>;
fill: #fff; fill: <<colour download-foreground>>;
border: none; border: none;
font-size: 1.2em; font-size: 1.2em;
line-height: 1.4em; line-height: 1.4em;
} }
.btn-mini { .btn-mini {
color: #c0c0c0; color: <<colour sidebar-muted-foreground>>;
} }
.btn-mini:hover { .btn-mini:hover {
color: #444; color: <<colour sidebar-muted-foreground-hover>>;
} }
.tw-image-button { .tw-image-button {
@ -275,21 +278,21 @@ a.tw-tiddlylink-external {
font-size: 0.9em; font-size: 0.9em;
font-weight: 300; font-weight: 300;
line-height: 1.2em; line-height: 1.2em;
color: #fff; color: <<colour tag-foreground>>;
white-space: nowrap; white-space: nowrap;
vertical-align: baseline; vertical-align: baseline;
background-color: #D5AD34; background-color: <<colour tag-background>>;
<<border-radius 8px>> <<border-radius 8px>>
} }
.tw-untagged-label { .tw-untagged-label {
background-color: #999; background-color: <<colour untagged-background>>;
} }
.tw-tag-label svg { .tw-tag-label svg {
height: 1em; height: 1em;
width: 1em; width: 1em;
fill: #fff; fill: <<colour tag-foreground>>;
} }
/* /*
@ -297,7 +300,7 @@ a.tw-tiddlylink-external {
*/ */
.sidebar-header { .sidebar-header {
color: #acacac; color: <<colour sidebar-foreground>>;
} }
.sidebar-header .title a.tw-tiddlylink-resolves { .sidebar-header .title a.tw-tiddlylink-resolves {
@ -329,11 +332,11 @@ a.tw-tiddlylink-external {
height: 1.75em; height: 1.75em;
min-width: 1px; min-width: 1px;
padding-right: 0.5em; padding-right: 0.5em;
fill: #fff; fill: <<colour sidebar-controls-foreground>>;
} }
.tw-page-controls button:hover svg, .tw-page-controls a:hover svg { .tw-page-controls button:hover svg, .tw-page-controls a:hover svg {
fill: #000; fill: <<colour sidebar-controls-foreground-hover>;
} }
.tw-menu-list-item { .tw-menu-list-item {
@ -411,19 +414,19 @@ a.tw-tiddlylink-external {
.tw-tiddler-frame { .tw-tiddler-frame {
margin-bottom: 28px; margin-bottom: 28px;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##tiddlerbackground}}; background-color: <<colour tiddler-background>>;
} }
.tw-tiddler-info { .tw-tiddler-info {
padding: 14px 42px 14px 42px; padding: 14px 42px 14px 42px;
background-color: #f8f8f8; background-color: <<colour tiddler-info-background>>;
border-top: 1px solid #ddd; border-top: 1px solid <<colour tiddler-info-border>>;
border-bottom: 1px solid #ddd; border-bottom: 1px solid <<colour tiddler-info-border>>;
} }
.tw-tiddler-info .tw-tab-buttons button.tw-tab-selected { .tw-tiddler-info .tw-tab-buttons button.tw-tab-selected {
background-color: #f8f8f8; background-color: <<colour tiddler-info-tab-background>>;
border-bottom: 1px solid #f8f8f8; border-bottom: 1px solid <<colour tiddler-info-tab-background>>;
} }
.tw-view-field-table { .tw-view-field-table {
@ -464,7 +467,7 @@ a.tw-tiddlylink-external {
font-weight: 300; font-weight: 300;
font-size: 2.35em; font-size: 2.35em;
line-height: 1.2em; line-height: 1.2em;
color: #182955; color: <<colour tiddler-title-foreground>>;
} }
.titlebar img { .titlebar img {
@ -473,7 +476,7 @@ a.tw-tiddlylink-external {
.tw-subtitle { .tw-subtitle {
font-size: 0.9em; font-size: 0.9em;
color: #c0c0c0; color: <<colour tiddler-subtitle-foreground>>;
font-weight: 300; font-weight: 300;
} }
@ -493,15 +496,15 @@ a.tw-tiddlylink-external {
.tw-tiddler-controls button svg { .tw-tiddler-controls button svg {
height: 0.75em; height: 0.75em;
fill: #ccc; fill: <<colour tiddler-controls-foreground>>;
} }
.tw-tiddler-controls button.tw-selected svg { .tw-tiddler-controls button.tw-selected svg {
fill: #444; fill: <<colour tiddler-controls-foreground-selected>>;
} }
.tw-tiddler-controls button:hover svg { .tw-tiddler-controls button:hover svg {
fill: #888; fill: <<colour tiddler-controls-foreground-hover>>;
} }
@media print { @media print {
@ -511,29 +514,29 @@ a.tw-tiddlylink-external {
} }
.tw-tiddler-help { /* Help prompts within tiddler template */ .tw-tiddler-help { /* Help prompts within tiddler template */
color: #999; color: <<colour muted-foreground>>;
margin-top: 14px; margin-top: 14px;
} }
.tw-tiddler-help a.tw-tiddlylink { .tw-tiddler-help a.tw-tiddlylink {
color: #888888; color: <<colour very-muted-foreground>>;
} }
.tw-tiddler-frame input.tw-edit-texteditor, .tw-tiddler-frame textarea.tw-edit-texteditor { .tw-tiddler-frame input.tw-edit-texteditor, .tw-tiddler-frame textarea.tw-edit-texteditor {
width: 100%; width: 100%;
padding: 3px 3px 3px 3px; padding: 3px 3px 3px 3px;
border: 1px solid #ccc; border: 1px solid <<colour tiddler-editor-border>>;
line-height: 1.3em; line-height: 1.3em;
-webkit-appearance: none; -webkit-appearance: none;
margin: 4px 0 4px 0; margin: 4px 0 4px 0;
} }
.tw-tiddler-frame input.tw-edit-texteditor { .tw-tiddler-frame input.tw-edit-texteditor {
background-color: #f8f8f8; background-color: <<colour tiddler-editor-background>>;
} }
canvas.tw-edit-bitmapeditor { canvas.tw-edit-bitmapeditor {
border: 6px solid #fff; border: 6px solid <<colour tiddler-editor-border-image>>;
cursor: crosshair; cursor: crosshair;
-moz-user-select: none; -moz-user-select: none;
-webkit-user-select: none; -webkit-user-select: none;
@ -555,7 +558,7 @@ canvas.tw-edit-bitmapeditor {
*/ */
.tw-tiddler-edit-frame em.tw-edit { .tw-tiddler-edit-frame em.tw-edit {
color: #999; color: <<colour muted-foreground>>;
font-style: normal; font-style: normal;
} }
@ -564,7 +567,7 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-edit-tags { .tw-edit-tags {
border: 1px solid #ddd; border: 1px solid <<colour tiddler-editor-border>>;
padding: 4px 8px 4px 8px; padding: 4px 8px 4px 8px;
} }
@ -600,7 +603,7 @@ canvas.tw-edit-bitmapeditor {
.tw-tiddler-preview-preview { .tw-tiddler-preview-preview {
float: right; float: right;
width: 48%; width: 48%;
border: 1px solid #ccc; border: 1px solid <<colour tiddler-editor-border>>;
margin: 4px 3px 3px 3px; margin: 4px 3px 3px 3px;
padding: 3px 3px 3px 3px; padding: 3px 3px 3px 3px;
} }
@ -620,11 +623,11 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-edit-fields > tbody > .tw-edit-field:nth-child(odd) { .tw-edit-fields > tbody > .tw-edit-field:nth-child(odd) {
background-color: #f0f4f0; background-color: <<colour tiddler-editor-fields-odd>>;
} }
.tw-edit-fields > tbody > .tw-edit-field:nth-child(even) { .tw-edit-fields > tbody > .tw-edit-field:nth-child(even) {
background-color: #e0e8e0; background-color: <<colour tiddler-editor-fields-even>>;
} }
.tw-edit-field-name { .tw-edit-field-name {
@ -641,7 +644,7 @@ canvas.tw-edit-bitmapeditor {
.tw-edit-field-remove svg { .tw-edit-field-remove svg {
height: 1em; height: 1em;
width: 1em; width: 1em;
fill: #888; fill: <<colour muted-foreground>>;
vertical-align: middle; vertical-align: middle;
} }
@ -662,13 +665,13 @@ canvas.tw-edit-bitmapeditor {
.btn-dropdown svg { .btn-dropdown svg {
height: 1em; height: 1em;
width: 1em; width: 1em;
fill: #999; fill: <<colour muted-foreground>>;
} }
.tw-drop-down { .tw-drop-down {
min-width: 280px; min-width: 280px;
border: 1px solid {{$:/themes/tiddlywiki/vanilla/colourmappings##dropdownborder}}; border: 1px solid <<colour dropdown-border>>;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##dropdownbackground}}; background-color: <<colour dropdown-background>>;
padding: 7px 0 7px 0; padding: 7px 0 7px 0;
margin: 4px 0 0 0; margin: 4px 0 0 0;
white-space: nowrap; white-space: nowrap;
@ -684,18 +687,18 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-drop-down a:hover { .tw-drop-down a:hover {
color: {{$:/themes/tiddlywiki/vanilla/colourmappings##linkbackground}}; color: <<colour tiddler-link-background>>;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##linkforeground}}; background-color: <<colour tiddler-link-foreground>>;
text-decoration: none; text-decoration: none;
} }
.tw-drop-down .tw-tab-buttons button { .tw-drop-down .tw-tab-buttons button {
background-color: #ececec; background-color: <<colour dropdown-tab-background>>;
} }
.tw-drop-down .tw-tab-buttons button.tw-tab-selected { .tw-drop-down .tw-tab-buttons button.tw-tab-selected {
background-color: #fff; background-color: <<colour dropdown-tab-background-selected>>;
border-bottom: 1px solid #fff; border-bottom: 1px solid <<colour dropdown-tab-background-selected>>;
} }
.tw-drop-down .tw-tab-contents a { .tw-drop-down .tw-tab-contents a {
@ -709,8 +712,8 @@ canvas.tw-edit-bitmapeditor {
.tw-block-dropdown { .tw-block-dropdown {
position: absolute; position: absolute;
min-width: 280px; min-width: 280px;
border: 1px solid {{$:/themes/tiddlywiki/vanilla/colourmappings##dropdownborder}}; border: 1px solid <<colour dropdown-border>>;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##dropdownbackground}}; background-color: <<colour dropdown-background>>;
padding: 0 0 0 0; padding: 0 0 0 0;
margin: 4px 0 0 0; margin: 4px 0 0 0;
white-space: nowrap; white-space: nowrap;
@ -723,8 +726,8 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-block-dropdown a:hover { .tw-block-dropdown a:hover {
color: {{$:/themes/tiddlywiki/vanilla/colourmappings##linkbackground}}; color: <<colour tiddler-link-background>>;
background-color: {{$:/themes/tiddlywiki/vanilla/colourmappings##linkforeground}}; background-color: <<colour tiddler-link-foreground>>;
text-decoration: none; text-decoration: none;
} }
@ -739,14 +742,13 @@ canvas.tw-edit-bitmapeditor {
bottom: 0; bottom: 0;
left: 0; left: 0;
z-index: 1000; z-index: 1000;
background-color: #000; background-color: <<colour modal-backdrop>>;
} }
.modal { .modal {
z-index: 1100; z-index: 1100;
background-color: #fff; background-color: <<colour modal-background>>;
border: 1px solid #999; border: 1px solid <<colour modal-border>>;
border: 1px solid rgba(0,0,0,.3);
} }
@media (max-width: 55em) { @media (max-width: 55em) {
@ -775,7 +777,7 @@ canvas.tw-edit-bitmapeditor {
.modal-header { .modal-header {
padding: 9px 15px; padding: 9px 15px;
border-bottom: 1px solid #eee; border-bottom: 1px solid <<colour modal-header-border>>;
} }
.modal-header h3 { .modal-header h3 {
@ -791,8 +793,8 @@ canvas.tw-edit-bitmapeditor {
padding: 14px 15px 15px; padding: 14px 15px 15px;
margin-bottom: 0; margin-bottom: 0;
text-align: right; text-align: right;
background-color: #f5f5f5; background-color: <<colour modal-footer-background>>;
border-top: 1px solid #ddd; border-top: 1px solid <<colour modal-footer-border>>;
} }
/* /*
@ -806,9 +808,8 @@ canvas.tw-edit-bitmapeditor {
z-index: 1000; z-index: 1000;
max-width: 280px; max-width: 280px;
padding: 0 14px 0 14px; padding: 0 14px 0 14px;
background-color: #ffd; background-color: <<colour notification-background>>;
border: 1px solid #999; border: 1px solid <<colour notification-border>>;
border: 1px solid rgba(0,0,0,.3);
} }
/* /*
@ -826,7 +827,7 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-tab-buttons button { .tw-tab-buttons button {
color: #666; color: <<colour tab-foreground>>;
margin-left: 2px; margin-left: 2px;
margin-right: 2px; margin-right: 2px;
font-weight: 300; font-weight: 300;
@ -835,22 +836,22 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-tab-buttons button.tw-tab-selected { .tw-tab-buttons button.tw-tab-selected {
background-color: #fff; background-color: <<colour tab-background-selected>>;
border-left: 1px solid #d8d8d8; border-left: 1px solid <<colour tab-border-selected>>;
border-top: 1px solid #d8d8d8; border-top: 1px solid <<colour tab-border-selected>>;
border-right: 1px solid #d8d8d8; border-right: 1px solid <<colour tab-border-selected>>;
margin-bottom: -1px; margin-bottom: -1px;
} }
.tw-tab-buttons button:not(.tw-tab-selected) { .tw-tab-buttons button:not(.tw-tab-selected) {
background-color: #d8d8d8; background-color: <<colour tab-background>>;
border-left: 1px solid #ccc; border-left: 1px solid <<colour tab-border>>;
border-top: 1px solid #ccc; border-top: 1px solid <<colour tab-border>>;
border-right: 1px solid #ccc; border-right: 1px solid <<colour tab-border>>;
} }
.tw-tab-divider { .tw-tab-divider {
border-top: 1px solid #d8d8d8; border-top: 1px solid <<colour tab-divider>>;
} }
.tw-tab-content { .tw-tab-content {
@ -858,8 +859,8 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-sidebar-lists .tw-tab-buttons button.tw-tab-selected { .tw-sidebar-lists .tw-tab-buttons button.tw-tab-selected {
background-color: #ececec; background-color: <<colour sidebar-tab-background-selected>>;
border-bottom: 1px solid #ececec; border-bottom: 1px solid <<colour sidebar-tab-background-selected>>;
} }
.tw-sidebar-lists .tw-tab-divider { .tw-sidebar-lists .tw-tab-divider {
@ -904,8 +905,7 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-more-sidebar .tw-tab-buttons button { .tw-more-sidebar .tw-tab-buttons button {
background-color: #ececec; background-color: <<colour sidebar-tab-background>>;
<<background-linear-gradient "left, rgb(236,236,236) 0%, rgb(224,224,224) 100%">>
border-top: none; border-top: none;
border-left: none; border-left: none;
border-bottom: none; border-bottom: none;
@ -913,8 +913,7 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-more-sidebar .tw-tab-buttons button.tw-tab-selected { .tw-more-sidebar .tw-tab-buttons button.tw-tab-selected {
background-color: #fff; background-color: <<colour sidebar-tab-background-selected>>;
<<background-linear-gradient "left, rgb(236,236,236) 0%, rgb(248,248,248) 100%">>
border: none; border: none;
} }
@ -934,8 +933,8 @@ canvas.tw-edit-bitmapeditor {
position: relative; position: relative;
margin: 28px; margin: 28px;
padding: 14px 14px 14px 14px; padding: 14px 14px 14px 14px;
border: 2px solid #B99E2F; border: 2px solid <<colour alert-border>>;
background-color: rgb(255, 228, 118); background-color: <<colour alert-background>>;
} }
.tw-alert-toolbar { .tw-alert-toolbar {
@ -945,16 +944,16 @@ canvas.tw-edit-bitmapeditor {
} }
.tw-alert-toolbar svg { .tw-alert-toolbar svg {
fill: #B99E2F; fill: <<colour alert-muted-foreground>>;
} }
.tw-alert-subtitle { .tw-alert-subtitle {
color: #B99E2F; color: <<colour alert-muted-foreground>>;
font-weight: bold; font-weight: bold;
} }
.tw-alert-highlight { .tw-alert-highlight {
color: #812; color: <<colour alert-highlight>>;
} }
.tw-static-alert { .tw-static-alert {
@ -963,7 +962,7 @@ canvas.tw-edit-bitmapeditor {
.tw-static-alert-inner { .tw-static-alert-inner {
padding: 0 2px 2px 42px; padding: 0 2px 2px 42px;
color: #AAA; color: <<colour static-alert-foreground>>;
position: absolute; position: absolute;
} }
@ -993,13 +992,13 @@ canvas.tw-edit-bitmapeditor {
*/ */
.tw-message-box { .tw-message-box {
border: 1px solid #CFD6E6; border: 1px solid <<colour message-border>>;
background: #ECF2FF; background: <<colour message-background>>;
padding: 0px 21px 0px 21px; padding: 0px 21px 0px 21px;
margin: 0 -21px 0 -21px; margin: 0 -21px 0 -21px;
font-size: 12px; font-size: 12px;
line-height: 18px; line-height: 18px;
color: #547599; color: <<colour message-foreground>>;
} }
.tw-message-box img { .tw-message-box img {