clio.css 0.1.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +20 -4
- package/EVIDENCE.md +113 -45
- package/README.md +56 -25
- package/THIRD-PARTY.md +61 -10
- package/dist/art/drawingboard/alert-bl.png +0 -0
- package/dist/art/drawingboard/alert-bottom.png +0 -0
- package/dist/art/drawingboard/alert-br.png +0 -0
- package/dist/art/drawingboard/alert-left.png +0 -0
- package/dist/art/drawingboard/alert-right.png +0 -0
- package/dist/art/drawingboard/alert-tl.png +0 -0
- package/dist/art/drawingboard/alert-top.png +0 -0
- package/dist/art/drawingboard/alert-tr.png +0 -0
- package/dist/art/drawingboard/menu-corner-bl.png +0 -0
- package/dist/art/drawingboard/menu-corner-br.png +0 -0
- package/dist/art/drawingboard/menu-corner-tr.png +0 -0
- package/dist/art/drawingboard/menu-foot.png +0 -0
- package/dist/art/drawingboard/menu-left.png +0 -0
- package/dist/art/drawingboard/menu-paper.png +0 -0
- package/dist/art/drawingboard/menu-right.png +0 -0
- package/dist/art/drawingboard/menu-separator.png +0 -0
- package/dist/art/drawingboard/menu-shade-foot.png +0 -0
- package/dist/art/drawingboard/menu-shade-right.png +0 -0
- package/dist/art/drawingboard/menu-top.png +0 -0
- package/dist/art/drawingboard/menubar.png +0 -0
- package/dist/art/drawingboard/modal-bl.png +0 -0
- package/dist/art/drawingboard/modal-bottom.png +0 -0
- package/dist/art/drawingboard/modal-br.png +0 -0
- package/dist/art/drawingboard/modal-left.png +0 -0
- package/dist/art/drawingboard/modal-right.png +0 -0
- package/dist/art/drawingboard/modal-tl.png +0 -0
- package/dist/art/drawingboard/modal-top.png +0 -0
- package/dist/art/drawingboard/modal-tr.png +0 -0
- package/dist/art/drawingboard/paper.png +0 -0
- package/dist/art/drawingboard/parts/btn-bl.png +0 -0
- package/dist/art/drawingboard/parts/btn-br-held.png +0 -0
- package/dist/art/drawingboard/parts/btn-br.png +0 -0
- package/dist/art/drawingboard/parts/btn-tl.png +0 -0
- package/dist/art/drawingboard/parts/btn-tr.png +0 -0
- package/dist/art/drawingboard/parts/button-corner.png +0 -0
- package/dist/art/drawingboard/parts/check-disabled.png +0 -0
- package/dist/art/drawingboard/parts/check-mixed.png +0 -0
- package/dist/art/drawingboard/parts/check-on-disabled.png +0 -0
- package/dist/art/drawingboard/parts/check-on-pressed.png +0 -0
- package/dist/art/drawingboard/parts/check-on.png +0 -0
- package/dist/art/drawingboard/parts/check-pressed.png +0 -0
- package/dist/art/drawingboard/parts/check.png +0 -0
- package/dist/art/drawingboard/parts/close-on.png +0 -0
- package/dist/art/drawingboard/parts/close.png +0 -0
- package/dist/art/drawingboard/parts/collapse-on.png +0 -0
- package/dist/art/drawingboard/parts/collapse.png +0 -0
- package/dist/art/drawingboard/parts/def-bl.png +0 -0
- package/dist/art/drawingboard/parts/def-br.png +0 -0
- package/dist/art/drawingboard/parts/def-tl.png +0 -0
- package/dist/art/drawingboard/parts/def-tr.png +0 -0
- package/dist/art/drawingboard/parts/down-off.png +0 -0
- package/dist/art/drawingboard/parts/down-on.png +0 -0
- package/dist/art/drawingboard/parts/down.png +0 -0
- package/dist/art/drawingboard/parts/grow.png +0 -0
- package/dist/art/drawingboard/parts/left-off.png +0 -0
- package/dist/art/drawingboard/parts/left-on.png +0 -0
- package/dist/art/drawingboard/parts/left.png +0 -0
- package/dist/art/drawingboard/parts/menu-underline-left.png +0 -0
- package/dist/art/drawingboard/parts/menu-underline-right.png +0 -0
- package/dist/art/drawingboard/parts/menu-underline.png +0 -0
- package/dist/art/drawingboard/parts/popup-arrow-off.png +0 -0
- package/dist/art/drawingboard/parts/popup-arrow.png +0 -0
- package/dist/art/drawingboard/parts/popup-corner-off.png +0 -0
- package/dist/art/drawingboard/parts/popup-corner.png +0 -0
- package/dist/art/drawingboard/parts/progress-arrows.png +0 -0
- package/dist/art/drawingboard/parts/radio-disabled.png +0 -0
- package/dist/art/drawingboard/parts/radio-on-disabled.png +0 -0
- package/dist/art/drawingboard/parts/radio-on-pressed.png +0 -0
- package/dist/art/drawingboard/parts/radio-on.png +0 -0
- package/dist/art/drawingboard/parts/radio.png +0 -0
- package/dist/art/drawingboard/parts/right-off.png +0 -0
- package/dist/art/drawingboard/parts/right-on.png +0 -0
- package/dist/art/drawingboard/parts/right.png +0 -0
- package/dist/art/drawingboard/parts/submenu.png +0 -0
- package/dist/art/drawingboard/parts/tab-pressed.png +0 -0
- package/dist/art/drawingboard/parts/tab-selected.png +0 -0
- package/dist/art/drawingboard/parts/tab.png +0 -0
- package/dist/art/drawingboard/parts/thumb-bottom.png +0 -0
- package/dist/art/drawingboard/parts/thumb-hgrip.png +0 -0
- package/dist/art/drawingboard/parts/thumb-hstretch.png +0 -0
- package/dist/art/drawingboard/parts/thumb-left.png +0 -0
- package/dist/art/drawingboard/parts/thumb-right.png +0 -0
- package/dist/art/drawingboard/parts/thumb-top.png +0 -0
- package/dist/art/drawingboard/parts/thumb-vgrip.png +0 -0
- package/dist/art/drawingboard/parts/thumb-vstretch.png +0 -0
- package/dist/art/drawingboard/parts/title-underline-left.png +0 -0
- package/dist/art/drawingboard/parts/title-underline-right.png +0 -0
- package/dist/art/drawingboard/parts/title-underline.png +0 -0
- package/dist/art/drawingboard/parts/up-off.png +0 -0
- package/dist/art/drawingboard/parts/up-on.png +0 -0
- package/dist/art/drawingboard/parts/up.png +0 -0
- package/dist/art/drawingboard/parts/zoom-on.png +0 -0
- package/dist/art/drawingboard/parts/zoom.png +0 -0
- package/dist/art/drawingboard/pens/button-bottom.png +0 -0
- package/dist/art/drawingboard/pens/button-corners.png +0 -0
- package/dist/art/drawingboard/pens/button-default-bottom-2.png +0 -0
- package/dist/art/drawingboard/pens/button-default-bottom-3.png +0 -0
- package/dist/art/drawingboard/pens/button-default-bottom.png +0 -0
- package/dist/art/drawingboard/pens/button-default-corner-bl.png +0 -0
- package/dist/art/drawingboard/pens/button-default-corner-br.png +0 -0
- package/dist/art/drawingboard/pens/button-default-corner-tl.png +0 -0
- package/dist/art/drawingboard/pens/button-default-corner-tr.png +0 -0
- package/dist/art/drawingboard/pens/button-default-left-2.png +0 -0
- package/dist/art/drawingboard/pens/button-default-left-3.png +0 -0
- package/dist/art/drawingboard/pens/button-default-left.png +0 -0
- package/dist/art/drawingboard/pens/button-default-right-2.png +0 -0
- package/dist/art/drawingboard/pens/button-default-right-3.png +0 -0
- package/dist/art/drawingboard/pens/button-default-right.png +0 -0
- package/dist/art/drawingboard/pens/button-default-top-2.png +0 -0
- package/dist/art/drawingboard/pens/button-default-top-3.png +0 -0
- package/dist/art/drawingboard/pens/button-default-top.png +0 -0
- package/dist/art/drawingboard/pens/button-held-bottom.png +0 -0
- package/dist/art/drawingboard/pens/button-held-corners.png +0 -0
- package/dist/art/drawingboard/pens/button-held-left.png +0 -0
- package/dist/art/drawingboard/pens/button-held-right.png +0 -0
- package/dist/art/drawingboard/pens/button-held-shade-bottom.png +0 -0
- package/dist/art/drawingboard/pens/button-held-shade-right.png +0 -0
- package/dist/art/drawingboard/pens/button-held-top.png +0 -0
- package/dist/art/drawingboard/pens/button-left.png +0 -0
- package/dist/art/drawingboard/pens/button-right.png +0 -0
- package/dist/art/drawingboard/pens/button-shade-bottom.png +0 -0
- package/dist/art/drawingboard/pens/button-shade-right.png +0 -0
- package/dist/art/drawingboard/pens/button-top.png +0 -0
- package/dist/art/drawingboard/pens/field-bottom.png +0 -0
- package/dist/art/drawingboard/pens/field-corners.png +0 -0
- package/dist/art/drawingboard/pens/field-left.png +0 -0
- package/dist/art/drawingboard/pens/field-right.png +0 -0
- package/dist/art/drawingboard/pens/field-top.png +0 -0
- package/dist/art/drawingboard/pens/popup-bottom.png +0 -0
- package/dist/art/drawingboard/pens/popup-corners.png +0 -0
- package/dist/art/drawingboard/pens/popup-disabled-bottom.png +0 -0
- package/dist/art/drawingboard/pens/popup-disabled-corners.png +0 -0
- package/dist/art/drawingboard/pens/popup-disabled-left.png +0 -0
- package/dist/art/drawingboard/pens/popup-disabled-right.png +0 -0
- package/dist/art/drawingboard/pens/popup-disabled-top.png +0 -0
- package/dist/art/drawingboard/pens/popup-left.png +0 -0
- package/dist/art/drawingboard/pens/popup-right.png +0 -0
- package/dist/art/drawingboard/pens/popup-top.png +0 -0
- package/dist/art/drawingboard/tab-paper.png +0 -0
- package/dist/art/drawingboard/track-h-bottom.png +0 -0
- package/dist/art/drawingboard/track-h-mid1.png +0 -0
- package/dist/art/drawingboard/track-h-mid2.png +0 -0
- package/dist/art/drawingboard/track-h-top.png +0 -0
- package/dist/art/drawingboard/track-v-left.png +0 -0
- package/dist/art/drawingboard/track-v-mid1.png +0 -0
- package/dist/art/drawingboard/track-v-mid2.png +0 -0
- package/dist/art/drawingboard/track-v-right.png +0 -0
- package/dist/art/drawingboard/window-bl-inactive.png +0 -0
- package/dist/art/drawingboard/window-bl.png +0 -0
- package/dist/art/drawingboard/window-bottom-inactive.png +0 -0
- package/dist/art/drawingboard/window-bottom.png +0 -0
- package/dist/art/drawingboard/window-br-inactive.png +0 -0
- package/dist/art/drawingboard/window-br.png +0 -0
- package/dist/art/drawingboard/window-left-inactive.png +0 -0
- package/dist/art/drawingboard/window-left.png +0 -0
- package/dist/art/drawingboard/window-right-inactive.png +0 -0
- package/dist/art/drawingboard/window-right.png +0 -0
- package/dist/art/drawingboard/window-tl-inactive.png +0 -0
- package/dist/art/drawingboard/window-tl.png +0 -0
- package/dist/art/drawingboard/window-top-inactive.png +0 -0
- package/dist/art/drawingboard/window-top.png +0 -0
- package/dist/art/drawingboard/window-tr-inactive.png +0 -0
- package/dist/art/drawingboard/window-tr.png +0 -0
- package/dist/art/drawingboard/window-ur-inactive.png +0 -0
- package/dist/art/drawingboard/window-ur.png +0 -0
- package/dist/clio.css +1998 -197
- package/dist/clio.drawingboard.css +3562 -0
- package/dist/clio.drawingboard.min.css +2 -0
- package/dist/clio.min.css +2 -2
- package/dist/clio.platinum.css +861 -149
- package/dist/clio.platinum.min.css +2 -2
- package/dist/clio.system6.css +598 -70
- package/dist/clio.system6.min.css +2 -2
- package/dist/clio.system7.css +2165 -0
- package/dist/clio.system7.min.css +2 -0
- package/dist/components.json +670 -141
- package/dist/fonts/ClioSans84.woff2 +0 -0
- package/dist/fonts/ClioSans97.woff2 +0 -0
- package/dist/fonts/ClioSans97Display.woff2 +0 -0
- package/dist/fonts/ClioSans97Exact.woff2 +0 -0
- package/dist/fonts/ClioSans97Title.woff2 +0 -0
- package/dist/fonts/ClioSans97TitleExact.woff2 +0 -0
- package/dist/fonts/ClioText84-9.woff2 +0 -0
- package/dist/fonts/ClioText84.woff2 +0 -0
- package/llms.txt +5 -4
- package/package.json +18 -4
|
@@ -0,0 +1,3562 @@
|
|
|
1
|
+
/*! clio.css 0.9.0 (Drawing Board default) | MIT | https://surfine.github.io/clio.css/
|
|
2
|
+
* Classic Mac OS interface CSS: System 6, System 7, Mac OS 8.5 Drawing Board and Mac OS 9 Platinum.
|
|
3
|
+
* Measured values traced to AI System 6; see EVIDENCE.md.
|
|
4
|
+
* Includes art from system.css (MIT) and pixel reconstructions of Apple control art; see THIRD-PARTY.md. */
|
|
5
|
+
/* Clio Sans '84: Chicago 12 rebuilt pixel for pixel from System 6.0.8
|
|
6
|
+
(fonts-src/clio-sans-84.txt). Every pixel is a square on a 1200-unit em, so
|
|
7
|
+
at 12px and its multiples it draws exactly the original bitmap. */
|
|
8
|
+
@font-face {
|
|
9
|
+
font-family: "Clio Sans '84";
|
|
10
|
+
src: url("fonts/ClioSans84.woff2") format("woff2");
|
|
11
|
+
font-display: swap;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/* Clio Text '84: Geneva 12, and Clio Text '84 9: Geneva 9, rebuilt the same
|
|
15
|
+
way (fonts-src/clio-text-84*.txt). */
|
|
16
|
+
@font-face {
|
|
17
|
+
font-family: "Clio Text '84";
|
|
18
|
+
src: url("fonts/ClioText84.woff2") format("woff2");
|
|
19
|
+
font-display: swap;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
@font-face {
|
|
23
|
+
font-family: "Clio Text '84 9";
|
|
24
|
+
src: url("fonts/ClioText84-9.woff2") format("woff2");
|
|
25
|
+
font-display: swap;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* Clio Sans '97: Charcoal 12 rebuilt the same way from Mac OS 9.0's Key Caps
|
|
29
|
+
(fonts-src/clio-sans-97.txt). Charcoal has one weight, so the face covers
|
|
30
|
+
every weight and the browser never thickens it. */
|
|
31
|
+
@font-face {
|
|
32
|
+
font-family: "Clio Sans '97";
|
|
33
|
+
src: url("fonts/ClioSans97.woff2") format("woff2");
|
|
34
|
+
font-weight: 100 900;
|
|
35
|
+
font-display: swap;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* Clio Sans '97 Title: the same face as window titles draw it (a few faint
|
|
39
|
+
pixels fewer than menus and buttons), for title bars only. */
|
|
40
|
+
@font-face {
|
|
41
|
+
font-family: "Clio Sans '97 Title";
|
|
42
|
+
src: url("fonts/ClioSans97Title.woff2") format("woff2");
|
|
43
|
+
font-weight: 100 900;
|
|
44
|
+
font-display: swap;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/* Clio Sans '97 Exact and Clio Sans '97 Title Exact: the same glyphs with
|
|
48
|
+
each antialiasing level painted from a palette entry, so the palettes below
|
|
49
|
+
give, for clio.css's own title and button colours, the very pixels Mac OS
|
|
50
|
+
blends ((fg * a + bg * (255 - a)) >> 8). They ignore the text colour: a
|
|
51
|
+
page that recolours a title or a button label also sets --clio-font-window-title
|
|
52
|
+
or --clio-font-button back to a stack without "Exact", and gets Clio Sans
|
|
53
|
+
'97 in its colour, within one level of the real screen. */
|
|
54
|
+
@font-face {
|
|
55
|
+
font-family: "Clio Sans '97 Exact";
|
|
56
|
+
src: url("fonts/ClioSans97Exact.woff2") format("woff2");
|
|
57
|
+
font-weight: 100 900;
|
|
58
|
+
font-display: swap;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@font-face {
|
|
62
|
+
font-family: "Clio Sans '97 Title Exact";
|
|
63
|
+
src: url("fonts/ClioSans97TitleExact.woff2") format("woff2");
|
|
64
|
+
font-weight: 100 900;
|
|
65
|
+
font-display: swap;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/* Written by tooling/aa-palettes.py. */
|
|
69
|
+
@font-palette-values --clio-aa-p9-title {
|
|
70
|
+
font-family: "Clio Sans '97 Title Exact";
|
|
71
|
+
override-colors:
|
|
72
|
+
0 #bebebe,
|
|
73
|
+
1 #b0b0b0,
|
|
74
|
+
2 #a2a2a2,
|
|
75
|
+
3 #959595,
|
|
76
|
+
4 #878787,
|
|
77
|
+
5 #7a7a7a,
|
|
78
|
+
6 #6c6c6c,
|
|
79
|
+
7 #5f5f5f,
|
|
80
|
+
8 #515151,
|
|
81
|
+
9 #444444,
|
|
82
|
+
10 #363636,
|
|
83
|
+
11 #282828,
|
|
84
|
+
12 #1b1b1b,
|
|
85
|
+
13 #0d0d0d,
|
|
86
|
+
14 #000000;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
@font-palette-values --clio-aa-p9-title-inactive {
|
|
90
|
+
font-family: "Clio Sans '97 Title Exact";
|
|
91
|
+
override-colors:
|
|
92
|
+
0 #c5c5c5,
|
|
93
|
+
1 #bfbfbf,
|
|
94
|
+
2 #bababa,
|
|
95
|
+
3 #b4b4b4,
|
|
96
|
+
4 #aeaeae,
|
|
97
|
+
5 #a9a9a9,
|
|
98
|
+
6 #a3a3a3,
|
|
99
|
+
7 #9e9e9e,
|
|
100
|
+
8 #989898,
|
|
101
|
+
9 #929292,
|
|
102
|
+
10 #8d8d8d,
|
|
103
|
+
11 #878787,
|
|
104
|
+
12 #818181,
|
|
105
|
+
13 #7c7c7c,
|
|
106
|
+
14 #777777;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
@font-palette-values --clio-aa-p9-button {
|
|
110
|
+
font-family: "Clio Sans '97 Exact";
|
|
111
|
+
override-colors:
|
|
112
|
+
0 #cecece,
|
|
113
|
+
1 #bfbfbf,
|
|
114
|
+
2 #b0b0b0,
|
|
115
|
+
3 #a2a2a2,
|
|
116
|
+
4 #939393,
|
|
117
|
+
5 #848484,
|
|
118
|
+
6 #757575,
|
|
119
|
+
7 #676767,
|
|
120
|
+
8 #585858,
|
|
121
|
+
9 #494949,
|
|
122
|
+
10 #3a3a3a,
|
|
123
|
+
11 #2c2c2c,
|
|
124
|
+
12 #1d1d1d,
|
|
125
|
+
13 #0e0e0e,
|
|
126
|
+
14 #000000;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
@font-palette-values --clio-aa-p9-button-held {
|
|
130
|
+
font-family: "Clio Sans '97 Exact";
|
|
131
|
+
override-colors:
|
|
132
|
+
0 #707070,
|
|
133
|
+
1 #7a7a7a,
|
|
134
|
+
2 #848484,
|
|
135
|
+
3 #8e8e8e,
|
|
136
|
+
4 #999999,
|
|
137
|
+
5 #a3a3a3,
|
|
138
|
+
6 #adadad,
|
|
139
|
+
7 #b7b7b7,
|
|
140
|
+
8 #c1c1c1,
|
|
141
|
+
9 #cbcbcb,
|
|
142
|
+
10 #d6d6d6,
|
|
143
|
+
11 #e0e0e0,
|
|
144
|
+
12 #eaeaea,
|
|
145
|
+
13 #f4f4f4,
|
|
146
|
+
14 #ffffff;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
@font-palette-values --clio-aa-p9-button-disabled {
|
|
150
|
+
font-family: "Clio Sans '97 Exact";
|
|
151
|
+
override-colors:
|
|
152
|
+
0 #d5d5d5,
|
|
153
|
+
1 #cecece,
|
|
154
|
+
2 #c7c7c7,
|
|
155
|
+
3 #c1c1c1,
|
|
156
|
+
4 #bababa,
|
|
157
|
+
5 #b3b3b3,
|
|
158
|
+
6 #acacac,
|
|
159
|
+
7 #a5a5a5,
|
|
160
|
+
8 #9f9f9f,
|
|
161
|
+
9 #989898,
|
|
162
|
+
10 #919191,
|
|
163
|
+
11 #8a8a8a,
|
|
164
|
+
12 #848484,
|
|
165
|
+
13 #7d7d7d,
|
|
166
|
+
14 #777777;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
@font-palette-values --clio-aa-db-button {
|
|
170
|
+
font-family: "Clio Sans '97 Exact";
|
|
171
|
+
override-colors:
|
|
172
|
+
0 #c3bcac,
|
|
173
|
+
1 #b9b2a3,
|
|
174
|
+
2 #aea89a,
|
|
175
|
+
3 #a49e91,
|
|
176
|
+
4 #999488,
|
|
177
|
+
5 #8f8a80,
|
|
178
|
+
6 #848077,
|
|
179
|
+
7 #7a766e,
|
|
180
|
+
8 #6f6c65,
|
|
181
|
+
9 #65625d,
|
|
182
|
+
10 #5a5854,
|
|
183
|
+
11 #504e4b,
|
|
184
|
+
12 #454442,
|
|
185
|
+
13 #3b3a39,
|
|
186
|
+
14 #313131;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
@font-palette-values --clio-aa-db-button-disabled {
|
|
190
|
+
font-family: "Clio Sans '97 Exact";
|
|
191
|
+
override-colors:
|
|
192
|
+
0 #cac2b2,
|
|
193
|
+
1 #c6bfaf,
|
|
194
|
+
2 #c3bcad,
|
|
195
|
+
3 #c0b9ab,
|
|
196
|
+
4 #bdb6a9,
|
|
197
|
+
5 #bab3a7,
|
|
198
|
+
6 #b7b0a4,
|
|
199
|
+
7 #b4ada2,
|
|
200
|
+
8 #b1aaa0,
|
|
201
|
+
9 #ada89e,
|
|
202
|
+
10 #aaa59c,
|
|
203
|
+
11 #a7a299,
|
|
204
|
+
12 #a49f97,
|
|
205
|
+
13 #a19c95,
|
|
206
|
+
14 #9c9c94;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
/* Clio Sans '97 Display: Charcoal's outlines, traced from Mac OS 9.0 drawing it
|
|
210
|
+
at 72 points (fonts/ClioSans97Display.woff2, tooling/trace-outline.py), for
|
|
211
|
+
every size that is not 12px or a multiple of it. */
|
|
212
|
+
@font-face {
|
|
213
|
+
font-family: "Clio Sans '97 Display";
|
|
214
|
+
src: url("fonts/ClioSans97Display.woff2") format("woff2");
|
|
215
|
+
font-weight: 100 900;
|
|
216
|
+
font-display: swap;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
/* Other fonts, each with a licence that allows it:
|
|
220
|
+
- ChicagoFLF: a public-domain outline revival of Chicago (Robin Casady).
|
|
221
|
+
- Asap (variable, wdth + wght): SIL OFL 1.1, Omnibus-Type. The legal
|
|
222
|
+
stand-in for Charcoal that AI System 6 measured its Platinum title bar
|
|
223
|
+
against (width axis 113 for text, 123 for titles); now the fallback
|
|
224
|
+
behind Clio Sans '97.
|
|
225
|
+
Apple's own faces (Chicago, Geneva, Charcoal, Monaco) are never shipped;
|
|
226
|
+
the stacks below reach them only when the visitor already has them. */
|
|
227
|
+
@font-face {
|
|
228
|
+
font-family: "ChicagoFLF";
|
|
229
|
+
src: url("fonts/ChicagoFLF.woff2") format("woff2"),
|
|
230
|
+
url("fonts/ChicagoFLF.woff") format("woff");
|
|
231
|
+
font-display: swap;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
@font-face {
|
|
235
|
+
font-family: "Clio Asap";
|
|
236
|
+
src: url("fonts/Asap-Variable.woff2") format("woff2");
|
|
237
|
+
font-style: normal;
|
|
238
|
+
font-weight: 100 900;
|
|
239
|
+
font-stretch: 75% 125%;
|
|
240
|
+
font-display: swap;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
/* Tokens: Macintosh System 6 is the default era. Measured values come from
|
|
244
|
+
System 6.0.8 running in Infinite Mac, read from the emulator canvas 1:1
|
|
245
|
+
(tooling/capture-system6.mjs).
|
|
246
|
+
Every value below is traceable in EVIDENCE.md. A value marked [M] there was
|
|
247
|
+
measured from real pixels; [I] is inferred; [A] is a deliberate web
|
|
248
|
+
adaptation (contrast, focus, touch). Platinum re-declares these tokens in
|
|
249
|
+
90-platinum.css under [data-era="platinum"]. */
|
|
250
|
+
:root,
|
|
251
|
+
[data-era="system6"],
|
|
252
|
+
[data-era="system7"] {
|
|
253
|
+
/* 1-bit palette. System 6 on a compact Mac had two colours. */
|
|
254
|
+
--clio-ink: #000000;
|
|
255
|
+
--clio-paper: #ffffff;
|
|
256
|
+
--clio-face: #ffffff;
|
|
257
|
+
/* [A] Disabled text: System 6 drew it through a 50% grey pattern; a solid
|
|
258
|
+
grey keeps 5.6:1 on white instead of a dither the browser would blur. */
|
|
259
|
+
--clio-disabled: #696969;
|
|
260
|
+
/* Dimmed text is drawn through QuickDraw's 50% gray pattern, aligned to the
|
|
261
|
+
screen: the ink where x + y is odd survives (measured, File menu). The
|
|
262
|
+
pattern is fixed to the viewport the same way; #696969 is only the
|
|
263
|
+
fallback colour where background-clip: text is missing. */
|
|
264
|
+
--clio-disabled-dither: var(--clio-art-s6-gray50);
|
|
265
|
+
--clio-disabled-fill: transparent;
|
|
266
|
+
--clio-selection-bg: #000000;
|
|
267
|
+
--clio-selection-fg: #ffffff;
|
|
268
|
+
|
|
269
|
+
/* Type. Chicago 12 is the system font; Geneva is the application font. */
|
|
270
|
+
--clio-font-chrome: "Clio Sans '84", Chicago, "ChicagoFLF", Charcoal, Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
271
|
+
--clio-font-text: "Clio Text '84", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
272
|
+
/* Geneva 9: the Finder info line, icon names, status lines. */
|
|
273
|
+
--clio-font-small: "Clio Text '84 9", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
274
|
+
--clio-text-smoothing: none;
|
|
275
|
+
--clio-font-mono: Monaco, Menlo, Consolas, "Courier New", monospace;
|
|
276
|
+
/* Chrome type at sizes other than 12px and its multiples (.display): an
|
|
277
|
+
outline face, smoothed. */
|
|
278
|
+
--clio-font-display: Chicago, "ChicagoFLF", Charcoal, "Helvetica Neue", Arial, sans-serif;
|
|
279
|
+
--clio-font-size: 12px;
|
|
280
|
+
/* A bitmap face: no antialiasing, so a glyph on a half pixel stays 1-bit. */
|
|
281
|
+
--clio-font-smoothing: none;
|
|
282
|
+
/* Geneva 9: the Finder info line and icon names. */
|
|
283
|
+
--clio-font-size-small: 9px;
|
|
284
|
+
--clio-chrome-weight: 400;
|
|
285
|
+
--clio-font-stretch-text: normal;
|
|
286
|
+
--clio-font-stretch-title: normal;
|
|
287
|
+
|
|
288
|
+
/* Geometry */
|
|
289
|
+
--clio-line: 1px;
|
|
290
|
+
--clio-border: 1px solid var(--clio-ink);
|
|
291
|
+
--clio-radius: 0;
|
|
292
|
+
--clio-control-height: 20px;
|
|
293
|
+
--clio-field-height: 20px;
|
|
294
|
+
--clio-row-height: 16px;
|
|
295
|
+
--clio-gap: 8px;
|
|
296
|
+
|
|
297
|
+
/* Focus: [A] the era had no keyboard focus ring for buttons. A dotted frame
|
|
298
|
+
is how System 6 drew a dragged outline, so it reads as native and cannot
|
|
299
|
+
be confused with the default button's solid ring. */
|
|
300
|
+
--clio-focus-outline: 1px dotted var(--clio-ink);
|
|
301
|
+
--clio-focus-offset: 2px;
|
|
302
|
+
|
|
303
|
+
/* Desktop */
|
|
304
|
+
--clio-desktop: var(--clio-art-s6-desktop) 0 0 / 2px 2px repeat, #808080;
|
|
305
|
+
|
|
306
|
+
/* Window frame and title bar [M: measured at the emulator's exact 2x] */
|
|
307
|
+
--clio-window-bg: var(--clio-paper);
|
|
308
|
+
--clio-pane-bg: var(--clio-paper);
|
|
309
|
+
--clio-window-border: 1px solid var(--clio-ink);
|
|
310
|
+
--clio-window-shadow: 1px 1px 0 var(--clio-ink);
|
|
311
|
+
--clio-window-padding: 0;
|
|
312
|
+
--clio-titlebar-height: 17px;
|
|
313
|
+
--clio-titlebar-margin: 1px 0 0;
|
|
314
|
+
--clio-titlebar-padding: 2px 1px;
|
|
315
|
+
--clio-titlebar-border: 1px solid var(--clio-ink);
|
|
316
|
+
--clio-titlebar-row: 12px;
|
|
317
|
+
--clio-titlebar-stripe: 2px;
|
|
318
|
+
--clio-titlebar-bg:
|
|
319
|
+
linear-gradient(to bottom, var(--clio-ink) 0 1px, transparent 1px 2px)
|
|
320
|
+
0 0 / 100% var(--clio-titlebar-stripe) repeat-y content-box content-box,
|
|
321
|
+
var(--clio-paper);
|
|
322
|
+
--clio-titlebar-inactive-bg: var(--clio-paper);
|
|
323
|
+
--clio-title-font-size: 12px;
|
|
324
|
+
--clio-title-bg: var(--clio-paper);
|
|
325
|
+
--clio-title-fg: var(--clio-ink);
|
|
326
|
+
--clio-title-inactive-fg: var(--clio-ink);
|
|
327
|
+
--clio-title-padding: 0 0.5em;
|
|
328
|
+
--clio-titlebar-slot: 18px;
|
|
329
|
+
--clio-titlebar-shade-slot: 0px;
|
|
330
|
+
--clio-shade-display: none;
|
|
331
|
+
--clio-box-size: 11px;
|
|
332
|
+
--clio-box-inset: 7px;
|
|
333
|
+
/* 1px of paper between a box and the stripes (HD window, 6.0.8). */
|
|
334
|
+
--clio-box-isolation: 1px;
|
|
335
|
+
|
|
336
|
+
/* Menus */
|
|
337
|
+
--clio-menubar-height: 20px;
|
|
338
|
+
--clio-menubar-bg: var(--clio-paper);
|
|
339
|
+
--clio-menubar-border: 1px solid var(--clio-ink);
|
|
340
|
+
--clio-menubar-shadow: none;
|
|
341
|
+
--clio-menubar-padding: 0 8px;
|
|
342
|
+
/* "File" highlight is 41px wide: about 9px each side of the word. */
|
|
343
|
+
--clio-menu-title-padding: 0 9px;
|
|
344
|
+
/* The open title's highlight leaves the bar's top row white. */
|
|
345
|
+
--clio-menu-title-inset: 1px;
|
|
346
|
+
--clio-menu-title-active-bg: var(--clio-ink);
|
|
347
|
+
--clio-menu-title-active-fg: var(--clio-paper);
|
|
348
|
+
--clio-menu-title-active-shadow: none;
|
|
349
|
+
--clio-menu-bg: var(--clio-paper);
|
|
350
|
+
--clio-menu-border: 1px solid var(--clio-ink);
|
|
351
|
+
/* A menu hangs from the bar's own rule; it draws no top line. */
|
|
352
|
+
--clio-menu-border-top-width: 0;
|
|
353
|
+
--clio-menu-shadow: 1px 1px 0 var(--clio-ink);
|
|
354
|
+
--clio-menu-item-height: 16px;
|
|
355
|
+
--clio-menu-item-padding: 0 12px 0 13px;
|
|
356
|
+
--clio-menu-item-weight: 400;
|
|
357
|
+
--clio-menu-item-active-bg: var(--clio-ink);
|
|
358
|
+
--clio-menu-item-active-fg: var(--clio-paper);
|
|
359
|
+
--clio-menu-item-active-shadow: none;
|
|
360
|
+
/* A full 16px row with a 1-on 1-off dotted rule on its ninth line. */
|
|
361
|
+
--clio-menu-separator:
|
|
362
|
+
repeating-linear-gradient(to right, var(--clio-ink) 0 1px, transparent 1px 2px) 0 8px / 100% 1px no-repeat;
|
|
363
|
+
--clio-menu-separator-height: 16px;
|
|
364
|
+
|
|
365
|
+
/* Push buttons */
|
|
366
|
+
--clio-button-bg: var(--clio-paper);
|
|
367
|
+
--clio-button-fg: var(--clio-ink);
|
|
368
|
+
--clio-button-border: 1px solid var(--clio-ink);
|
|
369
|
+
/* 20px tall; the corner steps in 3, 1, 1 pixels on its first three rows
|
|
370
|
+
(OK and Cancel, 6.0.8), which a 4.5px radius reproduces exactly. */
|
|
371
|
+
/* The frame and the default ring are the real pixel staircases, cut from
|
|
372
|
+
System 6.0.8's Alert and Save dialog (tooling/frame-art.py) and drawn with
|
|
373
|
+
border-image; border-radius would antialias an arc. */
|
|
374
|
+
--clio-button-radius: 0;
|
|
375
|
+
--clio-button-frame: var(--clio-art-frame-s6-button);
|
|
376
|
+
--clio-button-frame-held: var(--clio-art-frame-s6-button-held);
|
|
377
|
+
--clio-button-frame-slice: 4;
|
|
378
|
+
--clio-ring-frame: var(--clio-art-frame-s6-ring);
|
|
379
|
+
--clio-ring-frame-slice: 7;
|
|
380
|
+
--clio-popup-frame: none;
|
|
381
|
+
--clio-popup-frame-slice: 3;
|
|
382
|
+
--clio-button-shadow: 0 0 0 0 transparent;
|
|
383
|
+
--clio-button-padding: 0 12px;
|
|
384
|
+
--clio-button-min-width: 59px;
|
|
385
|
+
--clio-button-weight: 400;
|
|
386
|
+
--clio-button-active-bg: transparent; /* the held frame carries the ink face */
|
|
387
|
+
--clio-button-active-fg: var(--clio-paper);
|
|
388
|
+
--clio-button-active-shadow: 0 0 0 0 transparent;
|
|
389
|
+
/* Default button: Inside Macintosh's recipe is PenSize(3,3) around the
|
|
390
|
+
button inset by -4, so a 1px gap then a 3px ring. */
|
|
391
|
+
--clio-button-default-gap: 1px;
|
|
392
|
+
--clio-button-default-width: 3px;
|
|
393
|
+
--clio-button-default-radius: 8px;
|
|
394
|
+
--clio-button-disabled-fg: var(--clio-disabled);
|
|
395
|
+
--clio-button-disabled-border: 1px solid var(--clio-ink);
|
|
396
|
+
|
|
397
|
+
/* Check boxes and radio buttons */
|
|
398
|
+
--clio-check-size: 12px;
|
|
399
|
+
--clio-check-bg: var(--clio-paper);
|
|
400
|
+
--clio-check-border: 1px solid var(--clio-ink);
|
|
401
|
+
--clio-check-shadow: none;
|
|
402
|
+
--clio-check-mark: var(--clio-art-s6-check) 0 0 / 12px 12px no-repeat;
|
|
403
|
+
--clio-check-mark-origin: border-box;
|
|
404
|
+
--clio-check-pressed-border-width: 2px;
|
|
405
|
+
--clio-radio-size: 12px;
|
|
406
|
+
--clio-radio-off: var(--clio-art-s6-radio) 0 0 / 12px 12px no-repeat;
|
|
407
|
+
--clio-radio-on: var(--clio-art-s6-radio-dot) 3px 3px / 6px 6px no-repeat, var(--clio-art-s6-radio) 0 0 / 12px 12px no-repeat;
|
|
408
|
+
--clio-radio-pressed: var(--clio-art-s6-radio-focus) 0 0 / 12px 12px no-repeat;
|
|
409
|
+
--clio-radio-pressed-on: var(--clio-art-s6-radio-dot) 3px 3px / 6px 6px no-repeat, var(--clio-art-s6-radio-focus) 0 0 / 12px 12px no-repeat;
|
|
410
|
+
|
|
411
|
+
/* Text fields */
|
|
412
|
+
--clio-field-bg: var(--clio-paper);
|
|
413
|
+
--clio-field-border: 1px solid var(--clio-ink);
|
|
414
|
+
--clio-field-shadow: none;
|
|
415
|
+
/* Edit text: 1px frame, text inset 3px (Control Panel RAM cache field). */
|
|
416
|
+
--clio-field-padding: 3px;
|
|
417
|
+
--clio-field-focus-shadow: none;
|
|
418
|
+
|
|
419
|
+
/* Pop-up menus */
|
|
420
|
+
--clio-popup-bg: var(--clio-paper);
|
|
421
|
+
--clio-popup-border: 1px solid var(--clio-ink);
|
|
422
|
+
--clio-popup-radius: 0;
|
|
423
|
+
--clio-popup-shadow: 1px 1px 0 var(--clio-ink);
|
|
424
|
+
/* System 6 pop-up (Standard File folder menu, 6.0.8): an 18px box, 1px
|
|
425
|
+
frame, 1px shadow, no arrow; held, it inverts. */
|
|
426
|
+
--clio-popup-height: 18px;
|
|
427
|
+
--clio-popup-padding: 0 8px;
|
|
428
|
+
--clio-popup-arrow: none;
|
|
429
|
+
--clio-popup-weight: 400;
|
|
430
|
+
|
|
431
|
+
/* Scroll bars */
|
|
432
|
+
/* The lane line plus 14px; the window frame is the 16th line. The lane is
|
|
433
|
+
QuickDraw's ltGray, one dot in four. */
|
|
434
|
+
--clio-scrollbar-size: 15px;
|
|
435
|
+
--clio-scrollbar-track: var(--clio-art-s6-ltgray) 0 0 / 4px 2px repeat, #ffffff;
|
|
436
|
+
--clio-scrollbar-track-shadow: none;
|
|
437
|
+
--clio-scrollbar-thumb-bg: var(--clio-paper);
|
|
438
|
+
--clio-scrollbar-thumb-border: 1px solid var(--clio-ink);
|
|
439
|
+
--clio-scrollbar-thumb-shadow: none;
|
|
440
|
+
--clio-scrollbar-button-bg: var(--clio-paper);
|
|
441
|
+
--clio-scrollbar-button-shadow: none;
|
|
442
|
+
--clio-scrollbar-up: var(--clio-art-s6-up);
|
|
443
|
+
--clio-scrollbar-up-on: var(--clio-art-s6-up-on);
|
|
444
|
+
--clio-scrollbar-down: var(--clio-art-s6-down);
|
|
445
|
+
--clio-scrollbar-down-on: var(--clio-art-s6-down-on);
|
|
446
|
+
--clio-scrollbar-left: var(--clio-art-s6-left);
|
|
447
|
+
--clio-scrollbar-left-on: var(--clio-art-s6-left-on);
|
|
448
|
+
--clio-scrollbar-right: var(--clio-art-s6-right);
|
|
449
|
+
--clio-scrollbar-right-on: var(--clio-art-s6-right-on);
|
|
450
|
+
|
|
451
|
+
/* Dialogs */
|
|
452
|
+
--clio-dialog-bg: var(--clio-paper);
|
|
453
|
+
/* Modal frame (stop alert, 6.0.8): 1px ink, 2px paper, 2px ink; no shadow. */
|
|
454
|
+
--clio-modal-border: 1px solid var(--clio-ink);
|
|
455
|
+
--clio-modal-frame: inset 0 0 0 2px var(--clio-paper), inset 0 0 0 4px var(--clio-ink);
|
|
456
|
+
--clio-modal-padding: 18px 20px;
|
|
457
|
+
--clio-plain-dialog-border: 1px solid var(--clio-ink);
|
|
458
|
+
--clio-plain-dialog-shadow: 2px 2px 0 var(--clio-ink);
|
|
459
|
+
|
|
460
|
+
/* Bars, lists, groups, progress, tabs */
|
|
461
|
+
--clio-details-bg: var(--clio-paper);
|
|
462
|
+
/* Finder's info line: 17 rows of Geneva 9, closed by 1px ink, 1px paper,
|
|
463
|
+
1px ink. */
|
|
464
|
+
--clio-details-border: 3px double var(--clio-ink);
|
|
465
|
+
--clio-details-font-size: 9px;
|
|
466
|
+
--clio-details-height: 17px;
|
|
467
|
+
--clio-details-padding: 0 15px;
|
|
468
|
+
--clio-scrollbar-corner: var(--clio-art-s6-grow) 0 0 / 14px 14px no-repeat, var(--clio-paper);
|
|
469
|
+
--clio-list-bg: var(--clio-paper);
|
|
470
|
+
--clio-list-border: 1px solid var(--clio-ink);
|
|
471
|
+
--clio-list-shadow: none;
|
|
472
|
+
--clio-list-row: 16px;
|
|
473
|
+
--clio-group-border: 1px solid var(--clio-ink);
|
|
474
|
+
--clio-group-shadow: none;
|
|
475
|
+
--clio-group-bg: transparent;
|
|
476
|
+
--clio-progress-height: 12px;
|
|
477
|
+
--clio-progress-bg: var(--clio-paper);
|
|
478
|
+
--clio-progress-border: 1px solid var(--clio-ink);
|
|
479
|
+
--clio-progress-shadow: none;
|
|
480
|
+
/* Finder copy progress (6.0.8): 12px, 1px frame, dkGray fill. */
|
|
481
|
+
--clio-progress-fill: var(--clio-art-s6-dkgray) 0 0 / 4px 2px repeat, var(--clio-ink);
|
|
482
|
+
--clio-tab-height: 20px;
|
|
483
|
+
--clio-tab-bg: var(--clio-paper);
|
|
484
|
+
--clio-tab-active-bg: var(--clio-paper);
|
|
485
|
+
--clio-tab-panel-bg: var(--clio-paper);
|
|
486
|
+
--clio-tab-panel-border: 1px solid var(--clio-ink);
|
|
487
|
+
--clio-label-bg: var(--clio-paper);
|
|
488
|
+
--clio-label-fg: var(--clio-ink);
|
|
489
|
+
--clio-label-selected-bg: var(--clio-ink);
|
|
490
|
+
--clio-label-selected-fg: var(--clio-paper);
|
|
491
|
+
|
|
492
|
+
/* Control Strip: System 6 had none; drawn here in its ink and paper, at the
|
|
493
|
+
Mac OS 9 geometry (adapted). */
|
|
494
|
+
--clio-strip-height: 24px;
|
|
495
|
+
--clio-strip-bg: var(--clio-paper);
|
|
496
|
+
--clio-strip-line: 1px solid var(--clio-ink);
|
|
497
|
+
--clio-strip-cell-shadow: none;
|
|
498
|
+
--clio-strip-sunken-shadow: none;
|
|
499
|
+
--clio-strip-sunken-lines: linear-gradient(transparent, transparent);
|
|
500
|
+
--clio-strip-pressed-bg: var(--clio-ink);
|
|
501
|
+
--clio-strip-pressed-shadow: inset 0 0 0 2px var(--clio-paper);
|
|
502
|
+
--clio-strip-cap-width: 13px;
|
|
503
|
+
--clio-strip-scroll-width: 13px;
|
|
504
|
+
--clio-strip-module-width: 30px;
|
|
505
|
+
--clio-strip-icon-inset: 2px;
|
|
506
|
+
--clio-strip-menu-top: 7px;
|
|
507
|
+
--clio-strip-menu-inset: 4px;
|
|
508
|
+
--clio-strip-handle-width: 18px;
|
|
509
|
+
--clio-strip-tab-width: 18px;
|
|
510
|
+
--clio-strip-cap: var(--clio-art-s6-strip-cap);
|
|
511
|
+
--clio-strip-back: var(--clio-art-s6-strip-back);
|
|
512
|
+
--clio-strip-forward: var(--clio-art-s6-strip-forward);
|
|
513
|
+
--clio-strip-menu: var(--clio-art-s6-strip-menu);
|
|
514
|
+
--clio-strip-handle: var(--clio-art-s6-strip-handle);
|
|
515
|
+
--clio-strip-tab: var(--clio-art-s6-strip-tab);
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
/* Inline art. Pixel-grid SVGs, never Apple bitmaps: the System 6 check, radio
|
|
519
|
+
ring and dot come from system.css (MIT, Sakun Acharige); Platinum's art lives
|
|
520
|
+
in 90-platinum.css; everything here is drawn for clio.css. See
|
|
521
|
+
THIRD-PARTY.md. */
|
|
522
|
+
:root {
|
|
523
|
+
--clio-art-s6-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' shape-rendering='crispEdges'%3E%3Cpath d='M0 0h1v1h-1zM1 1h1v1h-1zM2 2h1v1h-1zM3 3h1v1h-1zM4 4h1v1h-1zM5 5h1v1h-1zM6 6h1v1h-1zM7 7h1v1h-1zM8 8h1v1h-1zM9 9h1v1h-1zM10 10h1v1h-1zM11 11h1v1h-1zM11 0h1v1h-1zM10 1h1v1h-1zM9 2h1v1h-1zM8 3h1v1h-1zM7 4h1v1h-1zM6 5h1v1h-1zM5 6h1v1h-1zM4 7h1v1h-1zM3 8h1v1h-1zM2 9h1v1h-1zM1 10h1v1h-1zM0 11h1v1h-1z'/%3E%3C/svg%3E");
|
|
524
|
+
--clio-art-s6-radio: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' shape-rendering='crispEdges'%3E%3Cpath d='M4 0h4v1H4zM0 4h1v4H0zM11 4h1v4h-1zM2 1h2v1H2zM8 1h2v1H8zM10 2h1v2h-1zM1 2h1v2H1zM4 11h4v1H4zM2 10h2v1H2zM8 10h2v1H8zM10 8h1v2h-1zM1 8h1v2H1z'/%3E%3C/svg%3E");
|
|
525
|
+
--clio-art-s6-radio-focus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' shape-rendering='crispEdges'%3E%3Cpath d='M4 0h4v2H4zM0 4h2v4H0zM10 4h2v4h-2zM2 1h2v2H2zM8 1h2v2H8zM9 2h2v2H9zM1 2h2v2H1zM4 10h4v2H4zM2 9h2v2H2zM8 9h2v2H8zM9 8h2v2H9zM1 8h2v2H1z'/%3E%3C/svg%3E");
|
|
526
|
+
--clio-art-s6-radio-dot: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath d='M1 0h4v1H1zM1 5h4v1H1zM0 1h6v4H0z'/%3E%3C/svg%3E");
|
|
527
|
+
--clio-art-s6-submenu: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='11'%3E%3Cpath d='m0 0 6 5.5L0 11Z'/%3E%3C/svg%3E");
|
|
528
|
+
--clio-art-s6-submenu-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='11'%3E%3Cpath fill='%23fff' d='m0 0 6 5.5L0 11Z'/%3E%3C/svg%3E");
|
|
529
|
+
--clio-art-s6-desktop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2' height='2' shape-rendering='crispEdges'%3E%3Cpath d='M0 0h1v1H0zM1 1h1v1H1z'/%3E%3Cpath fill='%23fff' d='M1 0h1v1H1zM0 1h1v1H0z'/%3E%3C/svg%3E");
|
|
530
|
+
/* Measured from System 6.0.8 (tooling/s6-art.py). */
|
|
531
|
+
--clio-art-s6-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M6 2h1v1h-1zM5 3h3v1h-3zM4 4h5v1h-5zM3 5h7v1h-7zM2 6h9v1h-9zM4 7h5v1h-5zM4 8h5v1h-5zM4 9h5v1h-5zM4 10h5v1h-5z'/%3E%3Cpath fill='%23000' d='M6 1h1v1h-1zM5 2h1v1h-1zM7 2h1v1h-1zM4 3h1v1h-1zM8 3h1v1h-1zM3 4h1v1h-1zM9 4h1v1h-1zM2 5h1v1h-1zM10 5h1v1h-1zM1 6h1v1h-1zM11 6h1v1h-1zM0 7h4v1h-4zM9 7h4v1h-4zM3 8h1v1h-1zM9 8h1v1h-1zM3 9h1v1h-1zM9 9h1v1h-1zM3 10h1v1h-1zM9 10h1v1h-1zM3 11h7v1h-7z'/%3E%3C/svg%3E");
|
|
532
|
+
--clio-art-s6-up-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 2h3v1h-3zM4 3h5v1h-5zM3 4h7v1h-7zM2 5h9v1h-9zM1 6h11v1h-11zM0 7h13v1h-13zM3 8h7v1h-7zM3 9h7v1h-7zM3 10h7v1h-7zM3 11h7v1h-7z'/%3E%3C/svg%3E");
|
|
533
|
+
--clio-art-s6-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M4 3h5v1h-5zM4 4h5v1h-5zM4 5h5v1h-5zM4 6h5v1h-5zM2 7h9v1h-9zM3 8h7v1h-7zM4 9h5v1h-5zM5 10h3v1h-3zM6 11h1v1h-1z'/%3E%3Cpath fill='%23000' d='M3 2h7v1h-7zM3 3h1v1h-1zM9 3h1v1h-1zM3 4h1v1h-1zM9 4h1v1h-1zM3 5h1v1h-1zM9 5h1v1h-1zM0 6h4v1h-4zM9 6h4v1h-4zM1 7h1v1h-1zM11 7h1v1h-1zM2 8h1v1h-1zM10 8h1v1h-1zM3 9h1v1h-1zM9 9h1v1h-1zM4 10h1v1h-1zM8 10h1v1h-1zM5 11h1v1h-1zM7 11h1v1h-1zM6 12h1v1h-1z'/%3E%3C/svg%3E");
|
|
534
|
+
--clio-art-s6-down-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M3 2h7v1h-7zM3 3h7v1h-7zM3 4h7v1h-7zM3 5h7v1h-7zM0 6h13v1h-13zM1 7h11v1h-11zM2 8h9v1h-9zM3 9h7v1h-7zM4 10h5v1h-5zM5 11h3v1h-3z'/%3E%3C/svg%3E");
|
|
535
|
+
--clio-art-s6-left: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M5 2h1v1h-1zM4 3h2v1h-2zM3 4h7v1h-7zM2 5h8v1h-8zM1 6h9v1h-9zM2 7h8v1h-8zM3 8h7v1h-7zM4 9h2v1h-2zM5 10h1v1h-1z'/%3E%3Cpath fill='%23000' d='M6 0h1v1h-1zM5 1h2v1h-2zM4 2h1v1h-1zM6 2h1v1h-1zM3 3h1v1h-1zM6 3h5v1h-5zM2 4h1v1h-1zM10 4h1v1h-1zM1 5h1v1h-1zM10 5h1v1h-1zM0 6h1v1h-1zM10 6h1v1h-1zM1 7h1v1h-1zM10 7h1v1h-1zM2 8h1v1h-1zM10 8h1v1h-1zM3 9h1v1h-1zM6 9h5v1h-5zM4 10h1v1h-1zM6 10h1v1h-1zM5 11h2v1h-2zM6 12h1v1h-1z'/%3E%3C/svg%3E");
|
|
536
|
+
--clio-art-s6-left-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M6 0h1v1h-1zM5 1h2v1h-2zM4 2h3v1h-3zM3 3h8v1h-8zM2 4h9v1h-9zM1 5h10v1h-10zM1 6h10v1h-10zM1 7h10v1h-10zM2 8h9v1h-9zM3 9h8v1h-8zM4 10h3v1h-3zM5 11h2v1h-2zM6 12h1v1h-1z'/%3E%3C/svg%3E");
|
|
537
|
+
--clio-art-s6-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M8 2h1v1h-1zM8 3h2v1h-2zM4 4h7v1h-7zM4 5h8v1h-8zM4 6h9v1h-9zM4 7h8v1h-8zM4 8h7v1h-7zM8 9h2v1h-2zM8 10h1v1h-1z'/%3E%3Cpath fill='%23000' d='M7 0h1v1h-1zM7 1h2v1h-2zM7 2h1v1h-1zM9 2h1v1h-1zM3 3h5v1h-5zM10 3h1v1h-1zM3 4h1v1h-1zM11 4h1v1h-1zM3 5h1v1h-1zM12 5h1v1h-1zM3 6h1v1h-1zM13 6h1v1h-1zM3 7h1v1h-1zM12 7h1v1h-1zM3 8h1v1h-1zM11 8h1v1h-1zM3 9h5v1h-5zM10 9h1v1h-1zM7 10h1v1h-1zM9 10h1v1h-1zM7 11h2v1h-2zM7 12h1v1h-1z'/%3E%3C/svg%3E");
|
|
538
|
+
--clio-art-s6-right-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M7 0h1v1h-1zM7 1h2v1h-2zM7 2h3v1h-3zM3 3h8v1h-8zM3 4h9v1h-9zM3 5h10v1h-10zM3 6h10v1h-10zM3 7h10v1h-10zM3 8h9v1h-9zM3 9h8v1h-8zM7 10h3v1h-3zM7 11h2v1h-2zM7 12h1v1h-1z'/%3E%3C/svg%3E");
|
|
539
|
+
--clio-art-s6-burst: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 1h1v1h-1zM2 2h1v1h-1zM5 2h1v1h-1zM8 2h1v1h-1zM3 3h1v1h-1zM5 3h1v1h-1zM7 3h1v1h-1zM1 5h3v1h-3zM5 5h1v1h-1zM7 5h3v1h-3zM3 7h1v1h-1zM5 7h1v1h-1zM7 7h1v1h-1zM2 8h1v1h-1zM5 8h1v1h-1zM8 8h1v1h-1zM5 9h1v1h-1z'/%3E%3C/svg%3E");
|
|
540
|
+
--clio-art-s6-ltgray: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='2' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h1v1h-1zM2 1h1v1h-1z'/%3E%3Cpath fill='%23fff' d='M1 0h3v1h-3zM0 1h2v1h-2zM3 1h1v1h-1z'/%3E%3C/svg%3E");
|
|
541
|
+
--clio-art-s6-grow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M2 2h7v1h-7zM2 3h1v1h-1zM8 3h1v1h-1zM2 4h1v1h-1zM8 4h5v1h-5zM2 5h1v1h-1zM8 5h1v1h-1zM12 5h1v1h-1zM2 6h1v1h-1zM8 6h1v1h-1zM12 6h1v1h-1zM2 7h1v1h-1zM8 7h1v1h-1zM12 7h1v1h-1zM2 8h7v1h-7zM12 8h1v1h-1zM4 9h1v1h-1zM12 9h1v1h-1zM4 10h1v1h-1zM12 10h1v1h-1zM4 11h1v1h-1zM12 11h1v1h-1zM4 12h9v1h-9z'/%3E%3C/svg%3E");
|
|
542
|
+
--clio-art-s6-dkgray: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='2' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h1v1h-1zM2 0h2v1h-2zM0 1h3v1h-3z'/%3E%3Cpath fill='%23fff' d='M1 0h1v1h-1zM3 1h1v1h-1z'/%3E%3C/svg%3E");
|
|
543
|
+
--clio-art-s6-menucheck: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='8' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M8 0h1v1h-1zM7 1h2v1h-2zM6 2h2v1h-2zM5 3h2v1h-2zM0 4h1v1h-1zM4 4h2v1h-2zM0 5h2v1h-2zM3 5h2v1h-2zM1 6h3v1h-3zM2 7h1v1h-1z'/%3E%3C/svg%3E");
|
|
544
|
+
/* Frames cut from captures by tooling/frame-art.py. */
|
|
545
|
+
--clio-art-frame-s6-button: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAgMAAACd/+6DAAAACVBMVEUAAAAAAAD///+D3c/SAAAAAXRSTlMAQObYZgAAACpJREFUeJxjYAxgYBINZWBiYWFgCmB0YGJgYABhBqmVDEx//jAwMAYwAAA66QRtNyAoFwAAAABJRU5ErkJggg==");
|
|
546
|
+
--clio-art-frame-s6-button-held: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAAB1JREFUeJxjkGFgSmZgYmBg/N/IxABiMNSDSRkGACm1Aqb7EOVpAAAAAElFTkSuQmCC");
|
|
547
|
+
--clio-art-frame-s6-ring: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPAQMAAAABGAcJAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAADRJREFUeJxjYD/AIP+BSYGDsYaB5csahg9yTB8+MDEwgJCAAFPDPyaeBAb7H0wPfjCwHwAAEpMM/gNXK+MAAAAASUVORK5CYII=");
|
|
548
|
+
--clio-art-frame-p9-button: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJBAMAAAASvxsjAAAAGFBMVEUAAAAAAAB3d3fd3d27u7uqqqoiIiL///+EaqngAAAAAXRSTlMAQObYZgAAADxJREFUeJxjYEgUTGBgYnyk9JCBMUWYYa8O03qGPXIbmBj+MDAwMIERY8pFhbN2jIyOD/7fZ/ov/96eAQBghg8JraaOFgAAAABJRU5ErkJggg==");
|
|
549
|
+
--clio-art-frame-p9-button-held: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJBAMAAAASvxsjAAAAGFBMVEUAAAAAAAB3d3dVVVVmZmYiIiKIiIhEREQ39d/AAAAAAXRSTlMAQObYZgAAAD9JREFUeJxjYAgUDGBgYVRT+8XAGC5zgJ+PUVxG8NErJgZGBgYGJgaGfwwMLA6vH7i8YmRUdfg9n+m/9ur3DAAxwg5nPuolSwAAAABJRU5ErkJggg==");
|
|
550
|
+
--clio-art-frame-p9-ring: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAANBAMAAACAxflPAAAAG1BMVEUAAAAAAAB3d3fd3d3MzMy7u7uqqqoiIiKIiIhznn7oAAAAAXRSTlMAQObYZgAAAFpJREFUeJxjZGDnYmB7ycDCwKPAwPjzAwujgjEDg+x6xuLDrx6oOXEwCCcxMDAlCTAx/GMAISYGCEDQTGAOUyKLAoOKQgIjY6gAA9PO+4wMElwMDO8+MELNBwCaGBDQEM8mggAAAABJRU5ErkJggg==");
|
|
551
|
+
--clio-art-frame-p9-button-disabled: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAgMAAACd/+6DAAAACVBMVEUAAACIiIjd3d2RXqmqAAAAAXRSTlMAQObYZgAAACFJREFUeJxjYA1hYBINZWAKYHRgYmBgQMYMUisZGFhDGAAtsQJ9dgAT/gAAAABJRU5ErkJggg==");
|
|
552
|
+
--clio-art-frame-p9-popup: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHBAMAAAA2fErgAAAAGFBMVEUAAAAAAAB3d3fd3d27u7uqqqoiIiL///+EaqngAAAAAXRSTlMAQObYZgAAACtJREFUeJxjYEhMYGBi5H/IwJh+klWbQYCBQYAl/OQnOwbGAEUGpv+C9gwAea0HTcaLsPwAAAAASUVORK5CYII=");
|
|
553
|
+
--clio-art-frame-p9-popup-disabled: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHAgMAAAC5PL9AAAAACVBMVEUAAACIiIjd3d2RXqmqAAAAAXRSTlMAQObYZgAAAB1JREFUeJxjZLVmEg5gChBhcGBh0ljAtOENI6s1ACDmA/qjrWTUAAAAAElFTkSuQmCC");
|
|
554
|
+
--clio-art-s6-gray50: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2' height='2' shape-rendering='crispEdges'%3E%3Cpath d='M1 0h1v1H1zM0 1h1v1H0z'/%3E%3C/svg%3E");
|
|
555
|
+
--clio-art-s6-menucheck-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='8' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M8 0h1v1h-1zM7 1h2v1h-2zM6 2h2v1h-2zM5 3h2v1h-2zM0 4h1v1h-1zM4 4h2v1h-2zM0 5h2v1h-2zM3 5h2v1h-2zM1 6h3v1h-3zM2 7h1v1h-1z'/%3E%3C/svg%3E");
|
|
556
|
+
--clio-art-s6-strip-cap: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='24' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M1 1h13v22H1z'/%3E%3Cpath d='M0 0h15v1H0zM0 23h15v1H0zM0 1h1v22H0zM14 1h1v22h-1zM3 8h8v1H3zM3 15h8v1H3zM3 9h1v6H3zM10 9h1v6h-1z'/%3E%3C/svg%3E");
|
|
557
|
+
--clio-art-s6-strip-back: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' shape-rendering='crispEdges'%3E%3Cpath d='M4 1h1v8H4zM3 2h1v6H3zM2 3h1v4H2zM1 4h1v2H1z'/%3E%3C/svg%3E");
|
|
558
|
+
--clio-art-s6-strip-forward: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' shape-rendering='crispEdges'%3E%3Cpath d='M5 1h1v8H5zM6 2h1v6H6zM7 3h1v4H7zM8 4h1v2H8z'/%3E%3C/svg%3E");
|
|
559
|
+
--clio-art-s6-strip-menu: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='7' shape-rendering='crispEdges'%3E%3Cpath d='M0 0h1v7H0zM1 1h1v5H1zM2 2h1v3H2zM3 3h1v1H3z'/%3E%3C/svg%3E");
|
|
560
|
+
--clio-art-s6-strip-handle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='24' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M0 1h9l8 8v6l-8 8H0z'/%3E%3Cpath d='M0 0h10v1H0zM10 1h1v1h-1zM11 2h1v1h-1zM12 3h1v1h-1zM13 4h1v1h-1zM14 5h1v1h-1zM15 6h1v1h-1zM16 7h1v1h-1zM17 8h1v8h-1zM16 16h1v1h-1zM15 17h1v1h-1zM14 18h1v1h-1zM13 19h1v1h-1zM12 20h1v1h-1zM11 21h1v1h-1zM10 22h1v1h-1zM0 23h10v1H0zM5 6h1v1H5zM5 9h1v1H5zM5 12h1v1H5zM5 15h1v1H5zM5 18h1v1H5z'/%3E%3C/svg%3E");
|
|
561
|
+
--clio-art-s6-strip-tab: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='24' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M0 1h9l8 8v6l-8 8H0z'/%3E%3Cpath d='M0 0h10v1H0zM10 1h1v1h-1zM11 2h1v1h-1zM12 3h1v1h-1zM13 4h1v1h-1zM14 5h1v1h-1zM15 6h1v1h-1zM16 7h1v1h-1zM17 8h1v8h-1zM16 16h1v1h-1zM15 17h1v1h-1zM14 18h1v1h-1zM13 19h1v1h-1zM12 20h1v1h-1zM11 21h1v1h-1zM10 22h1v1h-1zM0 23h10v1H0zM5 6h1v1H5zM5 9h1v1H5zM5 12h1v1H5zM5 15h1v1H5zM5 18h1v1H5z'/%3E%3C/svg%3E");
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
/* Base. clio.css styles elements only inside its own components, plus bare
|
|
565
|
+
form controls through :where(), so every rule here has zero specificity and
|
|
566
|
+
your own CSS always wins. It never restyles <body> unless you ask with
|
|
567
|
+
.desktop. */
|
|
568
|
+
:where(.desktop) {
|
|
569
|
+
margin: 0;
|
|
570
|
+
min-height: 100vh;
|
|
571
|
+
background: var(--clio-desktop);
|
|
572
|
+
color: var(--clio-ink);
|
|
573
|
+
}
|
|
574
|
+
|
|
575
|
+
:where(.window, .menu-bar, [role="menubar"], [role="menu-bar"], .menu, [role="menu"],
|
|
576
|
+
.modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .clio) {
|
|
577
|
+
box-sizing: border-box;
|
|
578
|
+
color: var(--clio-ink);
|
|
579
|
+
font-family: var(--clio-font-chrome);
|
|
580
|
+
font-size: var(--clio-font-size);
|
|
581
|
+
font-weight: var(--clio-chrome-weight);
|
|
582
|
+
font-stretch: var(--clio-font-stretch-text);
|
|
583
|
+
font-synthesis: none;
|
|
584
|
+
line-height: 16px;
|
|
585
|
+
-webkit-font-smoothing: var(--clio-font-smoothing);
|
|
586
|
+
}
|
|
587
|
+
|
|
588
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .clio) *,
|
|
589
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .clio) *::before,
|
|
590
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .clio) *::after {
|
|
591
|
+
box-sizing: border-box;
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
/* Application text (Geneva role) for content areas. */
|
|
595
|
+
:where(.window-pane, .modal-contents, .alert-contents, .text, .details-bar, .listbox, [role="listbox"], .status-bar, .icon, input, textarea) {
|
|
596
|
+
font-family: var(--clio-font-text);
|
|
597
|
+
font-stretch: var(--clio-font-stretch-text);
|
|
598
|
+
-webkit-font-smoothing: var(--clio-text-smoothing);
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) :where(h1, h2, h3, h4, .heading) {
|
|
602
|
+
margin: 0 0 8px;
|
|
603
|
+
font-family: var(--clio-font-chrome);
|
|
604
|
+
font-size: var(--clio-font-size);
|
|
605
|
+
font-weight: var(--clio-chrome-weight);
|
|
606
|
+
line-height: 16px;
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
:where(.display) {
|
|
610
|
+
font-family: var(--clio-font-display);
|
|
611
|
+
-webkit-font-smoothing: auto;
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) :where(p) {
|
|
615
|
+
margin: 0 0 8px;
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) :where(a) {
|
|
619
|
+
color: inherit;
|
|
620
|
+
}
|
|
621
|
+
|
|
622
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) :where(code, kbd, pre, samp) {
|
|
623
|
+
font-family: var(--clio-font-mono);
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) :where(hr) {
|
|
627
|
+
height: 0;
|
|
628
|
+
margin: 8px 0;
|
|
629
|
+
border: 0;
|
|
630
|
+
border-top: var(--clio-border);
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) ::selection {
|
|
634
|
+
background: var(--clio-selection-bg);
|
|
635
|
+
color: var(--clio-selection-fg);
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
/* A row of controls with their label (system.css name kept). */
|
|
639
|
+
:where(.field-row, .field-row-stacked) {
|
|
640
|
+
display: flex;
|
|
641
|
+
align-items: center;
|
|
642
|
+
gap: 6px;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
:where(.field-row-stacked) {
|
|
646
|
+
flex-direction: column;
|
|
647
|
+
align-items: flex-start;
|
|
648
|
+
gap: 4px;
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
:where(.field-row, .field-row-stacked) + :where(.field-row, .field-row-stacked) {
|
|
652
|
+
margin-top: 6px;
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
/* Hidden, still read aloud. */
|
|
656
|
+
:where(.visually-hidden, .title-bar button > span) {
|
|
657
|
+
position: absolute !important;
|
|
658
|
+
width: 1px;
|
|
659
|
+
height: 1px;
|
|
660
|
+
overflow: hidden;
|
|
661
|
+
clip: rect(0 0 0 0);
|
|
662
|
+
white-space: nowrap;
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
/* Windows.
|
|
666
|
+
Markup: .window > .title-bar (> .close, .title, .resize [, .shade]) >
|
|
667
|
+
optional .details-bar > .window-pane. system.css markup (.title-bar
|
|
668
|
+
button.close / button.resize, .inactive-title-bar) and AI System 6 markup
|
|
669
|
+
(.close-box, .resize-box, .shade-box, h1/h2 as the title) also work. */
|
|
670
|
+
:where(.window) {
|
|
671
|
+
position: relative;
|
|
672
|
+
display: flex;
|
|
673
|
+
flex-direction: column;
|
|
674
|
+
min-width: 120px;
|
|
675
|
+
padding: var(--clio-window-padding);
|
|
676
|
+
border: var(--clio-window-border);
|
|
677
|
+
background: var(--clio-window-bg);
|
|
678
|
+
box-shadow: var(--clio-window-shadow);
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
/* ---- Title bar ---------------------------------------------------------
|
|
682
|
+
System 6: a 17px box under a 1px inset: 2px of paper, six 1px ink stripes
|
|
683
|
+
on a 2px period across a 12px row, 2px of paper, then the 1px rule. */
|
|
684
|
+
.title-bar,
|
|
685
|
+
.inactive-title-bar {
|
|
686
|
+
--clio-tb-close: var(--clio-titlebar-slot);
|
|
687
|
+
--clio-tb-zoom: var(--clio-titlebar-slot);
|
|
688
|
+
--clio-tb-shade: var(--clio-titlebar-shade-slot);
|
|
689
|
+
--clio-tb-gutter: max(var(--clio-tb-close), calc(var(--clio-tb-zoom) + var(--clio-tb-shade)));
|
|
690
|
+
position: relative;
|
|
691
|
+
display: grid;
|
|
692
|
+
flex: none;
|
|
693
|
+
grid-template-columns:
|
|
694
|
+
var(--clio-tb-gutter)
|
|
695
|
+
minmax(0, 1fr)
|
|
696
|
+
var(--clio-tb-zoom)
|
|
697
|
+
calc(var(--clio-tb-gutter) - var(--clio-tb-zoom));
|
|
698
|
+
grid-template-rows: var(--clio-titlebar-row);
|
|
699
|
+
align-items: start;
|
|
700
|
+
box-sizing: border-box;
|
|
701
|
+
height: var(--clio-titlebar-height);
|
|
702
|
+
margin: var(--clio-titlebar-margin);
|
|
703
|
+
padding: var(--clio-titlebar-padding);
|
|
704
|
+
border-bottom: var(--clio-titlebar-border);
|
|
705
|
+
background: var(--clio-titlebar-bg);
|
|
706
|
+
font-family: var(--clio-font-chrome);
|
|
707
|
+
user-select: none;
|
|
708
|
+
-webkit-user-select: none;
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
/* A slot is reserved only for a control that is really there, so the title
|
|
712
|
+
stays centred on the whole bar. */
|
|
713
|
+
.title-bar:not(:has(> :is(.resize, .resize-box, .zoom))) { --clio-tb-zoom: 0px; }
|
|
714
|
+
.title-bar:not(:has(> :is(.shade, .shade-box, .collapse))) { --clio-tb-shade: 0px; }
|
|
715
|
+
|
|
716
|
+
.title-bar > :is(.title, h1, h2, h3),
|
|
717
|
+
.inactive-title-bar > :is(.title, h1, h2, h3) {
|
|
718
|
+
grid-column: 2;
|
|
719
|
+
grid-row: 1;
|
|
720
|
+
justify-self: center;
|
|
721
|
+
max-width: 100%;
|
|
722
|
+
height: var(--clio-titlebar-row);
|
|
723
|
+
margin: 0;
|
|
724
|
+
padding: var(--clio-title-padding);
|
|
725
|
+
overflow: hidden;
|
|
726
|
+
background: var(--clio-title-bg);
|
|
727
|
+
color: var(--clio-title-fg);
|
|
728
|
+
font-family: var(--clio-font-window-title, var(--clio-font-chrome));
|
|
729
|
+
font-size: var(--clio-title-font-size);
|
|
730
|
+
font-stretch: var(--clio-font-stretch-title);
|
|
731
|
+
font-weight: var(--clio-chrome-weight);
|
|
732
|
+
line-height: var(--clio-titlebar-row);
|
|
733
|
+
text-align: center;
|
|
734
|
+
text-overflow: ellipsis;
|
|
735
|
+
white-space: nowrap;
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
/* ---- Close, zoom and collapse boxes ------------------------------------ */
|
|
739
|
+
.title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse) {
|
|
740
|
+
position: relative;
|
|
741
|
+
grid-row: 1;
|
|
742
|
+
width: var(--clio-box-size);
|
|
743
|
+
min-width: 0;
|
|
744
|
+
height: var(--clio-box-size);
|
|
745
|
+
min-height: 0;
|
|
746
|
+
margin: 0;
|
|
747
|
+
padding: 0;
|
|
748
|
+
border: 1px solid var(--clio-ink);
|
|
749
|
+
border-radius: 0;
|
|
750
|
+
background: var(--clio-paper);
|
|
751
|
+
box-shadow: 0 0 0 var(--clio-box-isolation) var(--clio-paper);
|
|
752
|
+
color: transparent;
|
|
753
|
+
font-size: 0;
|
|
754
|
+
appearance: none;
|
|
755
|
+
-webkit-appearance: none;
|
|
756
|
+
cursor: default;
|
|
757
|
+
touch-action: manipulation;
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
.title-bar > :is(.close, .close-box) {
|
|
761
|
+
grid-column: 1;
|
|
762
|
+
justify-self: start;
|
|
763
|
+
margin-left: var(--clio-box-inset);
|
|
764
|
+
}
|
|
765
|
+
|
|
766
|
+
.title-bar > :is(.resize, .resize-box, .zoom) {
|
|
767
|
+
grid-column: 3;
|
|
768
|
+
justify-self: end;
|
|
769
|
+
margin-right: var(--clio-box-inset);
|
|
770
|
+
}
|
|
771
|
+
|
|
772
|
+
/* System 6 had no WindowShade box; only an era that opens the slot shows it. */
|
|
773
|
+
.title-bar > :is(.shade, .shade-box, .collapse) {
|
|
774
|
+
display: var(--clio-shade-display);
|
|
775
|
+
grid-column: 4;
|
|
776
|
+
justify-self: end;
|
|
777
|
+
}
|
|
778
|
+
|
|
779
|
+
/* Held close or zoom box: System 6 draws the same starburst in both
|
|
780
|
+
(measured, 6.0.8); the zoom box's inner square goes while it is held. */
|
|
781
|
+
.title-bar > :is(.close, .close-box, .resize, .resize-box, .zoom):is(:active, .active) {
|
|
782
|
+
background: var(--clio-art-s6-burst) 0 0 / 11px 11px no-repeat border-box, var(--clio-paper);
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
/* Zoom box: an inner square sharing the outer frame's top-left corner,
|
|
786
|
+
7 of the frame's 11 pixels (System 6's 7:11 ratio). */
|
|
787
|
+
.title-bar > :is(.resize, .resize-box, .zoom)::before {
|
|
788
|
+
content: "";
|
|
789
|
+
position: absolute;
|
|
790
|
+
top: -1px;
|
|
791
|
+
left: -1px;
|
|
792
|
+
width: 7px;
|
|
793
|
+
height: 7px;
|
|
794
|
+
border-right: 1px solid var(--clio-ink);
|
|
795
|
+
border-bottom: 1px solid var(--clio-ink);
|
|
796
|
+
box-sizing: border-box;
|
|
797
|
+
}
|
|
798
|
+
|
|
799
|
+
.title-bar > :is(.resize, .resize-box, .zoom):is(:active, .active)::before {
|
|
800
|
+
opacity: 0;
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
.title-bar > button:focus-visible {
|
|
804
|
+
outline: var(--clio-focus-outline);
|
|
805
|
+
outline-offset: calc(var(--clio-box-isolation) - 1px);
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
/* ---- Inactive windows ----------------------------------------------------
|
|
809
|
+
System 6 draws a background window's title bar as a plain strip with its
|
|
810
|
+
name: no stripes, no close box, no zoom box. */
|
|
811
|
+
.window.inactive > .title-bar,
|
|
812
|
+
.inactive-title-bar {
|
|
813
|
+
background: var(--clio-titlebar-inactive-bg);
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
.window.inactive > .title-bar > :is(.title, h1, h2, h3),
|
|
817
|
+
.inactive-title-bar > :is(.title, h1, h2, h3) {
|
|
818
|
+
color: var(--clio-title-inactive-fg);
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
.window.inactive > .title-bar > :not(.title, h1, h2, h3),
|
|
822
|
+
.inactive-title-bar > :not(.title, h1, h2, h3) {
|
|
823
|
+
visibility: hidden;
|
|
824
|
+
}
|
|
825
|
+
|
|
826
|
+
/* ---- Window body ------------------------------------------------------- */
|
|
827
|
+
:where(.window-pane) {
|
|
828
|
+
flex: 1 1 auto;
|
|
829
|
+
min-height: 0;
|
|
830
|
+
padding: 8px;
|
|
831
|
+
overflow: auto;
|
|
832
|
+
background: var(--clio-pane-bg);
|
|
833
|
+
font-size: var(--clio-font-size);
|
|
834
|
+
line-height: 16px;
|
|
835
|
+
}
|
|
836
|
+
|
|
837
|
+
/* Finder's info line ("3 items 1,234K in disk"), ruled twice below. */
|
|
838
|
+
:where(.details-bar) {
|
|
839
|
+
display: flex;
|
|
840
|
+
flex: none;
|
|
841
|
+
justify-content: space-between;
|
|
842
|
+
gap: 16px;
|
|
843
|
+
min-height: var(--clio-details-height);
|
|
844
|
+
padding: var(--clio-details-padding);
|
|
845
|
+
border-bottom: var(--clio-details-border);
|
|
846
|
+
background: var(--clio-details-bg);
|
|
847
|
+
box-shadow: var(--clio-details-shadow, none);
|
|
848
|
+
font-family: var(--clio-font-small);
|
|
849
|
+
font-size: var(--clio-details-font-size);
|
|
850
|
+
line-height: var(--clio-details-height);
|
|
851
|
+
white-space: nowrap;
|
|
852
|
+
}
|
|
853
|
+
|
|
854
|
+
:where(.separator) {
|
|
855
|
+
flex: none;
|
|
856
|
+
border-top: var(--clio-border);
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
/* A status line under the pane. */
|
|
860
|
+
:where(.status-bar) {
|
|
861
|
+
display: flex;
|
|
862
|
+
flex: none;
|
|
863
|
+
gap: 12px;
|
|
864
|
+
padding: 1px 8px;
|
|
865
|
+
border-top: var(--clio-border);
|
|
866
|
+
background: var(--clio-details-bg);
|
|
867
|
+
font-family: var(--clio-font-small);
|
|
868
|
+
font-size: var(--clio-font-size-small);
|
|
869
|
+
line-height: 14px;
|
|
870
|
+
}
|
|
871
|
+
|
|
872
|
+
/* Menu bar and menus.
|
|
873
|
+
Markup: <ul role="menubar" class="menu-bar"> <li role="none"><button
|
|
874
|
+
role="menuitem" aria-haspopup="true" aria-expanded="false">File</button>
|
|
875
|
+
<ul role="menu" class="menu">…</ul></li></ul>. A menu opens while its title
|
|
876
|
+
has aria-expanded="true" or the class .open (your script toggles either), or
|
|
877
|
+
while focus is inside it, so it works with the keyboard and no script.
|
|
878
|
+
system.css's role="menu-bar" / role="menu-item" markup is accepted too. */
|
|
879
|
+
:where(.menu-bar, ul[role="menubar"], ul[role="menu-bar"]) {
|
|
880
|
+
display: flex;
|
|
881
|
+
align-items: stretch;
|
|
882
|
+
box-sizing: border-box;
|
|
883
|
+
height: var(--clio-menubar-height);
|
|
884
|
+
margin: 0;
|
|
885
|
+
padding: var(--clio-menubar-padding);
|
|
886
|
+
list-style: none;
|
|
887
|
+
border-bottom: var(--clio-menubar-border);
|
|
888
|
+
background: var(--clio-menubar-bg);
|
|
889
|
+
box-shadow: var(--clio-menubar-shadow);
|
|
890
|
+
user-select: none;
|
|
891
|
+
-webkit-user-select: none;
|
|
892
|
+
}
|
|
893
|
+
|
|
894
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li {
|
|
895
|
+
position: relative;
|
|
896
|
+
display: flex;
|
|
897
|
+
align-items: stretch;
|
|
898
|
+
}
|
|
899
|
+
|
|
900
|
+
/* Menu titles: a <button>, an <a>, or the <li> itself (system.css). */
|
|
901
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a, span),
|
|
902
|
+
:where([role="menu-bar"]) > [role="menu-item"] {
|
|
903
|
+
display: flex;
|
|
904
|
+
align-items: center;
|
|
905
|
+
min-width: 0;
|
|
906
|
+
margin: 0;
|
|
907
|
+
padding: var(--clio-menu-title-padding);
|
|
908
|
+
border: 0;
|
|
909
|
+
border-radius: 0;
|
|
910
|
+
background: transparent;
|
|
911
|
+
box-shadow: none;
|
|
912
|
+
color: inherit;
|
|
913
|
+
font: inherit;
|
|
914
|
+
line-height: 16px;
|
|
915
|
+
text-decoration: none;
|
|
916
|
+
white-space: nowrap;
|
|
917
|
+
appearance: none;
|
|
918
|
+
-webkit-appearance: none;
|
|
919
|
+
cursor: default;
|
|
920
|
+
}
|
|
921
|
+
|
|
922
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a, span):is([aria-expanded="true"], .active),
|
|
923
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li.open > :is(button, a, span),
|
|
924
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a):active,
|
|
925
|
+
:where([role="menu-bar"]) > [role="menu-item"]:is(:focus, :focus-within) {
|
|
926
|
+
background: var(--clio-menu-title-active-bg);
|
|
927
|
+
box-shadow: var(--clio-menu-title-active-shadow);
|
|
928
|
+
color: var(--clio-menu-title-active-fg);
|
|
929
|
+
outline: none;
|
|
930
|
+
}
|
|
931
|
+
|
|
932
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a):focus-visible {
|
|
933
|
+
outline: var(--clio-focus-outline);
|
|
934
|
+
outline-offset: -3px;
|
|
935
|
+
}
|
|
936
|
+
|
|
937
|
+
/* ---- Menu panel ----------------------------------------------------------
|
|
938
|
+
System 6: paper, a 1px ink frame and a 1px ink drop shadow. */
|
|
939
|
+
:where(.menu, ul[role="menu"]) {
|
|
940
|
+
z-index: 10;
|
|
941
|
+
display: block;
|
|
942
|
+
box-sizing: border-box;
|
|
943
|
+
min-width: 140px;
|
|
944
|
+
width: max-content;
|
|
945
|
+
margin: 0;
|
|
946
|
+
padding: 0;
|
|
947
|
+
list-style: none;
|
|
948
|
+
border: var(--clio-menu-border);
|
|
949
|
+
border-top-width: var(--clio-menu-border-top-width);
|
|
950
|
+
background: var(--clio-menu-bg);
|
|
951
|
+
box-shadow: var(--clio-menu-shadow);
|
|
952
|
+
font-family: var(--clio-font-chrome);
|
|
953
|
+
font-size: var(--clio-font-size);
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
/* Inside a menu bar or a parent item, a menu is a drop-down. */
|
|
957
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"], .menu, [role="menu"]) li > :is(.menu, ul[role="menu"]) {
|
|
958
|
+
position: absolute;
|
|
959
|
+
top: calc(100% + 1px);
|
|
960
|
+
left: 0;
|
|
961
|
+
display: none;
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
:where(.menu, [role="menu"]) li > :is(.menu, ul[role="menu"]) {
|
|
965
|
+
top: -1px;
|
|
966
|
+
left: 100%;
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"], .menu, [role="menu"]) li:is(.open, :focus-within) > :is(.menu, ul[role="menu"]),
|
|
970
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"], .menu, [role="menu"]) li > [aria-expanded="true"] + :is(.menu, ul[role="menu"]) {
|
|
971
|
+
display: block;
|
|
972
|
+
}
|
|
973
|
+
|
|
974
|
+
/* ---- Menu items ---------------------------------------------------------- */
|
|
975
|
+
:where(.menu, [role="menu"]) > li {
|
|
976
|
+
position: relative;
|
|
977
|
+
display: flex;
|
|
978
|
+
align-items: center;
|
|
979
|
+
min-height: var(--clio-menu-item-height);
|
|
980
|
+
padding: var(--clio-menu-item-padding);
|
|
981
|
+
font-weight: var(--clio-menu-item-weight);
|
|
982
|
+
line-height: var(--clio-menu-item-height);
|
|
983
|
+
white-space: nowrap;
|
|
984
|
+
cursor: default;
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
:where(.menu, [role="menu"]) > li:has(> :is(a, button)) {
|
|
988
|
+
padding: 0;
|
|
989
|
+
}
|
|
990
|
+
|
|
991
|
+
:where(.menu, [role="menu"]) > li > :is(a, button) {
|
|
992
|
+
display: flex;
|
|
993
|
+
flex: 1;
|
|
994
|
+
align-items: center;
|
|
995
|
+
justify-content: flex-start;
|
|
996
|
+
min-width: 0;
|
|
997
|
+
min-height: var(--clio-menu-item-height);
|
|
998
|
+
margin: 0;
|
|
999
|
+
padding: var(--clio-menu-item-padding);
|
|
1000
|
+
border: 0;
|
|
1001
|
+
border-radius: 0;
|
|
1002
|
+
background: transparent;
|
|
1003
|
+
box-shadow: none;
|
|
1004
|
+
color: inherit;
|
|
1005
|
+
font: inherit;
|
|
1006
|
+
text-align: left;
|
|
1007
|
+
text-decoration: none;
|
|
1008
|
+
appearance: none;
|
|
1009
|
+
-webkit-appearance: none;
|
|
1010
|
+
cursor: default;
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
:where(.menu, [role="menu"]) > li:not(.disabled, [aria-disabled="true"], .separator, [role="separator"]):is(:hover, :focus-within, .active),
|
|
1014
|
+
:where(.menu, [role="menu"]) > li > :is(a, button):not([aria-disabled="true"], :disabled):is(:hover, :focus-visible, .active) {
|
|
1015
|
+
background: var(--clio-menu-item-active-bg);
|
|
1016
|
+
box-shadow: var(--clio-menu-item-active-shadow);
|
|
1017
|
+
color: var(--clio-menu-item-active-fg);
|
|
1018
|
+
outline: none;
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
:where(.menu, [role="menu"]) > li:is(.disabled, [aria-disabled="true"]),
|
|
1022
|
+
:where(.menu, [role="menu"]) > li > :is(a, button):is(:disabled, [aria-disabled="true"]) {
|
|
1023
|
+
color: var(--clio-disabled);
|
|
1024
|
+
background-image: var(--clio-disabled-dither);
|
|
1025
|
+
background-size: 2px 2px;
|
|
1026
|
+
background-attachment: fixed;
|
|
1027
|
+
-webkit-background-clip: text;
|
|
1028
|
+
background-clip: text;
|
|
1029
|
+
-webkit-text-fill-color: var(--clio-disabled-fill);
|
|
1030
|
+
}
|
|
1031
|
+
|
|
1032
|
+
/* Keyboard shortcut column, right-aligned. */
|
|
1033
|
+
:where(.menu, [role="menu"]) :is(kbd, .shortcut) {
|
|
1034
|
+
margin-left: auto;
|
|
1035
|
+
padding-left: 24px;
|
|
1036
|
+
font: inherit;
|
|
1037
|
+
}
|
|
1038
|
+
|
|
1039
|
+
/* Check mark column. */
|
|
1040
|
+
:where(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"])::before,
|
|
1041
|
+
:where(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked)::before {
|
|
1042
|
+
content: "";
|
|
1043
|
+
position: absolute;
|
|
1044
|
+
top: 50%;
|
|
1045
|
+
left: 3px;
|
|
1046
|
+
width: 9px;
|
|
1047
|
+
height: 8px;
|
|
1048
|
+
margin-top: -4px;
|
|
1049
|
+
background: var(--clio-art-s6-menucheck) 0 0 / 9px 8px no-repeat;
|
|
1050
|
+
}
|
|
1051
|
+
|
|
1052
|
+
:where(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active)::before,
|
|
1053
|
+
:where(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active)::before {
|
|
1054
|
+
background-image: var(--clio-art-s6-menucheck-on);
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
/* Submenu arrow. */
|
|
1058
|
+
:where(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"]))::after,
|
|
1059
|
+
:where(.menu, [role="menu"]) > li > [aria-haspopup="true"]::after {
|
|
1060
|
+
content: "";
|
|
1061
|
+
position: absolute;
|
|
1062
|
+
top: 50%;
|
|
1063
|
+
right: 4px;
|
|
1064
|
+
width: 6px;
|
|
1065
|
+
height: 11px;
|
|
1066
|
+
margin-top: -5.5px;
|
|
1067
|
+
background: var(--clio-art-s6-submenu) 0 0 / 6px 11px no-repeat;
|
|
1068
|
+
}
|
|
1069
|
+
|
|
1070
|
+
:where(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active)::after {
|
|
1071
|
+
background-image: var(--clio-art-s6-submenu-on);
|
|
1072
|
+
}
|
|
1073
|
+
|
|
1074
|
+
/* Separator: System 6 draws a dotted grey rule through a full-height row. */
|
|
1075
|
+
:where(.menu, [role="menu"]) > :is(li.separator, li[role="separator"], hr) {
|
|
1076
|
+
display: block;
|
|
1077
|
+
height: var(--clio-menu-separator-height);
|
|
1078
|
+
min-height: 0;
|
|
1079
|
+
margin: 0;
|
|
1080
|
+
padding: 0;
|
|
1081
|
+
border: 0;
|
|
1082
|
+
background: var(--clio-menu-separator);
|
|
1083
|
+
}
|
|
1084
|
+
|
|
1085
|
+
/* system.css divider items keep their label row and add the rule below. */
|
|
1086
|
+
:where(.menu, [role="menu"]) > li.divider {
|
|
1087
|
+
border-bottom: 1px dotted var(--clio-ink);
|
|
1088
|
+
}
|
|
1089
|
+
|
|
1090
|
+
/* Controls. Bare elements are styled through :where(), so the rules carry no
|
|
1091
|
+
specificity. State model (from AI System 6's fidelity contract): hover never
|
|
1092
|
+
changes a push button; pressed comes only from pointer-down, Space or
|
|
1093
|
+
Enter (:active) or from the .active class; disabled keeps full geometry. */
|
|
1094
|
+
|
|
1095
|
+
/* ---- Push buttons -------------------------------------------------------- */
|
|
1096
|
+
:where(button, .btn, .btn-default, .standard-button, input[type="button"], input[type="submit"], input[type="reset"]) {
|
|
1097
|
+
display: inline-flex;
|
|
1098
|
+
align-items: center;
|
|
1099
|
+
justify-content: center;
|
|
1100
|
+
box-sizing: border-box;
|
|
1101
|
+
min-width: var(--clio-button-min-width);
|
|
1102
|
+
min-height: var(--clio-control-height);
|
|
1103
|
+
margin: 0;
|
|
1104
|
+
padding: var(--clio-button-padding);
|
|
1105
|
+
border: var(--clio-button-border);
|
|
1106
|
+
border-radius: var(--clio-button-radius);
|
|
1107
|
+
background: var(--clio-button-bg);
|
|
1108
|
+
box-shadow: var(--clio-button-shadow);
|
|
1109
|
+
border-image: var(--clio-button-frame) var(--clio-button-frame-slice) fill / calc(var(--clio-button-frame-slice) * 1px) stretch;
|
|
1110
|
+
color: var(--clio-button-fg);
|
|
1111
|
+
font-family: var(--clio-font-chrome);
|
|
1112
|
+
font-size: var(--clio-font-size);
|
|
1113
|
+
font-stretch: var(--clio-font-stretch-text);
|
|
1114
|
+
font-weight: var(--clio-button-weight);
|
|
1115
|
+
-webkit-font-smoothing: var(--clio-font-smoothing);
|
|
1116
|
+
line-height: 14px;
|
|
1117
|
+
text-align: center;
|
|
1118
|
+
text-decoration: none;
|
|
1119
|
+
white-space: nowrap;
|
|
1120
|
+
appearance: none;
|
|
1121
|
+
-webkit-appearance: none;
|
|
1122
|
+
cursor: default;
|
|
1123
|
+
touch-action: manipulation;
|
|
1124
|
+
-webkit-tap-highlight-color: transparent;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
:where(button, .btn, .btn-default, .standard-button, input[type="button"], input[type="submit"], input[type="reset"]):not(:disabled, .disabled):is(:active, .active) {
|
|
1128
|
+
background: var(--clio-button-active-bg);
|
|
1129
|
+
box-shadow: var(--clio-button-active-shadow);
|
|
1130
|
+
border-image-source: var(--clio-button-frame-held);
|
|
1131
|
+
color: var(--clio-button-active-fg);
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
/* Default button: the ring that says Return will press it. Drawn as its own
|
|
1135
|
+
rounded rectangle (Inside Macintosh: PenSize(3,3), InsetRect(-4,-4),
|
|
1136
|
+
FrameRoundRect(16,16)), so its corners do not follow the button's. */
|
|
1137
|
+
:where(.default, .btn-default, button[type="submit"].default) {
|
|
1138
|
+
position: relative;
|
|
1139
|
+
border-radius: var(--clio-button-radius);
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
:where(.default, .btn-default)::before {
|
|
1143
|
+
content: "";
|
|
1144
|
+
position: absolute;
|
|
1145
|
+
inset: calc(-1px - var(--clio-button-default-gap) - var(--clio-button-default-width));
|
|
1146
|
+
border: var(--clio-button-default-width) solid var(--clio-ink);
|
|
1147
|
+
border-radius: var(--clio-button-default-radius);
|
|
1148
|
+
border-image: var(--clio-ring-frame) var(--clio-ring-frame-slice) / calc(var(--clio-ring-frame-slice) * 1px) stretch;
|
|
1149
|
+
pointer-events: none;
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
:where(button, .btn, .btn-default, .standard-button, input[type="button"], input[type="submit"], input[type="reset"]):is(:disabled, .disabled) {
|
|
1153
|
+
border: var(--clio-button-disabled-border);
|
|
1154
|
+
color: var(--clio-button-disabled-fg);
|
|
1155
|
+
/* System 6: the label through the 50% pattern, the frame left solid. */
|
|
1156
|
+
background-image: var(--clio-disabled-dither), linear-gradient(var(--clio-button-bg), var(--clio-button-bg));
|
|
1157
|
+
background-size: 2px 2px, auto;
|
|
1158
|
+
background-attachment: fixed, scroll;
|
|
1159
|
+
-webkit-background-clip: text, border-box;
|
|
1160
|
+
background-clip: text, border-box;
|
|
1161
|
+
-webkit-text-fill-color: var(--clio-disabled-fill);
|
|
1162
|
+
/* The frame without its face, so the dimmed label shows through. */
|
|
1163
|
+
border-image-source: var(--clio-button-frame-disabled, var(--clio-button-frame));
|
|
1164
|
+
border-image-slice: var(--clio-button-frame-slice);
|
|
1165
|
+
}
|
|
1166
|
+
|
|
1167
|
+
:where(button, .btn, .btn-default, .standard-button, input[type="button"], input[type="submit"], input[type="reset"]):focus-visible {
|
|
1168
|
+
outline: var(--clio-focus-outline);
|
|
1169
|
+
outline-offset: var(--clio-focus-offset);
|
|
1170
|
+
}
|
|
1171
|
+
|
|
1172
|
+
:where(.default, .btn-default):focus-visible {
|
|
1173
|
+
outline-offset: calc(var(--clio-focus-offset) + 4px);
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
/* ---- Check boxes ---------------------------------------------------------- */
|
|
1177
|
+
:where(input[type="checkbox"]) {
|
|
1178
|
+
position: relative;
|
|
1179
|
+
flex: none;
|
|
1180
|
+
box-sizing: border-box;
|
|
1181
|
+
width: var(--clio-check-size);
|
|
1182
|
+
height: var(--clio-check-size);
|
|
1183
|
+
margin: 0;
|
|
1184
|
+
border: var(--clio-check-border);
|
|
1185
|
+
border-radius: 0;
|
|
1186
|
+
background: var(--clio-check-bg);
|
|
1187
|
+
box-shadow: var(--clio-check-shadow);
|
|
1188
|
+
vertical-align: -2px;
|
|
1189
|
+
appearance: none;
|
|
1190
|
+
-webkit-appearance: none;
|
|
1191
|
+
cursor: default;
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1194
|
+
:where(input[type="checkbox"]):checked {
|
|
1195
|
+
background: var(--clio-check-mark), var(--clio-check-bg);
|
|
1196
|
+
background-origin: var(--clio-check-mark-origin);
|
|
1197
|
+
}
|
|
1198
|
+
|
|
1199
|
+
:where(input[type="checkbox"]):not(:disabled):active {
|
|
1200
|
+
border-width: var(--clio-check-pressed-border-width);
|
|
1201
|
+
}
|
|
1202
|
+
|
|
1203
|
+
:where(input[type="checkbox"]):disabled {
|
|
1204
|
+
border-color: var(--clio-disabled);
|
|
1205
|
+
opacity: 0.6;
|
|
1206
|
+
}
|
|
1207
|
+
|
|
1208
|
+
/* ---- Radio buttons -------------------------------------------------------- */
|
|
1209
|
+
:where(input[type="radio"]) {
|
|
1210
|
+
flex: none;
|
|
1211
|
+
box-sizing: border-box;
|
|
1212
|
+
width: var(--clio-radio-size);
|
|
1213
|
+
height: var(--clio-radio-size);
|
|
1214
|
+
margin: 0;
|
|
1215
|
+
border: 0;
|
|
1216
|
+
border-radius: 0;
|
|
1217
|
+
background: var(--clio-radio-off);
|
|
1218
|
+
vertical-align: -2px;
|
|
1219
|
+
appearance: none;
|
|
1220
|
+
-webkit-appearance: none;
|
|
1221
|
+
cursor: default;
|
|
1222
|
+
}
|
|
1223
|
+
|
|
1224
|
+
:where(input[type="radio"]):checked {
|
|
1225
|
+
background: var(--clio-radio-on);
|
|
1226
|
+
}
|
|
1227
|
+
|
|
1228
|
+
:where(input[type="radio"]):not(:disabled):active {
|
|
1229
|
+
background: var(--clio-radio-pressed);
|
|
1230
|
+
}
|
|
1231
|
+
|
|
1232
|
+
:where(input[type="radio"]):checked:not(:disabled):active {
|
|
1233
|
+
background: var(--clio-radio-pressed-on);
|
|
1234
|
+
}
|
|
1235
|
+
|
|
1236
|
+
:where(input[type="radio"]):disabled {
|
|
1237
|
+
opacity: 0.45;
|
|
1238
|
+
}
|
|
1239
|
+
|
|
1240
|
+
:where(input[type="checkbox"], input[type="radio"]):focus-visible {
|
|
1241
|
+
outline: var(--clio-focus-outline);
|
|
1242
|
+
outline-offset: var(--clio-focus-offset);
|
|
1243
|
+
}
|
|
1244
|
+
|
|
1245
|
+
:where(input[type="checkbox"], input[type="radio"]) + label,
|
|
1246
|
+
:where(label):has(> :is(input[type="checkbox"], input[type="radio"])) {
|
|
1247
|
+
font-family: var(--clio-font-chrome);
|
|
1248
|
+
font-size: var(--clio-font-size);
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
:where(label):has(> :is(input[type="checkbox"], input[type="radio"])) {
|
|
1252
|
+
display: inline-flex;
|
|
1253
|
+
align-items: center;
|
|
1254
|
+
gap: 6px;
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1257
|
+
:where(input[type="checkbox"], input[type="radio"]):disabled + label,
|
|
1258
|
+
:where(label):has(> :is(input[type="checkbox"], input[type="radio"]):disabled) {
|
|
1259
|
+
color: var(--clio-disabled);
|
|
1260
|
+
background-image: var(--clio-disabled-dither);
|
|
1261
|
+
background-size: 2px 2px;
|
|
1262
|
+
background-attachment: fixed;
|
|
1263
|
+
-webkit-background-clip: text;
|
|
1264
|
+
background-clip: text;
|
|
1265
|
+
-webkit-text-fill-color: var(--clio-disabled-fill);
|
|
1266
|
+
}
|
|
1267
|
+
|
|
1268
|
+
/* ---- Text fields ---------------------------------------------------------- */
|
|
1269
|
+
:where(input:not([type]), input[type="text"], input[type="search"], input[type="email"], input[type="password"],
|
|
1270
|
+
input[type="number"], input[type="url"], input[type="tel"], input[type="date"], input[type="time"],
|
|
1271
|
+
input[type="datetime-local"], input[type="month"], input[type="week"], textarea) {
|
|
1272
|
+
box-sizing: border-box;
|
|
1273
|
+
min-height: var(--clio-field-height);
|
|
1274
|
+
margin: 0;
|
|
1275
|
+
padding: var(--clio-field-padding);
|
|
1276
|
+
border: var(--clio-field-border);
|
|
1277
|
+
border-radius: 0;
|
|
1278
|
+
background: var(--clio-field-bg);
|
|
1279
|
+
box-shadow: var(--clio-field-shadow);
|
|
1280
|
+
color: var(--clio-ink);
|
|
1281
|
+
font-family: var(--clio-font-text);
|
|
1282
|
+
font-size: var(--clio-font-size);
|
|
1283
|
+
font-stretch: var(--clio-font-stretch-text);
|
|
1284
|
+
line-height: 14px;
|
|
1285
|
+
appearance: none;
|
|
1286
|
+
-webkit-appearance: none;
|
|
1287
|
+
}
|
|
1288
|
+
|
|
1289
|
+
:where(textarea) {
|
|
1290
|
+
display: block;
|
|
1291
|
+
line-height: 16px;
|
|
1292
|
+
resize: vertical;
|
|
1293
|
+
}
|
|
1294
|
+
|
|
1295
|
+
:where(input, textarea):focus-visible {
|
|
1296
|
+
outline: var(--clio-focus-outline);
|
|
1297
|
+
outline-offset: var(--clio-focus-offset);
|
|
1298
|
+
box-shadow: var(--clio-field-focus-shadow);
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
:where(input, textarea):disabled {
|
|
1302
|
+
color: var(--clio-disabled);
|
|
1303
|
+
}
|
|
1304
|
+
|
|
1305
|
+
:where(input, textarea)::placeholder {
|
|
1306
|
+
color: var(--clio-disabled);
|
|
1307
|
+
opacity: 1;
|
|
1308
|
+
}
|
|
1309
|
+
|
|
1310
|
+
:where(label) {
|
|
1311
|
+
font-family: var(--clio-font-chrome);
|
|
1312
|
+
font-size: var(--clio-font-size);
|
|
1313
|
+
}
|
|
1314
|
+
|
|
1315
|
+
/* ---- Pop-up menus (select) ------------------------------------------------ */
|
|
1316
|
+
:where(select) {
|
|
1317
|
+
box-sizing: border-box;
|
|
1318
|
+
min-height: var(--clio-popup-height, var(--clio-control-height));
|
|
1319
|
+
margin: 0;
|
|
1320
|
+
padding: var(--clio-popup-padding);
|
|
1321
|
+
border: var(--clio-popup-border);
|
|
1322
|
+
border-radius: var(--clio-popup-radius);
|
|
1323
|
+
background: var(--clio-popup-arrow), var(--clio-popup-bg);
|
|
1324
|
+
box-shadow: var(--clio-popup-shadow);
|
|
1325
|
+
border-image: var(--clio-popup-frame) var(--clio-popup-frame-slice) / calc(var(--clio-popup-frame-slice) * 1px) stretch;
|
|
1326
|
+
color: var(--clio-ink);
|
|
1327
|
+
font-family: var(--clio-font-chrome);
|
|
1328
|
+
font-size: var(--clio-font-size);
|
|
1329
|
+
font-stretch: var(--clio-font-stretch-text);
|
|
1330
|
+
font-weight: var(--clio-popup-weight);
|
|
1331
|
+
-webkit-font-smoothing: var(--clio-font-smoothing);
|
|
1332
|
+
line-height: 16px;
|
|
1333
|
+
appearance: none;
|
|
1334
|
+
-webkit-appearance: none;
|
|
1335
|
+
cursor: default;
|
|
1336
|
+
}
|
|
1337
|
+
|
|
1338
|
+
:where(select):focus-visible {
|
|
1339
|
+
outline: var(--clio-focus-outline);
|
|
1340
|
+
outline-offset: var(--clio-focus-offset);
|
|
1341
|
+
}
|
|
1342
|
+
|
|
1343
|
+
:where(select):disabled {
|
|
1344
|
+
color: var(--clio-disabled);
|
|
1345
|
+
}
|
|
1346
|
+
|
|
1347
|
+
/* A list box: <select multiple> or <select size="n">. */
|
|
1348
|
+
:where(select[multiple], select[size]:not([size="1"])) {
|
|
1349
|
+
min-height: 0;
|
|
1350
|
+
padding: 0;
|
|
1351
|
+
border: var(--clio-list-border);
|
|
1352
|
+
border-radius: 0;
|
|
1353
|
+
background: var(--clio-list-bg);
|
|
1354
|
+
box-shadow: var(--clio-list-shadow);
|
|
1355
|
+
font-family: var(--clio-font-text);
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1358
|
+
:where(select[multiple], select[size]:not([size="1"])) option {
|
|
1359
|
+
min-height: var(--clio-list-row);
|
|
1360
|
+
padding: 0 4px;
|
|
1361
|
+
}
|
|
1362
|
+
|
|
1363
|
+
:where(select[multiple], select[size]:not([size="1"])) option:checked {
|
|
1364
|
+
background: var(--clio-selection-bg) linear-gradient(var(--clio-selection-bg), var(--clio-selection-bg));
|
|
1365
|
+
color: var(--clio-selection-fg);
|
|
1366
|
+
}
|
|
1367
|
+
|
|
1368
|
+
/* ---- List boxes ------------------------------------------------------------ */
|
|
1369
|
+
:where(.listbox, ul[role="listbox"], ol[role="listbox"], div[role="listbox"]) {
|
|
1370
|
+
box-sizing: border-box;
|
|
1371
|
+
margin: 0;
|
|
1372
|
+
padding: 0;
|
|
1373
|
+
overflow: auto;
|
|
1374
|
+
list-style: none;
|
|
1375
|
+
border: var(--clio-list-border);
|
|
1376
|
+
background: var(--clio-list-bg);
|
|
1377
|
+
box-shadow: var(--clio-list-shadow);
|
|
1378
|
+
font-family: var(--clio-font-text);
|
|
1379
|
+
font-size: var(--clio-font-size);
|
|
1380
|
+
}
|
|
1381
|
+
|
|
1382
|
+
:where(.listbox, [role="listbox"]) > :is(li, [role="option"]) {
|
|
1383
|
+
min-height: var(--clio-list-row);
|
|
1384
|
+
padding: 0 4px;
|
|
1385
|
+
line-height: var(--clio-list-row);
|
|
1386
|
+
white-space: nowrap;
|
|
1387
|
+
cursor: default;
|
|
1388
|
+
}
|
|
1389
|
+
|
|
1390
|
+
:where(.listbox, [role="listbox"]) > :is(li, [role="option"]):is([aria-selected="true"], .selected) {
|
|
1391
|
+
background: var(--clio-selection-bg);
|
|
1392
|
+
color: var(--clio-selection-fg);
|
|
1393
|
+
}
|
|
1394
|
+
|
|
1395
|
+
:where(.listbox, [role="listbox"]) > :is(li, [role="option"]):focus-visible {
|
|
1396
|
+
outline: var(--clio-focus-outline);
|
|
1397
|
+
outline-offset: -2px;
|
|
1398
|
+
}
|
|
1399
|
+
|
|
1400
|
+
/* ---- Group boxes (fieldset) ---------------------------------------------- */
|
|
1401
|
+
:where(fieldset) {
|
|
1402
|
+
margin: 0;
|
|
1403
|
+
padding: 8px 10px 10px;
|
|
1404
|
+
border: var(--clio-group-border);
|
|
1405
|
+
background: var(--clio-group-bg);
|
|
1406
|
+
box-shadow: var(--clio-group-shadow);
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
:where(fieldset) > :where(legend) {
|
|
1410
|
+
padding: 0 4px;
|
|
1411
|
+
background: var(--clio-pane-bg);
|
|
1412
|
+
font-family: var(--clio-font-chrome);
|
|
1413
|
+
font-size: var(--clio-font-size);
|
|
1414
|
+
font-weight: var(--clio-chrome-weight);
|
|
1415
|
+
}
|
|
1416
|
+
|
|
1417
|
+
/* ---- Progress -------------------------------------------------------------- */
|
|
1418
|
+
:where(progress) {
|
|
1419
|
+
box-sizing: border-box;
|
|
1420
|
+
width: 100%;
|
|
1421
|
+
height: var(--clio-progress-height);
|
|
1422
|
+
margin: 0;
|
|
1423
|
+
border: var(--clio-progress-border);
|
|
1424
|
+
border-radius: 0;
|
|
1425
|
+
background: var(--clio-progress-bg);
|
|
1426
|
+
box-shadow: var(--clio-progress-shadow);
|
|
1427
|
+
color: var(--clio-ink);
|
|
1428
|
+
appearance: none;
|
|
1429
|
+
-webkit-appearance: none;
|
|
1430
|
+
}
|
|
1431
|
+
|
|
1432
|
+
:where(progress)::-webkit-progress-bar {
|
|
1433
|
+
background: var(--clio-progress-bg);
|
|
1434
|
+
}
|
|
1435
|
+
|
|
1436
|
+
:where(progress)::-webkit-progress-value {
|
|
1437
|
+
background: var(--clio-progress-fill);
|
|
1438
|
+
}
|
|
1439
|
+
|
|
1440
|
+
:where(progress)::-moz-progress-bar {
|
|
1441
|
+
background: var(--clio-progress-fill);
|
|
1442
|
+
}
|
|
1443
|
+
|
|
1444
|
+
/* ---- Tabs -------------------------------------------------------------------
|
|
1445
|
+
System 6 had no tab control; the System 6 tab here is an adaptation (a
|
|
1446
|
+
boxed label that joins its panel). Platinum draws the real Mac OS 9 tab. */
|
|
1447
|
+
:where([role="tablist"], .tabs) {
|
|
1448
|
+
display: flex;
|
|
1449
|
+
align-items: flex-end;
|
|
1450
|
+
gap: 0;
|
|
1451
|
+
margin: 0;
|
|
1452
|
+
padding: 0 8px;
|
|
1453
|
+
list-style: none;
|
|
1454
|
+
}
|
|
1455
|
+
|
|
1456
|
+
:where([role="tablist"], .tabs) > :is([role="tab"], li, button) {
|
|
1457
|
+
position: relative;
|
|
1458
|
+
display: inline-flex;
|
|
1459
|
+
align-items: center;
|
|
1460
|
+
box-sizing: border-box;
|
|
1461
|
+
min-width: 0;
|
|
1462
|
+
min-height: var(--clio-tab-height);
|
|
1463
|
+
margin: 0 -1px -1px 0;
|
|
1464
|
+
padding: 0 12px;
|
|
1465
|
+
border: 1px solid var(--clio-ink);
|
|
1466
|
+
border-radius: 0;
|
|
1467
|
+
background: var(--clio-tab-bg);
|
|
1468
|
+
box-shadow: none;
|
|
1469
|
+
color: var(--clio-ink);
|
|
1470
|
+
font-family: var(--clio-font-chrome);
|
|
1471
|
+
font-size: var(--clio-font-size);
|
|
1472
|
+
font-weight: var(--clio-chrome-weight);
|
|
1473
|
+
cursor: default;
|
|
1474
|
+
}
|
|
1475
|
+
|
|
1476
|
+
:where([role="tablist"], .tabs) > :is([role="tab"], li, button):is([aria-selected="true"], .active) {
|
|
1477
|
+
z-index: 1;
|
|
1478
|
+
border-bottom-color: var(--clio-tab-active-bg);
|
|
1479
|
+
background: var(--clio-tab-active-bg);
|
|
1480
|
+
color: var(--clio-ink);
|
|
1481
|
+
}
|
|
1482
|
+
|
|
1483
|
+
:where([role="tabpanel"], .tab-panel) {
|
|
1484
|
+
padding: 10px;
|
|
1485
|
+
border: var(--clio-tab-panel-border);
|
|
1486
|
+
background: var(--clio-tab-panel-bg);
|
|
1487
|
+
}
|
|
1488
|
+
|
|
1489
|
+
/* ---- Desktop icons ---------------------------------------------------------- */
|
|
1490
|
+
:where(.icon) {
|
|
1491
|
+
display: inline-flex;
|
|
1492
|
+
flex-direction: column;
|
|
1493
|
+
align-items: center;
|
|
1494
|
+
justify-content: flex-start;
|
|
1495
|
+
gap: 2px;
|
|
1496
|
+
width: 80px;
|
|
1497
|
+
min-width: 0;
|
|
1498
|
+
min-height: 0;
|
|
1499
|
+
margin: 0;
|
|
1500
|
+
padding: 0;
|
|
1501
|
+
border: 0;
|
|
1502
|
+
border-radius: 0;
|
|
1503
|
+
background: none;
|
|
1504
|
+
box-shadow: none;
|
|
1505
|
+
color: var(--clio-ink);
|
|
1506
|
+
font-family: var(--clio-font-small);
|
|
1507
|
+
font-size: var(--clio-font-size-small);
|
|
1508
|
+
text-align: center;
|
|
1509
|
+
cursor: default;
|
|
1510
|
+
}
|
|
1511
|
+
|
|
1512
|
+
:where(.icon) > :is(img, svg, .icon-image) {
|
|
1513
|
+
width: 32px;
|
|
1514
|
+
height: 32px;
|
|
1515
|
+
image-rendering: pixelated;
|
|
1516
|
+
}
|
|
1517
|
+
|
|
1518
|
+
:where(.icon) > :is(figcaption, span, .icon-label) {
|
|
1519
|
+
max-width: 100%;
|
|
1520
|
+
padding: 0 2px;
|
|
1521
|
+
background: var(--clio-label-bg);
|
|
1522
|
+
color: var(--clio-label-fg);
|
|
1523
|
+
line-height: 13px;
|
|
1524
|
+
}
|
|
1525
|
+
|
|
1526
|
+
:where(.icon):is(.selected, [aria-selected="true"], [aria-pressed="true"]) > :is(img, svg, .icon-image) {
|
|
1527
|
+
filter: var(--clio-icon-selected-filter, invert(1));
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
:where(.icon):is(.selected, [aria-selected="true"], [aria-pressed="true"]) > :is(figcaption, span, .icon-label) {
|
|
1531
|
+
background: var(--clio-label-selected-bg);
|
|
1532
|
+
color: var(--clio-label-selected-fg);
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
/* Dialogs and alerts.
|
|
1536
|
+
.modal-dialog / .alert-box: the double-framed modal box (dBoxProc).
|
|
1537
|
+
.standard-dialog: the plain box with a drop shadow (altDBoxProc).
|
|
1538
|
+
.modeless-dialog: a movable dialog, which is a .window.
|
|
1539
|
+
Use them on <dialog> or on a <div role="dialog">. system.css's
|
|
1540
|
+
.outer-border / .inner-border wrappers are accepted and draw nothing extra. */
|
|
1541
|
+
:where(.modal-dialog, .alert-box, dialog.modal) {
|
|
1542
|
+
box-sizing: border-box;
|
|
1543
|
+
max-width: 100%;
|
|
1544
|
+
margin: 0;
|
|
1545
|
+
padding: var(--clio-modal-padding);
|
|
1546
|
+
border: var(--clio-modal-border);
|
|
1547
|
+
background: var(--clio-dialog-bg);
|
|
1548
|
+
box-shadow: var(--clio-modal-frame);
|
|
1549
|
+
color: var(--clio-ink);
|
|
1550
|
+
}
|
|
1551
|
+
|
|
1552
|
+
:where(.standard-dialog) {
|
|
1553
|
+
box-sizing: border-box;
|
|
1554
|
+
max-width: 100%;
|
|
1555
|
+
margin: 0;
|
|
1556
|
+
padding: 12px 14px;
|
|
1557
|
+
border: var(--clio-plain-dialog-border);
|
|
1558
|
+
background: var(--clio-dialog-bg);
|
|
1559
|
+
box-shadow: var(--clio-plain-dialog-shadow);
|
|
1560
|
+
color: var(--clio-ink);
|
|
1561
|
+
}
|
|
1562
|
+
|
|
1563
|
+
:where(dialog):is(.modal-dialog, .alert-box, .standard-dialog, .modal)::backdrop {
|
|
1564
|
+
background: transparent;
|
|
1565
|
+
}
|
|
1566
|
+
|
|
1567
|
+
:where(.modal-dialog, .alert-box, .standard-dialog) :where(.outer-border, .inner-border) {
|
|
1568
|
+
padding: 0;
|
|
1569
|
+
border: 0;
|
|
1570
|
+
}
|
|
1571
|
+
|
|
1572
|
+
/* Alert layout: icon on the left, message, buttons bottom-right. */
|
|
1573
|
+
:where(.alert-box) {
|
|
1574
|
+
display: grid;
|
|
1575
|
+
grid-template-columns: auto 1fr;
|
|
1576
|
+
column-gap: 16px;
|
|
1577
|
+
row-gap: 12px;
|
|
1578
|
+
align-items: start;
|
|
1579
|
+
}
|
|
1580
|
+
|
|
1581
|
+
:where(.alert-box) > :where(.alert-icon) {
|
|
1582
|
+
grid-row: 1;
|
|
1583
|
+
width: 32px;
|
|
1584
|
+
height: 32px;
|
|
1585
|
+
}
|
|
1586
|
+
|
|
1587
|
+
:where(.alert-box) > :where(.alert-contents, .modal-contents, p) {
|
|
1588
|
+
grid-column: 2;
|
|
1589
|
+
margin: 0;
|
|
1590
|
+
}
|
|
1591
|
+
|
|
1592
|
+
:where(.alert-box) > :where(.alert-buttons, .dialog-buttons) {
|
|
1593
|
+
grid-column: 1 / -1;
|
|
1594
|
+
}
|
|
1595
|
+
|
|
1596
|
+
:where(.dialog-buttons, .alert-buttons) {
|
|
1597
|
+
display: flex;
|
|
1598
|
+
flex-wrap: wrap;
|
|
1599
|
+
justify-content: flex-end;
|
|
1600
|
+
gap: 12px;
|
|
1601
|
+
margin-top: 12px;
|
|
1602
|
+
}
|
|
1603
|
+
|
|
1604
|
+
/* An alert icon drawn here, not Apple's: a rounded speech box with "!". */
|
|
1605
|
+
:where(.alert-icon.caution, .alert-icon.note, .alert-icon.stop) {
|
|
1606
|
+
display: block;
|
|
1607
|
+
box-sizing: border-box;
|
|
1608
|
+
border: 2px solid var(--clio-ink);
|
|
1609
|
+
border-radius: 6px;
|
|
1610
|
+
background: var(--clio-paper);
|
|
1611
|
+
color: var(--clio-ink);
|
|
1612
|
+
font: 700 22px/28px var(--clio-font-display);
|
|
1613
|
+
text-align: center;
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
:where(.alert-icon.caution)::before { content: "!"; }
|
|
1617
|
+
:where(.alert-icon.note)::before { content: "i"; }
|
|
1618
|
+
:where(.alert-icon.stop) { border-radius: 50%; }
|
|
1619
|
+
:where(.alert-icon.stop)::before { content: "\00D7"; }
|
|
1620
|
+
|
|
1621
|
+
/* Scroll bars, for scroll areas clio.css owns (.window-pane, .listbox,
|
|
1622
|
+
textarea, list-box selects) and for anything you mark with .clio-scroll.
|
|
1623
|
+
Add class="clio-scrollbars" to <html> to give every scroll area the era's
|
|
1624
|
+
scroll bar.
|
|
1625
|
+
|
|
1626
|
+
WebKit/Blink draw the full bar: two arrow boxes, the patterned lane and the
|
|
1627
|
+
scroll box. The scroll box is proportional to the content here (a browser
|
|
1628
|
+
limit), where System 6 drew a fixed 16px square. Firefox has no scroll bar
|
|
1629
|
+
parts, so it gets the era's colours through scrollbar-color. */
|
|
1630
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar,
|
|
1631
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar {
|
|
1632
|
+
width: var(--clio-scrollbar-size);
|
|
1633
|
+
height: var(--clio-scrollbar-size);
|
|
1634
|
+
background: var(--clio-paper);
|
|
1635
|
+
}
|
|
1636
|
+
|
|
1637
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track,
|
|
1638
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-track {
|
|
1639
|
+
background: var(--clio-scrollbar-track);
|
|
1640
|
+
box-shadow: var(--clio-scrollbar-track-shadow);
|
|
1641
|
+
}
|
|
1642
|
+
|
|
1643
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track:vertical,
|
|
1644
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-track:vertical {
|
|
1645
|
+
border-left: 1px solid var(--clio-ink);
|
|
1646
|
+
}
|
|
1647
|
+
|
|
1648
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track:horizontal,
|
|
1649
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-track:horizontal {
|
|
1650
|
+
border-top: 1px solid var(--clio-ink);
|
|
1651
|
+
}
|
|
1652
|
+
|
|
1653
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-thumb,
|
|
1654
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-thumb {
|
|
1655
|
+
min-width: var(--clio-scrollbar-size);
|
|
1656
|
+
min-height: var(--clio-scrollbar-size);
|
|
1657
|
+
border: var(--clio-scrollbar-thumb-border);
|
|
1658
|
+
background: var(--clio-scrollbar-thumb-bg);
|
|
1659
|
+
box-shadow: var(--clio-scrollbar-thumb-shadow);
|
|
1660
|
+
}
|
|
1661
|
+
|
|
1662
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-thumb:horizontal,
|
|
1663
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-thumb:horizontal {
|
|
1664
|
+
background: var(--clio-scrollbar-thumb-bg-horizontal, var(--clio-scrollbar-thumb-bg));
|
|
1665
|
+
box-shadow: var(--clio-scrollbar-thumb-shadow-horizontal, var(--clio-scrollbar-thumb-shadow));
|
|
1666
|
+
}
|
|
1667
|
+
|
|
1668
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:start:decrement,
|
|
1669
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:end:increment,
|
|
1670
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:start:decrement,
|
|
1671
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:end:increment {
|
|
1672
|
+
display: block;
|
|
1673
|
+
width: var(--clio-scrollbar-size);
|
|
1674
|
+
height: var(--clio-scrollbar-size);
|
|
1675
|
+
background-color: var(--clio-scrollbar-button-bg);
|
|
1676
|
+
background-position: center;
|
|
1677
|
+
background-repeat: no-repeat;
|
|
1678
|
+
box-shadow: var(--clio-scrollbar-button-shadow);
|
|
1679
|
+
}
|
|
1680
|
+
|
|
1681
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:decrement,
|
|
1682
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:decrement {
|
|
1683
|
+
border-left: 1px solid var(--clio-ink);
|
|
1684
|
+
border-bottom: 1px solid var(--clio-ink);
|
|
1685
|
+
background-image: var(--clio-scrollbar-up);
|
|
1686
|
+
}
|
|
1687
|
+
|
|
1688
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:increment,
|
|
1689
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:increment {
|
|
1690
|
+
border-left: 1px solid var(--clio-ink);
|
|
1691
|
+
border-top: 1px solid var(--clio-ink);
|
|
1692
|
+
background-image: var(--clio-scrollbar-down);
|
|
1693
|
+
}
|
|
1694
|
+
|
|
1695
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:decrement,
|
|
1696
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:decrement {
|
|
1697
|
+
border-top: 1px solid var(--clio-ink);
|
|
1698
|
+
border-right: 1px solid var(--clio-ink);
|
|
1699
|
+
background-image: var(--clio-scrollbar-left);
|
|
1700
|
+
}
|
|
1701
|
+
|
|
1702
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:increment,
|
|
1703
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:increment {
|
|
1704
|
+
border-top: 1px solid var(--clio-ink);
|
|
1705
|
+
border-left: 1px solid var(--clio-ink);
|
|
1706
|
+
background-image: var(--clio-scrollbar-right);
|
|
1707
|
+
}
|
|
1708
|
+
|
|
1709
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:decrement:active,
|
|
1710
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:decrement:active {
|
|
1711
|
+
background-image: var(--clio-scrollbar-up-on);
|
|
1712
|
+
}
|
|
1713
|
+
|
|
1714
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:increment:active,
|
|
1715
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:increment:active {
|
|
1716
|
+
background-image: var(--clio-scrollbar-down-on);
|
|
1717
|
+
}
|
|
1718
|
+
|
|
1719
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:decrement:active,
|
|
1720
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:decrement:active {
|
|
1721
|
+
background-image: var(--clio-scrollbar-left-on);
|
|
1722
|
+
}
|
|
1723
|
+
|
|
1724
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:increment:active,
|
|
1725
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:increment:active {
|
|
1726
|
+
background-image: var(--clio-scrollbar-right-on);
|
|
1727
|
+
}
|
|
1728
|
+
|
|
1729
|
+
/* Only the single arrow box at each end, as on the Mac. */
|
|
1730
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:start:increment,
|
|
1731
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:end:decrement,
|
|
1732
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:start:increment,
|
|
1733
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:end:decrement {
|
|
1734
|
+
display: none;
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1737
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-corner,
|
|
1738
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-corner {
|
|
1739
|
+
border-top: 1px solid var(--clio-ink);
|
|
1740
|
+
border-left: 1px solid var(--clio-ink);
|
|
1741
|
+
background: var(--clio-scrollbar-corner);
|
|
1742
|
+
}
|
|
1743
|
+
|
|
1744
|
+
@supports not selector(::-webkit-scrollbar) {
|
|
1745
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, html.clio-scrollbars, .clio-scrollbars *) {
|
|
1746
|
+
scrollbar-color: var(--clio-scrollbar-thumb-color, var(--clio-ink)) var(--clio-scrollbar-track-color, #c0c0c0);
|
|
1747
|
+
}
|
|
1748
|
+
}
|
|
1749
|
+
|
|
1750
|
+
/* Control Strip (System 7.5 to Mac OS 9): a row of module buttons with scroll
|
|
1751
|
+
arrows and a tab that folds the strip away. Markup follows AI System 6:
|
|
1752
|
+
.control-strip > button.control-strip-scroll.control-strip-scroll-back,
|
|
1753
|
+
.control-strip-modules[role=toolbar] > .control-strip-module-track >
|
|
1754
|
+
button.control-strip-module (an icon inside; aria-haspopup="menu" draws the
|
|
1755
|
+
menu triangle), button.control-strip-scroll.control-strip-scroll-forward,
|
|
1756
|
+
button.control-strip-handle. Add .is-collapsed to fold it to the tab, and
|
|
1757
|
+
data-edge="right" for a strip on the right edge. Placement is yours
|
|
1758
|
+
(AI System 6 fixes it to the screen's lower left). */
|
|
1759
|
+
/* The strip's art is the same in System 7.5.3, Mac OS 8.5 and Mac OS 9.0
|
|
1760
|
+
(compared pixel for pixel with the backdrop removed); only the cell colours
|
|
1761
|
+
differ, so it lives here for every era. Redrawn by tooling/p9-art.py. */
|
|
1762
|
+
:root {
|
|
1763
|
+
--clio-art-p9-strip-cap: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAYBAMAAADXK7paAAAAHlBMVEUAAAAAAABERERVVVWAgICIiIigoKDAwMDMzP/////+VYXkAAAAAXRSTlMAQObYZgAAAGlJREFUeJxjFGQAg/8sbAlgxkwWBiUQfZuBheHfAwYGhg8MTBAlDPgYLAx/9jAwsOgysDAwhDIw/L8LYvy98NcVry4mBoa/Zy+AtTOwlzP8AzFY3r0jYBfC0l/3P4AZjILMBiD6DCPMOwBKOxgiile5lQAAAABJRU5ErkJggg==");
|
|
1764
|
+
--clio-art-s7-strip-cap: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAYBAMAAADXK7paAAAAG1BMVEUAAAAAAABERERVVVWIiIiqqqrMzMzMzP/////JRvoVAAAAAXRSTlMAQObYZgAAAGVJREFUeJxjFGQAg/8srAFgxioWBiUQfYeBheHfAwYGhg8MTBAlDPgYLAx/zzIwMMsxsDAwuDAw/L8HYvy98M+FgC6Gf/egDLY0hn8gBvO7dwTsQmj/ff8DmMEoyGwAos8wwrwDAP+1F0dci98qAAAAAElFTkSuQmCC");
|
|
1765
|
+
--clio-art-p9-strip-back: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAgMAAADwXCcuAAAACVBMVEUAAABVVVXd3d2apXz3AAAAAXRSTlMAQObYZgAAACxJREFUeJwFwaERwCAABLD0j3oE7IPBs/8KrcBjSKhiKM/cebs0gvzkfFioLlg9BPcTGNP4AAAAAElFTkSuQmCC");
|
|
1766
|
+
--clio-art-p9-strip-forward: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAgMAAADwXCcuAAAACVBMVEUAAABVVVXd3d2apXz3AAAAAXRSTlMAQObYZgAAAC1JREFUeJwFwSESABAUQMHnzegC9/nFqRX3IegCuxBIwVYxdySFgLzpHbg2cvhWkAdTrBZiqwAAAABJRU5ErkJggg==");
|
|
1767
|
+
--clio-art-p9-strip-menu: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAHAQMAAAAVq36TAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAABZJREFUeJxjaGA4wPCA4QMTA9MHpgcAIQYE58W2/JQAAAAASUVORK5CYII=");
|
|
1768
|
+
--clio-art-p9-strip-handle: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAYBAMAAAAFe7ACAAAAFVBMVEUAAAAAAABERERVVVWIiIjMzMz///8V67gPAAAAAXRSTlMAQObYZgAAAINJREFUeJxVz7ENAjEMheE/IbQokRiAUVJQUjAs5RXZhJvgkp6LjGwfBU309PzFkkMBZAApVVgAIqWUZ9bORsE6fWvWJCukoIlbtjICG0sK5iLnVrM7Hqefsy3qPKnzZM6n/+41D/epbbi772IOaOPYsIv/sIrEG6YA4XqB3vWO2UErvmVcJ4BylohjAAAAAElFTkSuQmCC");
|
|
1769
|
+
--clio-art-p9-strip-tab: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAYBAMAAAAFe7ACAAAAFVBMVEUAAAAAAABERERVVVWIiIjMzMz///8V67gPAAAAAXRSTlMAQObYZgAAAIFJREFUeJxVz7ENAjEMQNHvKPS+DRiBEVJQMi49WeAkRrgJSHoijOyEgipf1pPlyAbQgMwVxqN7iYIACVprRaMUskS9gKJeSWKYADtGLRruzC3Lcqd6WW7uw45V7ma5m/Xv3uW53H3YdLnU7g4YFg9Q+6phfv2nw95BNlGsRf1++QW6eCj9rQPMHAAAAABJRU5ErkJggg==");
|
|
1770
|
+
}
|
|
1771
|
+
|
|
1772
|
+
:where(.control-strip) {
|
|
1773
|
+
display: inline-flex;
|
|
1774
|
+
align-items: stretch;
|
|
1775
|
+
height: var(--clio-strip-height);
|
|
1776
|
+
max-width: 100%;
|
|
1777
|
+
vertical-align: bottom;
|
|
1778
|
+
user-select: none;
|
|
1779
|
+
-webkit-user-select: none;
|
|
1780
|
+
}
|
|
1781
|
+
|
|
1782
|
+
/* The end cap, then every cell: one bevelled box between 1px lines. */
|
|
1783
|
+
:where(.control-strip)::before,
|
|
1784
|
+
:where(.control-strip) > :is(.control-strip-scroll, .control-strip-modules),
|
|
1785
|
+
:where(.control-strip-module) {
|
|
1786
|
+
box-sizing: border-box;
|
|
1787
|
+
border: var(--clio-strip-line);
|
|
1788
|
+
border-left: 0;
|
|
1789
|
+
background: var(--clio-strip-bg);
|
|
1790
|
+
box-shadow: var(--clio-strip-cell-shadow);
|
|
1791
|
+
}
|
|
1792
|
+
|
|
1793
|
+
/* The end cap is one picture: frame, bevel, icon and the rounded lower-left corner. */
|
|
1794
|
+
:where(.control-strip)::before {
|
|
1795
|
+
content: "";
|
|
1796
|
+
flex: none;
|
|
1797
|
+
width: calc(var(--clio-strip-cap-width) + 2px);
|
|
1798
|
+
border: 0;
|
|
1799
|
+
background: var(--clio-strip-cap) 0 0 / 100% 100% no-repeat;
|
|
1800
|
+
box-shadow: none;
|
|
1801
|
+
}
|
|
1802
|
+
|
|
1803
|
+
:where(.control-strip) > :is(.control-strip-scroll, .control-strip-handle) {
|
|
1804
|
+
flex: none;
|
|
1805
|
+
margin: 0;
|
|
1806
|
+
padding: 0;
|
|
1807
|
+
border-radius: 0;
|
|
1808
|
+
appearance: none;
|
|
1809
|
+
-webkit-appearance: none;
|
|
1810
|
+
cursor: default;
|
|
1811
|
+
}
|
|
1812
|
+
|
|
1813
|
+
/* Scroll arrows: 13px cells, sunken and hollow while there is nothing to scroll. */
|
|
1814
|
+
:where(.control-strip) > .control-strip-scroll {
|
|
1815
|
+
width: calc(var(--clio-strip-scroll-width) + 1px);
|
|
1816
|
+
min-width: 0;
|
|
1817
|
+
height: auto;
|
|
1818
|
+
min-height: 0;
|
|
1819
|
+
background: var(--clio-strip-back) 1px 6px / 10px 10px no-repeat, var(--clio-strip-bg);
|
|
1820
|
+
box-shadow: var(--clio-strip-cell-shadow);
|
|
1821
|
+
}
|
|
1822
|
+
|
|
1823
|
+
:where(.control-strip) > .control-strip-scroll-forward {
|
|
1824
|
+
background-image: var(--clio-strip-forward);
|
|
1825
|
+
}
|
|
1826
|
+
|
|
1827
|
+
:where(.control-strip) > .control-strip-scroll:disabled {
|
|
1828
|
+
background:
|
|
1829
|
+
var(--clio-strip-back) 1px 6px / 10px 10px no-repeat,
|
|
1830
|
+
var(--clio-strip-sunken-lines),
|
|
1831
|
+
var(--clio-strip-bg);
|
|
1832
|
+
box-shadow: var(--clio-strip-sunken-shadow);
|
|
1833
|
+
}
|
|
1834
|
+
|
|
1835
|
+
:where(.control-strip) > .control-strip-scroll-forward:disabled {
|
|
1836
|
+
background-image: var(--clio-strip-forward);
|
|
1837
|
+
}
|
|
1838
|
+
|
|
1839
|
+
:where(.control-strip) > .control-strip-scroll:not(:disabled):active,
|
|
1840
|
+
:where(.control-strip-module):not(:disabled):is(:active, [aria-expanded="true"]) {
|
|
1841
|
+
background-color: var(--clio-strip-pressed-bg);
|
|
1842
|
+
box-shadow: var(--clio-strip-pressed-shadow);
|
|
1843
|
+
}
|
|
1844
|
+
|
|
1845
|
+
:where(.control-strip-modules) {
|
|
1846
|
+
display: flex;
|
|
1847
|
+
min-width: 0;
|
|
1848
|
+
overflow: hidden;
|
|
1849
|
+
border: 0;
|
|
1850
|
+
background: none;
|
|
1851
|
+
box-shadow: none;
|
|
1852
|
+
}
|
|
1853
|
+
|
|
1854
|
+
:where(.control-strip-module-track) {
|
|
1855
|
+
display: flex;
|
|
1856
|
+
}
|
|
1857
|
+
|
|
1858
|
+
/* A module: the 16px icon 2px in, the menu triangle 3px from the right. */
|
|
1859
|
+
:where(.control-strip-module) {
|
|
1860
|
+
position: relative;
|
|
1861
|
+
display: flex;
|
|
1862
|
+
flex: none;
|
|
1863
|
+
align-items: center;
|
|
1864
|
+
width: calc(var(--clio-strip-module-width) + 1px);
|
|
1865
|
+
min-width: 0;
|
|
1866
|
+
height: var(--clio-strip-height);
|
|
1867
|
+
min-height: 0;
|
|
1868
|
+
margin: 0;
|
|
1869
|
+
padding: 0 0 0 var(--clio-strip-icon-inset);
|
|
1870
|
+
border-radius: 0;
|
|
1871
|
+
color: var(--clio-ink);
|
|
1872
|
+
appearance: none;
|
|
1873
|
+
-webkit-appearance: none;
|
|
1874
|
+
cursor: default;
|
|
1875
|
+
}
|
|
1876
|
+
|
|
1877
|
+
:where(.control-strip-module) > :is(svg, img, .sys-icon) {
|
|
1878
|
+
width: 16px;
|
|
1879
|
+
height: 16px;
|
|
1880
|
+
}
|
|
1881
|
+
|
|
1882
|
+
:where(.control-strip-module)[aria-haspopup]::after {
|
|
1883
|
+
content: "";
|
|
1884
|
+
position: absolute;
|
|
1885
|
+
top: var(--clio-strip-menu-top);
|
|
1886
|
+
right: calc(var(--clio-strip-menu-inset) + 1px);
|
|
1887
|
+
width: 4px;
|
|
1888
|
+
height: 7px;
|
|
1889
|
+
background: var(--clio-strip-menu) 0 0 / 4px 7px no-repeat;
|
|
1890
|
+
}
|
|
1891
|
+
|
|
1892
|
+
:where(.control-strip-module):disabled {
|
|
1893
|
+
color: var(--clio-disabled);
|
|
1894
|
+
opacity: 0.5;
|
|
1895
|
+
}
|
|
1896
|
+
|
|
1897
|
+
/* The tab: open, a slanted end with a grip; folded, the strip shrinks to it. */
|
|
1898
|
+
:where(.control-strip) > .control-strip-handle {
|
|
1899
|
+
width: var(--clio-strip-handle-width);
|
|
1900
|
+
min-width: 0;
|
|
1901
|
+
height: var(--clio-strip-height);
|
|
1902
|
+
min-height: 0;
|
|
1903
|
+
border: 0;
|
|
1904
|
+
background: var(--clio-strip-handle) 0 0 / 100% 100% no-repeat;
|
|
1905
|
+
box-shadow: none;
|
|
1906
|
+
}
|
|
1907
|
+
|
|
1908
|
+
:where(.control-strip.is-collapsed)::before,
|
|
1909
|
+
:where(.control-strip.is-collapsed) > :not(.control-strip-handle) {
|
|
1910
|
+
display: none;
|
|
1911
|
+
}
|
|
1912
|
+
|
|
1913
|
+
:where(.control-strip.is-collapsed) > .control-strip-handle {
|
|
1914
|
+
width: var(--clio-strip-tab-width);
|
|
1915
|
+
background-image: var(--clio-strip-tab);
|
|
1916
|
+
}
|
|
1917
|
+
|
|
1918
|
+
:where(.control-strip)[data-edge="right"] {
|
|
1919
|
+
flex-direction: row-reverse;
|
|
1920
|
+
}
|
|
1921
|
+
|
|
1922
|
+
:where(.control-strip)[data-edge="right"]::before,
|
|
1923
|
+
:where(.control-strip)[data-edge="right"] > .control-strip-handle {
|
|
1924
|
+
transform: scaleX(-1);
|
|
1925
|
+
}
|
|
1926
|
+
|
|
1927
|
+
:where(.control-strip) > :focus-visible,
|
|
1928
|
+
:where(.control-strip-module):focus-visible {
|
|
1929
|
+
outline: var(--clio-focus-outline);
|
|
1930
|
+
outline-offset: -3px;
|
|
1931
|
+
}
|
|
1932
|
+
|
|
1933
|
+
/* Mac OS 8/9 Platinum. Applies inside any element with data-era="platinum"
|
|
1934
|
+
(put it on <html> for a whole page). clio.platinum.css is a build of this
|
|
1935
|
+
same file with Platinum as the page default.
|
|
1936
|
+
Values: AI System 6's Platinum tables, each tied to a Mac OS 9.0 capture
|
|
1937
|
+
(GUIdebook, Infinite Mac). P-numbers in comments are AI System 6's patch
|
|
1938
|
+
ids; see EVIDENCE.md. */
|
|
1939
|
+
:root {
|
|
1940
|
+
--clio-ink: #000000;
|
|
1941
|
+
--clio-paper: #dddddd;
|
|
1942
|
+
--clio-face: #dddddd;
|
|
1943
|
+
--clio-disabled: #6f6f6f;
|
|
1944
|
+
--clio-disabled-dither: none;
|
|
1945
|
+
/* Push button, disabled button and default ring: the real pixel frames
|
|
1946
|
+
(tooling/frame-art.py: Mac OS 9.0 Appearance and GUIdebook's Mac OS 9.0). */
|
|
1947
|
+
--clio-button-frame: var(--clio-art-frame-p9-button);
|
|
1948
|
+
--clio-button-frame-held: var(--clio-art-frame-p9-button-held);
|
|
1949
|
+
--clio-button-frame-disabled: var(--clio-art-frame-p9-button-disabled);
|
|
1950
|
+
--clio-ring-frame: var(--clio-art-frame-p9-ring);
|
|
1951
|
+
--clio-ring-frame-slice: 6;
|
|
1952
|
+
--clio-disabled-fill: currentcolor;
|
|
1953
|
+
--clio-selection-bg: #ccccff;
|
|
1954
|
+
--clio-selection-fg: #000000;
|
|
1955
|
+
|
|
1956
|
+
/* Charcoal if the visitor has it, else Clio Sans '97 (Charcoal 12 rebuilt
|
|
1957
|
+
from Mac OS 9.0), drawn without smoothing like the bitmap it is; Asap
|
|
1958
|
+
(OFL) at the widths AI System 6 measured against Charcoal as the last
|
|
1959
|
+
fallback; Geneva for text on a Mac. */
|
|
1960
|
+
--clio-font-chrome: Charcoal, "Charcoal CY", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
1961
|
+
--clio-font-display: Charcoal, "Charcoal CY", "Clio Sans '97 Display", "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
1962
|
+
--clio-font-window-title: Charcoal, "Charcoal CY", "Clio Sans '97 Title Exact", "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
1963
|
+
--clio-font-button: Charcoal, "Charcoal CY", "Clio Sans '97 Exact", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
1964
|
+
--clio-font-text: Geneva, "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
1965
|
+
--clio-font-size: 12px;
|
|
1966
|
+
--clio-font-smoothing: none;
|
|
1967
|
+
--clio-text-smoothing: auto;
|
|
1968
|
+
--clio-font-small: var(--clio-font-text);
|
|
1969
|
+
--clio-font-size-small: 10px;
|
|
1970
|
+
--clio-chrome-weight: 700;
|
|
1971
|
+
--clio-font-stretch-text: 113%;
|
|
1972
|
+
--clio-font-stretch-title: 123%;
|
|
1973
|
+
|
|
1974
|
+
--clio-border: 1px solid #000000;
|
|
1975
|
+
--clio-control-height: 20px;
|
|
1976
|
+
--clio-field-height: 22px;
|
|
1977
|
+
--clio-focus-outline: 2px solid #6666cc;
|
|
1978
|
+
--clio-focus-offset: 0px;
|
|
1979
|
+
|
|
1980
|
+
/* [I] Solid base of AI System 6's azul tile; the tile itself is not shipped. */
|
|
1981
|
+
--clio-desktop: #4a71ab;
|
|
1982
|
+
|
|
1983
|
+
/* P14 window frame: black line, a raised 4px strip, black content line. */
|
|
1984
|
+
--clio-window-bg: #cccccc;
|
|
1985
|
+
--clio-pane-bg: #dddddd;
|
|
1986
|
+
--clio-window-border: 1px solid #000000;
|
|
1987
|
+
/* The frame's white light and #999 shade are drawn as lines in the window's
|
|
1988
|
+
background (below), which leave the two odd corners in the frame grey. */
|
|
1989
|
+
--clio-window-shadow: 1px 1px 0 #000000;
|
|
1990
|
+
/* AI System 6 pads 5px because its pane has no border; here the pane draws
|
|
1991
|
+
the black content line itself, so the strip is 4px. */
|
|
1992
|
+
--clio-window-padding: 2px 4px 4px;
|
|
1993
|
+
|
|
1994
|
+
/* Title bar: 19px, six white/#777 ridge pairs, covers behind the boxes. */
|
|
1995
|
+
--clio-titlebar-height: 19px;
|
|
1996
|
+
--clio-titlebar-margin: 0;
|
|
1997
|
+
--clio-titlebar-padding: 1px 0;
|
|
1998
|
+
--clio-titlebar-border: 1px solid #000000;
|
|
1999
|
+
--clio-titlebar-row: 13px;
|
|
2000
|
+
--clio-titlebar-slot: 16px;
|
|
2001
|
+
--clio-titlebar-shade-slot: 16px;
|
|
2002
|
+
--clio-shade-display: block;
|
|
2003
|
+
--clio-titlebar-inactive-bg: #dddddd;
|
|
2004
|
+
--clio-title-bg: #cccccc;
|
|
2005
|
+
--clio-title-fg: #000000;
|
|
2006
|
+
--clio-title-inactive-fg: #777777;
|
|
2007
|
+
--clio-title-padding: 0 4px;
|
|
2008
|
+
--clio-box-size: 11px;
|
|
2009
|
+
--clio-box-inset: 0px;
|
|
2010
|
+
--clio-box-isolation: 0px;
|
|
2011
|
+
|
|
2012
|
+
/* Menu bar and menus (P21, P24) */
|
|
2013
|
+
--clio-menubar-height: 20px;
|
|
2014
|
+
--clio-menubar-bg: #dddddd;
|
|
2015
|
+
--clio-menubar-border: 1px solid #000000;
|
|
2016
|
+
--clio-menubar-shadow: inset 0 1px 0 #ffffff, inset 0 -1px 0 #999999;
|
|
2017
|
+
--clio-menubar-padding: 0 8px;
|
|
2018
|
+
--clio-menu-title-padding: 0 10px;
|
|
2019
|
+
--clio-menu-title-inset: 0px;
|
|
2020
|
+
--clio-menu-title-active-bg: #333399;
|
|
2021
|
+
--clio-menu-title-active-fg: #ffffff;
|
|
2022
|
+
--clio-menu-title-active-shadow: inset 0 1px 0 #6666cc, inset 0 -1px 0 #000088;
|
|
2023
|
+
--clio-menu-bg: #dddddd;
|
|
2024
|
+
--clio-menu-border: 1px solid #000000;
|
|
2025
|
+
--clio-menu-border-top-width: 0;
|
|
2026
|
+
--clio-menu-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #999999, 1px 1px 0 #222222;
|
|
2027
|
+
--clio-menu-item-height: 16px;
|
|
2028
|
+
--clio-menu-item-padding: 0 10px 0 21px;
|
|
2029
|
+
--clio-menu-item-weight: 600;
|
|
2030
|
+
--clio-menu-item-active-bg: #333399;
|
|
2031
|
+
--clio-menu-item-active-fg: #ffffff;
|
|
2032
|
+
--clio-menu-item-active-shadow: inset 1px 0 0 #6666cc, inset -1px 0 0 #000088;
|
|
2033
|
+
/* Separator: a 6px row, #888 on its third line and white on its fourth,
|
|
2034
|
+
across the menu's full width (Mac OS 9.0 Finder File menu). */
|
|
2035
|
+
--clio-menu-separator:
|
|
2036
|
+
linear-gradient(#888888, #888888) 0 2px / 100% 1px no-repeat,
|
|
2037
|
+
linear-gradient(#ffffff, #ffffff) 0 3px / 100% 1px no-repeat;
|
|
2038
|
+
--clio-menu-separator-height: 6px;
|
|
2039
|
+
|
|
2040
|
+
/* Push buttons: bevel, 3px corners (P29 pressed) */
|
|
2041
|
+
--clio-button-bg: transparent;
|
|
2042
|
+
--clio-button-fg: #000000;
|
|
2043
|
+
--clio-button-border: 1px solid #000000;
|
|
2044
|
+
--clio-button-radius: 3px;
|
|
2045
|
+
--clio-button-shadow: none;
|
|
2046
|
+
--clio-button-padding: 0 10px;
|
|
2047
|
+
--clio-button-min-width: 58px;
|
|
2048
|
+
--clio-button-weight: 700;
|
|
2049
|
+
/* Held: the frame and its dark face cut from Mac OS 9.0 (frame-art.py). */
|
|
2050
|
+
--clio-button-active-bg: transparent;
|
|
2051
|
+
--clio-button-active-fg: #ffffff;
|
|
2052
|
+
--clio-button-active-shadow: none;
|
|
2053
|
+
--clio-button-disabled-fg: #777777;
|
|
2054
|
+
--clio-button-disabled-border: 1px solid #888888;
|
|
2055
|
+
|
|
2056
|
+
/* Check boxes and radio buttons: the mark and both radio states are redrawn
|
|
2057
|
+
from Mac OS 9.0's General Controls (tooling/p9-art.py). */
|
|
2058
|
+
--clio-check-size: 12px;
|
|
2059
|
+
/* The well's white light and #888 shade as lines that leave the odd corners
|
|
2060
|
+
in the face (an inset shadow would also paint over the check mark). */
|
|
2061
|
+
--clio-check-bg:
|
|
2062
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / calc(100% - 1px) 1px no-repeat padding-box,
|
|
2063
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px calc(100% - 1px) no-repeat padding-box,
|
|
2064
|
+
linear-gradient(#888888, #888888) 1px 100% / calc(100% - 1px) 1px no-repeat padding-box,
|
|
2065
|
+
linear-gradient(#888888, #888888) 100% 1px / 1px calc(100% - 1px) no-repeat padding-box,
|
|
2066
|
+
#dddddd;
|
|
2067
|
+
--clio-check-border: 1px solid #000000;
|
|
2068
|
+
--clio-check-shadow: none;
|
|
2069
|
+
--clio-check-mark: var(--clio-art-p9-check) 0 0 / 10px 10px no-repeat;
|
|
2070
|
+
--clio-check-mark-origin: padding-box;
|
|
2071
|
+
--clio-check-pressed-border-width: 1px;
|
|
2072
|
+
|
|
2073
|
+
/* Text fields (P30) */
|
|
2074
|
+
--clio-field-bg: #ffffff;
|
|
2075
|
+
--clio-field-border: 1px solid #000000;
|
|
2076
|
+
--clio-field-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff;
|
|
2077
|
+
--clio-field-padding: 2px 3px;
|
|
2078
|
+
--clio-field-focus-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff;
|
|
2079
|
+
|
|
2080
|
+
/* Pop-up menus, measured from Mac OS 9.0 (Appearance tab, "Apple platinum"):
|
|
2081
|
+
20px, black frame, #ddd face with a white top line and #aaa foot; a #aaa
|
|
2082
|
+
divider 20px from the right, then a raised arrow box (white left and top,
|
|
2083
|
+
#aaa then #777 shade) with the 7x10 arrows 7px from the right, 4px down. */
|
|
2084
|
+
--clio-popup-bg: #dddddd;
|
|
2085
|
+
--clio-popup-border: 1px solid #000000;
|
|
2086
|
+
--clio-popup-radius: 0;
|
|
2087
|
+
--clio-popup-frame: var(--clio-art-frame-p9-popup); /* the real corners */
|
|
2088
|
+
--clio-popup-shadow: none;
|
|
2089
|
+
--clio-popup-height: 20px;
|
|
2090
|
+
--clio-popup-padding: 0 28px 0 7px;
|
|
2091
|
+
--clio-popup-weight: 700;
|
|
2092
|
+
--clio-popup-arrow:
|
|
2093
|
+
var(--clio-art-p-dropdown) right 7px top 4px / 7px 10px no-repeat,
|
|
2094
|
+
linear-gradient(#777777, #777777) right 0 top 1px / 1px calc(100% - 1px) no-repeat,
|
|
2095
|
+
linear-gradient(#777777, #777777) right 0 bottom 0 / 19px 1px no-repeat,
|
|
2096
|
+
linear-gradient(#aaaaaa, #aaaaaa) right 1px top 1px / 1px calc(100% - 2px) no-repeat,
|
|
2097
|
+
linear-gradient(#aaaaaa, #aaaaaa) right 1px bottom 1px / 17px 1px no-repeat,
|
|
2098
|
+
linear-gradient(#bbbbbb, #bbbbbb) right 19px bottom 0 / 1px 1px no-repeat,
|
|
2099
|
+
linear-gradient(#ffffff, #ffffff) right 18px top 1px / 1px calc(100% - 3px) no-repeat,
|
|
2100
|
+
linear-gradient(#ffffff, #ffffff) right 2px top 1px / 17px 1px no-repeat,
|
|
2101
|
+
linear-gradient(#aaaaaa, #aaaaaa) right 20px top 1px / 1px calc(100% - 1px) no-repeat,
|
|
2102
|
+
linear-gradient(#ffffff, #ffffff) left 0 top 0 / calc(100% - 21px) 1px no-repeat,
|
|
2103
|
+
linear-gradient(#aaaaaa, #aaaaaa) left 0 bottom 0 / calc(100% - 21px) 1px no-repeat;
|
|
2104
|
+
|
|
2105
|
+
/* Scroll bars (P16, P17, P27) */
|
|
2106
|
+
--clio-scrollbar-size: 16px;
|
|
2107
|
+
--clio-scrollbar-track: #aaaaaa;
|
|
2108
|
+
--clio-scrollbar-track-shadow: inset 1px 1px #777777, inset 2px 2px #888888, inset -1px -1px #cccccc, inset -2px -2px #bbbbbb;
|
|
2109
|
+
--clio-scrollbar-thumb-bg: var(--clio-art-p-grip-v) center / 8px 8px no-repeat, #9999ff;
|
|
2110
|
+
--clio-scrollbar-thumb-bg-horizontal: var(--clio-art-p-grip-h) center / 8px 8px no-repeat, #9999ff;
|
|
2111
|
+
--clio-scrollbar-thumb-border: 1px solid #000000;
|
|
2112
|
+
--clio-scrollbar-thumb-shadow: inset 1px 1px #ccccff, inset -1px -1px #6666cc;
|
|
2113
|
+
--clio-scrollbar-button-bg: #dddddd;
|
|
2114
|
+
--clio-scrollbar-button-shadow: inset 1px 1px #ffffff, inset -1px -1px #bbbbbb;
|
|
2115
|
+
--clio-scrollbar-up: var(--clio-art-p-up);
|
|
2116
|
+
--clio-scrollbar-up-on: var(--clio-art-p-up);
|
|
2117
|
+
--clio-scrollbar-down: var(--clio-art-p-down);
|
|
2118
|
+
--clio-scrollbar-down-on: var(--clio-art-p-down);
|
|
2119
|
+
--clio-scrollbar-left: var(--clio-art-p-left);
|
|
2120
|
+
--clio-scrollbar-left-on: var(--clio-art-p-left);
|
|
2121
|
+
--clio-scrollbar-right: var(--clio-art-p-right);
|
|
2122
|
+
--clio-scrollbar-right-on: var(--clio-art-p-right);
|
|
2123
|
+
--clio-scrollbar-thumb-color: #9999ff;
|
|
2124
|
+
--clio-scrollbar-track-color: #aaaaaa;
|
|
2125
|
+
|
|
2126
|
+
/* Dialogs (P06) */
|
|
2127
|
+
--clio-dialog-bg: #dddddd;
|
|
2128
|
+
--clio-modal-border: 1px solid #000000;
|
|
2129
|
+
--clio-modal-frame:
|
|
2130
|
+
inset 1px 1px 0 #dddddd,
|
|
2131
|
+
inset 2px 2px 0 #ffffff,
|
|
2132
|
+
inset 3px 3px 0 #ffffff,
|
|
2133
|
+
inset -1px -1px 0 #555555,
|
|
2134
|
+
inset -2px -2px 0 #999999,
|
|
2135
|
+
inset -3px -3px 0 #aaaaaa,
|
|
2136
|
+
1px 1px 0 #000000;
|
|
2137
|
+
--clio-modal-padding: 16px 18px;
|
|
2138
|
+
--clio-plain-dialog-border: 1px solid #000000;
|
|
2139
|
+
--clio-plain-dialog-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #999999, 1px 1px 0 #000000;
|
|
2140
|
+
|
|
2141
|
+
/* Bars, lists, groups, progress, tabs, icons */
|
|
2142
|
+
--clio-details-bg: #dddddd;
|
|
2143
|
+
--clio-details-border: 1px solid #000000;
|
|
2144
|
+
--clio-details-shadow: inset 0 1px 0 #ffffff, inset 0 -1px 0 #aaaaaa;
|
|
2145
|
+
--clio-details-font-size: 12px;
|
|
2146
|
+
--clio-details-height: 20px;
|
|
2147
|
+
--clio-details-padding: 0 8px;
|
|
2148
|
+
--clio-scrollbar-corner: #dddddd;
|
|
2149
|
+
--clio-list-bg: #ffffff;
|
|
2150
|
+
--clio-list-border: 1px solid #000000;
|
|
2151
|
+
--clio-list-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff;
|
|
2152
|
+
--clio-list-row: 16px;
|
|
2153
|
+
/* Group box: a 1px line of #777 and #888 dots, the pattern aligned to the
|
|
2154
|
+
screen (#777 where x + y is even), no light (Mac OS 9.0 General Controls). */
|
|
2155
|
+
--clio-group-border: 1px solid transparent;
|
|
2156
|
+
--clio-group-shadow: none;
|
|
2157
|
+
--clio-art-p9-group-dots: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACAQMAAABIeJ9nAAAABlBMVEV3d3eIiIjxRXMlAAAADElEQVR4nGNwYHIAAAEIAIMYhovOAAAAAElFTkSuQmCC");
|
|
2158
|
+
--clio-progress-height: 12px;
|
|
2159
|
+
--clio-progress-bg: #bbbbbb;
|
|
2160
|
+
--clio-progress-border: 1px solid #000000;
|
|
2161
|
+
--clio-progress-shadow: 1px 1px #ffffff, -1px -1px #aaaaaa, inset 1px 1px #888888, inset -1px -1px #dddddd;
|
|
2162
|
+
--clio-progress-fill: linear-gradient(to bottom, #333399 0 1px, #6666cc 1px 2px, #9999ff 2px 3px, #ccccff 3px 4px, #eeeeee 4px 5px, #ccccff 5px 6px, #9999ff 6px 7px, #6666cc 7px 8px, #333399 8px 9px, #000055 9px 10px);
|
|
2163
|
+
--clio-tab-height: 23px;
|
|
2164
|
+
--clio-tab-panel-bg: #eeeeee;
|
|
2165
|
+
--clio-tab-panel-border: 1px solid #000000;
|
|
2166
|
+
--clio-label-bg: rgba(255, 255, 255, 0.7);
|
|
2167
|
+
--clio-label-fg: #000000;
|
|
2168
|
+
--clio-label-selected-bg: #000000;
|
|
2169
|
+
--clio-label-selected-fg: #ffffff;
|
|
2170
|
+
--clio-icon-selected-filter: brightness(0.5);
|
|
2171
|
+
|
|
2172
|
+
/* Control Strip, measured from Mac OS 9.0 (npm run capture:platinum, frames
|
|
2173
|
+
strip-expanded, strip-collapsed, strip-slider); Mac OS 8.5's is the same
|
|
2174
|
+
under Drawing Board. 24px: 1px black lines, #c0c0c0 cells with a white
|
|
2175
|
+
inner light, #a0a0a0 then #808080 shade; scroll cells sunken while idle. */
|
|
2176
|
+
--clio-strip-bg: #c0c0c0;
|
|
2177
|
+
--clio-strip-line: 1px solid #000000;
|
|
2178
|
+
--clio-strip-cell-shadow: inset -1px -1px 0 #808080, inset -2px -2px 0 #a0a0a0, inset 1px 1px 0 #c0c0c0, inset 2px 2px 0 #ffffff;
|
|
2179
|
+
--clio-strip-sunken-shadow: none;
|
|
2180
|
+
--clio-strip-sunken-lines:
|
|
2181
|
+
linear-gradient(#808080, #808080) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
2182
|
+
linear-gradient(#808080, #808080) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
2183
|
+
linear-gradient(#ffffff, #ffffff) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
2184
|
+
linear-gradient(#ffffff, #ffffff) 100% 1px / 1px calc(100% - 1px) no-repeat;
|
|
2185
|
+
--clio-strip-pressed-bg: #808080;
|
|
2186
|
+
--clio-strip-pressed-shadow: inset 2px 2px 0 #404040, inset -2px -2px 0 #c0c0c0;
|
|
2187
|
+
--clio-strip-cap: var(--clio-art-p9-strip-cap);
|
|
2188
|
+
--clio-strip-back: var(--clio-art-p9-strip-back);
|
|
2189
|
+
--clio-strip-forward: var(--clio-art-p9-strip-forward);
|
|
2190
|
+
--clio-strip-menu: var(--clio-art-p9-strip-menu);
|
|
2191
|
+
--clio-strip-handle: var(--clio-art-p9-strip-handle);
|
|
2192
|
+
--clio-strip-tab: var(--clio-art-p9-strip-tab);
|
|
2193
|
+
|
|
2194
|
+
/* Art: pop-up arrow, menu check mark and submenu arrow redrawn from
|
|
2195
|
+
Mac OS 9.0 (tooling/p9-art.py, below); scroll arrows, grips and tabs drawn
|
|
2196
|
+
here (tabs: tooling/tab-art.py). */
|
|
2197
|
+
--clio-art-p-dropdown: var(--clio-art-p9-dropdown);
|
|
2198
|
+
--clio-art-p-dropdown-off: var(--clio-art-p9-dropdown-off);
|
|
2199
|
+
--clio-art-p-check: var(--clio-art-p9-menucheck);
|
|
2200
|
+
--clio-art-p-submenu: var(--clio-art-p9-submenu);
|
|
2201
|
+
--clio-art-p-submenu-on: var(--clio-art-p9-submenu-on);
|
|
2202
|
+
--clio-art-p-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 5h2v1h-2zM4 6h4v1h-4zM3 7h6v1h-6zM2 8h8v1h-8z'/%3E%3C/svg%3E");
|
|
2203
|
+
--clio-art-p-up-off: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23888' d='M5 5h2v1h-2zM4 6h4v1h-4zM3 7h6v1h-6zM2 8h8v1h-8z'/%3E%3C/svg%3E");
|
|
2204
|
+
--clio-art-p-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M2 5h8v1h-8zM3 6h6v1h-6zM4 7h4v1h-4zM5 8h2v1h-2z'/%3E%3C/svg%3E");
|
|
2205
|
+
--clio-art-p-down-off: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23888' d='M2 5h8v1h-8zM3 6h6v1h-6zM4 7h4v1h-4zM5 8h2v1h-2z'/%3E%3C/svg%3E");
|
|
2206
|
+
--clio-art-p-left: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 5h1v2h-1zM6 4h1v4h-1zM7 3h1v6h-1zM8 2h1v8h-1z'/%3E%3C/svg%3E");
|
|
2207
|
+
--clio-art-p-left-off: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23888' d='M5 5h1v2h-1zM6 4h1v4h-1zM7 3h1v6h-1zM8 2h1v8h-1z'/%3E%3C/svg%3E");
|
|
2208
|
+
--clio-art-p-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 2h1v8h-1zM6 3h1v6h-1zM7 4h1v4h-1zM8 5h1v2h-1z'/%3E%3C/svg%3E");
|
|
2209
|
+
--clio-art-p-right-off: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23888' d='M5 2h1v8h-1zM6 3h1v6h-1zM7 4h1v4h-1zM8 5h1v2h-1z'/%3E%3C/svg%3E");
|
|
2210
|
+
--clio-art-p-grip-v: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' shape-rendering='crispEdges'%3E%3Cpath fill='%23eee' d='M0 0h1v1H0zM0 2h1v1H0zM0 4h1v1H0zM0 6h1v1H0z'/%3E%3Cpath fill='%23ccf' d='M1 0h6v1H1zM1 2h6v1H1zM1 4h6v1H1zM1 6h6v1H1z'/%3E%3Cpath fill='%23339' d='M1 1h7v1H1zM1 3h7v1H1zM1 5h7v1H1zM1 7h7v1H1z'/%3E%3C/svg%3E");
|
|
2211
|
+
--clio-art-p-grip-h: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' shape-rendering='crispEdges'%3E%3Cpath fill='%23eee' d='M0 0h1v1H0zM2 0h1v1H2zM4 0h1v1H4zM6 0h1v1H6z'/%3E%3Cpath fill='%23ccf' d='M0 1h1v6H0zM2 1h1v6H2zM4 1h1v6H4zM6 1h1v6H6z'/%3E%3Cpath fill='%23339' d='M1 1h1v7H1zM3 1h1v7H3zM5 1h1v7H5zM7 1h1v7H7z'/%3E%3C/svg%3E");
|
|
2212
|
+
--clio-art-p-tab-selected: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='24' shape-rendering='crispEdges'%3E%3Cpath fill='%23222' d='M11 1h1v1h-1zM9 2h1v1h-1zM8 3h1v1h-1zM7 4h1v1h-1zM25 4h1v1h-1zM6 6h1v1h-1zM26 6h1v1h-1zM5 9h1v1h-1zM27 9h1v1h-1zM4 12h1v1h-1zM28 12h1v1h-1zM3 15h1v1h-1zM29 15h1v1h-1zM2 18h1v1h-1zM30 18h1v1h-1zM1 21h1v1h-1z'/%3E%3Cpath fill='%23000' d='M12 1h10v1h-10zM10 2h1v1h-1zM22 2h2v1h-2zM24 3h1v1h-1zM7 5h1v1h-1zM25 5h1v1h-1zM6 7h1v1h-1zM26 7h1v1h-1zM6 8h1v1h-1zM26 8h1v1h-1zM5 10h1v1h-1zM27 10h1v1h-1zM5 11h1v1h-1zM27 11h1v1h-1zM4 13h1v1h-1zM28 13h1v1h-1zM4 14h1v1h-1zM28 14h1v1h-1zM3 16h1v1h-1zM29 16h1v1h-1zM3 17h1v1h-1zM29 17h1v1h-1zM2 19h1v1h-1zM30 19h1v1h-1zM2 20h1v1h-1zM30 20h1v1h-1zM0 21h1v1h-1zM31 21h2v1h-2zM0 22h2v1h-2zM31 22h2v1h-2z'/%3E%3Cpath fill='%23bbb' d='M11 2h1v1h-1zM21 2h1v1h-1zM9 3h1v1h-1zM8 4h1v1h-1zM23 4h1v1h-1zM7 6h1v1h-1zM24 6h1v1h-1zM6 9h1v1h-1zM25 9h1v1h-1zM5 12h1v1h-1zM26 12h1v1h-1zM4 15h1v1h-1zM27 15h1v1h-1zM3 18h1v1h-1zM28 18h1v1h-1zM2 21h1v1h-1zM29 21h1v1h-1zM30 22h1v1h-1z'/%3E%3Cpath fill='%23ccc' d='M12 2h9v1h-9zM10 3h1v1h-1zM8 5h1v1h-1zM7 7h1v1h-1zM7 8h1v1h-1zM6 10h1v1h-1zM6 11h1v1h-1zM5 13h1v1h-1zM5 14h1v1h-1zM4 16h1v1h-1zM4 17h1v1h-1zM3 19h1v1h-1zM3 20h1v1h-1zM2 22h1v1h-1zM0 23h3v1h-3zM30 23h3v1h-3z'/%3E%3Cpath fill='%23fff' d='M11 3h11v1h-11zM9 4h2v1h-2zM9 5h1v1h-1zM8 6h1v1h-1zM8 7h1v1h-1zM8 8h1v1h-1zM7 9h1v1h-1zM7 10h1v1h-1zM7 11h1v1h-1zM6 12h1v1h-1zM6 13h1v1h-1zM6 14h1v1h-1zM5 15h1v1h-1zM5 16h1v1h-1zM5 17h1v1h-1zM4 18h1v1h-1zM4 19h1v1h-1zM4 20h1v1h-1zM3 21h1v1h-1zM3 22h1v1h-1z'/%3E%3Cpath fill='%23ddd' d='M22 3h1v1h-1zM23 5h1v1h-1zM24 7h1v1h-1zM24 8h1v1h-1zM25 10h1v1h-1zM25 11h1v1h-1zM26 13h1v1h-1zM26 14h1v1h-1zM27 16h1v1h-1zM27 17h1v1h-1zM28 19h1v1h-1zM28 20h1v1h-1zM29 22h1v1h-1z'/%3E%3Cpath fill='%23888' d='M23 3h1v1h-1zM24 5h1v1h-1zM25 7h1v1h-1zM25 8h1v1h-1zM26 10h1v1h-1zM26 11h1v1h-1zM27 13h1v1h-1zM27 14h1v1h-1zM28 16h1v1h-1zM28 17h1v1h-1zM29 19h1v1h-1zM29 20h1v1h-1z'/%3E%3Cpath fill='%23eee' d='M11 4h12v1h-12zM10 5h13v1h-13zM9 6h15v1h-15zM9 7h15v1h-15zM9 8h15v1h-15zM8 9h17v1h-17zM8 10h17v1h-17zM8 11h17v1h-17zM7 12h19v1h-19zM7 13h19v1h-19zM7 14h19v1h-19zM6 15h21v1h-21zM6 16h21v1h-21zM6 17h21v1h-21zM5 18h23v1h-23zM5 19h23v1h-23zM5 20h23v1h-23zM4 21h25v1h-25zM4 22h25v1h-25zM3 23h27v1h-27z'/%3E%3Cpath fill='%23444' d='M24 4h1v1h-1zM25 6h1v1h-1zM26 9h1v1h-1zM27 12h1v1h-1zM28 15h1v1h-1zM29 18h1v1h-1zM30 21h1v1h-1z'/%3E%3C/svg%3E");
|
|
2213
|
+
--clio-art-p-tab: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='24' shape-rendering='crispEdges'%3E%3Cpath fill='%23222' d='M11 3h1v1h-1zM9 4h1v1h-1zM8 5h1v1h-1zM7 6h1v1h-1zM25 6h1v1h-1zM6 8h1v1h-1zM26 8h1v1h-1zM5 11h1v1h-1zM27 11h1v1h-1zM4 14h1v1h-1zM28 14h1v1h-1zM3 17h1v1h-1zM29 17h1v1h-1zM2 20h1v1h-1zM30 20h1v1h-1z'/%3E%3Cpath fill='%23000' d='M12 3h10v1h-10zM10 4h1v1h-1zM22 4h2v1h-2zM24 5h1v1h-1zM7 7h1v1h-1zM25 7h1v1h-1zM6 9h1v1h-1zM26 9h1v1h-1zM6 10h1v1h-1zM26 10h1v1h-1zM5 12h1v1h-1zM27 12h1v1h-1zM5 13h1v1h-1zM27 13h1v1h-1zM4 15h1v1h-1zM28 15h1v1h-1zM4 16h1v1h-1zM28 16h1v1h-1zM3 18h1v1h-1zM29 18h1v1h-1zM3 19h1v1h-1zM29 19h1v1h-1zM2 21h1v1h-1zM30 21h1v1h-1zM2 22h1v1h-1zM30 22h1v1h-1zM0 23h33v1h-33z'/%3E%3Cpath fill='%23bbb' d='M11 4h1v1h-1zM21 4h1v1h-1zM9 5h1v1h-1zM8 6h1v1h-1zM23 6h1v1h-1zM7 8h1v1h-1zM24 8h1v1h-1zM6 11h1v1h-1zM25 11h1v1h-1zM5 14h1v1h-1zM26 14h1v1h-1zM4 17h1v1h-1zM27 17h1v1h-1zM3 20h1v1h-1zM28 20h1v1h-1z'/%3E%3Cpath fill='%23ccc' d='M12 4h9v1h-9zM10 5h1v1h-1zM11 6h12v1h-12zM8 7h1v1h-1zM10 7h13v1h-13zM9 8h15v1h-15zM7 9h1v1h-1zM9 9h15v1h-15zM7 10h1v1h-1zM9 10h15v1h-15zM8 11h17v1h-17zM6 12h1v1h-1zM8 12h17v1h-17zM6 13h1v1h-1zM8 13h17v1h-17zM7 14h19v1h-19zM5 15h1v1h-1zM7 15h19v1h-19zM5 16h1v1h-1zM7 16h19v1h-19zM6 17h21v1h-21zM4 18h1v1h-1zM6 18h21v1h-21zM4 19h1v1h-1zM6 19h21v1h-21zM5 20h23v1h-23zM3 21h1v1h-1zM5 21h23v1h-23zM3 22h1v1h-1zM5 22h23v1h-23z'/%3E%3Cpath fill='%23ddd' d='M11 5h12v1h-12zM9 6h2v1h-2zM9 7h1v1h-1zM23 7h1v1h-1zM8 8h1v1h-1zM8 9h1v1h-1zM24 9h1v1h-1zM8 10h1v1h-1zM24 10h1v1h-1zM7 11h1v1h-1zM7 12h1v1h-1zM25 12h1v1h-1zM7 13h1v1h-1zM25 13h1v1h-1zM6 14h1v1h-1zM6 15h1v1h-1zM26 15h1v1h-1zM6 16h1v1h-1zM26 16h1v1h-1zM5 17h1v1h-1zM5 18h1v1h-1zM27 18h1v1h-1zM5 19h1v1h-1zM27 19h1v1h-1zM4 20h1v1h-1zM4 21h1v1h-1zM28 21h1v1h-1zM4 22h1v1h-1zM28 22h1v1h-1z'/%3E%3Cpath fill='%23888' d='M23 5h1v1h-1zM24 7h1v1h-1zM25 9h1v1h-1zM25 10h1v1h-1zM26 12h1v1h-1zM26 13h1v1h-1zM27 15h1v1h-1zM27 16h1v1h-1zM28 18h1v1h-1zM28 19h1v1h-1zM29 21h1v1h-1zM29 22h1v1h-1z'/%3E%3Cpath fill='%23444' d='M24 6h1v1h-1zM25 8h1v1h-1zM26 11h1v1h-1zM27 14h1v1h-1zM28 17h1v1h-1zM29 20h1v1h-1z'/%3E%3C/svg%3E");
|
|
2214
|
+
--clio-art-p-tab-pressed: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='24' shape-rendering='crispEdges'%3E%3Cpath fill='%23222' d='M11 3h1v1h-1zM9 4h1v1h-1zM8 5h1v1h-1zM7 6h1v1h-1zM25 6h1v1h-1zM6 8h1v1h-1zM26 8h1v1h-1zM5 11h1v1h-1zM27 11h1v1h-1zM4 14h1v1h-1zM28 14h1v1h-1zM3 17h1v1h-1zM29 17h1v1h-1zM2 20h1v1h-1zM30 20h1v1h-1z'/%3E%3Cpath fill='%23000' d='M12 3h10v1h-10zM10 4h1v1h-1zM22 4h2v1h-2zM24 5h1v1h-1zM7 7h1v1h-1zM25 7h1v1h-1zM6 9h1v1h-1zM26 9h1v1h-1zM6 10h1v1h-1zM26 10h1v1h-1zM5 12h1v1h-1zM27 12h1v1h-1zM5 13h1v1h-1zM27 13h1v1h-1zM4 15h1v1h-1zM28 15h1v1h-1zM4 16h1v1h-1zM28 16h1v1h-1zM3 18h1v1h-1zM29 18h1v1h-1zM3 19h1v1h-1zM29 19h1v1h-1zM2 21h1v1h-1zM30 21h1v1h-1zM2 22h1v1h-1zM30 22h1v1h-1zM0 23h33v1h-33z'/%3E%3Cpath fill='%23bbb' d='M11 4h1v1h-1zM21 4h1v1h-1zM9 5h1v1h-1zM8 6h1v1h-1zM23 6h1v1h-1zM7 8h1v1h-1zM24 8h1v1h-1zM6 11h1v1h-1zM25 11h1v1h-1zM5 14h1v1h-1zM26 14h1v1h-1zM4 17h1v1h-1zM27 17h1v1h-1zM3 20h1v1h-1zM28 20h1v1h-1z'/%3E%3Cpath fill='%23ccc' d='M12 4h9v1h-9zM10 5h1v1h-1zM8 7h1v1h-1zM7 9h1v1h-1zM7 10h1v1h-1zM6 12h1v1h-1zM6 13h1v1h-1zM5 15h1v1h-1zM5 16h1v1h-1zM4 18h1v1h-1zM4 19h1v1h-1zM3 21h1v1h-1zM3 22h1v1h-1z'/%3E%3Cpath fill='%23888' d='M11 5h11v1h-11zM23 5h1v1h-1zM9 6h2v1h-2zM9 7h1v1h-1zM24 7h1v1h-1zM8 8h1v1h-1zM8 9h1v1h-1zM25 9h1v1h-1zM8 10h1v1h-1zM25 10h1v1h-1zM7 11h1v1h-1zM7 12h1v1h-1zM26 12h1v1h-1zM7 13h1v1h-1zM26 13h1v1h-1zM6 14h1v1h-1zM6 15h1v1h-1zM27 15h1v1h-1zM6 16h1v1h-1zM27 16h1v1h-1zM5 17h1v1h-1zM5 18h1v1h-1zM28 18h1v1h-1zM5 19h1v1h-1zM28 19h1v1h-1zM4 20h1v1h-1zM4 21h1v1h-1zM29 21h1v1h-1zM4 22h1v1h-1zM29 22h1v1h-1z'/%3E%3Cpath fill='%23ddd' d='M22 5h1v1h-1zM23 7h1v1h-1zM24 9h1v1h-1zM24 10h1v1h-1zM25 12h1v1h-1zM25 13h1v1h-1zM26 15h1v1h-1zM26 16h1v1h-1zM27 18h1v1h-1zM27 19h1v1h-1zM28 21h1v1h-1zM28 22h1v1h-1z'/%3E%3Cpath fill='%23666' d='M11 6h12v1h-12zM10 7h13v1h-13zM9 8h15v1h-15zM9 9h15v1h-15zM9 10h15v1h-15zM8 11h17v1h-17zM8 12h17v1h-17zM8 13h17v1h-17zM7 14h19v1h-19zM7 15h19v1h-19zM7 16h19v1h-19zM6 17h21v1h-21zM6 18h21v1h-21zM6 19h21v1h-21zM5 20h23v1h-23zM5 21h23v1h-23zM5 22h23v1h-23z'/%3E%3Cpath fill='%23444' d='M24 6h1v1h-1zM25 8h1v1h-1zM26 11h1v1h-1zM27 14h1v1h-1zM28 17h1v1h-1zM29 20h1v1h-1z'/%3E%3C/svg%3E");
|
|
2215
|
+
|
|
2216
|
+
color: #000000;
|
|
2217
|
+
/* Measured from Mac OS 9.0 frames by tooling/p9-art.py. */
|
|
2218
|
+
--clio-art-p9-check: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKBAMAAAB/HNKOAAAAGFBMVEUAAAAAAABVVVV3d3eIiIiqqqrd3d3///8DgOpFAAAAAXRSTlMAQObYZgAAAEBJREFUeJwVxLENgDAQBMH9k4lxQAPvSuiKtr4iRAUW+QVGTDBxAautFyyA+nfIRaU2WynOGl0cSkSMTpvPfvMB4jgPBUEhtgkAAAAASUVORK5CYII=");
|
|
2219
|
+
--clio-art-p9-check-overhang: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAEAgMAAADZgQaqAAAADFBMVEUAAAAAAAB3d3eqqqoo0Gg2AAAAAXRSTlMAQObYZgAAABBJREFUeJxjcGDYwCTAwAAABXABA8z2jo8AAAAASUVORK5CYII=");
|
|
2220
|
+
--clio-art-p9-radio-on: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMBAMAAACkW0HUAAAAIVBMVEUAAAAAAAAiIiJERERVVVV3d3eIiIiZmZm7u7vd3d3///9FvHqFAAAAAXRSTlMAQObYZgAAAFlJREFUeJwVwUERQEAUgOH/vdlxcni7W8CSQBYh5HBy0kEADeigAQqYoQDG9wEpgJCinavTmKTa9fXLbIWWOYyN3oA8ys/UDCTolkE3OKz1dugzme8voI7wAZyaEH+rqNVXAAAAAElFTkSuQmCC");
|
|
2221
|
+
--clio-art-p9-radio: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMBAMAAACkW0HUAAAAG1BMVEUAAAAAAABERERVVVWIiIiqqqq7u7vd3d3///9N7yqcAAAAAXRSTlMAQObYZgAAAFpJREFUeJwlzLENQEAYBeDn5RJRuZwJiI2IOZTKW0FnB7OICbDC61x1v8I3wAegDYBDM9n+sBjXMHiyigs9+y2V6KgYZxmRSjOwxiwVvF4zu5lPSXJ2ZFzCn32EjiE9A/VQnAAAAABJRU5ErkJggg==");
|
|
2222
|
+
--clio-art-p9-radio-pressed: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMBAMAAACkW0HUAAAAIVBMVEUAAAAAAAAiIiJERERVVVVmZmZ3d3eIiIiZmZm7u7v////rjZGwAAAAAXRSTlMAQObYZgAAAFdJREFUeJwVxKsRgDAURcFz34B/iUaQoQE0ilKogUHREyVQAxKZFnBRfIYVC6QI+n+OymIIyvZK8lZdCkGNXapHfwz3RZiL0kfLwLyZ3CmT3bvDKhhO+ABY6xACXUidtgAAAABJRU5ErkJggg==");
|
|
2223
|
+
--clio-art-p9-checkbox-pressed: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMBAMAAACkW0HUAAAAElBMVEUAAAAAAABVVVV3d3eZmZn///8vNloyAAAAAXRSTlMAQObYZgAAADhJREFUeJxFibENACAMwxzUGegH/f8MxFkdEHQgi2VHzp1pAsO42ttrfLQoW4WM+lYhp8kFW44lHI3DBiNDd4iSAAAAAElFTkSuQmCC");
|
|
2224
|
+
--clio-art-p9-box-face: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJBAMAAAASvxsjAAAAG1BMVEUAAACIiIiZmZmqqqq7u7vMzMzd3d3u7u7///8xpbC+AAAAAXRSTlMAQObYZgAAAClJREFUeJxjbL3AwPCb5exFQcHTTAwCAgIMTIyMjIwMuNgsfw4wMDAAAAO8B0nHBJxRAAAAAElFTkSuQmCC");
|
|
2225
|
+
--clio-art-p9-progress-pole: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAKBAMAAABPkMOvAAAAKlBMVEUAAAAAAFUAAIgzM5lVVVVmZsx3d3eZmZmZmf+qqqq7u7vMzP/d3d3///+RIHmxAAAAAXRSTlMAQObYZgAAAFFJREFUeJwlyrEJgwAQQNF3ciNYiziBIKQ2U7lTpnAAAy4QcYOAtQbRFK/5/GhwyefM1pKPDR3x+q0UtfhY7ism+0j2ufBGFYN/yi8uUbYcMycurhMrVyrlPQAAAABJRU5ErkJggg==");
|
|
2226
|
+
--clio-art-p9-submenu: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAALAQMAAABmnG7VAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAAB9JREFUeJxjaGA4wPCA4QPDD4Y/TH+YfjB9YHrAdAAAZSIJk3jnGdQAAAAASUVORK5CYII=");
|
|
2227
|
+
--clio-art-p9-submenu-on: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAALAQMAAABmnG7VAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAB9JREFUeJxjaGA4wPCA4QPDD4Y/TH+YfjB9YHrAdAAAZSIJk3jnGdQAAAAASUVORK5CYII=");
|
|
2228
|
+
--clio-art-p9-dropdown: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAKAQMAAABCAtZOAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAABlJREFUeJxjEGDSYHJh+McAAv8YahgsGAQAHygDQTD2iPAAAAAASUVORK5CYII=");
|
|
2229
|
+
--clio-art-p9-dropdown-off: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAKAQMAAABCAtZOAAAABlBMVEUAAACIiIhaeOqmAAAAAXRSTlMAQObYZgAAABlJREFUeJxjEGDSYHJh+McAAv8YahgsGAQAHygDQTD2iPAAAAAASUVORK5CYII=");
|
|
2230
|
+
--clio-art-p9-menucheck: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAICAYAAAArzdW1AAAAP0lEQVR42mNgIAyMiFHwnxgFK2ECLgwMDKFYFJxB1nUGKmiEpOAOAwODALKilVCJ/7gUwMAdQgoYoBIrsSkAAK+iEhBS63EWAAAAAElFTkSuQmCC");
|
|
2231
|
+
}
|
|
2232
|
+
|
|
2233
|
+
/* ---- Window ---------------------------------------------------------------- */
|
|
2234
|
+
/* The strip's inner edge below the title bar: #999 on the left, white on the
|
|
2235
|
+
right and bottom (GUIdebook Appearance window, x=4 and x=width-5). */
|
|
2236
|
+
:root .window:not(.inactive) {
|
|
2237
|
+
background:
|
|
2238
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
2239
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
2240
|
+
linear-gradient(#999999, #999999) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
2241
|
+
linear-gradient(#999999, #999999) 100% 1px / 1px calc(100% - 1px) no-repeat,
|
|
2242
|
+
linear-gradient(#999999, #999999) 3px 19px / 1px calc(100% - 22px) no-repeat,
|
|
2243
|
+
linear-gradient(#ffffff, #ffffff) right 3px top 20px / 1px calc(100% - 23px) no-repeat,
|
|
2244
|
+
linear-gradient(#ffffff, #ffffff) left 3px bottom 3px / calc(100% - 6px) 1px no-repeat,
|
|
2245
|
+
var(--clio-window-bg);
|
|
2246
|
+
}
|
|
2247
|
+
|
|
2248
|
+
:root .window-pane {
|
|
2249
|
+
border: 1px solid #000000;
|
|
2250
|
+
background: var(--clio-pane-bg);
|
|
2251
|
+
}
|
|
2252
|
+
|
|
2253
|
+
:root .window > .title-bar + .window-pane,
|
|
2254
|
+
:root .window > .details-bar + .window-pane {
|
|
2255
|
+
border-top: 0;
|
|
2256
|
+
}
|
|
2257
|
+
|
|
2258
|
+
:root .window > .details-bar {
|
|
2259
|
+
border-left: 1px solid #000000;
|
|
2260
|
+
border-right: 1px solid #000000;
|
|
2261
|
+
}
|
|
2262
|
+
|
|
2263
|
+
/* The ridged bar. Its covers read the slot sizes the .title-bar itself
|
|
2264
|
+
computes, so this is a rule, not a token. */
|
|
2265
|
+
:root .title-bar {
|
|
2266
|
+
/* Six ridges: white lines, and #777 lines one pixel to their right (the
|
|
2267
|
+
ridge's shade), between the box slots (Mac OS 9.0, both ends measured). */
|
|
2268
|
+
--clio-tb-ridges: calc(100% - var(--clio-tb-close) - var(--clio-tb-zoom) - var(--clio-tb-shade) - 1px);
|
|
2269
|
+
background:
|
|
2270
|
+
linear-gradient(to bottom, #cccccc 0 1px, transparent 1px 13px, #cccccc 13px 17px, #999999 17px 18px),
|
|
2271
|
+
repeating-linear-gradient(to bottom, #ffffff 0 1px, transparent 1px 2px) var(--clio-tb-close) 1px / var(--clio-tb-ridges) 2px repeat-y,
|
|
2272
|
+
repeating-linear-gradient(to bottom, transparent 0 1px, #777777 1px 2px) calc(var(--clio-tb-close) + 1px) 1px / var(--clio-tb-ridges) 2px repeat-y,
|
|
2273
|
+
#cccccc;
|
|
2274
|
+
}
|
|
2275
|
+
|
|
2276
|
+
:root .window.inactive > .title-bar,
|
|
2277
|
+
:root .inactive-title-bar {
|
|
2278
|
+
background: var(--clio-titlebar-inactive-bg);
|
|
2279
|
+
}
|
|
2280
|
+
|
|
2281
|
+
/* The title is cut out of the ridges in the frame grey, drawn wide. */
|
|
2282
|
+
:root .title-bar > :is(.title, h1, h2, h3) {
|
|
2283
|
+
/* Mac OS 9.0: the cut-out spans the ridges, 4px before the title and 3px
|
|
2284
|
+
after it, and is centred 1px left of the bar's middle; Charcoal sits one
|
|
2285
|
+
row low in it. */
|
|
2286
|
+
padding: 1px 3px 0 4px;
|
|
2287
|
+
transform: translateX(-1px);
|
|
2288
|
+
/* The ridge's #777 lines are its white lines one pixel to the right, and so
|
|
2289
|
+
is their cut: show them in the cut-out's first column, cover them one
|
|
2290
|
+
column past its last. */
|
|
2291
|
+
background:
|
|
2292
|
+
repeating-linear-gradient(to bottom, transparent 0 1px, #777777 1px 2px) 0 0 / 1px 12px no-repeat,
|
|
2293
|
+
#cccccc;
|
|
2294
|
+
overflow: clip; /* still truncates with an ellipsis */
|
|
2295
|
+
overflow-clip-margin: 1px; /* but lets the column past the end show */
|
|
2296
|
+
}
|
|
2297
|
+
|
|
2298
|
+
/* The close, zoom and collapse boxes: an 11px bevelled square sunk into the
|
|
2299
|
+
ridges, no paper isolation. */
|
|
2300
|
+
:root .title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse) {
|
|
2301
|
+
margin-top: 1px;
|
|
2302
|
+
border-color: #222222;
|
|
2303
|
+
background: var(--clio-art-p9-box-face) 0 0 / 9px 9px no-repeat;
|
|
2304
|
+
box-shadow:
|
|
2305
|
+
-1px -1px 0 #888888,
|
|
2306
|
+
-1px 0 0 #888888,
|
|
2307
|
+
0 -1px 0 #888888,
|
|
2308
|
+
1px 1px 0 #ffffff,
|
|
2309
|
+
1px 0 0 #ffffff,
|
|
2310
|
+
0 1px 0 #ffffff;
|
|
2311
|
+
}
|
|
2312
|
+
|
|
2313
|
+
:root .title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse):is(:active, .active) {
|
|
2314
|
+
background: linear-gradient(to bottom right, #444444, #bbbbbb);
|
|
2315
|
+
box-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff, inset -1px -1px 0 #999999;
|
|
2316
|
+
}
|
|
2317
|
+
|
|
2318
|
+
/* Zoom: a six-pixel lower-left corner inside the frame. */
|
|
2319
|
+
:root .title-bar > :is(.resize, .resize-box, .zoom)::before {
|
|
2320
|
+
top: 0;
|
|
2321
|
+
left: 0;
|
|
2322
|
+
width: 6px;
|
|
2323
|
+
height: 6px;
|
|
2324
|
+
border: 0;
|
|
2325
|
+
background:
|
|
2326
|
+
linear-gradient(#222222, #222222) right top / 1px 6px no-repeat,
|
|
2327
|
+
linear-gradient(#222222, #222222) left bottom / 6px 1px no-repeat;
|
|
2328
|
+
opacity: 1;
|
|
2329
|
+
}
|
|
2330
|
+
|
|
2331
|
+
/* WindowShade: two nine-pixel rules. */
|
|
2332
|
+
:root .title-bar > :is(.shade, .shade-box, .collapse)::before {
|
|
2333
|
+
content: "";
|
|
2334
|
+
position: absolute;
|
|
2335
|
+
top: 3px;
|
|
2336
|
+
left: 0;
|
|
2337
|
+
width: 9px;
|
|
2338
|
+
height: 3px;
|
|
2339
|
+
background:
|
|
2340
|
+
linear-gradient(#222222, #222222) left top / 9px 1px no-repeat,
|
|
2341
|
+
linear-gradient(#222222, #222222) left bottom / 9px 1px no-repeat;
|
|
2342
|
+
}
|
|
2343
|
+
|
|
2344
|
+
/* Background window: flat grey, #555 frame, controls erased, title kept. */
|
|
2345
|
+
:root .window.inactive {
|
|
2346
|
+
--clio-button-shadow: 0 0 0 0 transparent;
|
|
2347
|
+
--clio-field-shadow: none;
|
|
2348
|
+
--clio-check-shadow: none;
|
|
2349
|
+
border-color: #555555;
|
|
2350
|
+
background: #dddddd;
|
|
2351
|
+
box-shadow: 1px 1px 0 #555555; /* flat: no light or shade inside (Mac OS 9.0 Finder, behind Appearance) */
|
|
2352
|
+
color: #555555;
|
|
2353
|
+
}
|
|
2354
|
+
|
|
2355
|
+
:root .window.inactive > .title-bar,
|
|
2356
|
+
:root .inactive-title-bar {
|
|
2357
|
+
border-bottom-color: #555555;
|
|
2358
|
+
--clio-title-bg: #dddddd;
|
|
2359
|
+
}
|
|
2360
|
+
|
|
2361
|
+
:root .window.inactive > .title-bar > :is(.title, h1, h2, h3),
|
|
2362
|
+
:root .inactive-title-bar > :is(.title, h1, h2, h3) {
|
|
2363
|
+
background: #dddddd;
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
/* ---- Default button ring: 1px black, a #aaa bevel band, 1px gap. -------- */
|
|
2367
|
+
:root :is(.default, .btn-default) {
|
|
2368
|
+
position: relative;
|
|
2369
|
+
box-shadow: var(--clio-button-shadow);
|
|
2370
|
+
}
|
|
2371
|
+
|
|
2372
|
+
:root :is(.default, .btn-default):not(:disabled, .disabled):is(:active, .active) {
|
|
2373
|
+
box-shadow: var(--clio-button-active-shadow);
|
|
2374
|
+
}
|
|
2375
|
+
|
|
2376
|
+
:root :is(.default, .btn-default)::before {
|
|
2377
|
+
content: "";
|
|
2378
|
+
position: absolute;
|
|
2379
|
+
border-width: 1px; /* longhands: the shorthand would reset the ring, which is a border-image */
|
|
2380
|
+
border-style: solid;
|
|
2381
|
+
border-color: transparent;
|
|
2382
|
+
inset: -4px;
|
|
2383
|
+
border-radius: 0;
|
|
2384
|
+
box-shadow: none;
|
|
2385
|
+
pointer-events: none;
|
|
2386
|
+
}
|
|
2387
|
+
|
|
2388
|
+
:root :is(.default, .btn-default):is(:disabled, .disabled)::before {
|
|
2389
|
+
box-shadow: 0 0 0 1px #888888;
|
|
2390
|
+
}
|
|
2391
|
+
|
|
2392
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(:disabled, .disabled) {
|
|
2393
|
+
background: transparent;
|
|
2394
|
+
box-shadow: none;
|
|
2395
|
+
border-image: var(--clio-button-frame-disabled) var(--clio-button-frame-slice) fill / calc(var(--clio-button-frame-slice) * 1px) stretch;
|
|
2396
|
+
}
|
|
2397
|
+
|
|
2398
|
+
/* ---- Radio buttons: drawn, not cut from a screenshot ------------------------ */
|
|
2399
|
+
/* Check box mark: inside the frame, plus the two columns that overhang it. */
|
|
2400
|
+
:root input[type="checkbox"]:checked::after {
|
|
2401
|
+
content: "";
|
|
2402
|
+
position: absolute;
|
|
2403
|
+
top: 0;
|
|
2404
|
+
right: -3px;
|
|
2405
|
+
width: 2px;
|
|
2406
|
+
height: 4px;
|
|
2407
|
+
background: var(--clio-art-p9-check-overhang) 0 0 / 2px 4px no-repeat;
|
|
2408
|
+
}
|
|
2409
|
+
|
|
2410
|
+
/* ---- Radio buttons: Mac OS 9's shaded ball (pressed states drawn here). ---- */
|
|
2411
|
+
:root input[type="radio"] {
|
|
2412
|
+
border: 0;
|
|
2413
|
+
border-radius: 0;
|
|
2414
|
+
background: var(--clio-art-p9-radio) 0 0 / 12px 12px no-repeat;
|
|
2415
|
+
box-shadow: none;
|
|
2416
|
+
}
|
|
2417
|
+
|
|
2418
|
+
:root input[type="radio"]:checked {
|
|
2419
|
+
background: var(--clio-art-p9-radio-on) 0 0 / 12px 12px no-repeat;
|
|
2420
|
+
}
|
|
2421
|
+
|
|
2422
|
+
:root input[type="radio"]:not(:disabled):active {
|
|
2423
|
+
background: var(--clio-art-p9-radio-pressed) 0 0 / 12px 12px no-repeat;
|
|
2424
|
+
}
|
|
2425
|
+
|
|
2426
|
+
/* Held while on: not captured; the on ball stays (inferred). */
|
|
2427
|
+
:root input[type="radio"]:checked:not(:disabled):active {
|
|
2428
|
+
background: var(--clio-art-p9-radio-on) 0 0 / 12px 12px no-repeat;
|
|
2429
|
+
}
|
|
2430
|
+
|
|
2431
|
+
/* Held while checked: the mark over the held box (inferred; only the empty
|
|
2432
|
+
box was captured held). */
|
|
2433
|
+
:root input[type="checkbox"]:checked:not(:disabled):active {
|
|
2434
|
+
background:
|
|
2435
|
+
var(--clio-art-p9-check) 0 0 / 10px 10px no-repeat padding-box,
|
|
2436
|
+
var(--clio-art-p9-checkbox-pressed) -1px -1px / 12px 12px no-repeat;
|
|
2437
|
+
}
|
|
2438
|
+
|
|
2439
|
+
:root input[type="checkbox"]:not(:disabled):active {
|
|
2440
|
+
border-color: transparent;
|
|
2441
|
+
background: var(--clio-art-p9-checkbox-pressed) -1px -1px / 12px 12px no-repeat;
|
|
2442
|
+
box-shadow: none;
|
|
2443
|
+
}
|
|
2444
|
+
|
|
2445
|
+
:root :is(input[type="checkbox"], input[type="radio"]):disabled {
|
|
2446
|
+
border-color: #888888;
|
|
2447
|
+
opacity: 0.6;
|
|
2448
|
+
}
|
|
2449
|
+
|
|
2450
|
+
/* ---- Menus ------------------------------------------------------------------- */
|
|
2451
|
+
:root :is(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a, span) {
|
|
2452
|
+
font-weight: 700;
|
|
2453
|
+
}
|
|
2454
|
+
|
|
2455
|
+
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"])::before,
|
|
2456
|
+
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked)::before {
|
|
2457
|
+
left: 7px;
|
|
2458
|
+
width: 9px;
|
|
2459
|
+
height: 8px;
|
|
2460
|
+
margin-top: -4px;
|
|
2461
|
+
background: var(--clio-art-p-check) 0 0 / 9px 8px no-repeat;
|
|
2462
|
+
}
|
|
2463
|
+
|
|
2464
|
+
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active)::before,
|
|
2465
|
+
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active)::before {
|
|
2466
|
+
filter: invert(1);
|
|
2467
|
+
}
|
|
2468
|
+
|
|
2469
|
+
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"]))::after,
|
|
2470
|
+
:root :is(.menu, [role="menu"]) > li > [aria-haspopup="true"]::after {
|
|
2471
|
+
background-image: var(--clio-art-p-submenu);
|
|
2472
|
+
}
|
|
2473
|
+
|
|
2474
|
+
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active)::after {
|
|
2475
|
+
background-image: var(--clio-art-p-submenu-on);
|
|
2476
|
+
}
|
|
2477
|
+
|
|
2478
|
+
:root :is(.menu, [role="menu"]) > li.divider {
|
|
2479
|
+
border-bottom: 0;
|
|
2480
|
+
box-shadow: inset 0 -2px 0 #dddddd, inset 0 -3px 0 #ffffff, inset 0 -4px 0 #888888;
|
|
2481
|
+
}
|
|
2482
|
+
|
|
2483
|
+
/* ---- Tabs: drawn from the measured Mac OS 9 tab (tooling/tab-art.py) ------ */
|
|
2484
|
+
:root :is([role="tablist"], .tabs) {
|
|
2485
|
+
gap: 0;
|
|
2486
|
+
padding: 0 4px;
|
|
2487
|
+
}
|
|
2488
|
+
|
|
2489
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button) {
|
|
2490
|
+
min-width: 48px;
|
|
2491
|
+
height: 24px;
|
|
2492
|
+
min-height: 0;
|
|
2493
|
+
margin: 0 -3px -1px 0;
|
|
2494
|
+
padding: 3px 0 0;
|
|
2495
|
+
border-style: solid;
|
|
2496
|
+
border-width: 0 16px;
|
|
2497
|
+
border-color: transparent;
|
|
2498
|
+
border-radius: 0;
|
|
2499
|
+
border-image: var(--clio-art-p-tab) 0 16 fill / 0 16px stretch;
|
|
2500
|
+
background: transparent;
|
|
2501
|
+
box-shadow: none;
|
|
2502
|
+
font-weight: 700;
|
|
2503
|
+
line-height: 18px;
|
|
2504
|
+
}
|
|
2505
|
+
|
|
2506
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):not(:disabled):active {
|
|
2507
|
+
border-image-source: var(--clio-art-p-tab-pressed);
|
|
2508
|
+
background: transparent;
|
|
2509
|
+
color: #ffffff;
|
|
2510
|
+
}
|
|
2511
|
+
|
|
2512
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):is([aria-selected="true"], .active) {
|
|
2513
|
+
z-index: 1;
|
|
2514
|
+
padding-top: 0;
|
|
2515
|
+
border-image-source: var(--clio-art-p-tab-selected);
|
|
2516
|
+
background: transparent;
|
|
2517
|
+
color: #000000;
|
|
2518
|
+
}
|
|
2519
|
+
|
|
2520
|
+
:root :is([role="tabpanel"], .tab-panel) {
|
|
2521
|
+
border-top: 0;
|
|
2522
|
+
box-shadow: inset 1px 0 0 #ffffff, inset -1px -1px 0 #888888;
|
|
2523
|
+
}
|
|
2524
|
+
|
|
2525
|
+
/* ---- Scroll arrow art sits on the bevelled box ---------------------------- */
|
|
2526
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button,
|
|
2527
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button {
|
|
2528
|
+
background-position: 1px 1px;
|
|
2529
|
+
background-size: 14px 14px;
|
|
2530
|
+
}
|
|
2531
|
+
|
|
2532
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:active,
|
|
2533
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button:active {
|
|
2534
|
+
background-color: #666666;
|
|
2535
|
+
box-shadow: inset 1px 1px #444444, inset -1px -1px #888888;
|
|
2536
|
+
}
|
|
2537
|
+
|
|
2538
|
+
:root :is(fieldset) > legend {
|
|
2539
|
+
background: var(--clio-pane-bg);
|
|
2540
|
+
}
|
|
2541
|
+
|
|
2542
|
+
:root fieldset {
|
|
2543
|
+
background:
|
|
2544
|
+
linear-gradient(var(--clio-pane-bg), var(--clio-pane-bg)) padding-box,
|
|
2545
|
+
var(--clio-art-p9-group-dots) 0 0 / 2px 2px fixed border-box;
|
|
2546
|
+
image-rendering: pixelated; /* keep the dots from blending into one grey */
|
|
2547
|
+
}
|
|
2548
|
+
|
|
2549
|
+
/* The title's gap opens 13px after the corner (General Controls, "Desktop"). */
|
|
2550
|
+
:root fieldset > legend {
|
|
2551
|
+
margin-left: 2px;
|
|
2552
|
+
}
|
|
2553
|
+
|
|
2554
|
+
/* Disabled pop-up menu: #888 frame, flat face, the #aaa divider and a grey
|
|
2555
|
+
arrow (Mac OS 9.0 Appearance, "Position Automatically"). Browsers also fade
|
|
2556
|
+
a disabled <select>; Mac OS did not. */
|
|
2557
|
+
:root select:disabled {
|
|
2558
|
+
border-color: #888888;
|
|
2559
|
+
background:
|
|
2560
|
+
var(--clio-art-p-dropdown-off) right 7px top 4px / 7px 10px no-repeat,
|
|
2561
|
+
linear-gradient(#aaaaaa, #aaaaaa) right 20px top 0 / 1px 100% no-repeat,
|
|
2562
|
+
#dddddd;
|
|
2563
|
+
background-clip: padding-box;
|
|
2564
|
+
box-shadow: none;
|
|
2565
|
+
color: #888888;
|
|
2566
|
+
opacity: 1;
|
|
2567
|
+
border-image-source: var(--clio-art-frame-p9-popup-disabled);
|
|
2568
|
+
}
|
|
2569
|
+
|
|
2570
|
+
/* The face stays inside the frame, so the rounded corners show what is behind. */
|
|
2571
|
+
:root select {
|
|
2572
|
+
background-clip: padding-box;
|
|
2573
|
+
}
|
|
2574
|
+
|
|
2575
|
+
/* Indeterminate progress (no value): Mac OS 9's stripes, one 16px period
|
|
2576
|
+
repeated (Finder copy window). Static: clio.css adds no motion. */
|
|
2577
|
+
:root progress:indeterminate,
|
|
2578
|
+
:root progress:indeterminate::-webkit-progress-bar {
|
|
2579
|
+
background: var(--clio-art-p9-progress-pole) 0 0 / 16px 10px repeat-x;
|
|
2580
|
+
}
|
|
2581
|
+
|
|
2582
|
+
:root .title-bar > :is(.title, h1, h2, h3)::after {
|
|
2583
|
+
content: "";
|
|
2584
|
+
position: absolute;
|
|
2585
|
+
top: 0;
|
|
2586
|
+
right: -1px;
|
|
2587
|
+
width: 1px;
|
|
2588
|
+
height: 12px;
|
|
2589
|
+
background: repeating-linear-gradient(to bottom, transparent 0 1px, #cccccc 1px 2px);
|
|
2590
|
+
}
|
|
2591
|
+
|
|
2592
|
+
:root .window.inactive > .title-bar > :is(.title, h1, h2, h3)::after,
|
|
2593
|
+
:root .inactive-title-bar > :is(.title, h1, h2, h3)::after {
|
|
2594
|
+
content: none;
|
|
2595
|
+
}
|
|
2596
|
+
|
|
2597
|
+
/* ---- Antialiasing as Mac OS blends it -------------------------------------
|
|
2598
|
+
Window titles and push button labels in their own colours on their own
|
|
2599
|
+
backgrounds take the exact palettes (src/00-fonts.css). */
|
|
2600
|
+
:root .title-bar > :is(.title, h1, h2, h3) {
|
|
2601
|
+
font-palette: --clio-aa-p9-title;
|
|
2602
|
+
}
|
|
2603
|
+
|
|
2604
|
+
:root :is(.window.inactive > .title-bar, .inactive-title-bar) > :is(.title, h1, h2, h3) {
|
|
2605
|
+
font-palette: --clio-aa-p9-title-inactive;
|
|
2606
|
+
}
|
|
2607
|
+
|
|
2608
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *) {
|
|
2609
|
+
font-family: var(--clio-font-button);
|
|
2610
|
+
font-palette: --clio-aa-p9-button;
|
|
2611
|
+
}
|
|
2612
|
+
|
|
2613
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):not(:disabled, .disabled):is(:active, .active) {
|
|
2614
|
+
font-palette: --clio-aa-p9-button-held;
|
|
2615
|
+
}
|
|
2616
|
+
|
|
2617
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(:disabled, .disabled) {
|
|
2618
|
+
font-palette: --clio-aa-p9-button-disabled;
|
|
2619
|
+
}
|
|
2620
|
+
|
|
2621
|
+
/* Mac OS 8.5 "Drawing Board" (the beta theme Apple shipped in 8.5b6 and
|
|
2622
|
+
withdrew). Applies inside any element with data-era="drawingboard"; it shares
|
|
2623
|
+
the Platinum layer's structure (both are Appearance Manager themes) and
|
|
2624
|
+
replaces its colours, geometry and art. clio.drawingboard.css is a build of
|
|
2625
|
+
this file with Drawing Board as the page default.
|
|
2626
|
+
Values: Infinite Mac, Mac OS 8.5 with the theme installed
|
|
2627
|
+
(`npm run capture:drawingboard`), read 1:1. The art is the theme's own:
|
|
2628
|
+
its 'pxm#' pictures and 'ppat' patterns (papers and the pattern pens the
|
|
2629
|
+
theme draws its pencil lines with), written to art/drawingboard/ by
|
|
2630
|
+
tooling/db-art.py and tooling/db-pens.py and placed as Mac OS places them,
|
|
2631
|
+
each found 1:1 in the capture. The stylesheet loads them from art/ beside
|
|
2632
|
+
itself, as it loads fonts/. See EVIDENCE.md. */
|
|
2633
|
+
:root {
|
|
2634
|
+
/* Titles sit on the textured title bar, where no palette can know the
|
|
2635
|
+
background: they keep Clio Sans '97 Title in the text colour. */
|
|
2636
|
+
--clio-font-window-title: Charcoal, "Charcoal CY", "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
2637
|
+
/* Where a 128px theme pattern starts. Mac OS sometimes starts one half a
|
|
2638
|
+
tile (64px) earlier, depending on where the window sits on screen; a page
|
|
2639
|
+
matching a particular screen can set 64px on that window or control. */
|
|
2640
|
+
--clio-db-phase: 0px;
|
|
2641
|
+
--clio-ink: #313131;
|
|
2642
|
+
--clio-paper: #e7ded6;
|
|
2643
|
+
--clio-face: #cdc6bd;
|
|
2644
|
+
--clio-disabled: #8c8c8c;
|
|
2645
|
+
--clio-selection-bg: #ccccff;
|
|
2646
|
+
|
|
2647
|
+
--clio-border: 1px solid #555555;
|
|
2648
|
+
|
|
2649
|
+
/* Window: the theme's own nine frame pictures (see the Window rules), on
|
|
2650
|
+
the content paper. The frame is 6px on each side inside the outline; the
|
|
2651
|
+
title bar's 22 rows include the outline and the #555 rule. */
|
|
2652
|
+
--clio-window-bg: #cdc6bd;
|
|
2653
|
+
--clio-pane-bg: #e7ded6;
|
|
2654
|
+
--clio-window-border: 0 none;
|
|
2655
|
+
--clio-window-shadow: none;
|
|
2656
|
+
--clio-window-padding: 0 6px 6px;
|
|
2657
|
+
|
|
2658
|
+
/* Title bar: 22 rows of the frame picture. Boxes 11px, 5px below the top. */
|
|
2659
|
+
--clio-titlebar-height: 22px;
|
|
2660
|
+
--clio-titlebar-padding: 4px 0 0;
|
|
2661
|
+
--clio-titlebar-margin: 0 -1px;
|
|
2662
|
+
--clio-titlebar-border: 0 none;
|
|
2663
|
+
--clio-titlebar-row: 16px;
|
|
2664
|
+
--clio-titlebar-inactive-bg: #cdc6bd;
|
|
2665
|
+
--clio-title-bg: transparent;
|
|
2666
|
+
--clio-title-fg: #313131;
|
|
2667
|
+
--clio-title-inactive-fg: #9f9a94;
|
|
2668
|
+
|
|
2669
|
+
/* Menu bar: 22px of #cec6b5 paper, no rule under it. Menus: #ddd paper,
|
|
2670
|
+
#333 outline, 18px items (20px with an icon); the chosen title and item
|
|
2671
|
+
are underlined in pencil: left, stretched centre and right pieces, 16px
|
|
2672
|
+
in from the menu's left, 15px from its right (Control Panels; the Appearance
|
|
2673
|
+
pop-up's sits 16px from both), 1px above the item's foot. */
|
|
2674
|
+
--clio-menubar-height: 22px;
|
|
2675
|
+
--clio-menubar-bg: url("art/drawingboard/menubar.png") 0 0 / 630px 27px repeat-x, #cec6b5;
|
|
2676
|
+
--clio-menubar-border: 0 none;
|
|
2677
|
+
--clio-menubar-shadow: none;
|
|
2678
|
+
--clio-menu-title-active-bg:
|
|
2679
|
+
var(--clio-art-db-title-underline-left) left 0 bottom 3px / 15px 3px no-repeat,
|
|
2680
|
+
var(--clio-art-db-title-underline-right) right 0 bottom 3px / 16px 3px no-repeat,
|
|
2681
|
+
var(--clio-art-db-title-underline-tiled) left 15px bottom 3px / calc(100% - 31px) 4px no-repeat;
|
|
2682
|
+
--clio-menu-title-active-fg: #313131;
|
|
2683
|
+
--clio-menu-title-active-shadow: none;
|
|
2684
|
+
/* Menus: the theme's paper inside a pencil frame (see the Menus rules). */
|
|
2685
|
+
--clio-menu-bg: #dddddd;
|
|
2686
|
+
--clio-menu-border: 1px solid transparent;
|
|
2687
|
+
--clio-menu-border-top-width: 1px;
|
|
2688
|
+
--clio-menu-shadow: none;
|
|
2689
|
+
--clio-menu-item-height: 18px;
|
|
2690
|
+
--clio-menu-item-active-bg:
|
|
2691
|
+
var(--clio-art-db-menu-underline-left) left 16px bottom 1px / 29px 3px no-repeat,
|
|
2692
|
+
var(--clio-art-db-menu-underline-right) right 15px bottom 1px / 36px 3px no-repeat,
|
|
2693
|
+
var(--clio-art-db-menu-underline-tiled) left 45px bottom 1px / calc(100% - 96px) 3px no-repeat;
|
|
2694
|
+
--clio-menu-item-active-fg: #313131;
|
|
2695
|
+
--clio-menu-item-active-shadow: none;
|
|
2696
|
+
--clio-menu-separator: none;
|
|
2697
|
+
--clio-menu-separator-height: 9px;
|
|
2698
|
+
|
|
2699
|
+
/* Push buttons: four pattern pens (ppat 7070-7072, 7079) tiled from the last
|
|
2700
|
+
column and row, the corner pixels they leave (tooling/db-pens.py), the
|
|
2701
|
+
hatched ButtonFaceCorner in the lower right of the #cec6b5 face, and a
|
|
2702
|
+
1px pencil shade right and below (the Buttons rules). Held: other pens
|
|
2703
|
+
for the foot and right side, tiled from the second column and row, and no
|
|
2704
|
+
hatch ("Save Theme…" held). */
|
|
2705
|
+
--clio-button-bg:
|
|
2706
|
+
url("art/drawingboard/pens/button-left.png") left 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
2707
|
+
url("art/drawingboard/pens/button-right.png") right 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
2708
|
+
url("art/drawingboard/pens/button-top.png") right 1px top 0 / 64px 1px repeat-x border-box,
|
|
2709
|
+
url("art/drawingboard/pens/button-bottom.png") right 1px bottom 0 / 64px 1px repeat-x border-box,
|
|
2710
|
+
var(--clio-art-db-button-corner) right 0 bottom / 24px 24px no-repeat padding-box,
|
|
2711
|
+
#cec6b5;
|
|
2712
|
+
--clio-button-fg: #313131;
|
|
2713
|
+
/* The label sits 1px lower than Platinum's (themes tab, "Save Theme…"). */
|
|
2714
|
+
--clio-button-padding: 2px 10px 0;
|
|
2715
|
+
--clio-button-border: 1px solid transparent;
|
|
2716
|
+
--clio-button-radius: 0;
|
|
2717
|
+
--clio-button-shadow: none;
|
|
2718
|
+
--clio-button-active-bg:
|
|
2719
|
+
url("art/drawingboard/pens/button-held-left.png") left 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
2720
|
+
url("art/drawingboard/pens/button-held-right.png") right 0 top 1px / 1px 16px repeat-y border-box,
|
|
2721
|
+
url("art/drawingboard/pens/button-held-top.png") right 1px top 0 / 64px 1px repeat-x border-box,
|
|
2722
|
+
url("art/drawingboard/pens/button-held-bottom.png") left 1px bottom 0 / 32px 1px repeat-x border-box,
|
|
2723
|
+
#cec6b5;
|
|
2724
|
+
--clio-button-active-fg: #313131;
|
|
2725
|
+
--clio-button-active-shadow: none;
|
|
2726
|
+
--clio-button-frame: url("art/drawingboard/pens/button-corners.png");
|
|
2727
|
+
--clio-button-frame-held: url("art/drawingboard/pens/button-held-corners.png");
|
|
2728
|
+
--clio-button-frame-disabled: url("art/drawingboard/pens/button-corners.png");
|
|
2729
|
+
--clio-button-frame-slice: 5;
|
|
2730
|
+
--clio-ring-frame: none;
|
|
2731
|
+
/* Pop-up frame: four pattern pens (ppat 7095-7098) tiled from the last
|
|
2732
|
+
column and row, and the corner pixels they leave (tooling/db-pens.py). */
|
|
2733
|
+
--clio-popup-frame: url("art/drawingboard/pens/popup-corners.png");
|
|
2734
|
+
--clio-popup-frame-slice: 5;
|
|
2735
|
+
--clio-popup-bg:
|
|
2736
|
+
url("art/drawingboard/pens/popup-left.png") left 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
2737
|
+
url("art/drawingboard/pens/popup-right.png") right 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
2738
|
+
url("art/drawingboard/pens/popup-top.png") right 1px top 0 / 64px 1px repeat-x border-box,
|
|
2739
|
+
url("art/drawingboard/pens/popup-bottom.png") right 1px bottom 0 / 64px 1px repeat-x border-box,
|
|
2740
|
+
#cec6b5;
|
|
2741
|
+
--clio-popup-border: 1px solid transparent;
|
|
2742
|
+
--clio-popup-radius: 0;
|
|
2743
|
+
--clio-popup-shadow: none;
|
|
2744
|
+
--clio-popup-padding: 0 30px 0 7px;
|
|
2745
|
+
--clio-popup-arrow:
|
|
2746
|
+
var(--clio-art-db-popup-arrow) right 5px top 4px / 7px 9px no-repeat,
|
|
2747
|
+
var(--clio-art-db-popup-corner) right 19px bottom / 24px 24px no-repeat;
|
|
2748
|
+
|
|
2749
|
+
/* Check boxes and radio buttons are the theme's own pictures. */
|
|
2750
|
+
--clio-check-size: 14px;
|
|
2751
|
+
--clio-radio-size: 16px;
|
|
2752
|
+
|
|
2753
|
+
/* Edit text: a 1px pencil line drawn with pattern pens, 1px of whatever is
|
|
2754
|
+
behind (the paper) inside it, then the white field (Date & Time; the
|
|
2755
|
+
Text fields rules). */
|
|
2756
|
+
--clio-field-border: 2px solid transparent;
|
|
2757
|
+
--clio-field-shadow: none;
|
|
2758
|
+
--clio-field-focus-shadow: none;
|
|
2759
|
+
--clio-button-disabled-fg: #8c8c8c;
|
|
2760
|
+
--clio-button-disabled-border: 1px solid #888888;
|
|
2761
|
+
|
|
2762
|
+
/* Scroll bars: the theme's 16px arrow boxes; a #ece6e4 track with a #aaa
|
|
2763
|
+
edge, a two-pixel pencil rail down the middle and a #777 far edge; the
|
|
2764
|
+
scroll box drawn from the theme's ends, stretch and grip. */
|
|
2765
|
+
--clio-scrollbar-up: var(--clio-art-db-up);
|
|
2766
|
+
--clio-scrollbar-up-on: var(--clio-art-db-up-on);
|
|
2767
|
+
--clio-scrollbar-down: var(--clio-art-db-down);
|
|
2768
|
+
--clio-scrollbar-down-on: var(--clio-art-db-down-on);
|
|
2769
|
+
--clio-scrollbar-left: var(--clio-art-db-left);
|
|
2770
|
+
--clio-scrollbar-left-on: var(--clio-art-db-left-on);
|
|
2771
|
+
--clio-scrollbar-right: var(--clio-art-db-right);
|
|
2772
|
+
--clio-scrollbar-right-on: var(--clio-art-db-right-on);
|
|
2773
|
+
--clio-scrollbar-button-bg: transparent;
|
|
2774
|
+
--clio-scrollbar-button-shadow: none;
|
|
2775
|
+
/* Vertical (Desktop tab pattern list): #555 edges, a two-pixel #777 rail. */
|
|
2776
|
+
--clio-scrollbar-track: linear-gradient(to right, #555555 0 1px, #ece6e4 1px 7px, #777777 7px 9px, #ece6e4 9px 15px, #555555 15px);
|
|
2777
|
+
--clio-scrollbar-track-color: #ece6e4;
|
|
2778
|
+
--clio-scrollbar-track-shadow: none;
|
|
2779
|
+
--clio-scrollbar-thumb-bg:
|
|
2780
|
+
var(--clio-art-db-thumb-top) 1px 0 / 14px 7px no-repeat,
|
|
2781
|
+
var(--clio-art-db-thumb-bottom) 1px 100% / 14px 8px no-repeat,
|
|
2782
|
+
var(--clio-art-db-thumb-vgrip) 1px 50% / 14px 2px no-repeat,
|
|
2783
|
+
var(--clio-art-db-thumb-vstretch) 1px 0 / 14px 100% no-repeat;
|
|
2784
|
+
--clio-scrollbar-thumb-bg-horizontal:
|
|
2785
|
+
var(--clio-art-db-thumb-left) 0 1px / 7px 14px no-repeat,
|
|
2786
|
+
var(--clio-art-db-thumb-right) 100% 1px / 8px 14px no-repeat,
|
|
2787
|
+
var(--clio-art-db-thumb-hgrip) 50% 1px / 2px 14px no-repeat,
|
|
2788
|
+
var(--clio-art-db-thumb-hstretch) 0 1px / 100% 14px no-repeat;
|
|
2789
|
+
--clio-scrollbar-thumb-color: #cdc6bd;
|
|
2790
|
+
--clio-scrollbar-thumb-border: 0 none;
|
|
2791
|
+
--clio-scrollbar-thumb-shadow: none;
|
|
2792
|
+
--clio-scrollbar-corner: var(--clio-art-db-grow) 0 0 / 16px 16px no-repeat, #cdc6bd;
|
|
2793
|
+
|
|
2794
|
+
/* Dialogs: the theme's frame pictures (see the Dialogs rules); plain dialogs
|
|
2795
|
+
keep a 1px pencil frame with a #777 band 7px wide on the right and 8px
|
|
2796
|
+
deep below. */
|
|
2797
|
+
--clio-dialog-bg: #e7ded6;
|
|
2798
|
+
--clio-modal-border: 1px solid transparent;
|
|
2799
|
+
--clio-modal-frame: none;
|
|
2800
|
+
--clio-plain-dialog-border: 1px solid #333333;
|
|
2801
|
+
--clio-plain-dialog-shadow: 7px 0 0 #777777, 0 8px 0 #777777, 7px 8px 0 #777777;
|
|
2802
|
+
|
|
2803
|
+
--clio-details-bg: #e7ded6;
|
|
2804
|
+
--clio-details-border: 1px solid #555555;
|
|
2805
|
+
--clio-details-shadow: none;
|
|
2806
|
+
/* List boxes (Desktop tab pattern list): a 2px olive #9c9c63 line, 1px of
|
|
2807
|
+
whatever is behind (the pane's paper) inside it, then white; the chosen
|
|
2808
|
+
row #ccf. */
|
|
2809
|
+
--clio-list-border: 2px solid #9c9c63;
|
|
2810
|
+
--clio-list-shadow: none;
|
|
2811
|
+
--clio-list-bg: #ffffff;
|
|
2812
|
+
--clio-group-border: 1px solid #777777;
|
|
2813
|
+
--clio-group-bg: transparent;
|
|
2814
|
+
--clio-group-shadow: none;
|
|
2815
|
+
/* Progress bar (Finder copy window): 12px, a #756f66 pencil line (#333 on
|
|
2816
|
+
the left) round #ddd6c5; an indeterminate bar shows the theme's arrows.
|
|
2817
|
+
The determinate fill was not captured and stays Platinum's. */
|
|
2818
|
+
--clio-progress-height: 12px;
|
|
2819
|
+
--clio-progress-bg: #ddd6c5;
|
|
2820
|
+
--clio-progress-border: 1px solid #756f66;
|
|
2821
|
+
--clio-progress-shadow: none;
|
|
2822
|
+
--clio-tab-height: 27px;
|
|
2823
|
+
/* Tab pane paper (ppat 7115), from the pane's inner top-left. */
|
|
2824
|
+
--clio-tab-panel-bg: url("art/drawingboard/tab-paper.png") 0 0 / 256px 64px, #e7ded6;
|
|
2825
|
+
--clio-tab-panel-border: 1px solid #555555;
|
|
2826
|
+
|
|
2827
|
+
/* Art: redrawn from the theme's 'pxm#' pixmaps by tooling/db-art.py. */
|
|
2828
|
+
--clio-art-db-close: url("art/drawingboard/parts/close.png"); /* 11x11 */
|
|
2829
|
+
--clio-art-db-close-on: url("art/drawingboard/parts/close-on.png"); /* 11x11 */
|
|
2830
|
+
--clio-art-db-collapse: url("art/drawingboard/parts/collapse.png"); /* 11x11 */
|
|
2831
|
+
--clio-art-db-collapse-on: url("art/drawingboard/parts/collapse-on.png"); /* 11x11 */
|
|
2832
|
+
--clio-art-db-zoom: url("art/drawingboard/parts/zoom.png"); /* 11x11 */
|
|
2833
|
+
--clio-art-db-zoom-on: url("art/drawingboard/parts/zoom-on.png"); /* 11x11 */
|
|
2834
|
+
--clio-art-db-check: url("art/drawingboard/parts/check.png"); /* 14x11 */
|
|
2835
|
+
--clio-art-db-check-on: url("art/drawingboard/parts/check-on.png"); /* 14x11 */
|
|
2836
|
+
--clio-art-db-check-mixed: url("art/drawingboard/parts/check-mixed.png"); /* 14x11 */
|
|
2837
|
+
--clio-art-db-check-pressed: url("art/drawingboard/parts/check-pressed.png"); /* 14x11 */
|
|
2838
|
+
--clio-art-db-check-on-pressed: url("art/drawingboard/parts/check-on-pressed.png"); /* 14x11 */
|
|
2839
|
+
--clio-art-db-check-disabled: url("art/drawingboard/parts/check-disabled.png"); /* 14x11 */
|
|
2840
|
+
--clio-art-db-check-on-disabled: url("art/drawingboard/parts/check-on-disabled.png"); /* 14x11 */
|
|
2841
|
+
--clio-art-db-radio: url("art/drawingboard/parts/radio.png"); /* 16x12 */
|
|
2842
|
+
--clio-art-db-radio-on: url("art/drawingboard/parts/radio-on.png"); /* 16x12 */
|
|
2843
|
+
--clio-art-db-radio-on-pressed: url("art/drawingboard/parts/radio-on-pressed.png"); /* 16x12 */
|
|
2844
|
+
--clio-art-db-radio-disabled: url("art/drawingboard/parts/radio-disabled.png"); /* 16x12 */
|
|
2845
|
+
--clio-art-db-radio-on-disabled: url("art/drawingboard/parts/radio-on-disabled.png"); /* 16x12 */
|
|
2846
|
+
--clio-art-db-up: url("art/drawingboard/parts/up.png"); /* 16x16 */
|
|
2847
|
+
--clio-art-db-up-on: url("art/drawingboard/parts/up-on.png"); /* 16x16 */
|
|
2848
|
+
--clio-art-db-up-off: url("art/drawingboard/parts/up-off.png"); /* 16x16 */
|
|
2849
|
+
--clio-art-db-down: url("art/drawingboard/parts/down.png"); /* 16x16 */
|
|
2850
|
+
--clio-art-db-down-on: url("art/drawingboard/parts/down-on.png"); /* 16x16 */
|
|
2851
|
+
--clio-art-db-down-off: url("art/drawingboard/parts/down-off.png"); /* 16x16 */
|
|
2852
|
+
--clio-art-db-left: url("art/drawingboard/parts/left.png"); /* 16x16 */
|
|
2853
|
+
--clio-art-db-left-on: url("art/drawingboard/parts/left-on.png"); /* 16x16 */
|
|
2854
|
+
--clio-art-db-left-off: url("art/drawingboard/parts/left-off.png"); /* 16x16 */
|
|
2855
|
+
--clio-art-db-right: url("art/drawingboard/parts/right.png"); /* 16x16 */
|
|
2856
|
+
--clio-art-db-right-on: url("art/drawingboard/parts/right-on.png"); /* 16x16 */
|
|
2857
|
+
--clio-art-db-right-off: url("art/drawingboard/parts/right-off.png"); /* 16x16 */
|
|
2858
|
+
--clio-art-db-popup-arrow: url("art/drawingboard/parts/popup-arrow.png"); /* 7x9 */
|
|
2859
|
+
--clio-art-db-popup-arrow-off: url("art/drawingboard/parts/popup-arrow-off.png"); /* 7x9 */
|
|
2860
|
+
--clio-art-db-submenu: url("art/drawingboard/parts/submenu.png"); /* 6x11 */
|
|
2861
|
+
--clio-art-db-grow: url("art/drawingboard/parts/grow.png"); /* 16x16 */
|
|
2862
|
+
--clio-art-db-popup-corner: url("art/drawingboard/parts/popup-corner.png"); /* 24x24 */
|
|
2863
|
+
--clio-art-db-popup-corner-off: url("art/drawingboard/parts/popup-corner-off.png"); /* 24x24 */
|
|
2864
|
+
--clio-art-db-button-corner: url("art/drawingboard/parts/button-corner.png"); /* 24x24 */
|
|
2865
|
+
--clio-art-db-btn-tl: url("art/drawingboard/parts/btn-tl.png"); /* 7x3 */
|
|
2866
|
+
--clio-art-db-btn-tr: url("art/drawingboard/parts/btn-tr.png"); /* 4x3 */
|
|
2867
|
+
--clio-art-db-btn-br: url("art/drawingboard/parts/btn-br.png"); /* 5x6 */
|
|
2868
|
+
--clio-art-db-btn-br-held: url("art/drawingboard/parts/btn-br-held.png"); /* 5x6 */
|
|
2869
|
+
--clio-art-db-btn-bl: url("art/drawingboard/parts/btn-bl.png"); /* 7x4 */
|
|
2870
|
+
--clio-art-db-progress-arrows: url("art/drawingboard/parts/progress-arrows.png"); /* 128x5 */
|
|
2871
|
+
--clio-art-db-def-tl: url("art/drawingboard/parts/def-tl.png"); /* 9x5 */
|
|
2872
|
+
--clio-art-db-def-tr: url("art/drawingboard/parts/def-tr.png"); /* 4x4 */
|
|
2873
|
+
--clio-art-db-def-br: url("art/drawingboard/parts/def-br.png"); /* 5x6 */
|
|
2874
|
+
--clio-art-db-def-bl: url("art/drawingboard/parts/def-bl.png"); /* 9x5 */
|
|
2875
|
+
--clio-art-db-thumb-left: url("art/drawingboard/parts/thumb-left.png"); /* 7x14 */
|
|
2876
|
+
--clio-art-db-thumb-right: url("art/drawingboard/parts/thumb-right.png"); /* 8x14 */
|
|
2877
|
+
--clio-art-db-thumb-hgrip: url("art/drawingboard/parts/thumb-hgrip.png"); /* 2x14 */
|
|
2878
|
+
--clio-art-db-thumb-hstretch: url("art/drawingboard/parts/thumb-hstretch.png"); /* 1x14 */
|
|
2879
|
+
--clio-art-db-thumb-top: url("art/drawingboard/parts/thumb-top.png"); /* 14x7 */
|
|
2880
|
+
--clio-art-db-thumb-bottom: url("art/drawingboard/parts/thumb-bottom.png"); /* 14x8 */
|
|
2881
|
+
--clio-art-db-thumb-vgrip: url("art/drawingboard/parts/thumb-vgrip.png"); /* 14x2 */
|
|
2882
|
+
--clio-art-db-thumb-vstretch: url("art/drawingboard/parts/thumb-vstretch.png"); /* 14x1 */
|
|
2883
|
+
--clio-art-db-tab: url("art/drawingboard/parts/tab.png"); /* 24x27 */
|
|
2884
|
+
--clio-art-db-tab-selected: url("art/drawingboard/parts/tab-selected.png"); /* 24x27 */
|
|
2885
|
+
--clio-art-db-tab-pressed: url("art/drawingboard/parts/tab-pressed.png"); /* 24x27 */
|
|
2886
|
+
--clio-art-db-menu-underline-left: url("art/drawingboard/parts/menu-underline-left.png"); /* 29x3 */
|
|
2887
|
+
--clio-art-db-menu-underline: url("art/drawingboard/parts/menu-underline.png"); /* 48x3 */
|
|
2888
|
+
--clio-art-db-menu-underline-right: url("art/drawingboard/parts/menu-underline-right.png"); /* 36x3 */
|
|
2889
|
+
--clio-art-db-title-underline-left: url("art/drawingboard/parts/title-underline-left.png"); /* 15x3 */
|
|
2890
|
+
--clio-art-db-title-underline: url("art/drawingboard/parts/title-underline.png"); /* 32x4 */
|
|
2891
|
+
--clio-art-db-title-underline-right: url("art/drawingboard/parts/title-underline-right.png"); /* 16x3 */
|
|
2892
|
+
--clio-art-db-menu-underline-tiled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cpattern id='p' width='48' height='3' patternUnits='userSpaceOnUse'%3E%3Cimage width='48' height='3' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAADBAMAAAAnwpG3AAAAElBMVEUAAADMZmbMmWbMmZnMZjPMMzOFAtjtAAAAAXRSTlMAQObYZgAAACJJREFUeJxjFGSAAMb/DMYMDAxnwWwBBgbGUKgENmCATRAAmjoCqut/JFgAAAAASUVORK5CYII='/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='100%' height='100%' fill='url(%23p)'/%3E%3C/svg%3E"); /* 48 px tile */
|
|
2893
|
+
--clio-art-db-title-underline-tiled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cpattern id='p' width='32' height='4' patternUnits='userSpaceOnUse'%3E%3Cimage width='32' height='4' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAEBAMAAAAdaSDnAAAAD1BMVEUAAADMZmbMmWbMmZnMZjOW1IuaAAAAAXRSTlMAQObYZgAAACBJREFUeJxjdGGAgP+MDAwM5/4rs0D5DCA+gxGMhw8AALzeA23Id2x2AAAAAElFTkSuQmCC'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='100%' height='100%' fill='url(%23p)'/%3E%3C/svg%3E"); /* 32 px tile */
|
|
2894
|
+
}
|
|
2895
|
+
|
|
2896
|
+
/* ---- Window ----------------------------------------------------------------
|
|
2897
|
+
Drawn as the theme draws it: the nine 'pxm#' frame pieces (6176-6184, active
|
|
2898
|
+
and inactive sets), placed where Mac OS 8.5 puts them round a 476x338
|
|
2899
|
+
outline (Appearance window, found 1:1 in the capture), with the edge pieces
|
|
2900
|
+
tiled from their ends. Under them the window paper (ppat 7120): 128x128,
|
|
2901
|
+
origin at the content's top-left, 6px in and 22px down (Date & Time, Finder
|
|
2902
|
+
Preferences windows agree). Corners overrun the outline, so they sit on a
|
|
2903
|
+
pseudo-element larger than the window; the tiled edges sit on one clipped
|
|
2904
|
+
to where each edge runs. Files: art/drawingboard/ (tooling/db-art.py --files). */
|
|
2905
|
+
:root .window {
|
|
2906
|
+
--db-tl: url("art/drawingboard/window-tl.png");
|
|
2907
|
+
--db-top: url("art/drawingboard/window-top.png");
|
|
2908
|
+
--db-tr: url("art/drawingboard/window-tr.png");
|
|
2909
|
+
--db-ur: url("art/drawingboard/window-ur.png");
|
|
2910
|
+
--db-right: url("art/drawingboard/window-right.png");
|
|
2911
|
+
--db-br: url("art/drawingboard/window-br.png");
|
|
2912
|
+
--db-bottom: url("art/drawingboard/window-bottom.png");
|
|
2913
|
+
--db-bl: url("art/drawingboard/window-bl.png");
|
|
2914
|
+
--db-left: url("art/drawingboard/window-left.png");
|
|
2915
|
+
isolation: isolate;
|
|
2916
|
+
min-width: 128px;
|
|
2917
|
+
min-height: 60px;
|
|
2918
|
+
}
|
|
2919
|
+
|
|
2920
|
+
:root .window.inactive {
|
|
2921
|
+
--db-tl: url("art/drawingboard/window-tl-inactive.png");
|
|
2922
|
+
--db-top: url("art/drawingboard/window-top-inactive.png");
|
|
2923
|
+
--db-tr: url("art/drawingboard/window-tr-inactive.png");
|
|
2924
|
+
--db-ur: url("art/drawingboard/window-ur-inactive.png");
|
|
2925
|
+
--db-right: url("art/drawingboard/window-right-inactive.png");
|
|
2926
|
+
--db-br: url("art/drawingboard/window-br-inactive.png");
|
|
2927
|
+
--db-bottom: url("art/drawingboard/window-bottom-inactive.png");
|
|
2928
|
+
--db-bl: url("art/drawingboard/window-bl-inactive.png");
|
|
2929
|
+
--db-left: url("art/drawingboard/window-left-inactive.png");
|
|
2930
|
+
}
|
|
2931
|
+
|
|
2932
|
+
:root .window,
|
|
2933
|
+
:root .window:not(.inactive) {
|
|
2934
|
+
background: url("art/drawingboard/paper.png") calc(6px - var(--clio-db-phase, 0px)) 22px / 128px 128px;
|
|
2935
|
+
}
|
|
2936
|
+
|
|
2937
|
+
:root .window::before,
|
|
2938
|
+
:root .window::after {
|
|
2939
|
+
content: "";
|
|
2940
|
+
position: absolute;
|
|
2941
|
+
z-index: -1;
|
|
2942
|
+
pointer-events: none;
|
|
2943
|
+
}
|
|
2944
|
+
|
|
2945
|
+
/* Edges: the box from 1px left of the outline to the shadow's far side. */
|
|
2946
|
+
:root .window::before {
|
|
2947
|
+
inset: 0 -7px -8px -1px;
|
|
2948
|
+
background:
|
|
2949
|
+
var(--db-top) 25px 0 / 256px 22px repeat-x,
|
|
2950
|
+
var(--db-left) 0 22px / 7px 214px repeat-y,
|
|
2951
|
+
var(--db-right) right 0 top 54px / 13px 150px repeat-y,
|
|
2952
|
+
var(--db-bottom) left 57px bottom 0 / 183px 14px repeat-x;
|
|
2953
|
+
clip-path: polygon(25px 0, calc(100% - 13px) 0, calc(100% - 13px) 54px, 100% 54px,
|
|
2954
|
+
100% calc(100% - 54px), calc(100% - 59px) calc(100% - 54px), calc(100% - 59px) 100%,
|
|
2955
|
+
57px 100%, 57px calc(100% - 22px), 0 calc(100% - 22px), 0 22px, 25px 22px);
|
|
2956
|
+
}
|
|
2957
|
+
|
|
2958
|
+
/* Corners, overrunning the outline by up to 10px. */
|
|
2959
|
+
:root .window::after {
|
|
2960
|
+
inset: -10px -11px -18px -8px;
|
|
2961
|
+
background:
|
|
2962
|
+
var(--db-tl) 4px 5px / 28px 27px no-repeat,
|
|
2963
|
+
var(--db-tr) right 1px top 0 / 16px 32px no-repeat,
|
|
2964
|
+
var(--db-ur) right 4px top 32px / 13px 32px no-repeat,
|
|
2965
|
+
var(--db-br) right 0 bottom 2px / 63px 62px no-repeat,
|
|
2966
|
+
var(--db-bl) left 0 bottom 0 / 64px 32px no-repeat;
|
|
2967
|
+
}
|
|
2968
|
+
|
|
2969
|
+
/* ---- Menus -----------------------------------------------------------------
|
|
2970
|
+
The shade: 2px of pencil (ppat 130, 131) down the right from 3px below the
|
|
2971
|
+
menu's top and along the foot from 4px in. A menu that is not a drop-down
|
|
2972
|
+
becomes the shade's containing block. --clio-db-phase shifts the pens
|
|
2973
|
+
along the menu (Mac OS drew the Finder's File menu 64px further along). */
|
|
2974
|
+
:root :is(.menu, ul[role="menu"]):not(li > *) {
|
|
2975
|
+
position: relative;
|
|
2976
|
+
}
|
|
2977
|
+
|
|
2978
|
+
/* Paper (ppat 7125) from the inside top-left, and a frame drawn with pattern
|
|
2979
|
+
pens (ppat 129-132), each tiled from the menu's own corner: the left pen
|
|
2980
|
+
and the top from the top-left, the right pen from 4px lower, the foot from
|
|
2981
|
+
4px in. Rules, not tokens: the pens read this menu's own top line and phase. */
|
|
2982
|
+
:root :is(.menu, ul[role="menu"]) {
|
|
2983
|
+
background:
|
|
2984
|
+
url("art/drawingboard/menu-top.png") 0 calc(var(--clio-menu-border-top-width) - 1px) / 128px 1px repeat-x border-box,
|
|
2985
|
+
url("art/drawingboard/menu-left.png") 0 calc(var(--clio-menu-border-top-width) - 1px) / 1px 128px repeat-y border-box,
|
|
2986
|
+
url("art/drawingboard/menu-right.png") right 0 top calc(var(--clio-menu-border-top-width) + 3px) / 1px 128px repeat-y border-box,
|
|
2987
|
+
url("art/drawingboard/menu-foot.png") calc(4px - var(--clio-db-phase, 0px)) 100% / 128px 1px repeat-x border-box,
|
|
2988
|
+
url("art/drawingboard/menu-paper.png") 0 0 / 64px 64px padding-box,
|
|
2989
|
+
#dddddd;
|
|
2990
|
+
}
|
|
2991
|
+
|
|
2992
|
+
:root :is(.menu, [role="menu"]) > :is(li.separator, li[role="separator"], hr) {
|
|
2993
|
+
background: url("art/drawingboard/menu-separator.png") calc(0px - var(--clio-db-phase, 0px)) 4px / 128px 1px repeat-x;
|
|
2994
|
+
}
|
|
2995
|
+
|
|
2996
|
+
/* A menu bar's menu hangs from the bar's last row, which is its top line. */
|
|
2997
|
+
:root :is(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(.menu, ul[role="menu"]) {
|
|
2998
|
+
--clio-menu-border-top-width: 0px;
|
|
2999
|
+
}
|
|
3000
|
+
|
|
3001
|
+
:root :is(.menu, ul[role="menu"])::before {
|
|
3002
|
+
content: "";
|
|
3003
|
+
position: absolute;
|
|
3004
|
+
top: 3px; /* from the padding box: 4px below the top line */
|
|
3005
|
+
right: -3px;
|
|
3006
|
+
bottom: -3px;
|
|
3007
|
+
left: 3px;
|
|
3008
|
+
background:
|
|
3009
|
+
url("art/drawingboard/menu-shade-right.png") right 0 top 0 / 2px 128px repeat-y,
|
|
3010
|
+
url("art/drawingboard/menu-shade-foot.png") calc(0px - var(--clio-db-phase, 0px)) 100% / 128px 2px repeat-x;
|
|
3011
|
+
pointer-events: none;
|
|
3012
|
+
}
|
|
3013
|
+
|
|
3014
|
+
/* The fixed pencil pixels where the pens meet (File and Edit menus agree). */
|
|
3015
|
+
:root :is(.menu, ul[role="menu"])::after {
|
|
3016
|
+
content: "";
|
|
3017
|
+
position: absolute;
|
|
3018
|
+
top: 1px; /* from the padding box: 2px below the top line */
|
|
3019
|
+
right: -3px;
|
|
3020
|
+
bottom: -3px;
|
|
3021
|
+
left: -1px;
|
|
3022
|
+
background:
|
|
3023
|
+
url("art/drawingboard/menu-corner-tr.png") right 0 top 0 / 3px 2px no-repeat,
|
|
3024
|
+
url("art/drawingboard/menu-corner-br.png") right 0 bottom 0 / 3px 3px no-repeat,
|
|
3025
|
+
url("art/drawingboard/menu-corner-bl.png") left 0 bottom 0 / 4px 3px no-repeat;
|
|
3026
|
+
pointer-events: none;
|
|
3027
|
+
}
|
|
3028
|
+
|
|
3029
|
+
:root .window-pane {
|
|
3030
|
+
border: 0;
|
|
3031
|
+
background: transparent;
|
|
3032
|
+
}
|
|
3033
|
+
|
|
3034
|
+
:root .window > .details-bar {
|
|
3035
|
+
border-left: 0;
|
|
3036
|
+
border-right: 0;
|
|
3037
|
+
}
|
|
3038
|
+
|
|
3039
|
+
:root .title-bar,
|
|
3040
|
+
:root .window.inactive > .title-bar,
|
|
3041
|
+
:root .inactive-title-bar {
|
|
3042
|
+
background: transparent;
|
|
3043
|
+
}
|
|
3044
|
+
|
|
3045
|
+
:root .title-bar > :is(.title, h1, h2, h3) {
|
|
3046
|
+
padding: var(--clio-title-padding);
|
|
3047
|
+
background: transparent;
|
|
3048
|
+
transform: none;
|
|
3049
|
+
}
|
|
3050
|
+
|
|
3051
|
+
:root .title-bar > :is(.title, h1, h2, h3)::after {
|
|
3052
|
+
content: none;
|
|
3053
|
+
}
|
|
3054
|
+
|
|
3055
|
+
/* Close, zoom and collapse boxes are the theme's 11px pictures. */
|
|
3056
|
+
:root .title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse) {
|
|
3057
|
+
border: 0;
|
|
3058
|
+
background: var(--clio-art-db-close) 0 0 / 11px 11px no-repeat;
|
|
3059
|
+
box-shadow: none;
|
|
3060
|
+
}
|
|
3061
|
+
|
|
3062
|
+
:root .title-bar > :is(.resize, .resize-box, .zoom) {
|
|
3063
|
+
background-image: var(--clio-art-db-zoom);
|
|
3064
|
+
}
|
|
3065
|
+
|
|
3066
|
+
:root .title-bar > :is(.shade, .shade-box, .collapse) {
|
|
3067
|
+
background-image: var(--clio-art-db-collapse);
|
|
3068
|
+
}
|
|
3069
|
+
|
|
3070
|
+
:root .title-bar > :is(button, .close, .close-box):is(:active, .active) {
|
|
3071
|
+
background: var(--clio-art-db-close-on) 0 0 / 11px 11px no-repeat;
|
|
3072
|
+
box-shadow: none;
|
|
3073
|
+
}
|
|
3074
|
+
|
|
3075
|
+
:root .title-bar > :is(.resize, .resize-box, .zoom):is(:active, .active) {
|
|
3076
|
+
background: var(--clio-art-db-zoom-on) 0 0 / 11px 11px no-repeat;
|
|
3077
|
+
}
|
|
3078
|
+
|
|
3079
|
+
:root .title-bar > :is(.shade, .shade-box, .collapse):is(:active, .active) {
|
|
3080
|
+
background: var(--clio-art-db-collapse-on) 0 0 / 11px 11px no-repeat;
|
|
3081
|
+
}
|
|
3082
|
+
|
|
3083
|
+
:root .title-bar > :is(.resize, .resize-box, .zoom, .shade, .shade-box, .collapse)::before {
|
|
3084
|
+
content: none;
|
|
3085
|
+
}
|
|
3086
|
+
|
|
3087
|
+
/* Background window: its own frame set, grey title, boxes erased (base rule). */
|
|
3088
|
+
:root .window.inactive {
|
|
3089
|
+
color: #555555;
|
|
3090
|
+
}
|
|
3091
|
+
|
|
3092
|
+
:root .window.inactive > .title-bar > :is(.title, h1, h2, h3),
|
|
3093
|
+
:root .inactive-title-bar > :is(.title, h1, h2, h3) {
|
|
3094
|
+
background: transparent;
|
|
3095
|
+
}
|
|
3096
|
+
|
|
3097
|
+
/* List boxes: the 1px between the olive line and the white is see-through. */
|
|
3098
|
+
:root :is(.listbox, ul[role="listbox"], ol[role="listbox"], div[role="listbox"], select[multiple], select[size]:not([size="1"])) {
|
|
3099
|
+
padding: 1px;
|
|
3100
|
+
background-clip: content-box;
|
|
3101
|
+
}
|
|
3102
|
+
|
|
3103
|
+
/* ---- Text fields ---------------------------------------------------------------
|
|
3104
|
+
Pens (ppat 7003-7006): the rows tiled from the white's left edge, the left
|
|
3105
|
+
column from its top, the right column from 1px higher (both of Date & Time's
|
|
3106
|
+
fields agree), and the corner pixels they leave (tooling/db-pens.py). A rule,
|
|
3107
|
+
not a token: the rows read the field's own --clio-db-phase. */
|
|
3108
|
+
:root :is(input:not([type]), input[type="text"], input[type="search"], input[type="email"], input[type="url"], input[type="password"], input[type="number"], input[type="tel"], textarea) {
|
|
3109
|
+
border-image: url("art/drawingboard/pens/field-corners.png") 5 / 5px stretch;
|
|
3110
|
+
background:
|
|
3111
|
+
url("art/drawingboard/pens/field-left.png") left 0 top 2px / 1px 32px repeat-y border-box,
|
|
3112
|
+
url("art/drawingboard/pens/field-right.png") right 0 top 1px / 1px 32px repeat-y border-box,
|
|
3113
|
+
url("art/drawingboard/pens/field-top.png") calc(2px - var(--clio-db-phase, 0px)) 0 / 128px 1px repeat-x border-box,
|
|
3114
|
+
url("art/drawingboard/pens/field-bottom.png") calc(2px - var(--clio-db-phase, 0px)) 100% / 128px 1px repeat-x border-box,
|
|
3115
|
+
#ffffff padding-box;
|
|
3116
|
+
}
|
|
3117
|
+
|
|
3118
|
+
/* ---- Dialogs -----------------------------------------------------------------
|
|
3119
|
+
Alerts and modal dialogs are framed like windows: eight pictures round the
|
|
3120
|
+
1px outline (Alert 6127-6134, found 1:1 round Energy Saver's start-up
|
|
3121
|
+
notice; Modal 6135-6142, the same sizes, placed the same way, inferred),
|
|
3122
|
+
edges tiled from their ends, on the window paper from 4px inside the
|
|
3123
|
+
outline. Insets are from the padding box, inside the 1px border. */
|
|
3124
|
+
:root :is(.alert-box, .modal-dialog, dialog.modal) {
|
|
3125
|
+
--db-tl: url("art/drawingboard/modal-tl.png");
|
|
3126
|
+
--db-top: url("art/drawingboard/modal-top.png");
|
|
3127
|
+
--db-tr: url("art/drawingboard/modal-tr.png");
|
|
3128
|
+
--db-right: url("art/drawingboard/modal-right.png");
|
|
3129
|
+
--db-right-h: 150px;
|
|
3130
|
+
--db-br: url("art/drawingboard/modal-br.png");
|
|
3131
|
+
--db-bottom: url("art/drawingboard/modal-bottom.png");
|
|
3132
|
+
--db-bl: url("art/drawingboard/modal-bl.png");
|
|
3133
|
+
--db-left: url("art/drawingboard/modal-left.png");
|
|
3134
|
+
--db-left-h: 214px;
|
|
3135
|
+
position: relative;
|
|
3136
|
+
isolation: isolate;
|
|
3137
|
+
background: url("art/drawingboard/paper.png") calc(4px - var(--clio-db-phase, 0px)) 4px / 128px 128px border-box;
|
|
3138
|
+
}
|
|
3139
|
+
|
|
3140
|
+
:root :is(.alert-box, dialog.alert-box) {
|
|
3141
|
+
--db-tl: url("art/drawingboard/alert-tl.png");
|
|
3142
|
+
--db-top: url("art/drawingboard/alert-top.png");
|
|
3143
|
+
--db-tr: url("art/drawingboard/alert-tr.png");
|
|
3144
|
+
--db-right: url("art/drawingboard/alert-right.png");
|
|
3145
|
+
--db-right-h: 43px;
|
|
3146
|
+
--db-br: url("art/drawingboard/alert-br.png");
|
|
3147
|
+
--db-bottom: url("art/drawingboard/alert-bottom.png");
|
|
3148
|
+
--db-bl: url("art/drawingboard/alert-bl.png");
|
|
3149
|
+
--db-left: url("art/drawingboard/alert-left.png");
|
|
3150
|
+
--db-left-h: 106px;
|
|
3151
|
+
}
|
|
3152
|
+
|
|
3153
|
+
:root :is(.alert-box, .modal-dialog, dialog.modal)::before,
|
|
3154
|
+
:root :is(.alert-box, .modal-dialog, dialog.modal)::after {
|
|
3155
|
+
content: "";
|
|
3156
|
+
position: absolute;
|
|
3157
|
+
z-index: -1;
|
|
3158
|
+
pointer-events: none;
|
|
3159
|
+
}
|
|
3160
|
+
|
|
3161
|
+
/* Edges: from 1px left of the outline to the shade's far side. */
|
|
3162
|
+
:root :is(.alert-box, .modal-dialog, dialog.modal)::before {
|
|
3163
|
+
inset: -1px -8px -9px -2px;
|
|
3164
|
+
background:
|
|
3165
|
+
var(--db-top) 20px 0 / 256px 1px repeat-x,
|
|
3166
|
+
var(--db-left) 0 22px / 2px var(--db-left-h) repeat-y,
|
|
3167
|
+
var(--db-right) right 0 top 54px / 8px var(--db-right-h) repeat-y,
|
|
3168
|
+
var(--db-bottom) left 57px bottom 0 / 183px 9px repeat-x;
|
|
3169
|
+
clip-path: polygon(20px 0, calc(100% - 8px) 0, calc(100% - 8px) 54px, 100% 54px,
|
|
3170
|
+
100% calc(100% - 54px), calc(100% - 59px) calc(100% - 54px), calc(100% - 59px) 100%,
|
|
3171
|
+
57px 100%, 57px calc(100% - 22px), 0 calc(100% - 22px), 0 22px, 20px 22px);
|
|
3172
|
+
}
|
|
3173
|
+
|
|
3174
|
+
/* Corners, overrunning the outline by up to 18px. */
|
|
3175
|
+
:root :is(.alert-box, .modal-dialog, dialog.modal)::after {
|
|
3176
|
+
inset: -11px -12px -19px -9px;
|
|
3177
|
+
background:
|
|
3178
|
+
var(--db-tl) 5px 5px / 22px 27px no-repeat,
|
|
3179
|
+
var(--db-tr) right 1px top 0 / 11px 64px no-repeat,
|
|
3180
|
+
var(--db-br) right 0 bottom 2px / 63px 62px no-repeat,
|
|
3181
|
+
var(--db-bl) left 0 bottom 0 / 64px 32px no-repeat;
|
|
3182
|
+
}
|
|
3183
|
+
|
|
3184
|
+
/* ---- Default button: a second pencil line round the button and its shade,
|
|
3185
|
+
with a light #9f9a94 pencil line between (Energy Saver notice,
|
|
3186
|
+
"Close Message": ring 2px out on the left and top, 3px right, 2px below). -- */
|
|
3187
|
+
:root :is(.default, .btn-default)::before {
|
|
3188
|
+
inset: -3px -4px -3px -3px;
|
|
3189
|
+
border: 1px solid;
|
|
3190
|
+
border-color: #555555 #111111 #333333 #555555;
|
|
3191
|
+
border-radius: 0;
|
|
3192
|
+
box-shadow: inset 0 0 0 1px #9f9a94;
|
|
3193
|
+
}
|
|
3194
|
+
|
|
3195
|
+
/* Disabled push button: not captured; the plain button's frame and face with
|
|
3196
|
+
the theme's grey label (inferred). */
|
|
3197
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(:disabled, .disabled) {
|
|
3198
|
+
background: var(--clio-button-bg);
|
|
3199
|
+
color: #9f9a94;
|
|
3200
|
+
-webkit-text-fill-color: #9f9a94;
|
|
3201
|
+
}
|
|
3202
|
+
|
|
3203
|
+
/* ---- Check boxes and radio buttons: one picture per state. ---------------- */
|
|
3204
|
+
:root input[type="checkbox"] {
|
|
3205
|
+
width: 14px;
|
|
3206
|
+
height: 11px;
|
|
3207
|
+
border: 0;
|
|
3208
|
+
background: var(--clio-art-db-check) 0 0 / 14px 11px no-repeat;
|
|
3209
|
+
box-shadow: none;
|
|
3210
|
+
vertical-align: -1px;
|
|
3211
|
+
}
|
|
3212
|
+
|
|
3213
|
+
:root input[type="checkbox"]:checked {
|
|
3214
|
+
background-image: var(--clio-art-db-check-on);
|
|
3215
|
+
}
|
|
3216
|
+
|
|
3217
|
+
:root input[type="checkbox"]:checked::after {
|
|
3218
|
+
content: none;
|
|
3219
|
+
}
|
|
3220
|
+
|
|
3221
|
+
:root input[type="checkbox"]:indeterminate {
|
|
3222
|
+
background-image: var(--clio-art-db-check-mixed);
|
|
3223
|
+
}
|
|
3224
|
+
|
|
3225
|
+
:root input[type="checkbox"]:not(:disabled):active {
|
|
3226
|
+
background: var(--clio-art-db-check-pressed) 0 0 / 14px 11px no-repeat;
|
|
3227
|
+
box-shadow: none;
|
|
3228
|
+
}
|
|
3229
|
+
|
|
3230
|
+
:root input[type="checkbox"]:checked:not(:disabled):active {
|
|
3231
|
+
background-image: var(--clio-art-db-check-on-pressed);
|
|
3232
|
+
}
|
|
3233
|
+
|
|
3234
|
+
:root input[type="checkbox"]:disabled {
|
|
3235
|
+
background-image: var(--clio-art-db-check-disabled);
|
|
3236
|
+
}
|
|
3237
|
+
|
|
3238
|
+
:root input[type="checkbox"]:checked:disabled {
|
|
3239
|
+
background-image: var(--clio-art-db-check-on-disabled);
|
|
3240
|
+
}
|
|
3241
|
+
|
|
3242
|
+
:root input[type="radio"],
|
|
3243
|
+
:root input[type="radio"]:not(:disabled):active {
|
|
3244
|
+
width: 16px;
|
|
3245
|
+
height: 12px;
|
|
3246
|
+
border: 0;
|
|
3247
|
+
border-radius: 0;
|
|
3248
|
+
background: var(--clio-art-db-radio) 0 0 / 16px 12px no-repeat;
|
|
3249
|
+
box-shadow: none;
|
|
3250
|
+
}
|
|
3251
|
+
|
|
3252
|
+
:root input[type="radio"]:checked {
|
|
3253
|
+
background: var(--clio-art-db-radio-on) 0 0 / 16px 12px no-repeat;
|
|
3254
|
+
}
|
|
3255
|
+
|
|
3256
|
+
:root input[type="radio"]:checked:not(:disabled):active {
|
|
3257
|
+
background: var(--clio-art-db-radio-on-pressed) 0 0 / 16px 12px no-repeat;
|
|
3258
|
+
}
|
|
3259
|
+
|
|
3260
|
+
:root input[type="radio"]:disabled {
|
|
3261
|
+
background-image: var(--clio-art-db-radio-disabled);
|
|
3262
|
+
}
|
|
3263
|
+
|
|
3264
|
+
:root input[type="radio"]:checked:disabled {
|
|
3265
|
+
background-image: var(--clio-art-db-radio-on-disabled);
|
|
3266
|
+
}
|
|
3267
|
+
|
|
3268
|
+
:root :is(input[type="checkbox"], input[type="radio"]):disabled {
|
|
3269
|
+
opacity: 1;
|
|
3270
|
+
}
|
|
3271
|
+
|
|
3272
|
+
/* ---- Menus ------------------------------------------------------------------ */
|
|
3273
|
+
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"]))::after,
|
|
3274
|
+
:root :is(.menu, [role="menu"]) > li > [aria-haspopup="true"]::after,
|
|
3275
|
+
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active)::after {
|
|
3276
|
+
background-image: var(--clio-art-db-submenu);
|
|
3277
|
+
}
|
|
3278
|
+
|
|
3279
|
+
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active)::before,
|
|
3280
|
+
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active)::before {
|
|
3281
|
+
filter: none;
|
|
3282
|
+
}
|
|
3283
|
+
|
|
3284
|
+
:root :is(.menu, [role="menu"]) > li.divider {
|
|
3285
|
+
box-shadow: inset 0 -4px 0 #dddddd, inset 0 -5px 0 #888888;
|
|
3286
|
+
}
|
|
3287
|
+
|
|
3288
|
+
/* ---- Tabs: left end, one stretched column, right end. ---------------------- */
|
|
3289
|
+
:root :is([role="tablist"], .tabs) {
|
|
3290
|
+
padding: 0 8px;
|
|
3291
|
+
}
|
|
3292
|
+
|
|
3293
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button) {
|
|
3294
|
+
height: 27px;
|
|
3295
|
+
margin: 0 -6px -1px 0;
|
|
3296
|
+
padding: 6px 0 0;
|
|
3297
|
+
border-width: 0 17px 0 6px;
|
|
3298
|
+
border-image: var(--clio-art-db-tab) 0 17 0 6 fill / 0 17px 0 6px stretch;
|
|
3299
|
+
color: #313131;
|
|
3300
|
+
line-height: 20px;
|
|
3301
|
+
}
|
|
3302
|
+
|
|
3303
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):not(:disabled):active {
|
|
3304
|
+
border-image-source: var(--clio-art-db-tab-pressed);
|
|
3305
|
+
color: #313131;
|
|
3306
|
+
}
|
|
3307
|
+
|
|
3308
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):is([aria-selected="true"], .active) {
|
|
3309
|
+
padding-top: 6px;
|
|
3310
|
+
border-image-source: var(--clio-art-db-tab-selected);
|
|
3311
|
+
color: #313131;
|
|
3312
|
+
}
|
|
3313
|
+
|
|
3314
|
+
/* The panel's top line runs under the back tabs and breaks under the front
|
|
3315
|
+
one (capture: row 121, #555 to #777 under Themes, none under Appearance). */
|
|
3316
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button) {
|
|
3317
|
+
position: relative;
|
|
3318
|
+
margin-bottom: 0;
|
|
3319
|
+
}
|
|
3320
|
+
|
|
3321
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):is([aria-selected="true"], .active)::after {
|
|
3322
|
+
content: "";
|
|
3323
|
+
position: absolute;
|
|
3324
|
+
left: -5px;
|
|
3325
|
+
right: -12px;
|
|
3326
|
+
bottom: -1px;
|
|
3327
|
+
height: 1px;
|
|
3328
|
+
background: #e7ded6;
|
|
3329
|
+
}
|
|
3330
|
+
|
|
3331
|
+
:root :is([role="tabpanel"], .tab-panel) {
|
|
3332
|
+
border-top: 1px solid #666666;
|
|
3333
|
+
box-shadow: none;
|
|
3334
|
+
}
|
|
3335
|
+
|
|
3336
|
+
/* ---- Scroll bars ----------------------------------------------------------- */
|
|
3337
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track,
|
|
3338
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-track {
|
|
3339
|
+
border: 0;
|
|
3340
|
+
}
|
|
3341
|
+
|
|
3342
|
+
/* The scroll box is the theme's 15px picture at its shortest (7px end + 8px end). */
|
|
3343
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-thumb,
|
|
3344
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-thumb {
|
|
3345
|
+
min-width: 15px;
|
|
3346
|
+
min-height: 15px;
|
|
3347
|
+
}
|
|
3348
|
+
|
|
3349
|
+
/* Tracks: #ece6e4 ruled by pattern pens (ppat 7045-7049) tiled from the
|
|
3350
|
+
track's start: the edges and a double centre line. Rules, not tokens: the
|
|
3351
|
+
pens read the scroller's own --clio-db-phase. */
|
|
3352
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track,
|
|
3353
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-track {
|
|
3354
|
+
background:
|
|
3355
|
+
url("art/drawingboard/track-v-left.png") 0 0 / 1px 128px repeat-y,
|
|
3356
|
+
url("art/drawingboard/track-v-mid1.png") 7px 0 / 1px 256px repeat-y,
|
|
3357
|
+
url("art/drawingboard/track-v-mid2.png") 8px 0 / 1px 256px repeat-y,
|
|
3358
|
+
url("art/drawingboard/track-v-right.png") 15px 0 / 1px 128px repeat-y,
|
|
3359
|
+
#ece6e4;
|
|
3360
|
+
}
|
|
3361
|
+
|
|
3362
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track:horizontal,
|
|
3363
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-track:horizontal {
|
|
3364
|
+
background:
|
|
3365
|
+
url("art/drawingboard/track-h-top.png") calc(0px - var(--clio-db-phase, 0px)) 0 / 128px 1px repeat-x,
|
|
3366
|
+
url("art/drawingboard/track-h-mid1.png") calc(0px - var(--clio-db-phase, 0px)) 7px / 256px 1px repeat-x,
|
|
3367
|
+
url("art/drawingboard/track-h-mid2.png") calc(0px - var(--clio-db-phase, 0px)) 8px / 256px 1px repeat-x,
|
|
3368
|
+
url("art/drawingboard/track-h-bottom.png") calc(0px - var(--clio-db-phase, 0px)) 15px / 128px 1px repeat-x,
|
|
3369
|
+
#ece6e4;
|
|
3370
|
+
}
|
|
3371
|
+
|
|
3372
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button,
|
|
3373
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button,
|
|
3374
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:active,
|
|
3375
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button:active {
|
|
3376
|
+
border: 0;
|
|
3377
|
+
background-color: transparent;
|
|
3378
|
+
background-position: 0 0;
|
|
3379
|
+
background-size: 16px 16px;
|
|
3380
|
+
box-shadow: none;
|
|
3381
|
+
}
|
|
3382
|
+
|
|
3383
|
+
/* Disabled pop-up menu: the pens' lighter rows, the theme's dimmed hatch and
|
|
3384
|
+
arrow (Appearance, "Variation"). */
|
|
3385
|
+
/* The arrow and hatch stay inside the frame; the pens draw on it. */
|
|
3386
|
+
:root select,
|
|
3387
|
+
:root select:disabled {
|
|
3388
|
+
background-clip: padding-box, padding-box, border-box, border-box, border-box, border-box, padding-box;
|
|
3389
|
+
}
|
|
3390
|
+
|
|
3391
|
+
:root select:disabled {
|
|
3392
|
+
border-image: url("art/drawingboard/pens/popup-disabled-corners.png") 5 / 5px stretch;
|
|
3393
|
+
border-color: transparent;
|
|
3394
|
+
background:
|
|
3395
|
+
var(--clio-art-db-popup-arrow-off) right 5px top 4px / 7px 9px no-repeat padding-box,
|
|
3396
|
+
var(--clio-art-db-popup-corner-off) right 19px bottom / 24px 24px no-repeat padding-box,
|
|
3397
|
+
url("art/drawingboard/pens/popup-disabled-left.png") left 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
3398
|
+
url("art/drawingboard/pens/popup-disabled-right.png") right 0 bottom 1px / 1px 16px repeat-y border-box,
|
|
3399
|
+
url("art/drawingboard/pens/popup-disabled-top.png") right 1px top 0 / 64px 1px repeat-x border-box,
|
|
3400
|
+
url("art/drawingboard/pens/popup-disabled-bottom.png") right 1px bottom 0 / 64px 1px repeat-x border-box,
|
|
3401
|
+
#cec6b5;
|
|
3402
|
+
color: #8c8c8c;
|
|
3403
|
+
}
|
|
3404
|
+
|
|
3405
|
+
|
|
3406
|
+
/* The 1px pencil shade right of and below a push button (ppat 7079, 7070 next
|
|
3407
|
+
rows; held: 7127, 7126, tiled from the second column and row). A default
|
|
3408
|
+
button instead wears a 3px pencil band (ppat 7085 rows, 7086 columns) whose
|
|
3409
|
+
inner line is the box's edge, 2px outside it. Insets are from the padding box. */
|
|
3410
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *)::before {
|
|
3411
|
+
content: "";
|
|
3412
|
+
position: absolute;
|
|
3413
|
+
top: 0;
|
|
3414
|
+
right: -2px;
|
|
3415
|
+
bottom: -2px;
|
|
3416
|
+
left: 4px;
|
|
3417
|
+
border: 0;
|
|
3418
|
+
border-image: none;
|
|
3419
|
+
box-shadow: none;
|
|
3420
|
+
background:
|
|
3421
|
+
url("art/drawingboard/pens/button-shade-right.png") right 0 bottom 2px / 1px 16px repeat-y,
|
|
3422
|
+
url("art/drawingboard/pens/button-shade-bottom.png") right 2px bottom 0 / 64px 1px repeat-x;
|
|
3423
|
+
pointer-events: none;
|
|
3424
|
+
}
|
|
3425
|
+
|
|
3426
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *, :disabled, .disabled):is(:active, .active)::before {
|
|
3427
|
+
left: 0;
|
|
3428
|
+
background:
|
|
3429
|
+
url("art/drawingboard/pens/button-held-shade-right.png") right 0 top 0 / 1px 16px repeat-y,
|
|
3430
|
+
url("art/drawingboard/pens/button-held-shade-bottom.png") left 0 bottom 0 / 32px 1px repeat-x;
|
|
3431
|
+
}
|
|
3432
|
+
|
|
3433
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(.default, .btn-default)::before {
|
|
3434
|
+
inset: -3px;
|
|
3435
|
+
background:
|
|
3436
|
+
url("art/drawingboard/pens/button-default-left-3.png") left 0 bottom 3px / 1px 16px repeat-y,
|
|
3437
|
+
url("art/drawingboard/pens/button-default-left-2.png") left 1px bottom 3px / 1px 16px repeat-y,
|
|
3438
|
+
url("art/drawingboard/pens/button-default-left.png") left 2px bottom 3px / 1px 16px repeat-y,
|
|
3439
|
+
url("art/drawingboard/pens/button-default-right.png") right 2px bottom 3px / 1px 16px repeat-y,
|
|
3440
|
+
url("art/drawingboard/pens/button-default-right-2.png") right 1px bottom 3px / 1px 16px repeat-y,
|
|
3441
|
+
url("art/drawingboard/pens/button-default-right-3.png") right 0 bottom 3px / 1px 16px repeat-y,
|
|
3442
|
+
url("art/drawingboard/pens/button-default-top-3.png") right 3px top 0 / 64px 1px repeat-x,
|
|
3443
|
+
url("art/drawingboard/pens/button-default-top-2.png") right 3px top 1px / 64px 1px repeat-x,
|
|
3444
|
+
url("art/drawingboard/pens/button-default-top.png") right 3px top 2px / 64px 1px repeat-x,
|
|
3445
|
+
url("art/drawingboard/pens/button-default-bottom.png") right 3px bottom 2px / 64px 1px repeat-x,
|
|
3446
|
+
url("art/drawingboard/pens/button-default-bottom-2.png") right 3px bottom 1px / 64px 1px repeat-x,
|
|
3447
|
+
url("art/drawingboard/pens/button-default-bottom-3.png") right 3px bottom 0 / 64px 1px repeat-x;
|
|
3448
|
+
}
|
|
3449
|
+
|
|
3450
|
+
/* The pencil overruns at a push button's corners, outside its box: Button*
|
|
3451
|
+
pieces round a plain button, *Default pieces round the default one. */
|
|
3452
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *) {
|
|
3453
|
+
position: relative;
|
|
3454
|
+
}
|
|
3455
|
+
|
|
3456
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *)::after {
|
|
3457
|
+
content: "";
|
|
3458
|
+
position: absolute;
|
|
3459
|
+
inset: -6px; /* from the padding box: 5px outside the frame */
|
|
3460
|
+
background:
|
|
3461
|
+
var(--clio-art-db-btn-tl) left 3px top 3px / 7px 3px no-repeat,
|
|
3462
|
+
var(--clio-art-db-btn-tr) right 2px top 3px / 4px 3px no-repeat,
|
|
3463
|
+
var(--clio-art-db-btn-br) right 1px bottom 0 / 5px 6px no-repeat,
|
|
3464
|
+
var(--clio-art-db-btn-bl) left 3px bottom 2px / 7px 4px no-repeat;
|
|
3465
|
+
pointer-events: none;
|
|
3466
|
+
}
|
|
3467
|
+
|
|
3468
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *, :disabled, .disabled):is(:active, .active)::after {
|
|
3469
|
+
background:
|
|
3470
|
+
var(--clio-art-db-btn-tl) left 3px top 3px / 7px 3px no-repeat,
|
|
3471
|
+
var(--clio-art-db-btn-tr) right 2px top 3px / 4px 3px no-repeat,
|
|
3472
|
+
var(--clio-art-db-btn-br-held) right 1px bottom 0 / 5px 6px no-repeat,
|
|
3473
|
+
var(--clio-art-db-btn-bl) left 3px bottom 2px / 7px 4px no-repeat;
|
|
3474
|
+
}
|
|
3475
|
+
|
|
3476
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(.default, .btn-default) {
|
|
3477
|
+
border-image-source: none;
|
|
3478
|
+
}
|
|
3479
|
+
|
|
3480
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(.default, .btn-default)::after {
|
|
3481
|
+
background:
|
|
3482
|
+
url("art/drawingboard/pens/button-default-corner-tl.png") left 5px top 5px / 5px 5px no-repeat,
|
|
3483
|
+
url("art/drawingboard/pens/button-default-corner-tr.png") right 5px top 5px / 5px 5px no-repeat,
|
|
3484
|
+
url("art/drawingboard/pens/button-default-corner-bl.png") left 5px bottom 5px / 5px 5px no-repeat,
|
|
3485
|
+
url("art/drawingboard/pens/button-default-corner-br.png") right 5px bottom 5px / 5px 5px no-repeat,
|
|
3486
|
+
var(--clio-art-db-def-tl) left 1px top 1px / 9px 5px no-repeat,
|
|
3487
|
+
var(--clio-art-db-def-tr) right 1px top 2px / 4px 4px no-repeat,
|
|
3488
|
+
var(--clio-art-db-def-br) right 0 bottom 0 / 5px 6px no-repeat,
|
|
3489
|
+
var(--clio-art-db-def-bl) left 1px bottom 1px / 9px 5px no-repeat;
|
|
3490
|
+
}
|
|
3491
|
+
|
|
3492
|
+
:root progress {
|
|
3493
|
+
border-left-color: #333333;
|
|
3494
|
+
}
|
|
3495
|
+
|
|
3496
|
+
:root progress:indeterminate,
|
|
3497
|
+
:root progress:indeterminate::-webkit-progress-bar {
|
|
3498
|
+
background: var(--clio-art-db-progress-arrows) 0 center / 128px 5px repeat-x, #ddd6c5;
|
|
3499
|
+
}
|
|
3500
|
+
|
|
3501
|
+
:root fieldset {
|
|
3502
|
+
background: transparent;
|
|
3503
|
+
}
|
|
3504
|
+
|
|
3505
|
+
:root fieldset > legend {
|
|
3506
|
+
margin-left: 0;
|
|
3507
|
+
}
|
|
3508
|
+
|
|
3509
|
+
/* ---- Antialiasing as Mac OS blends it: #333 labels on #cec6b5 (their solid
|
|
3510
|
+
pixels #313131, from a 16-bit buffer); grey when disabled. */
|
|
3511
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *),
|
|
3512
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):not(:disabled, .disabled):is(:active, .active) {
|
|
3513
|
+
font-palette: --clio-aa-db-button;
|
|
3514
|
+
}
|
|
3515
|
+
|
|
3516
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *):is(:disabled, .disabled) {
|
|
3517
|
+
font-palette: --clio-aa-db-button-disabled;
|
|
3518
|
+
}
|
|
3519
|
+
|
|
3520
|
+
/* Adaptations the historical machines never needed. Historical sizes are
|
|
3521
|
+
calibration, not a cage: on a touch screen the controls grow to the
|
|
3522
|
+
"coarse pointer" sizes from AI System 6's fidelity contract, without any
|
|
3523
|
+
transform: scale() of the interface. */
|
|
3524
|
+
@media (pointer: coarse) {
|
|
3525
|
+
:root,
|
|
3526
|
+
[data-era] {
|
|
3527
|
+
--clio-control-height: 36px;
|
|
3528
|
+
--clio-popup-height: 36px;
|
|
3529
|
+
--clio-field-height: 40px;
|
|
3530
|
+
--clio-menubar-height: 32px;
|
|
3531
|
+
--clio-menu-item-height: 32px;
|
|
3532
|
+
--clio-list-row: 32px;
|
|
3533
|
+
--clio-tab-height: 32px;
|
|
3534
|
+
}
|
|
3535
|
+
|
|
3536
|
+
/* The title-bar boxes keep their 11px art; their hit area grows to 44px. */
|
|
3537
|
+
.title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse)::after {
|
|
3538
|
+
content: "";
|
|
3539
|
+
position: absolute;
|
|
3540
|
+
inset: -17px;
|
|
3541
|
+
}
|
|
3542
|
+
}
|
|
3543
|
+
|
|
3544
|
+
/* Windows High Contrast and other forced-colour modes: give the choice
|
|
3545
|
+
controls back to the system so their state stays visible. */
|
|
3546
|
+
@media (forced-colors: active) {
|
|
3547
|
+
:where(input[type="checkbox"], input[type="radio"]) {
|
|
3548
|
+
appearance: auto;
|
|
3549
|
+
-webkit-appearance: auto;
|
|
3550
|
+
}
|
|
3551
|
+
|
|
3552
|
+
.title-bar,
|
|
3553
|
+
.inactive-title-bar {
|
|
3554
|
+
forced-color-adjust: none;
|
|
3555
|
+
}
|
|
3556
|
+
}
|
|
3557
|
+
|
|
3558
|
+
@media print {
|
|
3559
|
+
:where(.window, .modal-dialog, .alert-box, .standard-dialog) {
|
|
3560
|
+
box-shadow: none;
|
|
3561
|
+
}
|
|
3562
|
+
}
|