clio.css 0.9.2 → 0.12.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 +10 -6
- package/EVIDENCE.md +130 -9
- package/README.md +96 -3
- package/THIRD-PARTY.md +37 -3
- package/dist/art/cursors/arrow-2x.png +0 -0
- package/dist/art/cursors/arrow-3x.png +0 -0
- package/dist/art/cursors/arrow.png +0 -0
- package/dist/art/cursors/ibeam-2x.png +0 -0
- package/dist/art/cursors/ibeam-3x.png +0 -0
- package/dist/art/cursors/ibeam.png +0 -0
- package/dist/art/cursors/watch-2x.png +0 -0
- package/dist/art/cursors/watch-3x.png +0 -0
- package/dist/art/cursors/watch.png +0 -0
- package/dist/art/drawingboard/help-button.png +0 -0
- package/dist/art/drawingboard/parts/chasing-arrows.png +0 -0
- package/dist/art/drawingboard/parts/disclosure-open.png +0 -0
- package/dist/art/drawingboard/parts/disclosure.png +0 -0
- package/dist/art/drawingboard/parts/hpair-dec-on.png +0 -0
- package/dist/art/drawingboard/parts/hpair-inc-on.png +0 -0
- package/dist/art/drawingboard/parts/hpair-off.png +0 -0
- package/dist/art/drawingboard/parts/hpair.png +0 -0
- package/dist/art/drawingboard/parts/little-arrows-disabled.png +0 -0
- package/dist/art/drawingboard/parts/little-arrows-down.png +0 -0
- package/dist/art/drawingboard/parts/little-arrows-up.png +0 -0
- package/dist/art/drawingboard/parts/little-arrows.png +0 -0
- package/dist/art/drawingboard/parts/menu-scroll-down.png +0 -0
- package/dist/art/drawingboard/parts/menu-scroll-up.png +0 -0
- package/dist/art/drawingboard/parts/slider-thumb.png +0 -0
- package/dist/art/drawingboard/parts/vpair-dec-on.png +0 -0
- package/dist/art/drawingboard/parts/vpair-inc-on.png +0 -0
- package/dist/art/drawingboard/parts/vpair-off.png +0 -0
- package/dist/art/drawingboard/parts/vpair.png +0 -0
- package/dist/art/drawingboard/slider-track.png +0 -0
- package/dist/art/drawingboard/window-bottom-inactive-tiled.svg +1 -0
- package/dist/art/drawingboard/window-bottom-tiled.svg +1 -0
- package/dist/art/drawingboard/window-top-inactive-tiled.svg +1 -0
- package/dist/art/drawingboard/window-top-tiled.svg +1 -0
- package/dist/art/platinum/balloon-tail.png +0 -0
- package/dist/art/platinum/balloon.png +0 -0
- package/dist/art/platinum/bevel-held.png +0 -0
- package/dist/art/platinum/bevel-menu-arrow.png +0 -0
- package/dist/art/platinum/bevel.png +0 -0
- package/dist/art/platinum/chasing-arrows.png +0 -0
- package/dist/art/platinum/disclosure-open.png +0 -0
- package/dist/art/platinum/disclosure.png +0 -0
- package/dist/art/platinum/help-button.png +0 -0
- package/dist/art/platinum/little-arrows-disabled.png +0 -0
- package/dist/art/platinum/little-arrows.png +0 -0
- package/dist/art/platinum/slider-thumb.png +0 -0
- package/dist/art/platinum/slider-track.png +0 -0
- package/dist/art/platinum/sort-direction.png +0 -0
- package/dist/art/platinum/utility-close.png +0 -0
- package/dist/art/platinum/utility-collapse-side.png +0 -0
- package/dist/art/platinum/utility-collapse.png +0 -0
- package/dist/art/platinum/utility-dots.png +0 -0
- package/dist/art/platinum/utility-zoom.png +0 -0
- package/dist/art/system7/disclosure-open.png +0 -0
- package/dist/art/system7/disclosure.png +0 -0
- package/dist/art/system7/little-arrows.png +0 -0
- package/dist/art/system7/menu-scroll-down.png +0 -0
- package/dist/art/system7/menu-scroll-up.png +0 -0
- package/dist/clio.css +3632 -1045
- package/dist/clio.drawingboard.css +2650 -325
- package/dist/clio.drawingboard.min.css +2 -2
- package/dist/clio.js +1024 -0
- package/dist/clio.min.css +2 -2
- package/dist/clio.min.js +13 -0
- package/dist/clio.platinum.css +3096 -857
- package/dist/clio.platinum.min.css +2 -2
- package/dist/clio.system6.css +1640 -175
- package/dist/clio.system6.min.css +2 -2
- package/dist/clio.system7.css +1685 -182
- package/dist/clio.system7.min.css +2 -2
- package/dist/components.json +1102 -21
- package/dist/fonts/ClioSans97Plain.woff2 +0 -0
- package/dist/fonts/ClioSans97PlainExact.woff2 +0 -0
- package/dist/fonts/ClioSans97TitlePlain.woff2 +0 -0
- package/dist/fonts/ClioSans97TitlePlainExact.woff2 +0 -0
- package/dist/fonts/FusionPixel12-JA.woff2 +0 -0
- package/dist/fonts/FusionPixel12-KO.woff2 +0 -0
- package/dist/fonts/FusionPixel12-SC.woff2 +0 -0
- package/dist/fonts/FusionPixel12-TC.woff2 +0 -0
- package/dist/fonts/OFL-FusionPixel.txt +399 -0
- package/dist/fonts/Virtue.woff2 +0 -0
- package/llms.txt +14 -1
- package/package.json +6 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! clio.css 0.
|
|
1
|
+
/*! clio.css 0.12.0 (Drawing Board default) | MIT | https://surfine.github.io/clio.css/
|
|
2
2
|
* Classic Mac OS interface CSS: System 6, System 7, Mac OS 8.5 Drawing Board and Mac OS 9 Platinum.
|
|
3
3
|
* Measured values traced to AI System 6; see EVIDENCE.md.
|
|
4
4
|
* Includes art from system.css (MIT) and pixel reconstructions of Apple control art; see THIRD-PARTY.md. */
|
|
@@ -28,6 +28,16 @@
|
|
|
28
28
|
/* Clio Sans '97: Charcoal 12 rebuilt the same way from Mac OS 9.0's Key Caps
|
|
29
29
|
(fonts-src/clio-sans-97.txt). Charcoal has one weight, so the face covers
|
|
30
30
|
every weight and the browser never thickens it. */
|
|
31
|
+
/* Each colour face is declared twice: the Plain file alone first, then both. An
|
|
32
|
+
engine that cannot parse tech() (Safari before 17) drops the second rule and
|
|
33
|
+
keeps the first instead of losing the face. */
|
|
34
|
+
@font-face {
|
|
35
|
+
font-family: "Clio Sans '97";
|
|
36
|
+
src: url("fonts/ClioSans97Plain.woff2") format("woff2");
|
|
37
|
+
font-weight: 100 900;
|
|
38
|
+
font-display: swap;
|
|
39
|
+
}
|
|
40
|
+
|
|
31
41
|
@font-face {
|
|
32
42
|
font-family: "Clio Sans '97";
|
|
33
43
|
src: url("fonts/ClioSans97.woff2") format("woff2") tech(color-COLRv1),
|
|
@@ -38,10 +48,18 @@
|
|
|
38
48
|
|
|
39
49
|
/* Clio Sans '97's antialiasing is COLRv1 colour layers. A browser without
|
|
40
50
|
COLRv1 (Safari) would paint every layer solid, so it gets the Plain file:
|
|
41
|
-
the same
|
|
42
|
-
|
|
51
|
+
the same levels as COLRv0 layers, which Safari draws (fully covered pixels
|
|
52
|
+
in the text colour, the others black at their alpha unless a palette below
|
|
53
|
+
recolours them), over outlines for browsers with no colour fonts. */
|
|
43
54
|
/* Clio Sans '97 Title: the same face as window titles draw it (a few faint
|
|
44
55
|
pixels fewer than menus and buttons), for title bars only. */
|
|
56
|
+
@font-face {
|
|
57
|
+
font-family: "Clio Sans '97 Title";
|
|
58
|
+
src: url("fonts/ClioSans97TitlePlain.woff2") format("woff2");
|
|
59
|
+
font-weight: 100 900;
|
|
60
|
+
font-display: swap;
|
|
61
|
+
}
|
|
62
|
+
|
|
45
63
|
@font-face {
|
|
46
64
|
font-family: "Clio Sans '97 Title";
|
|
47
65
|
src: url("fonts/ClioSans97Title.woff2") format("woff2") tech(color-COLRv1),
|
|
@@ -57,10 +75,24 @@
|
|
|
57
75
|
page that recolours a title or a button label also sets --clio-font-window-title
|
|
58
76
|
or --clio-font-button back to a stack without "Exact", and gets Clio Sans
|
|
59
77
|
'97 in its colour, within one level of the real screen. */
|
|
78
|
+
@font-face {
|
|
79
|
+
font-family: "Clio Sans '97 Exact";
|
|
80
|
+
src: url("fonts/ClioSans97PlainExact.woff2") format("woff2");
|
|
81
|
+
font-weight: 100 900;
|
|
82
|
+
font-display: swap;
|
|
83
|
+
}
|
|
84
|
+
|
|
60
85
|
@font-face {
|
|
61
86
|
font-family: "Clio Sans '97 Exact";
|
|
62
87
|
src: url("fonts/ClioSans97Exact.woff2") format("woff2") tech(color-COLRv1),
|
|
63
|
-
url("fonts/
|
|
88
|
+
url("fonts/ClioSans97PlainExact.woff2") format("woff2");
|
|
89
|
+
font-weight: 100 900;
|
|
90
|
+
font-display: swap;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
@font-face {
|
|
94
|
+
font-family: "Clio Sans '97 Title Exact";
|
|
95
|
+
src: url("fonts/ClioSans97TitlePlainExact.woff2") format("woff2");
|
|
64
96
|
font-weight: 100 900;
|
|
65
97
|
font-display: swap;
|
|
66
98
|
}
|
|
@@ -68,7 +100,7 @@
|
|
|
68
100
|
@font-face {
|
|
69
101
|
font-family: "Clio Sans '97 Title Exact";
|
|
70
102
|
src: url("fonts/ClioSans97TitleExact.woff2") format("woff2") tech(color-COLRv1),
|
|
71
|
-
url("fonts/
|
|
103
|
+
url("fonts/ClioSans97TitlePlainExact.woff2") format("woff2");
|
|
72
104
|
font-weight: 100 900;
|
|
73
105
|
font-display: swap;
|
|
74
106
|
}
|
|
@@ -214,6 +246,126 @@
|
|
|
214
246
|
14 #9c9c94;
|
|
215
247
|
}
|
|
216
248
|
|
|
249
|
+
@font-palette-values --clio-aa-rdoc-title {
|
|
250
|
+
font-family: "Clio Sans '97 Title Exact";
|
|
251
|
+
override-colors:
|
|
252
|
+
0 #101010,
|
|
253
|
+
1 #212121,
|
|
254
|
+
2 #323232,
|
|
255
|
+
3 #444444,
|
|
256
|
+
4 #555555,
|
|
257
|
+
5 #666666,
|
|
258
|
+
6 #777777,
|
|
259
|
+
7 #878787,
|
|
260
|
+
8 #989898,
|
|
261
|
+
9 #a9a9a9,
|
|
262
|
+
10 #bababa,
|
|
263
|
+
11 #cccccc,
|
|
264
|
+
12 #dddddd,
|
|
265
|
+
13 #eeeeee,
|
|
266
|
+
14 #ffffff;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
@font-palette-values --clio-aa-rdoc-title-inactive {
|
|
270
|
+
font-family: "Clio Sans '97 Title Exact";
|
|
271
|
+
override-colors:
|
|
272
|
+
0 #eeeeee,
|
|
273
|
+
1 #dddddd,
|
|
274
|
+
2 #cccccc,
|
|
275
|
+
3 #bababa,
|
|
276
|
+
4 #a9a9a9,
|
|
277
|
+
5 #989898,
|
|
278
|
+
6 #878787,
|
|
279
|
+
7 #777777,
|
|
280
|
+
8 #666666,
|
|
281
|
+
9 #555555,
|
|
282
|
+
10 #444444,
|
|
283
|
+
11 #323232,
|
|
284
|
+
12 #212121,
|
|
285
|
+
13 #101010,
|
|
286
|
+
14 #000000;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
/* COLRv0 edge levels in other text colours (Safari; Chrome's COLRv1 file
|
|
290
|
+
follows the text colour by itself and ignores these): white for chosen
|
|
291
|
+
menu titles, items and icon labels, #6f6f6f for dimmed items. */
|
|
292
|
+
@font-palette-values --clio-aa-white {
|
|
293
|
+
font-family: "Clio Sans '97";
|
|
294
|
+
override-colors:
|
|
295
|
+
0 rgb(255 255 255 / 0.0667),
|
|
296
|
+
1 rgb(255 255 255 / 0.1333),
|
|
297
|
+
2 rgb(255 255 255 / 0.2000),
|
|
298
|
+
3 rgb(255 255 255 / 0.2667),
|
|
299
|
+
4 rgb(255 255 255 / 0.3333),
|
|
300
|
+
5 rgb(255 255 255 / 0.4000),
|
|
301
|
+
6 rgb(255 255 255 / 0.4667),
|
|
302
|
+
7 rgb(255 255 255 / 0.5333),
|
|
303
|
+
8 rgb(255 255 255 / 0.6000),
|
|
304
|
+
9 rgb(255 255 255 / 0.6667),
|
|
305
|
+
10 rgb(255 255 255 / 0.7333),
|
|
306
|
+
11 rgb(255 255 255 / 0.8000),
|
|
307
|
+
12 rgb(255 255 255 / 0.8667),
|
|
308
|
+
13 rgb(255 255 255 / 0.9333);
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
@font-palette-values --clio-aa-6f6f6f {
|
|
312
|
+
font-family: "Clio Sans '97";
|
|
313
|
+
override-colors:
|
|
314
|
+
0 rgb(111 111 111 / 0.0667),
|
|
315
|
+
1 rgb(111 111 111 / 0.1333),
|
|
316
|
+
2 rgb(111 111 111 / 0.2000),
|
|
317
|
+
3 rgb(111 111 111 / 0.2667),
|
|
318
|
+
4 rgb(111 111 111 / 0.3333),
|
|
319
|
+
5 rgb(111 111 111 / 0.4000),
|
|
320
|
+
6 rgb(111 111 111 / 0.4667),
|
|
321
|
+
7 rgb(111 111 111 / 0.5333),
|
|
322
|
+
8 rgb(111 111 111 / 0.6000),
|
|
323
|
+
9 rgb(111 111 111 / 0.6667),
|
|
324
|
+
10 rgb(111 111 111 / 0.7333),
|
|
325
|
+
11 rgb(111 111 111 / 0.8000),
|
|
326
|
+
12 rgb(111 111 111 / 0.8667),
|
|
327
|
+
13 rgb(111 111 111 / 0.9333);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
/* Drawing Board's menu text (#313131) and dimmed text (#8c8c8c), for Safari's COLRv0 file. */
|
|
331
|
+
@font-palette-values --clio-aa-313131 {
|
|
332
|
+
font-family: "Clio Sans '97";
|
|
333
|
+
override-colors:
|
|
334
|
+
0 rgb(49 49 49 / 0.0667),
|
|
335
|
+
1 rgb(49 49 49 / 0.1333),
|
|
336
|
+
2 rgb(49 49 49 / 0.2000),
|
|
337
|
+
3 rgb(49 49 49 / 0.2667),
|
|
338
|
+
4 rgb(49 49 49 / 0.3333),
|
|
339
|
+
5 rgb(49 49 49 / 0.4000),
|
|
340
|
+
6 rgb(49 49 49 / 0.4667),
|
|
341
|
+
7 rgb(49 49 49 / 0.5333),
|
|
342
|
+
8 rgb(49 49 49 / 0.6000),
|
|
343
|
+
9 rgb(49 49 49 / 0.6667),
|
|
344
|
+
10 rgb(49 49 49 / 0.7333),
|
|
345
|
+
11 rgb(49 49 49 / 0.8000),
|
|
346
|
+
12 rgb(49 49 49 / 0.8667),
|
|
347
|
+
13 rgb(49 49 49 / 0.9333);
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
@font-palette-values --clio-aa-8c8c8c {
|
|
351
|
+
font-family: "Clio Sans '97";
|
|
352
|
+
override-colors:
|
|
353
|
+
0 rgb(140 140 140 / 0.0667),
|
|
354
|
+
1 rgb(140 140 140 / 0.1333),
|
|
355
|
+
2 rgb(140 140 140 / 0.2000),
|
|
356
|
+
3 rgb(140 140 140 / 0.2667),
|
|
357
|
+
4 rgb(140 140 140 / 0.3333),
|
|
358
|
+
5 rgb(140 140 140 / 0.4000),
|
|
359
|
+
6 rgb(140 140 140 / 0.4667),
|
|
360
|
+
7 rgb(140 140 140 / 0.5333),
|
|
361
|
+
8 rgb(140 140 140 / 0.6000),
|
|
362
|
+
9 rgb(140 140 140 / 0.6667),
|
|
363
|
+
10 rgb(140 140 140 / 0.7333),
|
|
364
|
+
11 rgb(140 140 140 / 0.8000),
|
|
365
|
+
12 rgb(140 140 140 / 0.8667),
|
|
366
|
+
13 rgb(140 140 140 / 0.9333);
|
|
367
|
+
}
|
|
368
|
+
|
|
217
369
|
/* Clio Sans '97 Display: Charcoal's outlines, traced from Mac OS 9.0 drawing it
|
|
218
370
|
at 72 points (fonts/ClioSans97Display.woff2, tooling/trace-outline.py), for
|
|
219
371
|
every size that is not 12px or a multiple of it. */
|
|
@@ -271,6 +423,12 @@
|
|
|
271
423
|
fallback colour where background-clip: text is missing. */
|
|
272
424
|
--clio-disabled-dither: var(--clio-art-s6-gray50);
|
|
273
425
|
--clio-disabled-fill: transparent;
|
|
426
|
+
/* A dimmed pop-up menu: the whole control (frame, shadow, title, arrow) drawn
|
|
427
|
+
through the 50% gray, the ink where x + y is odd surviving (System 7.5.3,
|
|
428
|
+
Memory's Select Hard Disk with virtual memory off, measured). The pattern
|
|
429
|
+
starts at the control's corner, not the screen's. */
|
|
430
|
+
--clio-popup-disabled-mask: var(--clio-art-s6-gray50) 0 0 / 2px 2px; /* a crisp 2x2 picture: a gradient blurs at 2x in Firefox */
|
|
431
|
+
--clio-popup-disabled-fg: var(--clio-ink);
|
|
274
432
|
--clio-selection-bg: #000000;
|
|
275
433
|
--clio-selection-fg: #ffffff;
|
|
276
434
|
|
|
@@ -280,6 +438,7 @@
|
|
|
280
438
|
/* Geneva 9: the Finder info line, icon names, status lines. */
|
|
281
439
|
--clio-font-small: "Clio Text '84 9", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
282
440
|
--clio-text-smoothing: none;
|
|
441
|
+
--clio-text-smoothing-moz: grayscale; /* Firefox's nearest to none */
|
|
283
442
|
--clio-font-mono: Monaco, Menlo, Consolas, "Courier New", monospace;
|
|
284
443
|
/* Chrome type at sizes other than 12px and its multiples (.display): an
|
|
285
444
|
outline face, smoothed. */
|
|
@@ -299,6 +458,12 @@
|
|
|
299
458
|
--clio-radius: 0;
|
|
300
459
|
--clio-control-height: 20px;
|
|
301
460
|
--clio-field-height: 20px;
|
|
461
|
+
/* clio.js's insertion point: the font's line height, 16px for 12pt (System
|
|
462
|
+
7.5.3, Find File's 20px field: rows 2-17), whatever the field's line-height. */
|
|
463
|
+
--clio-caret-height: 16px;
|
|
464
|
+
/* ...and its blink: CaretTime, 32 ticks lit and 32 dark (System 6.0.8 and 7.5.3 Find File;
|
|
465
|
+
PRAM's factory value in the Mac IIx and Quadra 650 ROMs). */
|
|
466
|
+
--clio-caret-ticks: 32;
|
|
302
467
|
--clio-row-height: 16px;
|
|
303
468
|
--clio-gap: 8px;
|
|
304
469
|
|
|
@@ -423,6 +588,7 @@
|
|
|
423
588
|
/* Edit text: 1px frame, text inset 3px (Control Panel RAM cache field). */
|
|
424
589
|
--clio-field-padding: 3px;
|
|
425
590
|
--clio-field-focus-shadow: none;
|
|
591
|
+
--clio-field-focus-outline: var(--clio-focus-outline);
|
|
426
592
|
|
|
427
593
|
/* Pop-up menus */
|
|
428
594
|
--clio-popup-bg: var(--clio-paper);
|
|
@@ -441,12 +607,43 @@
|
|
|
441
607
|
QuickDraw's ltGray, one dot in four. */
|
|
442
608
|
--clio-scrollbar-size: 15px;
|
|
443
609
|
--clio-scrollbar-track: var(--clio-art-s6-ltgray) 0 0 / 4px 2px repeat, #ffffff;
|
|
610
|
+
/* clio.js scroll bars: System 6 and 7 drag an outline of the box and scroll
|
|
611
|
+
on release; the box keeps one length, whatever the document's. */
|
|
612
|
+
--clio-scrollbar-thumb-length: 16px;
|
|
613
|
+
--clio-scrollbar-thumb-tracking: outline;
|
|
614
|
+
--clio-scrollbar-thumb-overlap: 0px;
|
|
615
|
+
--clio-scrollbar-thumb-after: none;
|
|
616
|
+
/* clio.js: a held arrow or lane repeats at once (System 6 and 7's TrackControl
|
|
617
|
+
calls the action on every pass while the button is down) */
|
|
618
|
+
--clio-scrollbar-repeat-delay: 0ms;
|
|
619
|
+
/* clio.js menus: System 6 and 7 menus stay open only while the button is held */
|
|
620
|
+
--clio-menu-sticky: 0;
|
|
621
|
+
/* clio.js: the grey outline of a dragged window (System 6.0.8 and 7.5.3: 1px) */
|
|
622
|
+
--clio-drag-outline-width: 1px;
|
|
623
|
+
/* ... around the window and its 1px shadow (both measured) */
|
|
624
|
+
--clio-drag-outline-extra: 1px;
|
|
625
|
+
/* clio.zoomRects() (System 7.5.3, measured): 8 outlines at (1.6^k - 1) / (1.6^8 - 1)
|
|
626
|
+
of the way, 4 on screen at once */
|
|
627
|
+
--clio-zoom-count: 8;
|
|
628
|
+
--clio-zoom-steps: 8;
|
|
629
|
+
--clio-zoom-ratio: 1.6;
|
|
630
|
+
--clio-zoom-offset: 1;
|
|
631
|
+
--clio-zoom-keep: 4;
|
|
632
|
+
--clio-drag-outline-shadow-inset: 0px; /* System 6: the region is the whole rectangle, though the shadow is drawn from a pixel in */
|
|
633
|
+
/* clio.js: a dragged scroll box leaves its frame XORed with dkGray (System
|
|
634
|
+
6.0.8, measured): white where dkGray is set, in step with the lane's ltGray,
|
|
635
|
+
inverting what is under it, so over the lane it comes out solid black. */
|
|
636
|
+
--clio-scrollbar-ghost: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='2' shape-rendering='crispEdges'%3E%3Cpath fill='%23fff' d='M1 0h3v1H1zM0 1h2v1H0zM3 1h1v1H3z'/%3E%3C/svg%3E") 0 0 / 4px 2px repeat;
|
|
637
|
+
--clio-scrollbar-ghost-blend: difference;
|
|
638
|
+
/* clio.js: the box sits inside the bar's line, 14px wide (System 6.0.8, System Folder list) */
|
|
639
|
+
--clio-scrollbar-thumb-inset: 1px;
|
|
444
640
|
--clio-scrollbar-track-shadow: none;
|
|
445
641
|
--clio-scrollbar-thumb-bg: var(--clio-paper);
|
|
446
642
|
--clio-scrollbar-thumb-border: 1px solid var(--clio-ink);
|
|
447
643
|
--clio-scrollbar-thumb-shadow: none;
|
|
448
644
|
--clio-scrollbar-button-bg: var(--clio-paper);
|
|
449
645
|
--clio-scrollbar-button-shadow: none;
|
|
646
|
+
--clio-scrollbar-button-bevel: none;
|
|
450
647
|
--clio-scrollbar-up: var(--clio-art-s6-up);
|
|
451
648
|
--clio-scrollbar-up-on: var(--clio-art-s6-up-on);
|
|
452
649
|
--clio-scrollbar-down: var(--clio-art-s6-down);
|
|
@@ -549,6 +746,99 @@
|
|
|
549
746
|
--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");
|
|
550
747
|
--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");
|
|
551
748
|
--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");
|
|
749
|
+
/* Disclosure triangle: System 6 had none; it takes System 7's (Finder list
|
|
750
|
+
view, 11px, black with a blue and white checker). */
|
|
751
|
+
--clio-disclosure-size: 11px;
|
|
752
|
+
--clio-disclosure-gap: 4px;
|
|
753
|
+
--clio-art-disclosure: url("art/system7/disclosure.png");
|
|
754
|
+
--clio-art-disclosure-open: url("art/system7/disclosure-open.png");
|
|
755
|
+
|
|
756
|
+
/* List view (Finder, View by Name; System 7.5.3): headers on the window's
|
|
757
|
+
white, the sorted one underlined, a double rule (black, white, black) below. */
|
|
758
|
+
--clio-list-view-bg: var(--clio-paper);
|
|
759
|
+
--clio-list-view-row: 16px;
|
|
760
|
+
--clio-list-view-header-height: 20px;
|
|
761
|
+
--clio-list-view-header-padding: 0 4px 3px;
|
|
762
|
+
--clio-list-view-header-bg: linear-gradient(var(--clio-ink), var(--clio-ink)) 0 calc(100% - 2px) / 100% 1px no-repeat, linear-gradient(var(--clio-ink), var(--clio-ink)) 0 100% / 100% 1px no-repeat;
|
|
763
|
+
--clio-list-view-sorted-header-bg: var(--clio-list-view-header-bg);
|
|
764
|
+
--clio-list-view-sorted-decoration: underline;
|
|
765
|
+
--clio-list-view-sorted-bg: transparent;
|
|
766
|
+
--clio-list-view-sort-width: 0;
|
|
767
|
+
|
|
768
|
+
/* Slider: System 6 had none; it takes Platinum's (Mouse control panel,
|
|
769
|
+
Mac OS 9.0) until an era draws its own. */
|
|
770
|
+
--clio-slider-height: 16px;
|
|
771
|
+
--clio-slider-track-height: 7px;
|
|
772
|
+
--clio-slider-track-top: 3px;
|
|
773
|
+
--clio-slider-track-slice: 3px;
|
|
774
|
+
--clio-slider-track-slice-n: 3;
|
|
775
|
+
--clio-slider-thumb-width: 15px;
|
|
776
|
+
--clio-slider-thumb-height: 16px;
|
|
777
|
+
--clio-art-slider-track: url("art/platinum/slider-track.png");
|
|
778
|
+
--clio-art-slider-thumb: url("art/platinum/slider-thumb.png");
|
|
779
|
+
--clio-slider-tick-gap: 0px;
|
|
780
|
+
--clio-slider-tick-count: 5;
|
|
781
|
+
--clio-slider-tick-offset: 9px;
|
|
782
|
+
--clio-slider-tick-run: 18px;
|
|
783
|
+
--clio-slider-tick-light: #ffffff;
|
|
784
|
+
--clio-slider-tick-ink: #000000;
|
|
785
|
+
--clio-slider-tick-shade: #888888;
|
|
786
|
+
|
|
787
|
+
/* Little arrows: System 6 had none; it takes System 7's (Memory control
|
|
788
|
+
panel, Cache Size: 15x25). Held and dimmed states are not on System 7's
|
|
789
|
+
screens and keep the normal picture. */
|
|
790
|
+
--clio-little-arrows-width: 15px;
|
|
791
|
+
--clio-little-arrows-height: 25px;
|
|
792
|
+
--clio-art-little-arrows: url("art/system7/little-arrows.png");
|
|
793
|
+
--clio-art-little-arrows-up: var(--clio-art-little-arrows);
|
|
794
|
+
--clio-art-little-arrows-down: var(--clio-art-little-arrows);
|
|
795
|
+
--clio-art-little-arrows-disabled: var(--clio-art-little-arrows);
|
|
796
|
+
|
|
797
|
+
/* Bevel button: System 6 and 7 had none; they take Platinum's
|
|
798
|
+
(Navigation Services, Mac OS 9.0). */
|
|
799
|
+
--clio-bevel-min: 20px;
|
|
800
|
+
--clio-bevel-padding: 0 2px;
|
|
801
|
+
--clio-bevel-slice: 3px;
|
|
802
|
+
--clio-bevel-slice-n: 3;
|
|
803
|
+
--clio-art-bevel: url("art/platinum/bevel.png");
|
|
804
|
+
--clio-art-bevel-held: url("art/platinum/bevel-held.png");
|
|
805
|
+
--clio-art-bevel-menu-arrow: url("art/platinum/bevel-menu-arrow.png");
|
|
806
|
+
--clio-bevel-arrow-right: 5px;
|
|
807
|
+
--clio-bevel-arrow-bottom: 4px;
|
|
808
|
+
--clio-bevel-arrow-width: 3px;
|
|
809
|
+
--clio-bevel-arrow-height: 2px;
|
|
810
|
+
|
|
811
|
+
/* Chasing arrows: Platinum's three frames (Network Browser, Mac OS 9.0). */
|
|
812
|
+
--clio-art-chasing-arrows: url("art/platinum/chasing-arrows.png");
|
|
813
|
+
--clio-chasing-arrows-frames: 3;
|
|
814
|
+
|
|
815
|
+
/* Separator: a 1px ink line. */
|
|
816
|
+
--clio-separator-height: 1px;
|
|
817
|
+
--clio-separator-margin: 8px 0;
|
|
818
|
+
--clio-separator-bg: var(--clio-ink);
|
|
819
|
+
|
|
820
|
+
/* Help button: Platinum's (Keyboard control panel, Mac OS 9.0). */
|
|
821
|
+
--clio-art-help-button: url("art/platinum/help-button.png");
|
|
822
|
+
--clio-image-well-bg: #ffffff;
|
|
823
|
+
|
|
824
|
+
/* Utility window: the document window's parts at the size of System 7's
|
|
825
|
+
floating windows (inferred: none was on the captured screens). */
|
|
826
|
+
--clio-utility-titlebar-height: 13px;
|
|
827
|
+
--clio-utility-titlebar-row: 11px;
|
|
828
|
+
--clio-utility-box-size: 9px;
|
|
829
|
+
--clio-utility-slot: 13px;
|
|
830
|
+
--clio-utility-title-size: 9px;
|
|
831
|
+
|
|
832
|
+
/* Help balloon: Mac OS 9.0's (Balloon Help), the same in every era. */
|
|
833
|
+
--clio-art-balloon: url("art/platinum/balloon.png");
|
|
834
|
+
--clio-art-balloon-tail: url("art/platinum/balloon-tail.png");
|
|
835
|
+
|
|
836
|
+
/* Scrolling menu arrows: System 6 and 7 (Control Panels submenu, System
|
|
837
|
+
7.5.3), black, 5px in from the item's left (up arrow inferred, mirrored). */
|
|
838
|
+
--clio-art-menu-scroll-down: url("art/system7/menu-scroll-down.png");
|
|
839
|
+
--clio-art-menu-scroll-up: url("art/system7/menu-scroll-up.png");
|
|
840
|
+
--clio-menu-scroll-left: 5px;
|
|
841
|
+
|
|
552
842
|
/* Frames cut from captures by tooling/frame-art.py. */
|
|
553
843
|
--clio-art-frame-s6-button: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAgMAAACd/+6DAAAACVBMVEUAAAAAAAD///+D3c/SAAAAAXRSTlMAQObYZgAAACpJREFUeJxjYAxgYBINZWBiYWFgCmB0YGJgYABhBqmVDEx//jAwMAYwAAA66QRtNyAoFwAAAABJRU5ErkJggg==");
|
|
554
844
|
--clio-art-frame-s6-button-held: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAAB1JREFUeJxjkGFgSmZgYmBg/N/IxABiMNSDSRkGACm1Aqb7EOVpAAAAAElFTkSuQmCC");
|
|
@@ -558,6 +848,7 @@
|
|
|
558
848
|
--clio-art-frame-p9-ring: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAANBAMAAACAxflPAAAAG1BMVEUAAAAAAAB3d3fd3d3MzMy7u7uqqqoiIiKIiIhznn7oAAAAAXRSTlMAQObYZgAAAFpJREFUeJxjZGDnYmB7ycDCwKPAwPjzAwujgjEDg+x6xuLDrx6oOXEwCCcxMDAlCTAx/GMAISYGCEDQTGAOUyKLAoOKQgIjY6gAA9PO+4wMElwMDO8+MELNBwCaGBDQEM8mggAAAABJRU5ErkJggg==");
|
|
559
849
|
--clio-art-frame-p9-button-disabled: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAgMAAACd/+6DAAAACVBMVEUAAACIiIjd3d2RXqmqAAAAAXRSTlMAQObYZgAAACFJREFUeJxjYA1hYBINZWAKYHRgYmBgQMYMUisZGFhDGAAtsQJ9dgAT/gAAAABJRU5ErkJggg==");
|
|
560
850
|
--clio-art-frame-p9-popup: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHBAMAAAA2fErgAAAAGFBMVEUAAAAAAAB3d3fd3d27u7uqqqoiIiL///+EaqngAAAAAXRSTlMAQObYZgAAACtJREFUeJxjYEhMYGBi5H/IwJh+klWbQYCBQYAl/OQnOwbGAEUGpv+C9gwAea0HTcaLsPwAAAAASUVORK5CYII=");
|
|
851
|
+
--clio-art-frame-p9-popup-open: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHBAMAAAA2fErgAAAAGFBMVEUAAAAAAADd3d1mZmZEREQiIiKIiIj///+MKsksAAAAAXRSTlMAQObYZgAAACtJREFUeJxjEBQMYGBii//IwCjOKSbFIMDAIMAozun2iomB4fcGJgbG9wwAWK0GLJJZmp8AAAAASUVORK5CYII="); /* 7x7, slice 3 */
|
|
561
852
|
--clio-art-frame-p9-popup-disabled: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHAgMAAAC5PL9AAAAACVBMVEUAAACIiIjd3d2RXqmqAAAAAXRSTlMAQObYZgAAAB1JREFUeJxjZLVmEg5gChBhcGBh0ljAtOENI6s1ACDmA/qjrWTUAAAAAElFTkSuQmCC");
|
|
562
853
|
--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");
|
|
563
854
|
--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");
|
|
@@ -567,6 +858,15 @@
|
|
|
567
858
|
--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");
|
|
568
859
|
--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");
|
|
569
860
|
--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");
|
|
861
|
+
/* Rounded-corner window (rDocProc): corner masks and frame curves, tooling/rare-art.py. */
|
|
862
|
+
--clio-art-rdoc-mask-tl: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 0h1v1h-1zM3 1h3v1h-3zM2 2h4v1h-4zM1 3h5v1h-5zM1 4h5v1h-5zM0 5h6v1h-6z'/%3E%3C/svg%3E");
|
|
863
|
+
--clio-art-rdoc-frame-tl: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M5 0h1v1h-1zM3 1h3v1h-3zM2 2h2v1h-2zM1 3h2v1h-2zM1 4h1v1h-1zM0 5h2v1h-2z'/%3E%3C/svg%3E");
|
|
864
|
+
--clio-art-rdoc-mask-tr: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h1v1h-1zM0 1h3v1h-3zM0 2h4v1h-4zM0 3h5v1h-5zM0 4h5v1h-5zM0 5h6v1h-6z'/%3E%3C/svg%3E");
|
|
865
|
+
--clio-art-rdoc-frame-tr: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h1v1h-1zM0 1h3v1h-3zM2 2h2v1h-2zM3 3h2v1h-2zM4 4h1v1h-1zM4 5h2v1h-2z'/%3E%3C/svg%3E");
|
|
866
|
+
--clio-art-rdoc-mask-bl: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h6v1h-6zM1 1h5v1h-5zM1 2h5v1h-5zM2 3h4v1h-4zM3 4h3v1h-3zM5 5h1v1h-1z'/%3E%3C/svg%3E");
|
|
867
|
+
--clio-art-rdoc-frame-bl: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h2v1h-2zM1 1h1v1h-1zM1 2h2v1h-2zM2 3h2v1h-2zM3 4h3v1h-3zM5 5h1v1h-1z'/%3E%3C/svg%3E");
|
|
868
|
+
--clio-art-rdoc-mask-br: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M0 0h6v1h-6zM0 1h5v1h-5zM0 2h5v1h-5zM0 3h4v1h-4zM0 4h3v1h-3zM0 5h1v1h-1z'/%3E%3C/svg%3E");
|
|
869
|
+
--clio-art-rdoc-frame-br: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' shape-rendering='crispEdges'%3E%3Cpath fill='%23000' d='M4 0h2v1h-2zM4 1h1v1h-1zM3 2h2v1h-2zM2 3h2v1h-2zM0 4h3v1h-3zM0 5h1v1h-1z'/%3E%3C/svg%3E");
|
|
570
870
|
}
|
|
571
871
|
|
|
572
872
|
/* Base. clio.css styles elements only inside its own components, plus bare
|
|
@@ -581,7 +881,7 @@
|
|
|
581
881
|
}
|
|
582
882
|
|
|
583
883
|
:where(.window, .menu-bar, [role="menubar"], [role="menu-bar"], .menu, [role="menu"],
|
|
584
|
-
.modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .clio) {
|
|
884
|
+
.modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .rounded-window, .clio) {
|
|
585
885
|
box-sizing: border-box;
|
|
586
886
|
color: var(--clio-ink);
|
|
587
887
|
font-family: var(--clio-font-chrome);
|
|
@@ -591,6 +891,7 @@
|
|
|
591
891
|
font-synthesis: none;
|
|
592
892
|
line-height: 16px;
|
|
593
893
|
-webkit-font-smoothing: var(--clio-font-smoothing);
|
|
894
|
+
-moz-osx-font-smoothing: grayscale; /* Firefox on macOS otherwise thickens the pixel squares with a grey fringe */
|
|
594
895
|
}
|
|
595
896
|
|
|
596
897
|
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .clio) *,
|
|
@@ -604,6 +905,7 @@
|
|
|
604
905
|
font-family: var(--clio-font-text);
|
|
605
906
|
font-stretch: var(--clio-font-stretch-text);
|
|
606
907
|
-webkit-font-smoothing: var(--clio-text-smoothing);
|
|
908
|
+
-moz-osx-font-smoothing: var(--clio-text-smoothing-moz);
|
|
607
909
|
}
|
|
608
910
|
|
|
609
911
|
:where(.window, .modal-dialog, .alert-box, .standard-dialog, .clio) :where(h1, h2, h3, h4, .heading) {
|
|
@@ -670,6 +972,37 @@
|
|
|
670
972
|
white-space: nowrap;
|
|
671
973
|
}
|
|
672
974
|
|
|
975
|
+
/* Cursors: the arrow, the I-beam and the watch redrawn pixel for pixel from System 7.5.3
|
|
976
|
+
and Mac OS 9.0 (tooling/cursor-art.py; the arrow is the same in both), at
|
|
977
|
+
1x, 2x and 3x. On by default; class="clio-system-cursors" on <html> gives
|
|
978
|
+
the system's own back. The Mac had no pointing hand: links and buttons
|
|
979
|
+
inside clio.css's windows keep the arrow. aria-busy="true" shows the watch
|
|
980
|
+
(its first frame; hot spot 8,8). */
|
|
981
|
+
:where(:root) {
|
|
982
|
+
--clio-cursor-arrow: image-set(url("art/cursors/arrow.png") 1x, url("art/cursors/arrow-2x.png") 2x, url("art/cursors/arrow-3x.png") 3x) 1 1, default;
|
|
983
|
+
--clio-cursor-text: image-set(url("art/cursors/ibeam.png") 1x, url("art/cursors/ibeam-2x.png") 2x, url("art/cursors/ibeam-3x.png") 3x) 3 4, text;
|
|
984
|
+
--clio-cursor-wait: image-set(url("art/cursors/watch.png") 1x, url("art/cursors/watch-2x.png") 2x, url("art/cursors/watch-3x.png") 3x) 8 8, wait;
|
|
985
|
+
cursor: var(--clio-cursor-arrow);
|
|
986
|
+
}
|
|
987
|
+
|
|
988
|
+
:where(:root.clio-system-cursors) {
|
|
989
|
+
--clio-cursor-arrow: default;
|
|
990
|
+
--clio-cursor-text: text;
|
|
991
|
+
--clio-cursor-wait: wait;
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
:where(input:not([type="checkbox"], [type="radio"], [type="range"], [type="button"], [type="submit"], [type="reset"], [type="color"], [type="file"], [type="image"]), textarea, [contenteditable]:not([contenteditable="false"])) {
|
|
995
|
+
cursor: var(--clio-cursor-text);
|
|
996
|
+
}
|
|
997
|
+
|
|
998
|
+
:where(.window, .menu-bar, [role="menubar"], .menu, [role="menu"], .modal-dialog, .alert-box, .standard-dialog, .modeless-dialog, .control-strip, .clio, .desktop) :where(a:any-link, button, label, summary, select, [role="button"], [role="tab"]) {
|
|
999
|
+
cursor: var(--clio-cursor-arrow);
|
|
1000
|
+
}
|
|
1001
|
+
|
|
1002
|
+
:where([aria-busy="true"]), :where([aria-busy="true"]) * {
|
|
1003
|
+
cursor: var(--clio-cursor-wait);
|
|
1004
|
+
}
|
|
1005
|
+
|
|
673
1006
|
/* Windows.
|
|
674
1007
|
Markup: .window > .title-bar (> .close, .title, .resize [, .shade]) >
|
|
675
1008
|
optional .details-bar > .window-pane. system.css markup (.title-bar
|
|
@@ -761,7 +1094,7 @@
|
|
|
761
1094
|
font-size: 0;
|
|
762
1095
|
appearance: none;
|
|
763
1096
|
-webkit-appearance: none;
|
|
764
|
-
cursor:
|
|
1097
|
+
cursor: var(--clio-cursor-arrow);
|
|
765
1098
|
touch-action: manipulation;
|
|
766
1099
|
}
|
|
767
1100
|
|
|
@@ -786,7 +1119,7 @@
|
|
|
786
1119
|
|
|
787
1120
|
/* Held close or zoom box: System 6 draws the same starburst in both
|
|
788
1121
|
(measured, 6.0.8); the zoom box's inner square goes while it is held. */
|
|
789
|
-
.title-bar > :is(.close, .close-box, .resize, .resize-box, .zoom):is(:active, .active) {
|
|
1122
|
+
.title-bar > :is(.close, .close-box, .resize, .resize-box, .zoom):is(:active:where(:not([data-clio-off])), .active) {
|
|
790
1123
|
background: var(--clio-art-s6-burst) 0 0 / 11px 11px no-repeat border-box, var(--clio-paper);
|
|
791
1124
|
}
|
|
792
1125
|
|
|
@@ -804,7 +1137,7 @@
|
|
|
804
1137
|
box-sizing: border-box;
|
|
805
1138
|
}
|
|
806
1139
|
|
|
807
|
-
.title-bar > :is(.resize, .resize-box, .zoom):is(:active, .active)::before {
|
|
1140
|
+
.title-bar > :is(.resize, .resize-box, .zoom):is(:active:where(:not([data-clio-off])), .active)::before {
|
|
808
1141
|
opacity: 0;
|
|
809
1142
|
}
|
|
810
1143
|
|
|
@@ -859,9 +1192,15 @@
|
|
|
859
1192
|
white-space: nowrap;
|
|
860
1193
|
}
|
|
861
1194
|
|
|
1195
|
+
/* A separator line between groups in a window or dialog (Mac OS 8 HIG:
|
|
1196
|
+
"Separator Lines"): <hr class="separator"> or <div class="separator">. */
|
|
862
1197
|
:where(.separator) {
|
|
863
1198
|
flex: none;
|
|
864
|
-
|
|
1199
|
+
box-sizing: border-box;
|
|
1200
|
+
height: var(--clio-separator-height);
|
|
1201
|
+
margin: var(--clio-separator-margin);
|
|
1202
|
+
border: 0;
|
|
1203
|
+
background: var(--clio-separator-bg);
|
|
865
1204
|
}
|
|
866
1205
|
|
|
867
1206
|
/* A status line under the pane. */
|
|
@@ -877,6 +1216,17 @@
|
|
|
877
1216
|
line-height: 14px;
|
|
878
1217
|
}
|
|
879
1218
|
|
|
1219
|
+
/* Collapsed (WindowShade; clio.js toggles .collapsed from the collapse box):
|
|
1220
|
+
only the title bar stays. */
|
|
1221
|
+
:where(.window.collapsed) {
|
|
1222
|
+
height: auto !important;
|
|
1223
|
+
min-height: 0 !important;
|
|
1224
|
+
}
|
|
1225
|
+
|
|
1226
|
+
:where(.window.collapsed) > :not(.title-bar) {
|
|
1227
|
+
display: none !important;
|
|
1228
|
+
}
|
|
1229
|
+
|
|
880
1230
|
/* Menu bar and menus.
|
|
881
1231
|
Markup: <ul role="menubar" class="menu-bar"> <li role="none"><button
|
|
882
1232
|
role="menuitem" aria-haspopup="true" aria-expanded="false">File</button>
|
|
@@ -924,12 +1274,12 @@
|
|
|
924
1274
|
white-space: nowrap;
|
|
925
1275
|
appearance: none;
|
|
926
1276
|
-webkit-appearance: none;
|
|
927
|
-
cursor:
|
|
1277
|
+
cursor: var(--clio-cursor-arrow);
|
|
928
1278
|
}
|
|
929
1279
|
|
|
930
1280
|
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a, span):is([aria-expanded="true"], .active),
|
|
931
1281
|
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li.open > :is(button, a, span),
|
|
932
|
-
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a):active,
|
|
1282
|
+
:where(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a):active:where(:not([data-clio-off])),
|
|
933
1283
|
:where([role="menu-bar"]) > [role="menu-item"]:is(:focus, :focus-within) {
|
|
934
1284
|
background: var(--clio-menu-title-active-bg);
|
|
935
1285
|
box-shadow: var(--clio-menu-title-active-shadow);
|
|
@@ -979,6 +1329,12 @@
|
|
|
979
1329
|
display: block;
|
|
980
1330
|
}
|
|
981
1331
|
|
|
1332
|
+
/* With clio.js (data-clio-menus) a menu opens from the pointer or the arrow
|
|
1333
|
+
keys, not merely because focus sits on its title. */
|
|
1334
|
+
:where([data-clio-menus]) li:focus-within:not(.open) > :is(.menu, ul[role="menu"]) {
|
|
1335
|
+
display: none;
|
|
1336
|
+
}
|
|
1337
|
+
|
|
982
1338
|
/* ---- Menu items ---------------------------------------------------------- */
|
|
983
1339
|
:where(.menu, [role="menu"]) > li {
|
|
984
1340
|
position: relative;
|
|
@@ -989,7 +1345,7 @@
|
|
|
989
1345
|
font-weight: var(--clio-menu-item-weight);
|
|
990
1346
|
line-height: var(--clio-menu-item-height);
|
|
991
1347
|
white-space: nowrap;
|
|
992
|
-
cursor:
|
|
1348
|
+
cursor: var(--clio-cursor-arrow);
|
|
993
1349
|
}
|
|
994
1350
|
|
|
995
1351
|
:where(.menu, [role="menu"]) > li:has(> :is(a, button)) {
|
|
@@ -1015,11 +1371,11 @@
|
|
|
1015
1371
|
text-decoration: none;
|
|
1016
1372
|
appearance: none;
|
|
1017
1373
|
-webkit-appearance: none;
|
|
1018
|
-
cursor:
|
|
1374
|
+
cursor: var(--clio-cursor-arrow);
|
|
1019
1375
|
}
|
|
1020
1376
|
|
|
1021
|
-
:where(.menu, [role="menu"]) > li:not(.disabled, [aria-disabled="true"], .separator, [role="separator"]):is(:hover, :focus-within, .active),
|
|
1022
|
-
:where(.menu, [role="menu"]) > li > :is(a, button):not([aria-disabled="true"], :disabled):is(:hover, :focus-visible, .active) {
|
|
1377
|
+
:where(.menu, [role="menu"]) > li:not(.disabled, [aria-disabled="true"], .separator, [role="separator"]):is(:hover, :focus-within, .active):where(:not([data-clio-blink])),
|
|
1378
|
+
:where(.menu, [role="menu"]) > li > :is(a, button):not([aria-disabled="true"], :disabled):is(:hover, :focus-visible, .active):where(:not([data-clio-blink])) {
|
|
1023
1379
|
background: var(--clio-menu-item-active-bg);
|
|
1024
1380
|
box-shadow: var(--clio-menu-item-active-shadow);
|
|
1025
1381
|
color: var(--clio-menu-item-active-fg);
|
|
@@ -1057,8 +1413,8 @@
|
|
|
1057
1413
|
background: var(--clio-art-s6-menucheck) 0 0 / 9px 8px no-repeat;
|
|
1058
1414
|
}
|
|
1059
1415
|
|
|
1060
|
-
:where(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active)::before,
|
|
1061
|
-
:where(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active)::before {
|
|
1416
|
+
:where(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active):where(:not([data-clio-blink]))::before,
|
|
1417
|
+
:where(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active):where(:not([data-clio-blink]))::before {
|
|
1062
1418
|
background-image: var(--clio-art-s6-menucheck-on);
|
|
1063
1419
|
}
|
|
1064
1420
|
|
|
@@ -1075,7 +1431,7 @@
|
|
|
1075
1431
|
background: var(--clio-art-s6-submenu) 0 0 / 6px 11px no-repeat;
|
|
1076
1432
|
}
|
|
1077
1433
|
|
|
1078
|
-
:where(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active)::after {
|
|
1434
|
+
:where(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active):where(:not([data-clio-blink]))::after {
|
|
1079
1435
|
background-image: var(--clio-art-s6-submenu-on);
|
|
1080
1436
|
}
|
|
1081
1437
|
|
|
@@ -1095,6 +1451,33 @@
|
|
|
1095
1451
|
border-bottom: 1px dotted var(--clio-ink);
|
|
1096
1452
|
}
|
|
1097
1453
|
|
|
1454
|
+
/* ---- Scrolling menus, menu bar extras, item icons ------------------------------
|
|
1455
|
+
A menu longer than the screen ends in a scroll arrow row: <li class="scroll-down"
|
|
1456
|
+
aria-hidden="true"> (or "scroll-up" at the top). Menu bar items pushed to
|
|
1457
|
+
the right (the Help and Application menus) take class "menu-extras"; an
|
|
1458
|
+
icon in a title or an item is an <img> 16px square. */
|
|
1459
|
+
:where(.menu, [role="menu"]) > :where(li.scroll-down, li.scroll-up) {
|
|
1460
|
+
min-height: var(--clio-menu-item-height);
|
|
1461
|
+
padding: 0;
|
|
1462
|
+
background: var(--clio-art-menu-scroll-down) var(--clio-menu-scroll-left) 50% / auto no-repeat;
|
|
1463
|
+
}
|
|
1464
|
+
|
|
1465
|
+
:where(.menu, [role="menu"]) > :where(li.scroll-up) {
|
|
1466
|
+
background-image: var(--clio-art-menu-scroll-up);
|
|
1467
|
+
}
|
|
1468
|
+
|
|
1469
|
+
:where(.menu-bar, [role="menubar"]) > :where(li.menu-extras) {
|
|
1470
|
+
margin-left: auto;
|
|
1471
|
+
}
|
|
1472
|
+
|
|
1473
|
+
:where(.menu-bar, [role="menubar"], .menu, [role="menu"]) :where(img) {
|
|
1474
|
+
width: 16px;
|
|
1475
|
+
height: 16px;
|
|
1476
|
+
margin-right: 4px;
|
|
1477
|
+
vertical-align: -3px;
|
|
1478
|
+
image-rendering: pixelated;
|
|
1479
|
+
}
|
|
1480
|
+
|
|
1098
1481
|
/* Controls. Bare elements are styled through :where(), so the rules carry no
|
|
1099
1482
|
specificity. State model (from AI System 6's fidelity contract): hover never
|
|
1100
1483
|
changes a push button; pressed comes only from pointer-down, Space or
|
|
@@ -1121,18 +1504,19 @@
|
|
|
1121
1504
|
font-stretch: var(--clio-font-stretch-text);
|
|
1122
1505
|
font-weight: var(--clio-button-weight);
|
|
1123
1506
|
-webkit-font-smoothing: var(--clio-font-smoothing);
|
|
1507
|
+
-moz-osx-font-smoothing: grayscale; /* Firefox on macOS otherwise thickens the pixel squares with a grey fringe */
|
|
1124
1508
|
line-height: 14px;
|
|
1125
1509
|
text-align: center;
|
|
1126
1510
|
text-decoration: none;
|
|
1127
1511
|
white-space: nowrap;
|
|
1128
1512
|
appearance: none;
|
|
1129
1513
|
-webkit-appearance: none;
|
|
1130
|
-
cursor:
|
|
1514
|
+
cursor: var(--clio-cursor-arrow);
|
|
1131
1515
|
touch-action: manipulation;
|
|
1132
1516
|
-webkit-tap-highlight-color: transparent;
|
|
1133
1517
|
}
|
|
1134
1518
|
|
|
1135
|
-
:where(button, .btn, .btn-default, .standard-button, input[type="button"], input[type="submit"], input[type="reset"]):not(:disabled, .disabled):is(:active, .active) {
|
|
1519
|
+
:where(button, .btn, .btn-default, .standard-button, input[type="button"], input[type="submit"], input[type="reset"]):not(:disabled, .disabled):is(:active:where(:not([data-clio-off])), .active) {
|
|
1136
1520
|
background: var(--clio-button-active-bg);
|
|
1137
1521
|
box-shadow: var(--clio-button-active-shadow);
|
|
1138
1522
|
border-image-source: var(--clio-button-frame-held);
|
|
@@ -1196,7 +1580,7 @@
|
|
|
1196
1580
|
vertical-align: -2px;
|
|
1197
1581
|
appearance: none;
|
|
1198
1582
|
-webkit-appearance: none;
|
|
1199
|
-
cursor:
|
|
1583
|
+
cursor: var(--clio-cursor-arrow);
|
|
1200
1584
|
}
|
|
1201
1585
|
|
|
1202
1586
|
:where(input[type="checkbox"]):checked {
|
|
@@ -1204,7 +1588,7 @@
|
|
|
1204
1588
|
background-origin: var(--clio-check-mark-origin);
|
|
1205
1589
|
}
|
|
1206
1590
|
|
|
1207
|
-
:where(input[type="checkbox"]):not(:disabled):active {
|
|
1591
|
+
:where(input[type="checkbox"]):not(:disabled):active:where(:not([data-clio-off])) {
|
|
1208
1592
|
border-width: var(--clio-check-pressed-border-width);
|
|
1209
1593
|
}
|
|
1210
1594
|
|
|
@@ -1226,18 +1610,18 @@
|
|
|
1226
1610
|
vertical-align: -2px;
|
|
1227
1611
|
appearance: none;
|
|
1228
1612
|
-webkit-appearance: none;
|
|
1229
|
-
cursor:
|
|
1613
|
+
cursor: var(--clio-cursor-arrow);
|
|
1230
1614
|
}
|
|
1231
1615
|
|
|
1232
1616
|
:where(input[type="radio"]):checked {
|
|
1233
1617
|
background: var(--clio-radio-on);
|
|
1234
1618
|
}
|
|
1235
1619
|
|
|
1236
|
-
:where(input[type="radio"]):not(:disabled):active {
|
|
1620
|
+
:where(input[type="radio"]):not(:disabled):active:where(:not([data-clio-off])) {
|
|
1237
1621
|
background: var(--clio-radio-pressed);
|
|
1238
1622
|
}
|
|
1239
1623
|
|
|
1240
|
-
:where(input[type="radio"]):checked:not(:disabled):active {
|
|
1624
|
+
:where(input[type="radio"]):checked:not(:disabled):active:where(:not([data-clio-off])) {
|
|
1241
1625
|
background: var(--clio-radio-pressed-on);
|
|
1242
1626
|
}
|
|
1243
1627
|
|
|
@@ -1301,7 +1685,7 @@
|
|
|
1301
1685
|
}
|
|
1302
1686
|
|
|
1303
1687
|
:where(input, textarea):focus-visible {
|
|
1304
|
-
outline: var(--clio-focus-outline);
|
|
1688
|
+
outline: var(--clio-field-focus-outline, var(--clio-focus-outline));
|
|
1305
1689
|
outline-offset: var(--clio-focus-offset);
|
|
1306
1690
|
box-shadow: var(--clio-field-focus-shadow);
|
|
1307
1691
|
}
|
|
@@ -1337,10 +1721,14 @@
|
|
|
1337
1721
|
font-stretch: var(--clio-font-stretch-text);
|
|
1338
1722
|
font-weight: var(--clio-popup-weight);
|
|
1339
1723
|
-webkit-font-smoothing: var(--clio-font-smoothing);
|
|
1724
|
+
-moz-osx-font-smoothing: grayscale; /* Firefox on macOS otherwise thickens the pixel squares with a grey fringe */
|
|
1340
1725
|
line-height: 16px;
|
|
1726
|
+
white-space: nowrap; /* one line, cut short with an ellipsis, as the Mac truncated a pop-up's title */
|
|
1727
|
+
overflow: hidden;
|
|
1728
|
+
text-overflow: ellipsis;
|
|
1341
1729
|
appearance: none;
|
|
1342
1730
|
-webkit-appearance: none;
|
|
1343
|
-
cursor:
|
|
1731
|
+
cursor: var(--clio-cursor-arrow);
|
|
1344
1732
|
}
|
|
1345
1733
|
|
|
1346
1734
|
:where(select):focus-visible {
|
|
@@ -1349,7 +1737,93 @@
|
|
|
1349
1737
|
}
|
|
1350
1738
|
|
|
1351
1739
|
:where(select):disabled {
|
|
1352
|
-
color: var(--clio-disabled);
|
|
1740
|
+
color: var(--clio-popup-disabled-fg, var(--clio-disabled));
|
|
1741
|
+
opacity: 1; /* Chrome fades a disabled select it draws itself; the Mac did not */
|
|
1742
|
+
mask: var(--clio-popup-disabled-mask, none);
|
|
1743
|
+
mask-clip: no-clip; /* the shadow outside the frame is dimmed too */
|
|
1744
|
+
}
|
|
1745
|
+
|
|
1746
|
+
/* The open pop-up menu. Where the browser lets CSS draw it (appearance:
|
|
1747
|
+
base-select: Chrome 135, Safari 27), it is the era's menu, laid over the
|
|
1748
|
+
button with the current item on the button's row (clio.js sets
|
|
1749
|
+
--clio-picker-shift; without it the first item sits there). clio.js draws
|
|
1750
|
+
the same menu as elements elsewhere. */
|
|
1751
|
+
@supports (appearance: base-select) {
|
|
1752
|
+
/* a mouse or trackpad only: on touch screens the system's own picker
|
|
1753
|
+
(the iOS wheel, Android's sheet) stays, as it is the better tool there */
|
|
1754
|
+
@media (pointer: fine) {
|
|
1755
|
+
:where(select:not([multiple], [size]:not([size="1"]))),
|
|
1756
|
+
:where(select:not([multiple], [size]:not([size="1"])))::picker(select) {
|
|
1757
|
+
appearance: base-select;
|
|
1758
|
+
}
|
|
1759
|
+
|
|
1760
|
+
/* keep the closed button laid out as before (the base-select default is a
|
|
1761
|
+
centred inline-flex box, a pixel off the measured text) */
|
|
1762
|
+
:where(select:not([multiple], [size]:not([size="1"]))) {
|
|
1763
|
+
display: inline-block;
|
|
1764
|
+
align-items: normal;
|
|
1765
|
+
gap: normal;
|
|
1766
|
+
text-align: start;
|
|
1767
|
+
}
|
|
1768
|
+
|
|
1769
|
+
:where(select)::picker-icon {
|
|
1770
|
+
display: none; /* the era's arrow is the button's own art */
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
:where(select)::picker(select) {
|
|
1774
|
+
position-area: span-block-end span-inline-end; /* top and left on the button's */
|
|
1775
|
+
position-try-fallbacks: none;
|
|
1776
|
+
inset: auto;
|
|
1777
|
+
min-width: anchor-size(width);
|
|
1778
|
+
margin: 0;
|
|
1779
|
+
padding: 0;
|
|
1780
|
+
translate: 0 var(--clio-picker-shift, 0px);
|
|
1781
|
+
border: var(--clio-menu-border);
|
|
1782
|
+
border-top-width: var(--clio-menu-border-top-width, 1px);
|
|
1783
|
+
border-radius: 0; /* Safari rounds its picker */
|
|
1784
|
+
background: var(--clio-menu-bg);
|
|
1785
|
+
box-shadow: var(--clio-menu-shadow);
|
|
1786
|
+
color: var(--clio-ink);
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
:where(select) option {
|
|
1790
|
+
position: relative;
|
|
1791
|
+
display: flex;
|
|
1792
|
+
align-items: center;
|
|
1793
|
+
min-height: var(--clio-menu-item-height);
|
|
1794
|
+
padding: var(--clio-menu-item-padding);
|
|
1795
|
+
font: inherit;
|
|
1796
|
+
font-weight: var(--clio-menu-item-weight, inherit);
|
|
1797
|
+
line-height: var(--clio-menu-item-height);
|
|
1798
|
+
white-space: nowrap;
|
|
1799
|
+
outline: none;
|
|
1800
|
+
}
|
|
1801
|
+
|
|
1802
|
+
:where(select) option:is(:hover, :focus-visible):not(:disabled) {
|
|
1803
|
+
background: var(--clio-menu-item-active-bg);
|
|
1804
|
+
box-shadow: var(--clio-menu-item-active-shadow);
|
|
1805
|
+
color: var(--clio-menu-item-active-fg);
|
|
1806
|
+
}
|
|
1807
|
+
|
|
1808
|
+
:where(select) option:disabled {
|
|
1809
|
+
color: var(--clio-disabled);
|
|
1810
|
+
}
|
|
1811
|
+
|
|
1812
|
+
:where(select) option::checkmark {
|
|
1813
|
+
content: "";
|
|
1814
|
+
position: absolute;
|
|
1815
|
+
top: 50%;
|
|
1816
|
+
left: 3px;
|
|
1817
|
+
width: 9px;
|
|
1818
|
+
height: 8px;
|
|
1819
|
+
margin-top: -4px;
|
|
1820
|
+
background: var(--clio-art-s6-menucheck) 0 0 / 9px 8px no-repeat;
|
|
1821
|
+
}
|
|
1822
|
+
|
|
1823
|
+
:where(select) option:is(:hover, :focus-visible)::checkmark {
|
|
1824
|
+
background-image: var(--clio-art-s6-menucheck-on);
|
|
1825
|
+
}
|
|
1826
|
+
}
|
|
1353
1827
|
}
|
|
1354
1828
|
|
|
1355
1829
|
/* A list box: <select multiple> or <select size="n">. */
|
|
@@ -1392,7 +1866,7 @@
|
|
|
1392
1866
|
padding: 0 4px;
|
|
1393
1867
|
line-height: var(--clio-list-row);
|
|
1394
1868
|
white-space: nowrap;
|
|
1395
|
-
cursor:
|
|
1869
|
+
cursor: var(--clio-cursor-arrow);
|
|
1396
1870
|
}
|
|
1397
1871
|
|
|
1398
1872
|
:where(.listbox, [role="listbox"]) > :is(li, [role="option"]):is([aria-selected="true"], .selected) {
|
|
@@ -1478,7 +1952,7 @@
|
|
|
1478
1952
|
font-family: var(--clio-font-chrome);
|
|
1479
1953
|
font-size: var(--clio-font-size);
|
|
1480
1954
|
font-weight: var(--clio-chrome-weight);
|
|
1481
|
-
cursor:
|
|
1955
|
+
cursor: var(--clio-cursor-arrow);
|
|
1482
1956
|
}
|
|
1483
1957
|
|
|
1484
1958
|
:where([role="tablist"], .tabs) > :is([role="tab"], li, button):is([aria-selected="true"], .active) {
|
|
@@ -1514,7 +1988,7 @@
|
|
|
1514
1988
|
font-family: var(--clio-font-small);
|
|
1515
1989
|
font-size: var(--clio-font-size-small);
|
|
1516
1990
|
text-align: center;
|
|
1517
|
-
cursor:
|
|
1991
|
+
cursor: var(--clio-cursor-arrow);
|
|
1518
1992
|
}
|
|
1519
1993
|
|
|
1520
1994
|
:where(.icon) > :is(img, svg, .icon-image) {
|
|
@@ -1540,218 +2014,1131 @@
|
|
|
1540
2014
|
color: var(--clio-label-selected-fg);
|
|
1541
2015
|
}
|
|
1542
2016
|
|
|
1543
|
-
/*
|
|
1544
|
-
|
|
1545
|
-
.
|
|
1546
|
-
.modeless-dialog: a movable dialog, which is a .window.
|
|
1547
|
-
Use them on <dialog> or on a <div role="dialog">. system.css's
|
|
1548
|
-
.outer-border / .inner-border wrappers are accepted and draw nothing extra. */
|
|
1549
|
-
:where(.modal-dialog, .alert-box, dialog.modal) {
|
|
1550
|
-
box-sizing: border-box;
|
|
1551
|
-
max-width: 100%;
|
|
1552
|
-
margin: 0;
|
|
1553
|
-
padding: var(--clio-modal-padding);
|
|
1554
|
-
border: var(--clio-modal-border);
|
|
1555
|
-
background: var(--clio-dialog-bg);
|
|
1556
|
-
box-shadow: var(--clio-modal-frame);
|
|
1557
|
-
color: var(--clio-ink);
|
|
1558
|
-
}
|
|
2017
|
+
/* Controls the classic guidelines add to the first set (Macintosh Human
|
|
2018
|
+
Interface Guidelines 1992, ch. 7; Mac OS 8 Human Interface Guidelines,
|
|
2019
|
+
ch. 2), each drawn per era from tokens. COVERAGE.md lists them all. */
|
|
1559
2020
|
|
|
1560
|
-
|
|
2021
|
+
/* ---- Disclosure triangle ---------------------------------------------------
|
|
2022
|
+
Markup: <button class="disclosure" aria-expanded="false" aria-label="Show">
|
|
2023
|
+
or <details><summary>…</summary>…</details>. System 7 brought it to the
|
|
2024
|
+
Finder's list views; System 6 had none (it uses System 7's). */
|
|
2025
|
+
:where(.disclosure) {
|
|
2026
|
+
display: inline-block;
|
|
1561
2027
|
box-sizing: border-box;
|
|
1562
|
-
|
|
2028
|
+
width: var(--clio-disclosure-size);
|
|
2029
|
+
height: var(--clio-disclosure-size);
|
|
2030
|
+
min-width: 0;
|
|
2031
|
+
min-height: 0;
|
|
1563
2032
|
margin: 0;
|
|
1564
|
-
padding: 12px 14px;
|
|
1565
|
-
border: var(--clio-plain-dialog-border);
|
|
1566
|
-
background: var(--clio-dialog-bg);
|
|
1567
|
-
box-shadow: var(--clio-plain-dialog-shadow);
|
|
1568
|
-
color: var(--clio-ink);
|
|
1569
|
-
}
|
|
1570
|
-
|
|
1571
|
-
:where(dialog):is(.modal-dialog, .alert-box, .standard-dialog, .modal)::backdrop {
|
|
1572
|
-
background: transparent;
|
|
1573
|
-
}
|
|
1574
|
-
|
|
1575
|
-
:where(.modal-dialog, .alert-box, .standard-dialog) :where(.outer-border, .inner-border) {
|
|
1576
2033
|
padding: 0;
|
|
1577
2034
|
border: 0;
|
|
2035
|
+
background: var(--clio-art-disclosure) 0 0 / var(--clio-disclosure-size) var(--clio-disclosure-size) no-repeat;
|
|
2036
|
+
box-shadow: none;
|
|
2037
|
+
vertical-align: middle;
|
|
2038
|
+
appearance: none;
|
|
2039
|
+
-webkit-appearance: none;
|
|
2040
|
+
cursor: var(--clio-cursor-arrow);
|
|
1578
2041
|
}
|
|
1579
2042
|
|
|
1580
|
-
|
|
1581
|
-
:
|
|
1582
|
-
display: grid;
|
|
1583
|
-
grid-template-columns: auto 1fr;
|
|
1584
|
-
column-gap: 16px;
|
|
1585
|
-
row-gap: 12px;
|
|
1586
|
-
align-items: start;
|
|
2043
|
+
:where(.disclosure):is([aria-expanded="true"], .open) {
|
|
2044
|
+
background-image: var(--clio-art-disclosure-open);
|
|
1587
2045
|
}
|
|
1588
2046
|
|
|
1589
|
-
:where(
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
2047
|
+
:where(details) > :where(summary) {
|
|
2048
|
+
display: flex;
|
|
2049
|
+
align-items: center;
|
|
2050
|
+
gap: var(--clio-disclosure-gap);
|
|
2051
|
+
list-style: none;
|
|
2052
|
+
cursor: var(--clio-cursor-arrow);
|
|
1593
2053
|
}
|
|
1594
2054
|
|
|
1595
|
-
:where(
|
|
1596
|
-
|
|
1597
|
-
margin: 0;
|
|
2055
|
+
:where(details) > :where(summary)::-webkit-details-marker {
|
|
2056
|
+
display: none;
|
|
1598
2057
|
}
|
|
1599
2058
|
|
|
1600
|
-
:where(
|
|
1601
|
-
|
|
2059
|
+
:where(details) > :where(summary)::before {
|
|
2060
|
+
content: "";
|
|
2061
|
+
flex: none;
|
|
2062
|
+
width: var(--clio-disclosure-size);
|
|
2063
|
+
height: var(--clio-disclosure-size);
|
|
2064
|
+
background: var(--clio-art-disclosure) 0 0 / var(--clio-disclosure-size) var(--clio-disclosure-size) no-repeat;
|
|
1602
2065
|
}
|
|
1603
2066
|
|
|
1604
|
-
:where(
|
|
1605
|
-
|
|
1606
|
-
flex-wrap: wrap;
|
|
1607
|
-
justify-content: flex-end;
|
|
1608
|
-
gap: 12px;
|
|
1609
|
-
margin-top: 12px;
|
|
2067
|
+
:where(details[open]) > :where(summary)::before {
|
|
2068
|
+
background-image: var(--clio-art-disclosure-open);
|
|
1610
2069
|
}
|
|
1611
2070
|
|
|
1612
|
-
/*
|
|
1613
|
-
:
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
2071
|
+
/* ---- List view --------------------------------------------------------------
|
|
2072
|
+
The Finder's list view: column headers, the sorted column marked, rows of
|
|
2073
|
+
name and details. Markup: <table class="list-view"> with <th aria-sort> on
|
|
2074
|
+
the sorted column and an optional empty <th class="sort-direction">.
|
|
2075
|
+
System 7: plain headers in the small font, the sorted one underlined, a
|
|
2076
|
+
double rule below (Finder, View by Name). */
|
|
2077
|
+
:where(.list-view) {
|
|
2078
|
+
border-collapse: collapse;
|
|
2079
|
+
border-spacing: 0;
|
|
2080
|
+
background: var(--clio-list-view-bg);
|
|
2081
|
+
font-family: var(--clio-font-small);
|
|
2082
|
+
font-size: var(--clio-font-size-small);
|
|
2083
|
+
line-height: var(--clio-list-view-row);
|
|
1622
2084
|
}
|
|
1623
2085
|
|
|
1624
|
-
:where(.
|
|
1625
|
-
|
|
1626
|
-
:where(.alert-icon.stop) { border-radius: 50%; }
|
|
1627
|
-
:where(.alert-icon.stop)::before { content: "\00D7"; }
|
|
1628
|
-
|
|
1629
|
-
/* Scroll bars, for scroll areas clio.css owns (.window-pane, .listbox,
|
|
1630
|
-
textarea, list-box selects) and for anything you mark with .clio-scroll.
|
|
1631
|
-
Add class="clio-scrollbars" to <html> to give every scroll area the era's
|
|
1632
|
-
scroll bar.
|
|
1633
|
-
|
|
1634
|
-
WebKit/Blink draw the full bar: two arrow boxes, the patterned lane and the
|
|
1635
|
-
scroll box. The scroll box is proportional to the content here (a browser
|
|
1636
|
-
limit), where System 6 drew a fixed 16px square. Firefox has no scroll bar
|
|
1637
|
-
parts, so it gets the era's colours through scrollbar-color. */
|
|
1638
|
-
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar,
|
|
1639
|
-
:where(html.clio-scrollbars)::-webkit-scrollbar {
|
|
1640
|
-
width: var(--clio-scrollbar-size);
|
|
1641
|
-
height: var(--clio-scrollbar-size);
|
|
1642
|
-
background: var(--clio-paper);
|
|
2086
|
+
:where(.list-view) :where(th, td) {
|
|
2087
|
+
box-sizing: border-box;
|
|
1643
2088
|
}
|
|
1644
2089
|
|
|
1645
|
-
:where(.
|
|
1646
|
-
:
|
|
1647
|
-
|
|
1648
|
-
|
|
2090
|
+
:where(.list-view) :where(th) {
|
|
2091
|
+
height: var(--clio-list-view-header-height);
|
|
2092
|
+
padding: var(--clio-list-view-header-padding);
|
|
2093
|
+
background: var(--clio-list-view-header-bg);
|
|
2094
|
+
font-weight: normal;
|
|
2095
|
+
line-height: 14px;
|
|
2096
|
+
text-align: left;
|
|
2097
|
+
vertical-align: top;
|
|
2098
|
+
white-space: nowrap;
|
|
1649
2099
|
}
|
|
1650
2100
|
|
|
1651
|
-
:where(.
|
|
1652
|
-
:
|
|
1653
|
-
|
|
2101
|
+
:where(.list-view) :where(th[aria-sort]:not([aria-sort="none"])) {
|
|
2102
|
+
background: var(--clio-list-view-sorted-header-bg);
|
|
2103
|
+
text-decoration: var(--clio-list-view-sorted-decoration);
|
|
2104
|
+
text-underline-offset: 2px;
|
|
1654
2105
|
}
|
|
1655
2106
|
|
|
1656
|
-
:where(.
|
|
1657
|
-
:
|
|
1658
|
-
|
|
2107
|
+
:where(.list-view) :where(td) {
|
|
2108
|
+
height: var(--clio-list-view-row);
|
|
2109
|
+
padding: 0 4px;
|
|
2110
|
+
vertical-align: middle;
|
|
2111
|
+
white-space: nowrap;
|
|
1659
2112
|
}
|
|
1660
2113
|
|
|
1661
|
-
:where(.
|
|
1662
|
-
:
|
|
1663
|
-
min-width: var(--clio-scrollbar-size);
|
|
1664
|
-
min-height: var(--clio-scrollbar-size);
|
|
1665
|
-
border: var(--clio-scrollbar-thumb-border);
|
|
1666
|
-
background: var(--clio-scrollbar-thumb-bg);
|
|
1667
|
-
box-shadow: var(--clio-scrollbar-thumb-shadow);
|
|
2114
|
+
:where(.list-view) :where(td.sorted) {
|
|
2115
|
+
background: var(--clio-list-view-sorted-bg);
|
|
1668
2116
|
}
|
|
1669
2117
|
|
|
1670
|
-
:where(.
|
|
1671
|
-
:
|
|
1672
|
-
|
|
1673
|
-
box-shadow: var(--clio-scrollbar-thumb-shadow-horizontal, var(--clio-scrollbar-thumb-shadow));
|
|
2118
|
+
:where(.list-view) :where(.sort-direction) {
|
|
2119
|
+
width: var(--clio-list-view-sort-width);
|
|
2120
|
+
padding: 0;
|
|
1674
2121
|
}
|
|
1675
2122
|
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
2123
|
+
/* ---- Slider ------------------------------------------------------------------
|
|
2124
|
+
<input type="range">, the Appearance slider (Mac OS 8 HIG: "Sliders and Tick
|
|
2125
|
+
Marks"). Add class "ticks" and --clio-slider-tick-count for tick marks under
|
|
2126
|
+
the track. System 6 and System 7 had no slider in the Toolbox; System 7.5's
|
|
2127
|
+
control panels drew their own (see the System 7 layer). */
|
|
2128
|
+
:where(input[type="range"]) {
|
|
2129
|
+
box-sizing: border-box;
|
|
2130
|
+
height: var(--clio-slider-height);
|
|
2131
|
+
margin: 0;
|
|
2132
|
+
/* Chrome centres the track in the content box: the padding puts it
|
|
2133
|
+
--clio-slider-track-top below the thumb's top. */
|
|
2134
|
+
padding: 0 0 calc(var(--clio-slider-height) - var(--clio-slider-track-height) - 2 * var(--clio-slider-track-top));
|
|
2135
|
+
background: transparent;
|
|
2136
|
+
appearance: none;
|
|
2137
|
+
-webkit-appearance: none;
|
|
2138
|
+
cursor: var(--clio-cursor-arrow);
|
|
1687
2139
|
}
|
|
1688
2140
|
|
|
1689
|
-
:where(
|
|
1690
|
-
:
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
background
|
|
2141
|
+
:where(input[type="range"].ticks) {
|
|
2142
|
+
/* A whole number of pixels: each engine rounds a fractional period its own way. */
|
|
2143
|
+
--clio-slider-tick-spacing: round((100% - var(--clio-slider-tick-run)) / (var(--clio-slider-tick-count) - 1), 1px);
|
|
2144
|
+
height: calc(var(--clio-slider-height) + var(--clio-slider-tick-gap) + 4px);
|
|
2145
|
+
background:
|
|
2146
|
+
repeating-linear-gradient(to right, var(--clio-slider-tick-light) 0 1px, var(--clio-slider-tick-ink) 1px 2px, var(--clio-slider-tick-shade) 2px 3px, transparent 3px var(--clio-slider-tick-spacing)) var(--clio-slider-tick-offset) 100% / 100% 3px no-repeat,
|
|
2147
|
+
repeating-linear-gradient(to right, var(--clio-slider-tick-light) 0 2px, transparent 2px var(--clio-slider-tick-spacing)) var(--clio-slider-tick-offset) calc(100% - 3px) / 100% 1px no-repeat;
|
|
1694
2148
|
}
|
|
1695
2149
|
|
|
1696
|
-
:where(
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
border-
|
|
1700
|
-
|
|
2150
|
+
:where(input[type="range"])::-webkit-slider-runnable-track {
|
|
2151
|
+
box-sizing: border-box;
|
|
2152
|
+
height: var(--clio-slider-track-height);
|
|
2153
|
+
border-style: solid;
|
|
2154
|
+
border-width: var(--clio-slider-track-slice);
|
|
2155
|
+
border-color: transparent;
|
|
2156
|
+
border-image: var(--clio-art-slider-track) var(--clio-slider-track-slice-n) fill / var(--clio-slider-track-slice) stretch;
|
|
1701
2157
|
}
|
|
1702
2158
|
|
|
1703
|
-
:where(
|
|
1704
|
-
:
|
|
1705
|
-
|
|
1706
|
-
border-
|
|
1707
|
-
|
|
2159
|
+
:where(input[type="range"])::-webkit-slider-thumb {
|
|
2160
|
+
width: var(--clio-slider-thumb-width);
|
|
2161
|
+
height: var(--clio-slider-thumb-height);
|
|
2162
|
+
/* the thumb sits in the track's content box, inside the border-image slice */
|
|
2163
|
+
margin-top: calc(-1 * (var(--clio-slider-track-top) + var(--clio-slider-track-slice)));
|
|
2164
|
+
border: 0;
|
|
2165
|
+
background: var(--clio-art-slider-thumb) 0 0 / 100% 100% no-repeat;
|
|
2166
|
+
appearance: none;
|
|
2167
|
+
-webkit-appearance: none;
|
|
1708
2168
|
}
|
|
1709
2169
|
|
|
1710
|
-
:
|
|
1711
|
-
:
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
2170
|
+
/* Firefox: the same track and thumb through its own parts. Its thumb travels
|
|
2171
|
+
the whole content box: the padding keeps it inside the track's ends, as
|
|
2172
|
+
Chrome's and the Mac's (Mouse control panel at both ends), and the track
|
|
2173
|
+
reaches back over the padding. */
|
|
2174
|
+
@supports selector(::-moz-range-thumb) {
|
|
2175
|
+
:where(input[type="range"]) {
|
|
2176
|
+
padding-inline: var(--clio-slider-track-slice);
|
|
2177
|
+
}
|
|
1715
2178
|
}
|
|
1716
2179
|
|
|
1717
|
-
:where(
|
|
1718
|
-
:
|
|
1719
|
-
background-image: var(--clio-scrollbar-up-on);
|
|
2180
|
+
:where(input[type="range"])::-moz-range-track {
|
|
2181
|
+
margin-inline: calc(-1 * var(--clio-slider-track-slice));
|
|
1720
2182
|
}
|
|
1721
2183
|
|
|
1722
|
-
:where(
|
|
1723
|
-
|
|
1724
|
-
|
|
2184
|
+
:where(input[type="range"])::-moz-range-track {
|
|
2185
|
+
box-sizing: border-box;
|
|
2186
|
+
height: var(--clio-slider-track-height);
|
|
2187
|
+
border-style: solid;
|
|
2188
|
+
border-width: var(--clio-slider-track-slice);
|
|
2189
|
+
border-color: transparent;
|
|
2190
|
+
border-image: var(--clio-art-slider-track) var(--clio-slider-track-slice-n) fill / var(--clio-slider-track-slice) stretch;
|
|
2191
|
+
}
|
|
2192
|
+
|
|
2193
|
+
:where(input[type="range"])::-moz-range-thumb {
|
|
2194
|
+
box-sizing: border-box;
|
|
2195
|
+
width: var(--clio-slider-thumb-width);
|
|
2196
|
+
height: var(--clio-slider-thumb-height);
|
|
2197
|
+
border: 0;
|
|
2198
|
+
border-radius: 0;
|
|
2199
|
+
background: var(--clio-art-slider-thumb) 0 0 / 100% 100% no-repeat;
|
|
2200
|
+
/* Firefox centres the thumb in the content box (its top lands half a pixel
|
|
2201
|
+
above, then on the pixel below); this brings its top to the content box's. */
|
|
2202
|
+
translate: 0 round(down, (var(--clio-slider-thumb-height) - var(--clio-slider-track-height) - 2 * var(--clio-slider-track-top)) / 2, 1px);
|
|
2203
|
+
}
|
|
2204
|
+
|
|
2205
|
+
/* ---- Little arrows -----------------------------------------------------------
|
|
2206
|
+
The up/down pair beside a number or clock field (Mac OS 8 HIG: "Little
|
|
2207
|
+
Arrows"; System 7's control panels drew them too). Markup:
|
|
2208
|
+
<span class="little-arrows" role="group" aria-label="Cache size">
|
|
2209
|
+
<button class="up" aria-label="Increase"></button>
|
|
2210
|
+
<button class="down" aria-label="Decrease"></button></span>
|
|
2211
|
+
Add aria-disabled="true" (or disabled buttons) for the dimmed pair. */
|
|
2212
|
+
:where(.little-arrows) {
|
|
2213
|
+
display: inline-flex;
|
|
2214
|
+
flex-direction: column;
|
|
2215
|
+
width: var(--clio-little-arrows-width);
|
|
2216
|
+
height: var(--clio-little-arrows-height);
|
|
2217
|
+
background: var(--clio-art-little-arrows) 0 0 / 100% 100% no-repeat;
|
|
2218
|
+
vertical-align: middle;
|
|
2219
|
+
}
|
|
2220
|
+
|
|
2221
|
+
:where(.little-arrows) > :where(button) {
|
|
2222
|
+
flex: 1 1 50%;
|
|
2223
|
+
min-width: 0;
|
|
2224
|
+
min-height: 0;
|
|
2225
|
+
margin: 0;
|
|
2226
|
+
padding: 0;
|
|
2227
|
+
border: 0;
|
|
2228
|
+
border-image: none;
|
|
2229
|
+
background: transparent;
|
|
2230
|
+
box-shadow: none;
|
|
2231
|
+
appearance: none;
|
|
2232
|
+
-webkit-appearance: none;
|
|
2233
|
+
}
|
|
2234
|
+
|
|
2235
|
+
:where(.little-arrows) > :where(button)::before,
|
|
2236
|
+
:where(.little-arrows) > :where(button)::after {
|
|
2237
|
+
content: none;
|
|
2238
|
+
}
|
|
2239
|
+
|
|
2240
|
+
:where(.little-arrows):has(> .up:active:where(:not([data-clio-off]))) {
|
|
2241
|
+
background-image: var(--clio-art-little-arrows-up, var(--clio-art-little-arrows));
|
|
2242
|
+
}
|
|
2243
|
+
|
|
2244
|
+
:where(.little-arrows):has(> .down:active:where(:not([data-clio-off]))) {
|
|
2245
|
+
background-image: var(--clio-art-little-arrows-down, var(--clio-art-little-arrows));
|
|
2246
|
+
}
|
|
2247
|
+
|
|
2248
|
+
:where(.little-arrows):is([aria-disabled="true"], :has(> button:disabled)) {
|
|
2249
|
+
background-image: var(--clio-art-little-arrows-disabled, var(--clio-art-little-arrows));
|
|
2250
|
+
}
|
|
2251
|
+
|
|
2252
|
+
/* ---- Bevel button ------------------------------------------------------------
|
|
2253
|
+
A square bevelled button for an icon or a short label, which can act as a
|
|
2254
|
+
push button, a toggle (aria-pressed) or a menu (class "menu", aria-haspopup)
|
|
2255
|
+
(Mac OS 8 HIG: "Bevel Buttons"). Earlier eras had none and use push buttons'
|
|
2256
|
+
square cousin from Platinum. */
|
|
2257
|
+
:where(.bevel) {
|
|
2258
|
+
display: inline-flex;
|
|
2259
|
+
align-items: center;
|
|
2260
|
+
justify-content: center;
|
|
2261
|
+
box-sizing: border-box;
|
|
2262
|
+
min-width: var(--clio-bevel-min);
|
|
2263
|
+
min-height: var(--clio-bevel-min);
|
|
2264
|
+
margin: 0;
|
|
2265
|
+
padding: var(--clio-bevel-padding);
|
|
2266
|
+
border: var(--clio-bevel-slice) solid transparent;
|
|
2267
|
+
border-radius: 0;
|
|
2268
|
+
border-image: var(--clio-art-bevel) var(--clio-bevel-slice-n) fill / var(--clio-bevel-slice) stretch;
|
|
2269
|
+
background: transparent;
|
|
2270
|
+
box-shadow: none;
|
|
2271
|
+
color: var(--clio-ink);
|
|
2272
|
+
font: inherit;
|
|
2273
|
+
appearance: none;
|
|
2274
|
+
-webkit-appearance: none;
|
|
2275
|
+
cursor: var(--clio-cursor-arrow);
|
|
2276
|
+
}
|
|
2277
|
+
|
|
2278
|
+
:where(.bevel):is(:active:where(:not([data-clio-off])), .active, [aria-pressed="true"]):not(:disabled) {
|
|
2279
|
+
border-image-source: var(--clio-art-bevel-held);
|
|
2280
|
+
}
|
|
2281
|
+
|
|
2282
|
+
:where(.bevel) {
|
|
2283
|
+
position: relative;
|
|
2284
|
+
}
|
|
2285
|
+
|
|
2286
|
+
:where(.bevel)::before,
|
|
2287
|
+
:where(.bevel)::after {
|
|
2288
|
+
content: none;
|
|
2289
|
+
}
|
|
2290
|
+
|
|
2291
|
+
/* The menu arrow, over the face (border-image fill paints over backgrounds). */
|
|
2292
|
+
:where(.bevel.menu, .bevel[aria-haspopup])::after {
|
|
2293
|
+
content: "";
|
|
2294
|
+
position: absolute;
|
|
2295
|
+
right: calc(var(--clio-bevel-arrow-right) - var(--clio-bevel-slice));
|
|
2296
|
+
bottom: calc(var(--clio-bevel-arrow-bottom) - var(--clio-bevel-slice));
|
|
2297
|
+
width: var(--clio-bevel-arrow-width);
|
|
2298
|
+
height: var(--clio-bevel-arrow-height);
|
|
2299
|
+
background: var(--clio-art-bevel-menu-arrow) 0 0 / 100% 100% no-repeat;
|
|
2300
|
+
}
|
|
2301
|
+
|
|
2302
|
+
/* ---- Keyboard focus on lists ---------------------------------------------------
|
|
2303
|
+
Mac OS 8 draws the same ring round a list box that has the keyboard focus
|
|
2304
|
+
(Appearance, Desktop tab, the pattern list); text fields take it from
|
|
2305
|
+
--clio-field-focus-shadow. */
|
|
2306
|
+
:where(.listbox, [role="listbox"], select[multiple]):is(:focus-visible, :focus-within) {
|
|
2307
|
+
box-shadow: var(--clio-list-focus-shadow, var(--clio-list-shadow));
|
|
2308
|
+
}
|
|
2309
|
+
|
|
2310
|
+
/* ---- Chasing arrows ------------------------------------------------------------
|
|
2311
|
+
The asynchronous progress indicator (Mac OS 8 HIG: "Asynchronous Arrows").
|
|
2312
|
+
Markup: <span class="chasing-arrows" role="status" aria-label="Looking…">.
|
|
2313
|
+
It turns by stepping through the era's frames; with reduced motion it
|
|
2314
|
+
stands still on the first. Earlier eras had a spinning watch cursor
|
|
2315
|
+
instead, and use Platinum's arrows. */
|
|
2316
|
+
:where(.chasing-arrows) {
|
|
2317
|
+
position: relative;
|
|
2318
|
+
display: inline-block;
|
|
2319
|
+
width: 16px;
|
|
2320
|
+
height: 16px;
|
|
2321
|
+
overflow: hidden;
|
|
2322
|
+
vertical-align: middle;
|
|
2323
|
+
}
|
|
2324
|
+
|
|
2325
|
+
/* The frames side by side on a strip that moves a frame at a time (transform
|
|
2326
|
+
only, so the turning stays off the main thread). */
|
|
2327
|
+
:where(.chasing-arrows)::before {
|
|
2328
|
+
content: "";
|
|
2329
|
+
position: absolute;
|
|
2330
|
+
top: 0;
|
|
2331
|
+
left: 0;
|
|
2332
|
+
width: calc(16px * var(--clio-chasing-arrows-frames));
|
|
2333
|
+
height: 16px;
|
|
2334
|
+
background: var(--clio-art-chasing-arrows) 0 0 / 100% 100% no-repeat;
|
|
2335
|
+
animation: clio-chase calc(var(--clio-chasing-arrows-frames) * 0.12s) steps(var(--clio-chasing-arrows-frames)) infinite;
|
|
2336
|
+
}
|
|
2337
|
+
|
|
2338
|
+
@keyframes clio-chase {
|
|
2339
|
+
to { transform: translateX(calc(-16px * var(--clio-chasing-arrows-frames))); }
|
|
2340
|
+
}
|
|
2341
|
+
|
|
2342
|
+
@media (prefers-reduced-motion: reduce) {
|
|
2343
|
+
:where(.chasing-arrows)::before { animation: none; }
|
|
2344
|
+
}
|
|
2345
|
+
|
|
2346
|
+
/* ---- Help button -----------------------------------------------------------------
|
|
2347
|
+
The square button with the help icon in a dialog's lower left (Mac OS 8 HIG:
|
|
2348
|
+
"Help Button Layout"). <button class="help-button" aria-label="Help">.
|
|
2349
|
+
Earlier eras put a "Help" push button there instead, and use Platinum's. */
|
|
2350
|
+
:where(.help-button) {
|
|
2351
|
+
box-sizing: border-box;
|
|
2352
|
+
width: 21px;
|
|
2353
|
+
min-width: 0;
|
|
2354
|
+
height: 20px;
|
|
2355
|
+
min-height: 0;
|
|
2356
|
+
margin: 0;
|
|
2357
|
+
padding: 0;
|
|
2358
|
+
border: 0;
|
|
2359
|
+
border-radius: 0;
|
|
2360
|
+
border-image: none;
|
|
2361
|
+
background: var(--clio-art-help-button) 0 0 / 21px 20px no-repeat;
|
|
2362
|
+
box-shadow: none;
|
|
2363
|
+
color: transparent;
|
|
2364
|
+
font-size: 0;
|
|
2365
|
+
appearance: none;
|
|
2366
|
+
-webkit-appearance: none;
|
|
2367
|
+
cursor: var(--clio-cursor-arrow);
|
|
2368
|
+
}
|
|
2369
|
+
|
|
2370
|
+
:where(.help-button)::before,
|
|
2371
|
+
:where(.help-button)::after {
|
|
2372
|
+
content: none;
|
|
2373
|
+
}
|
|
2374
|
+
|
|
2375
|
+
/* ---- Image well ---------------------------------------------------------------------
|
|
2376
|
+
A sunken well that holds a picture or an icon (Mac OS 8 HIG: "Image Wells"),
|
|
2377
|
+
drawn like the era's field frame round a white face (inferred: no image
|
|
2378
|
+
well was on the captured screens). <div class="image-well"><img …></div> */
|
|
2379
|
+
:where(.image-well) {
|
|
2380
|
+
display: inline-flex;
|
|
2381
|
+
align-items: center;
|
|
2382
|
+
justify-content: center;
|
|
2383
|
+
box-sizing: border-box;
|
|
2384
|
+
border: var(--clio-field-border);
|
|
2385
|
+
background: var(--clio-image-well-bg);
|
|
2386
|
+
box-shadow: var(--clio-field-shadow);
|
|
2387
|
+
}
|
|
2388
|
+
|
|
2389
|
+
/* ---- Group boxes: secondary, and titled by a check box ---------------------------
|
|
2390
|
+
<fieldset class="secondary"> is the lighter group for a subordinate set
|
|
2391
|
+
(Mac OS 8 HIG: "Group Boxes"). A check box or pop-up menu as the title goes
|
|
2392
|
+
in the legend: <legend><label><input type="checkbox"> Use a server</label></legend>.
|
|
2393
|
+
Before Mac OS 8 every group box is the one kind. */
|
|
2394
|
+
:where(fieldset > legend) > :where(label) {
|
|
2395
|
+
display: inline-flex;
|
|
2396
|
+
align-items: center;
|
|
2397
|
+
gap: 4px;
|
|
2398
|
+
}
|
|
2399
|
+
|
|
2400
|
+
/* ---- Utility window ------------------------------------------------------------------
|
|
2401
|
+
A floating palette (Mac OS 8 HIG: "Utility Windows"; HIG 1992: floating
|
|
2402
|
+
windows): <div class="window utility"> with the usual .title-bar. Its title
|
|
2403
|
+
bar is thinner, its boxes smaller and its title in the small font. Before
|
|
2404
|
+
Mac OS 8 the eras draw it from the document window's parts (inferred). */
|
|
2405
|
+
:where(.window.utility) {
|
|
2406
|
+
--clio-titlebar-height: var(--clio-utility-titlebar-height);
|
|
2407
|
+
--clio-titlebar-row: var(--clio-utility-titlebar-row);
|
|
2408
|
+
--clio-box-size: var(--clio-utility-box-size);
|
|
2409
|
+
--clio-titlebar-slot: var(--clio-utility-slot);
|
|
2410
|
+
min-width: 80px;
|
|
2411
|
+
}
|
|
2412
|
+
|
|
2413
|
+
:where(.window.utility) > :where(.title-bar) > :is(.title, h1, h2, h3) {
|
|
2414
|
+
font-size: var(--clio-utility-title-size, var(--clio-title-font-size));
|
|
2415
|
+
}
|
|
2416
|
+
|
|
2417
|
+
/* ---- Help balloon ------------------------------------------------------------------
|
|
2418
|
+
Balloon Help (HIG 1992, ch. 11; Mac OS 8 and 9 kept it): a white balloon
|
|
2419
|
+
with a rounded outline, a 2px drop on the right and below, and a tail rising
|
|
2420
|
+
from its top edge near the right towards the object it describes.
|
|
2421
|
+
<div class="balloon" role="tooltip">…</div>. The tail's tip, under the
|
|
2422
|
+
pointer in the capture, is inferred. */
|
|
2423
|
+
:where(.balloon) {
|
|
2424
|
+
position: relative;
|
|
2425
|
+
box-sizing: border-box;
|
|
2426
|
+
width: max-content;
|
|
2427
|
+
max-width: 260px;
|
|
2428
|
+
margin-top: 14px;
|
|
2429
|
+
padding: 8px 12px 10px 10px;
|
|
2430
|
+
border: 10px solid transparent;
|
|
2431
|
+
border-image: var(--clio-art-balloon) 10 fill / 10px stretch;
|
|
2432
|
+
font-family: var(--clio-font-small);
|
|
2433
|
+
font-size: var(--clio-font-size-small);
|
|
2434
|
+
line-height: 13px;
|
|
2435
|
+
}
|
|
2436
|
+
|
|
2437
|
+
:where(.balloon) {
|
|
2438
|
+
padding: 0 2px 0 0;
|
|
2439
|
+
}
|
|
2440
|
+
|
|
2441
|
+
:where(.balloon)::before {
|
|
2442
|
+
content: "";
|
|
2443
|
+
position: absolute;
|
|
2444
|
+
top: -23px;
|
|
2445
|
+
right: -5px;
|
|
2446
|
+
width: 12px;
|
|
2447
|
+
height: 14px;
|
|
2448
|
+
background: var(--clio-art-balloon-tail) 0 0 / 12px 14px no-repeat;
|
|
2449
|
+
}
|
|
2450
|
+
|
|
2451
|
+
/* The rare controls (ROADMAP "Can wait" 10): the rounded-corner window, placards,
|
|
2452
|
+
split bars and the side-title utility window (its Platinum drawing is in
|
|
2453
|
+
90-platinum.css). Measured in Infinite Mac; see EVIDENCE.md. */
|
|
2454
|
+
|
|
2455
|
+
/* ---- Rounded-corner window (rDocProc, desk accessories) ----------------------
|
|
2456
|
+
<div class="rounded-window"> > <div class="rounded-title"> (> .close, h2) and
|
|
2457
|
+
any content. The Calculator draws the same window in System 6.0.8, 7.5.3,
|
|
2458
|
+
Mac OS 8.5 (Drawing Board) and 9.0: a 1px black frame whose corners step in
|
|
2459
|
+
5, 3, 2, 1, 1 pixels; a 17-row black title bar ruled below, the title in
|
|
2460
|
+
white centred in the space right of an 11px white close box at (9,4). In the
|
|
2461
|
+
background the bar turns white, the title black, and the close box goes. */
|
|
2462
|
+
:where(.rounded-window) {
|
|
2463
|
+
--clio-rounded-bg: #ffffff;
|
|
2464
|
+
position: relative;
|
|
2465
|
+
display: flex;
|
|
2466
|
+
flex-direction: column;
|
|
2467
|
+
box-sizing: border-box;
|
|
2468
|
+
min-width: 60px;
|
|
2469
|
+
border: 1px solid #000000;
|
|
2470
|
+
background: var(--clio-rounded-bg);
|
|
2471
|
+
-webkit-mask:
|
|
2472
|
+
var(--clio-art-rdoc-mask-tl) left top / 6px 6px no-repeat,
|
|
2473
|
+
var(--clio-art-rdoc-mask-tr) right top / 6px 6px no-repeat,
|
|
2474
|
+
var(--clio-art-rdoc-mask-bl) left bottom / 6px 6px no-repeat,
|
|
2475
|
+
var(--clio-art-rdoc-mask-br) right bottom / 6px 6px no-repeat,
|
|
2476
|
+
linear-gradient(#000000, #000000) 0 6px / 100% calc(100% - 12px) no-repeat,
|
|
2477
|
+
linear-gradient(#000000, #000000) 6px 0 / calc(100% - 12px) 100% no-repeat;
|
|
2478
|
+
mask:
|
|
2479
|
+
var(--clio-art-rdoc-mask-tl) left top / 6px 6px no-repeat,
|
|
2480
|
+
var(--clio-art-rdoc-mask-tr) right top / 6px 6px no-repeat,
|
|
2481
|
+
var(--clio-art-rdoc-mask-bl) left bottom / 6px 6px no-repeat,
|
|
2482
|
+
var(--clio-art-rdoc-mask-br) right bottom / 6px 6px no-repeat,
|
|
2483
|
+
linear-gradient(#000000, #000000) 0 6px / 100% calc(100% - 12px) no-repeat,
|
|
2484
|
+
linear-gradient(#000000, #000000) 6px 0 / calc(100% - 12px) 100% no-repeat;
|
|
2485
|
+
}
|
|
2486
|
+
|
|
2487
|
+
/* The frame's curve inside each corner, over the title bar and the content. */
|
|
2488
|
+
.rounded-window::after {
|
|
2489
|
+
content: "";
|
|
2490
|
+
position: absolute;
|
|
2491
|
+
inset: -1px;
|
|
2492
|
+
z-index: 1;
|
|
2493
|
+
background:
|
|
2494
|
+
var(--clio-art-rdoc-frame-tl) left top / 6px 6px no-repeat,
|
|
2495
|
+
var(--clio-art-rdoc-frame-tr) right top / 6px 6px no-repeat,
|
|
2496
|
+
var(--clio-art-rdoc-frame-bl) left bottom / 6px 6px no-repeat,
|
|
2497
|
+
var(--clio-art-rdoc-frame-br) right bottom / 6px 6px no-repeat;
|
|
2498
|
+
pointer-events: none;
|
|
2499
|
+
}
|
|
2500
|
+
|
|
2501
|
+
.rounded-window > .rounded-title {
|
|
2502
|
+
position: relative;
|
|
2503
|
+
display: flex;
|
|
2504
|
+
flex: none;
|
|
2505
|
+
justify-content: center;
|
|
2506
|
+
box-sizing: border-box;
|
|
2507
|
+
height: 18px;
|
|
2508
|
+
padding: 1px 1px 0 18px;
|
|
2509
|
+
border-bottom: 1px solid #000000;
|
|
2510
|
+
background: #000000;
|
|
2511
|
+
color: #ffffff;
|
|
2512
|
+
font-family: var(--clio-font-window-title, var(--clio-font-chrome));
|
|
2513
|
+
user-select: none;
|
|
2514
|
+
-webkit-user-select: none;
|
|
2515
|
+
}
|
|
2516
|
+
|
|
2517
|
+
.rounded-window > .rounded-title > :is(.title, h1, h2, h3) {
|
|
2518
|
+
margin: 0;
|
|
2519
|
+
overflow: hidden;
|
|
2520
|
+
color: inherit;
|
|
2521
|
+
font: inherit;
|
|
2522
|
+
font-size: var(--clio-title-font-size);
|
|
2523
|
+
font-stretch: var(--clio-font-stretch-title);
|
|
2524
|
+
font-weight: var(--clio-chrome-weight);
|
|
2525
|
+
line-height: 16px;
|
|
2526
|
+
text-overflow: ellipsis;
|
|
2527
|
+
white-space: nowrap;
|
|
2528
|
+
}
|
|
2529
|
+
|
|
2530
|
+
.rounded-window > .rounded-title > :is(button.close, .close) {
|
|
2531
|
+
position: absolute;
|
|
2532
|
+
top: 3px;
|
|
2533
|
+
left: 8px;
|
|
2534
|
+
box-sizing: border-box;
|
|
2535
|
+
width: 11px;
|
|
2536
|
+
min-width: 0;
|
|
2537
|
+
height: 11px;
|
|
2538
|
+
min-height: 0;
|
|
2539
|
+
margin: 0;
|
|
2540
|
+
padding: 0;
|
|
2541
|
+
border: 1px solid #ffffff;
|
|
2542
|
+
border-image: none;
|
|
2543
|
+
border-radius: 0;
|
|
2544
|
+
background: transparent;
|
|
2545
|
+
box-shadow: none;
|
|
2546
|
+
font-size: 0;
|
|
2547
|
+
appearance: none;
|
|
2548
|
+
-webkit-appearance: none;
|
|
2549
|
+
cursor: var(--clio-cursor-arrow);
|
|
2550
|
+
}
|
|
2551
|
+
|
|
2552
|
+
.rounded-window > .rounded-title > :is(button.close, .close)::before,
|
|
2553
|
+
.rounded-window > .rounded-title > :is(button.close, .close)::after {
|
|
2554
|
+
content: none;
|
|
2555
|
+
}
|
|
2556
|
+
|
|
2557
|
+
.rounded-window > .rounded-title > :is(button.close, .close):focus-visible {
|
|
2558
|
+
outline: 1px dotted #ffffff;
|
|
2559
|
+
outline-offset: 1px;
|
|
2560
|
+
}
|
|
2561
|
+
|
|
2562
|
+
.rounded-window.inactive > .rounded-title {
|
|
2563
|
+
background: #ffffff;
|
|
2564
|
+
color: #000000;
|
|
2565
|
+
}
|
|
2566
|
+
|
|
2567
|
+
.rounded-window.inactive > .rounded-title > :is(button.close, .close) {
|
|
2568
|
+
visibility: hidden;
|
|
2569
|
+
}
|
|
2570
|
+
|
|
2571
|
+
/* ---- Placard ------------------------------------------------------------------
|
|
2572
|
+
A framed strip for status at the foot of a window, beside the horizontal scroll
|
|
2573
|
+
bar (Mac OS 8 HIG: "Placards"). The control came with the Appearance Manager;
|
|
2574
|
+
before it, the eras draw a 1px frame on the paper (adapted). */
|
|
2575
|
+
:where(.placard) {
|
|
2576
|
+
display: inline-flex;
|
|
2577
|
+
align-items: center;
|
|
2578
|
+
box-sizing: border-box;
|
|
2579
|
+
min-height: 16px;
|
|
2580
|
+
margin: 0;
|
|
2581
|
+
padding: 0 4px;
|
|
2582
|
+
border: 1px solid var(--clio-ink);
|
|
2583
|
+
border-radius: 0;
|
|
2584
|
+
background: var(--clio-paper);
|
|
2585
|
+
box-shadow: none;
|
|
2586
|
+
color: var(--clio-ink);
|
|
2587
|
+
font-family: var(--clio-font-small);
|
|
2588
|
+
font-size: var(--clio-font-size-small, 9px);
|
|
2589
|
+
line-height: 12px;
|
|
2590
|
+
white-space: nowrap;
|
|
2591
|
+
}
|
|
2592
|
+
|
|
2593
|
+
/* ---- Split bar and split line ---------------------------------------------------
|
|
2594
|
+
<div class="split-view"> > .split-bar (above the vertical scroll bar), panes,
|
|
2595
|
+
and a .split-line between two panes. Apple's guidelines (1992) give the split
|
|
2596
|
+
bar as a control 5 pixels high by the width of the scroll bar, at its top, and
|
|
2597
|
+
the split line as two lines with a one-pixel space; BBEdit 5.1 in Mac OS 9 draws
|
|
2598
|
+
it 7 rows high (90-platinum.css). Moving it is the application's: clio.css only
|
|
2599
|
+
draws it. */
|
|
2600
|
+
:where(.split-view) {
|
|
2601
|
+
display: flex;
|
|
2602
|
+
flex-direction: column;
|
|
2603
|
+
min-height: 0;
|
|
2604
|
+
background: var(--clio-split-bg, var(--clio-pane-bg));
|
|
2605
|
+
}
|
|
2606
|
+
|
|
2607
|
+
:where(.split-view) > :where(.split-bar) {
|
|
2608
|
+
align-self: flex-end;
|
|
2609
|
+
}
|
|
2610
|
+
|
|
2611
|
+
:where(.split-bar) {
|
|
2612
|
+
flex: none;
|
|
2613
|
+
box-sizing: border-box;
|
|
2614
|
+
width: var(--clio-scrollbar-size);
|
|
2615
|
+
height: var(--clio-split-bar-height, 5px);
|
|
2616
|
+
background: var(--clio-split-ink, var(--clio-ink));
|
|
2617
|
+
cursor: row-resize;
|
|
2618
|
+
}
|
|
2619
|
+
|
|
2620
|
+
:where(.split-line) {
|
|
2621
|
+
--clio-split-line-1: 1px;
|
|
2622
|
+
flex: none;
|
|
2623
|
+
box-sizing: border-box;
|
|
2624
|
+
height: var(--clio-split-bar-height, 5px);
|
|
2625
|
+
margin: 0;
|
|
2626
|
+
border: 0;
|
|
2627
|
+
background:
|
|
2628
|
+
linear-gradient(var(--clio-split-ink, var(--clio-ink)), var(--clio-split-ink, var(--clio-ink))) right top / var(--clio-scrollbar-size) 100% no-repeat,
|
|
2629
|
+
linear-gradient(var(--clio-split-ink, var(--clio-ink)), var(--clio-split-ink, var(--clio-ink))) 0 var(--clio-split-line-1) / 100% 1px no-repeat,
|
|
2630
|
+
linear-gradient(var(--clio-split-ink, var(--clio-ink)), var(--clio-split-ink, var(--clio-ink))) 0 calc(var(--clio-split-line-1) + 2px) / 100% 1px no-repeat,
|
|
2631
|
+
var(--clio-split-bg, var(--clio-pane-bg));
|
|
2632
|
+
cursor: row-resize;
|
|
2633
|
+
}
|
|
2634
|
+
|
|
2635
|
+
/* Dialogs and alerts.
|
|
2636
|
+
.modal-dialog / .alert-box: the double-framed modal box (dBoxProc).
|
|
2637
|
+
.standard-dialog: the plain box with a drop shadow (altDBoxProc).
|
|
2638
|
+
.modeless-dialog: a movable dialog, which is a .window.
|
|
2639
|
+
Use them on <dialog> or on a <div role="dialog">. system.css's
|
|
2640
|
+
.outer-border / .inner-border wrappers are accepted and draw nothing extra. */
|
|
2641
|
+
:where(.modal-dialog, .alert-box, dialog.modal) {
|
|
2642
|
+
box-sizing: border-box;
|
|
2643
|
+
max-width: 100%;
|
|
2644
|
+
margin: 0;
|
|
2645
|
+
padding: var(--clio-modal-padding);
|
|
2646
|
+
border: var(--clio-modal-border);
|
|
2647
|
+
background: var(--clio-dialog-bg);
|
|
2648
|
+
box-shadow: var(--clio-modal-frame);
|
|
2649
|
+
color: var(--clio-ink);
|
|
2650
|
+
}
|
|
2651
|
+
|
|
2652
|
+
:where(.standard-dialog) {
|
|
2653
|
+
box-sizing: border-box;
|
|
2654
|
+
max-width: 100%;
|
|
2655
|
+
margin: 0;
|
|
2656
|
+
padding: 12px 14px;
|
|
2657
|
+
border: var(--clio-plain-dialog-border);
|
|
2658
|
+
background: var(--clio-dialog-bg);
|
|
2659
|
+
box-shadow: var(--clio-plain-dialog-shadow);
|
|
2660
|
+
color: var(--clio-ink);
|
|
2661
|
+
}
|
|
2662
|
+
|
|
2663
|
+
:where(dialog):is(.modal-dialog, .alert-box, .standard-dialog, .modal)::backdrop {
|
|
2664
|
+
background: transparent;
|
|
2665
|
+
}
|
|
2666
|
+
|
|
2667
|
+
:where(.modal-dialog, .alert-box, .standard-dialog) :where(.outer-border, .inner-border) {
|
|
2668
|
+
padding: 0;
|
|
2669
|
+
border: 0;
|
|
2670
|
+
}
|
|
2671
|
+
|
|
2672
|
+
/* Alert layout: icon on the left, message, buttons bottom-right. */
|
|
2673
|
+
:where(.alert-box) {
|
|
2674
|
+
display: grid;
|
|
2675
|
+
grid-template-columns: auto 1fr;
|
|
2676
|
+
column-gap: 16px;
|
|
2677
|
+
row-gap: 12px;
|
|
2678
|
+
align-items: start;
|
|
2679
|
+
}
|
|
2680
|
+
|
|
2681
|
+
:where(.alert-box) > :where(.alert-icon) {
|
|
2682
|
+
grid-row: 1;
|
|
2683
|
+
width: 32px;
|
|
2684
|
+
height: 32px;
|
|
2685
|
+
}
|
|
2686
|
+
|
|
2687
|
+
:where(.alert-box) > :where(.alert-contents, .modal-contents, p) {
|
|
2688
|
+
grid-column: 2;
|
|
2689
|
+
margin: 0;
|
|
2690
|
+
}
|
|
2691
|
+
|
|
2692
|
+
:where(.alert-box) > :where(.alert-buttons, .dialog-buttons) {
|
|
2693
|
+
grid-column: 1 / -1;
|
|
2694
|
+
}
|
|
2695
|
+
|
|
2696
|
+
:where(.dialog-buttons, .alert-buttons) {
|
|
2697
|
+
display: flex;
|
|
2698
|
+
flex-wrap: wrap;
|
|
2699
|
+
justify-content: flex-end;
|
|
2700
|
+
gap: 12px;
|
|
2701
|
+
margin-top: 12px;
|
|
2702
|
+
}
|
|
2703
|
+
|
|
2704
|
+
/* An alert icon drawn here, not Apple's: a rounded speech box with "!". */
|
|
2705
|
+
:where(.alert-icon.caution, .alert-icon.note, .alert-icon.stop) {
|
|
2706
|
+
display: block;
|
|
2707
|
+
box-sizing: border-box;
|
|
2708
|
+
border: 2px solid var(--clio-ink);
|
|
2709
|
+
border-radius: 6px;
|
|
2710
|
+
background: var(--clio-paper);
|
|
2711
|
+
color: var(--clio-ink);
|
|
2712
|
+
font: 700 22px/28px var(--clio-font-display);
|
|
2713
|
+
text-align: center;
|
|
2714
|
+
}
|
|
2715
|
+
|
|
2716
|
+
:where(.alert-icon.caution)::before { content: "!"; }
|
|
2717
|
+
:where(.alert-icon.note)::before { content: "i"; }
|
|
2718
|
+
:where(.alert-icon.stop) { border-radius: 50%; }
|
|
2719
|
+
:where(.alert-icon.stop)::before { content: "\00D7"; }
|
|
2720
|
+
|
|
2721
|
+
/* Scroll bars, for scroll areas clio.css owns (.window-pane, .listbox,
|
|
2722
|
+
textarea, list-box selects) and for anything you mark with .clio-scroll.
|
|
2723
|
+
Add class="clio-scrollbars" to <html> to give every scroll area the era's
|
|
2724
|
+
scroll bar.
|
|
2725
|
+
|
|
2726
|
+
WebKit/Blink draw the full bar: two arrow boxes, the patterned lane and the
|
|
2727
|
+
scroll box. The scroll box is proportional to the content here (a browser
|
|
2728
|
+
limit), where System 6 drew a fixed 16px square. Firefox has no scroll bar
|
|
2729
|
+
parts, so it gets the era's colours through scrollbar-color. */
|
|
2730
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar,
|
|
2731
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar {
|
|
2732
|
+
width: var(--clio-scrollbar-size);
|
|
2733
|
+
height: var(--clio-scrollbar-size);
|
|
2734
|
+
background: var(--clio-paper);
|
|
2735
|
+
}
|
|
2736
|
+
|
|
2737
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb {
|
|
2738
|
+
width: var(--clio-scrollbar-size);
|
|
2739
|
+
height: var(--clio-scrollbar-size);
|
|
2740
|
+
background: var(--clio-paper);
|
|
2741
|
+
}
|
|
2742
|
+
|
|
2743
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track,
|
|
2744
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-track {
|
|
2745
|
+
background: var(--clio-scrollbar-track);
|
|
2746
|
+
box-shadow: var(--clio-scrollbar-track-shadow);
|
|
2747
|
+
}
|
|
2748
|
+
|
|
2749
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-track {
|
|
2750
|
+
background: var(--clio-scrollbar-track);
|
|
2751
|
+
box-shadow: var(--clio-scrollbar-track-shadow);
|
|
2752
|
+
}
|
|
2753
|
+
|
|
2754
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track:vertical,
|
|
2755
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-track:vertical {
|
|
2756
|
+
border-left: 1px solid var(--clio-ink);
|
|
2757
|
+
}
|
|
2758
|
+
|
|
2759
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-v > .clio-sb-track {
|
|
2760
|
+
border-left: 1px solid var(--clio-ink);
|
|
2761
|
+
}
|
|
2762
|
+
|
|
2763
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track:horizontal,
|
|
2764
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-track:horizontal {
|
|
2765
|
+
border-top: 1px solid var(--clio-ink);
|
|
2766
|
+
}
|
|
2767
|
+
|
|
2768
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-track {
|
|
2769
|
+
border-top: 1px solid var(--clio-ink);
|
|
2770
|
+
}
|
|
2771
|
+
|
|
2772
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-thumb,
|
|
2773
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-thumb {
|
|
2774
|
+
min-width: var(--clio-scrollbar-size);
|
|
2775
|
+
min-height: var(--clio-scrollbar-size);
|
|
2776
|
+
border: var(--clio-scrollbar-thumb-border);
|
|
2777
|
+
background: var(--clio-scrollbar-thumb-bg);
|
|
2778
|
+
box-shadow: var(--clio-scrollbar-thumb-shadow);
|
|
2779
|
+
}
|
|
2780
|
+
|
|
2781
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-thumb {
|
|
2782
|
+
min-width: var(--clio-scrollbar-size);
|
|
2783
|
+
min-height: var(--clio-scrollbar-size);
|
|
2784
|
+
border: var(--clio-scrollbar-thumb-border);
|
|
2785
|
+
background: var(--clio-scrollbar-thumb-bg);
|
|
2786
|
+
box-shadow: var(--clio-scrollbar-thumb-shadow);
|
|
2787
|
+
}
|
|
2788
|
+
|
|
2789
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-thumb:horizontal,
|
|
2790
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-thumb:horizontal {
|
|
2791
|
+
background: var(--clio-scrollbar-thumb-bg-horizontal, var(--clio-scrollbar-thumb-bg));
|
|
2792
|
+
box-shadow: var(--clio-scrollbar-thumb-shadow-horizontal, var(--clio-scrollbar-thumb-shadow));
|
|
2793
|
+
}
|
|
2794
|
+
|
|
2795
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-thumb {
|
|
2796
|
+
background: var(--clio-scrollbar-thumb-bg-horizontal, var(--clio-scrollbar-thumb-bg));
|
|
2797
|
+
box-shadow: var(--clio-scrollbar-thumb-shadow-horizontal, var(--clio-scrollbar-thumb-shadow));
|
|
2798
|
+
}
|
|
2799
|
+
|
|
2800
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:start:decrement,
|
|
2801
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:end:increment,
|
|
2802
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:start:decrement,
|
|
2803
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:end:increment {
|
|
2804
|
+
display: block;
|
|
2805
|
+
width: var(--clio-scrollbar-size);
|
|
2806
|
+
height: var(--clio-scrollbar-size);
|
|
2807
|
+
background-color: var(--clio-scrollbar-button-bg);
|
|
2808
|
+
background-position: center;
|
|
2809
|
+
background-repeat: no-repeat;
|
|
2810
|
+
box-shadow: var(--clio-scrollbar-button-shadow);
|
|
2811
|
+
}
|
|
2812
|
+
|
|
2813
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-button:not(.clio-sb-never).clio-sb-dec,
|
|
2814
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-button:not(.clio-sb-never).clio-sb-inc {
|
|
2815
|
+
display: block;
|
|
2816
|
+
width: var(--clio-scrollbar-size);
|
|
2817
|
+
height: var(--clio-scrollbar-size);
|
|
2818
|
+
background-color: var(--clio-scrollbar-button-bg);
|
|
2819
|
+
background-position: center;
|
|
2820
|
+
background-repeat: no-repeat;
|
|
2821
|
+
box-shadow: var(--clio-scrollbar-button-shadow);
|
|
2822
|
+
}
|
|
2823
|
+
|
|
2824
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:decrement,
|
|
2825
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:decrement {
|
|
2826
|
+
border-left: 1px solid var(--clio-ink);
|
|
2827
|
+
border-bottom: 1px solid var(--clio-ink);
|
|
2828
|
+
background-image: var(--clio-scrollbar-up), var(--clio-scrollbar-button-bevel);
|
|
2829
|
+
}
|
|
2830
|
+
|
|
2831
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-v > .clio-sb-button.clio-sb-dec {
|
|
2832
|
+
border-left: 1px solid var(--clio-ink);
|
|
2833
|
+
border-bottom: 1px solid var(--clio-ink);
|
|
2834
|
+
background-image: var(--clio-scrollbar-up), var(--clio-scrollbar-button-bevel);
|
|
2835
|
+
}
|
|
2836
|
+
|
|
2837
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:increment,
|
|
2838
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:increment {
|
|
2839
|
+
border-left: 1px solid var(--clio-ink);
|
|
2840
|
+
border-top: 1px solid var(--clio-ink);
|
|
2841
|
+
background-image: var(--clio-scrollbar-down), var(--clio-scrollbar-button-bevel);
|
|
2842
|
+
}
|
|
2843
|
+
|
|
2844
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-v > .clio-sb-button.clio-sb-inc {
|
|
2845
|
+
border-left: 1px solid var(--clio-ink);
|
|
2846
|
+
border-top: 1px solid var(--clio-ink);
|
|
2847
|
+
background-image: var(--clio-scrollbar-down), var(--clio-scrollbar-button-bevel);
|
|
2848
|
+
}
|
|
2849
|
+
|
|
2850
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:decrement,
|
|
2851
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:decrement {
|
|
2852
|
+
border-top: 1px solid var(--clio-ink);
|
|
2853
|
+
border-right: 1px solid var(--clio-ink);
|
|
2854
|
+
background-image: var(--clio-scrollbar-left), var(--clio-scrollbar-button-bevel);
|
|
2855
|
+
}
|
|
2856
|
+
|
|
2857
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-button.clio-sb-dec {
|
|
2858
|
+
border-top: 1px solid var(--clio-ink);
|
|
2859
|
+
border-right: 1px solid var(--clio-ink);
|
|
2860
|
+
background-image: var(--clio-scrollbar-left), var(--clio-scrollbar-button-bevel);
|
|
2861
|
+
}
|
|
2862
|
+
|
|
2863
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:increment,
|
|
2864
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:increment {
|
|
2865
|
+
border-top: 1px solid var(--clio-ink);
|
|
2866
|
+
border-left: 1px solid var(--clio-ink);
|
|
2867
|
+
background-image: var(--clio-scrollbar-right), var(--clio-scrollbar-button-bevel);
|
|
2868
|
+
}
|
|
2869
|
+
|
|
2870
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-button.clio-sb-inc {
|
|
2871
|
+
border-top: 1px solid var(--clio-ink);
|
|
2872
|
+
border-left: 1px solid var(--clio-ink);
|
|
2873
|
+
background-image: var(--clio-scrollbar-right), var(--clio-scrollbar-button-bevel);
|
|
2874
|
+
}
|
|
2875
|
+
|
|
2876
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:decrement:active,
|
|
2877
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:decrement:active {
|
|
2878
|
+
background-image: var(--clio-scrollbar-up-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2879
|
+
}
|
|
2880
|
+
|
|
2881
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-v > .clio-sb-button.clio-sb-dec.clio-held {
|
|
2882
|
+
background-image: var(--clio-scrollbar-up-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2883
|
+
}
|
|
2884
|
+
|
|
2885
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:vertical:increment:active,
|
|
2886
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:vertical:increment:active {
|
|
2887
|
+
background-image: var(--clio-scrollbar-down-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2888
|
+
}
|
|
2889
|
+
|
|
2890
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-v > .clio-sb-button.clio-sb-inc.clio-held {
|
|
2891
|
+
background-image: var(--clio-scrollbar-down-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
1725
2892
|
}
|
|
1726
2893
|
|
|
1727
2894
|
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:decrement:active,
|
|
1728
2895
|
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:decrement:active {
|
|
1729
|
-
background-image: var(--clio-scrollbar-left-on);
|
|
2896
|
+
background-image: var(--clio-scrollbar-left-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2897
|
+
}
|
|
2898
|
+
|
|
2899
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-button.clio-sb-dec.clio-held {
|
|
2900
|
+
background-image: var(--clio-scrollbar-left-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2901
|
+
}
|
|
2902
|
+
|
|
2903
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal:increment:active,
|
|
2904
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal:increment:active {
|
|
2905
|
+
background-image: var(--clio-scrollbar-right-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2906
|
+
}
|
|
2907
|
+
|
|
2908
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-button.clio-sb-inc.clio-held {
|
|
2909
|
+
background-image: var(--clio-scrollbar-right-on), var(--clio-scrollbar-button-bevel-on, none);
|
|
2910
|
+
}
|
|
2911
|
+
|
|
2912
|
+
/* Only the single arrow box at each end, as on the Mac. */
|
|
2913
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:start:increment,
|
|
2914
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:end:decrement,
|
|
2915
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:start:increment,
|
|
2916
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-button:end:decrement {
|
|
2917
|
+
display: none;
|
|
2918
|
+
}
|
|
2919
|
+
|
|
2920
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-corner,
|
|
2921
|
+
:where(html.clio-scrollbars)::-webkit-scrollbar-corner {
|
|
2922
|
+
border-top: 1px solid var(--clio-ink);
|
|
2923
|
+
border-left: 1px solid var(--clio-ink);
|
|
2924
|
+
background: var(--clio-scrollbar-corner);
|
|
2925
|
+
}
|
|
2926
|
+
|
|
2927
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb-corner {
|
|
2928
|
+
border-top: 1px solid var(--clio-ink);
|
|
2929
|
+
border-left: 1px solid var(--clio-ink);
|
|
2930
|
+
background: var(--clio-scrollbar-corner);
|
|
2931
|
+
}
|
|
2932
|
+
|
|
2933
|
+
@supports not selector(::-webkit-scrollbar) {
|
|
2934
|
+
:where(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, html.clio-scrollbars, .clio-scrollbars *) {
|
|
2935
|
+
scrollbar-color: var(--clio-scrollbar-thumb-color, var(--clio-ink)) var(--clio-scrollbar-track-color, #c0c0c0);
|
|
2936
|
+
}
|
|
2937
|
+
}
|
|
2938
|
+
|
|
2939
|
+
/* Scroll bars drawn by clio.js (optional): the same parts as the browser's
|
|
2940
|
+
scroll bar, as elements, so the scroll box keeps its era's fixed length, an
|
|
2941
|
+
arrow repeats while held and a dragged box can leave an outline behind.
|
|
2942
|
+
The parts take every ::-webkit-scrollbar rule (the build copies each one onto
|
|
2943
|
+
.clio-sb-*); this file only places them. clio.js sets each bar's geometry. */
|
|
2944
|
+
.clio-sb-host {
|
|
2945
|
+
box-sizing: border-box; /* the bar comes out of the box, as the browser's does (everything in a clio.css window already is) */
|
|
2946
|
+
scrollbar-width: none;
|
|
2947
|
+
}
|
|
2948
|
+
|
|
2949
|
+
.clio-sb-host::-webkit-scrollbar {
|
|
2950
|
+
display: none;
|
|
2951
|
+
}
|
|
2952
|
+
|
|
2953
|
+
/* The bar sits in the scroller's padding, which grows by the bar's width. */
|
|
2954
|
+
.clio-sb-host.clio-sb-y {
|
|
2955
|
+
padding-right: calc(var(--clio-sb-pr, 0px) + var(--clio-scrollbar-size));
|
|
2956
|
+
}
|
|
2957
|
+
|
|
2958
|
+
.clio-sb-host.clio-sb-x {
|
|
2959
|
+
padding-bottom: calc(var(--clio-sb-pb, 0px) + var(--clio-scrollbar-size));
|
|
2960
|
+
}
|
|
2961
|
+
|
|
2962
|
+
/* A zero-size first child that sticks to the scroller's corner, so the bars
|
|
2963
|
+
inside it stay put while the content moves. */
|
|
2964
|
+
.clio-sb-anchor {
|
|
2965
|
+
position: sticky;
|
|
2966
|
+
top: var(--clio-sb-pt, 0px);
|
|
2967
|
+
left: var(--clio-sb-pl, 0px);
|
|
2968
|
+
z-index: 2;
|
|
2969
|
+
display: block;
|
|
2970
|
+
width: 0;
|
|
2971
|
+
height: 0;
|
|
2972
|
+
margin: 0;
|
|
2973
|
+
padding: 0;
|
|
2974
|
+
border: 0;
|
|
2975
|
+
float: none;
|
|
2976
|
+
}
|
|
2977
|
+
|
|
2978
|
+
.clio-sb-anchor > :is(.clio-sb, .clio-sb-corner) {
|
|
2979
|
+
position: absolute;
|
|
2980
|
+
box-sizing: border-box;
|
|
2981
|
+
overflow: hidden;
|
|
2982
|
+
user-select: none;
|
|
2983
|
+
-webkit-user-select: none;
|
|
2984
|
+
touch-action: none;
|
|
2985
|
+
}
|
|
2986
|
+
|
|
2987
|
+
.clio-sb-anchor > .clio-sb > * {
|
|
2988
|
+
position: absolute;
|
|
2989
|
+
box-sizing: border-box;
|
|
2990
|
+
margin: 0;
|
|
2991
|
+
}
|
|
2992
|
+
|
|
2993
|
+
.clio-sb-anchor > .clio-sb-v > .clio-sb-dec { top: 0; left: 0; }
|
|
2994
|
+
.clio-sb-anchor > .clio-sb-v > .clio-sb-inc { bottom: 0; left: 0; }
|
|
2995
|
+
.clio-sb-anchor > .clio-sb-v > .clio-sb-track { top: var(--clio-scrollbar-size); bottom: var(--clio-scrollbar-size); left: 0; right: 0; }
|
|
2996
|
+
.clio-sb-anchor > .clio-sb-v > .clio-sb-thumb { top: var(--clio-scrollbar-size); left: var(--clio-scrollbar-thumb-inset, 0px); right: 0; min-width: 0; } /* the bar's min-width is the box's length */
|
|
2997
|
+
.clio-sb-anchor > .clio-sb-h > .clio-sb-dec { left: 0; top: 0; }
|
|
2998
|
+
.clio-sb-anchor > .clio-sb-h > .clio-sb-inc { right: 0; top: 0; }
|
|
2999
|
+
.clio-sb-anchor > .clio-sb-h > .clio-sb-track { left: var(--clio-scrollbar-size); right: var(--clio-scrollbar-size); top: 0; bottom: 0; }
|
|
3000
|
+
.clio-sb-anchor > .clio-sb-h > .clio-sb-thumb { left: var(--clio-scrollbar-size); top: var(--clio-scrollbar-thumb-inset, 0px); bottom: 0; min-height: 0; }
|
|
3001
|
+
|
|
3002
|
+
/* Smart Scrolling (Mac OS 8/9, Appearance > Options): both arrows at the far
|
|
3003
|
+
end, the up or left arrow first. */
|
|
3004
|
+
.clio-sb-anchor > .clio-sb-v.clio-sb-smart > .clio-sb-dec { top: auto; bottom: var(--clio-scrollbar-size); }
|
|
3005
|
+
.clio-sb-anchor > .clio-sb-v.clio-sb-smart > .clio-sb-track { top: 0; bottom: calc(2 * var(--clio-scrollbar-size)); }
|
|
3006
|
+
.clio-sb-anchor > .clio-sb-v.clio-sb-smart > .clio-sb-thumb { top: 0; }
|
|
3007
|
+
.clio-sb-anchor > .clio-sb-h.clio-sb-smart > .clio-sb-dec { left: auto; right: var(--clio-scrollbar-size); }
|
|
3008
|
+
.clio-sb-anchor > .clio-sb-h.clio-sb-smart > .clio-sb-track { left: 0; right: calc(2 * var(--clio-scrollbar-size)); }
|
|
3009
|
+
.clio-sb-anchor > .clio-sb-h.clio-sb-smart > .clio-sb-thumb { left: 0; }
|
|
3010
|
+
|
|
3011
|
+
/* QuickDraw kept a lane's pattern in step with the screen (System 6.0.8, System
|
|
3012
|
+
7.5.3): clio.js sets --clio-sb-px/-py on each bar to keep it in step with the
|
|
3013
|
+
page. A rule, not a token: the offsets belong to each bar. Eras whose tracks
|
|
3014
|
+
have their own rules (Drawing Board) place their layers themselves. */
|
|
3015
|
+
.clio-sb-anchor > .clio-sb > .clio-sb-track {
|
|
3016
|
+
background-position: var(--clio-sb-px, 0px) var(--clio-sb-py, 0px);
|
|
3017
|
+
}
|
|
3018
|
+
|
|
3019
|
+
/* The arrows lie over the box's ends and its shadow. */
|
|
3020
|
+
.clio-sb-anchor > .clio-sb > .clio-sb-button { z-index: 1; }
|
|
3021
|
+
|
|
3022
|
+
/* Mac OS 8/9: the lane's top shading also falls just past the box's far end
|
|
3023
|
+
(--clio-scrollbar-thumb-after, drawn only by clio.js's bars). */
|
|
3024
|
+
.clio-sb-anchor > .clio-sb > .clio-sb-thumb::after {
|
|
3025
|
+
content: "";
|
|
3026
|
+
position: absolute;
|
|
3027
|
+
background: var(--clio-scrollbar-thumb-after, none);
|
|
3028
|
+
}
|
|
3029
|
+
|
|
3030
|
+
.clio-sb-anchor > .clio-sb-v > .clio-sb-thumb::after { top: calc(100% + 1px); left: 0; right: 0; height: 2px; } /* past the box's end line */
|
|
3031
|
+
.clio-sb-anchor > .clio-sb-h > .clio-sb-thumb::after { left: calc(100% + 1px); top: 0; bottom: 0; width: 2px; }
|
|
3032
|
+
|
|
3033
|
+
/* Nothing to scroll: the lane stays, the box goes (as on the Mac). */
|
|
3034
|
+
.clio-sb-anchor > .clio-sb.clio-sb-off > .clio-sb-thumb {
|
|
3035
|
+
display: none;
|
|
1730
3036
|
}
|
|
1731
3037
|
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
3038
|
+
/* The outline a dragged scroll box leaves in System 6 and 7: the box's frame,
|
|
3039
|
+
drawn over the lane, until the button comes up. */
|
|
3040
|
+
.clio-sb-anchor > .clio-sb > .clio-sb-ghost {
|
|
3041
|
+
z-index: 1;
|
|
3042
|
+
padding: 1px;
|
|
3043
|
+
background: var(--clio-scrollbar-ghost, #000000);
|
|
3044
|
+
background-position: calc(var(--clio-sb-px, 0px) + var(--clio-sb-gx, 0px)) calc(var(--clio-sb-py, 0px) + var(--clio-sb-gy, 0px)); /* in step with the lane's pattern */
|
|
3045
|
+
mix-blend-mode: var(--clio-scrollbar-ghost-blend, normal);
|
|
3046
|
+
mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
|
|
3047
|
+
pointer-events: none;
|
|
1735
3048
|
}
|
|
1736
3049
|
|
|
1737
|
-
/*
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
3050
|
+
/* clio.js outlines (a dragged window, zoom rects): QuickDraw's grey pattern,
|
|
3051
|
+
inverting what lies under it, in step with the screen. */
|
|
3052
|
+
.clio-outline {
|
|
3053
|
+
/* The outline is the frame of the window's structure region (QuickDraw's
|
|
3054
|
+
InsetRgn, rows and columns apart): the frame and its 1px shadow, which starts
|
|
3055
|
+
--clio-drag-outline-shadow-inset in from the top-right and bottom-left corners,
|
|
3056
|
+
so the region and the band step in there (all measured). e, k, w below. */
|
|
3057
|
+
--e: var(--clio-drag-outline-extra, 0px);
|
|
3058
|
+
--k: var(--clio-drag-outline-shadow-inset, 1px);
|
|
3059
|
+
--w: var(--clio-drag-outline-width, 1px);
|
|
3060
|
+
position: fixed;
|
|
3061
|
+
z-index: 2147483000;
|
|
3062
|
+
box-sizing: border-box;
|
|
3063
|
+
margin: 0;
|
|
3064
|
+
/* gray inverts the pixels whose x + y is odd on the screen (System 6.0.8, 7.5.3
|
|
3065
|
+
and Mac OS 9.0, measured); clio.js sets the position that keeps it to the page */
|
|
3066
|
+
background: repeating-conic-gradient(#ffffff 0 25%, transparent 0 50%) 0 0 / 2px 2px;
|
|
3067
|
+
mix-blend-mode: difference;
|
|
3068
|
+
/* the band (box less content box), the region's two notches taken out and the
|
|
3069
|
+
two pieces of the inset region they remove put back: every piece lies wholly
|
|
3070
|
+
in or out of what is below it, so xor does each */
|
|
3071
|
+
mask:
|
|
3072
|
+
linear-gradient(#000 0 0) left 0 bottom 0 / var(--k) var(--e) no-repeat border-box exclude,
|
|
3073
|
+
linear-gradient(#000 0 0) right 0 top 0 / var(--e) var(--k) no-repeat border-box exclude,
|
|
3074
|
+
linear-gradient(#000 0 0) left var(--w) bottom var(--w) / var(--k) var(--e) no-repeat border-box exclude,
|
|
3075
|
+
linear-gradient(#000 0 0) right var(--w) top var(--w) / var(--e) var(--k) no-repeat border-box exclude,
|
|
3076
|
+
linear-gradient(#000 0 0) content-box exclude,
|
|
3077
|
+
linear-gradient(#000 0 0) border-box;
|
|
3078
|
+
pointer-events: none;
|
|
3079
|
+
image-rendering: pixelated;
|
|
1743
3080
|
}
|
|
1744
3081
|
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
3082
|
+
/* clio.js: the move button of a movable window and the live region. Out of
|
|
3083
|
+
sight but in reach; with keyboard focus the title bar shows the ring. */
|
|
3084
|
+
:is(.clio-move, .clio-live) {
|
|
3085
|
+
/* !important: the title bar's own button rules (the close box's art and
|
|
3086
|
+
place) must not reach it */
|
|
3087
|
+
position: absolute !important;
|
|
3088
|
+
width: 1px !important;
|
|
3089
|
+
height: 1px !important;
|
|
3090
|
+
margin: -1px !important;
|
|
3091
|
+
padding: 0 !important;
|
|
3092
|
+
overflow: hidden !important;
|
|
3093
|
+
clip-path: inset(50%) !important;
|
|
3094
|
+
white-space: nowrap !important;
|
|
3095
|
+
border: 0 !important;
|
|
3096
|
+
background: none !important;
|
|
3097
|
+
box-shadow: none !important;
|
|
3098
|
+
}
|
|
3099
|
+
|
|
3100
|
+
.title-bar:has(> .clio-move:focus-visible) {
|
|
3101
|
+
outline: var(--clio-focus-outline);
|
|
3102
|
+
outline-offset: -1px;
|
|
1750
3103
|
}
|
|
1751
3104
|
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
3105
|
+
|
|
3106
|
+
/* clio.js: a movable window's title bar takes a finger's drag itself (on a
|
|
3107
|
+
touch screen the browser would otherwise pan the page and cancel the drag). */
|
|
3108
|
+
.clio-drag-bar {
|
|
3109
|
+
touch-action: none;
|
|
3110
|
+
}
|
|
3111
|
+
|
|
3112
|
+
/* ---- clio.js: the insertion point --------------------------------------------
|
|
3113
|
+
TextEdit inverted a 1px line for its caret, as tall as the line: white in a
|
|
3114
|
+
difference blend inverts what is under it the same way. The field's own caret
|
|
3115
|
+
is hidden only while clio.js draws this one. */
|
|
3116
|
+
.clio-caret {
|
|
3117
|
+
position: absolute;
|
|
3118
|
+
z-index: 2147483646;
|
|
3119
|
+
width: 1px;
|
|
3120
|
+
background: #ffffff;
|
|
3121
|
+
mix-blend-mode: difference;
|
|
3122
|
+
pointer-events: none;
|
|
3123
|
+
}
|
|
3124
|
+
|
|
3125
|
+
.clio-caret-off,
|
|
3126
|
+
.clio-caret[hidden] {
|
|
3127
|
+
visibility: hidden;
|
|
3128
|
+
}
|
|
3129
|
+
|
|
3130
|
+
.clio-caret-field {
|
|
3131
|
+
caret-color: transparent;
|
|
3132
|
+
}
|
|
3133
|
+
|
|
3134
|
+
/* Forced colours repaint the line and may drop the blend: the system's caret instead. */
|
|
3135
|
+
@media (forced-colors: active) {
|
|
3136
|
+
.clio-caret {
|
|
3137
|
+
display: none;
|
|
3138
|
+
}
|
|
3139
|
+
|
|
3140
|
+
.clio-caret-field {
|
|
3141
|
+
caret-color: auto;
|
|
1755
3142
|
}
|
|
1756
3143
|
}
|
|
1757
3144
|
|
|
@@ -1815,7 +3202,7 @@
|
|
|
1815
3202
|
border-radius: 0;
|
|
1816
3203
|
appearance: none;
|
|
1817
3204
|
-webkit-appearance: none;
|
|
1818
|
-
cursor:
|
|
3205
|
+
cursor: var(--clio-cursor-arrow);
|
|
1819
3206
|
}
|
|
1820
3207
|
|
|
1821
3208
|
/* Scroll arrows: 13px cells, sunken and hollow while there is nothing to scroll. */
|
|
@@ -1844,8 +3231,8 @@
|
|
|
1844
3231
|
background-image: var(--clio-strip-forward);
|
|
1845
3232
|
}
|
|
1846
3233
|
|
|
1847
|
-
:where(.control-strip) > .control-strip-scroll:not(:disabled):active,
|
|
1848
|
-
:where(.control-strip-module):not(:disabled):is(:active, [aria-expanded="true"]) {
|
|
3234
|
+
:where(.control-strip) > .control-strip-scroll:not(:disabled):active:where(:not([data-clio-off])),
|
|
3235
|
+
:where(.control-strip-module):not(:disabled):is(:active:where(:not([data-clio-off])), [aria-expanded="true"]) {
|
|
1849
3236
|
background-color: var(--clio-strip-pressed-bg);
|
|
1850
3237
|
box-shadow: var(--clio-strip-pressed-shadow);
|
|
1851
3238
|
}
|
|
@@ -1879,7 +3266,7 @@
|
|
|
1879
3266
|
color: var(--clio-ink);
|
|
1880
3267
|
appearance: none;
|
|
1881
3268
|
-webkit-appearance: none;
|
|
1882
|
-
cursor:
|
|
3269
|
+
cursor: var(--clio-cursor-arrow);
|
|
1883
3270
|
}
|
|
1884
3271
|
|
|
1885
3272
|
:where(.control-strip-module) > :is(svg, img, .sys-icon) {
|
|
@@ -1945,11 +3332,21 @@
|
|
|
1945
3332
|
(GUIdebook, Infinite Mac). P-numbers in comments are AI System 6's patch
|
|
1946
3333
|
ids; see EVIDENCE.md. */
|
|
1947
3334
|
:root {
|
|
3335
|
+
/* A raised edge: white along the top and left, #999 along the bottom and
|
|
3336
|
+
right, the two other corners left to the face (windows, pop-up menus). */
|
|
3337
|
+
--clio-p9-bevel:
|
|
3338
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
3339
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
3340
|
+
linear-gradient(#999999, #999999) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
3341
|
+
linear-gradient(#999999, #999999) 100% 1px / 1px calc(100% - 1px) no-repeat;
|
|
1948
3342
|
--clio-ink: #000000;
|
|
1949
3343
|
--clio-paper: #dddddd;
|
|
1950
3344
|
--clio-face: #dddddd;
|
|
1951
3345
|
--clio-disabled: #6f6f6f;
|
|
1952
3346
|
--clio-disabled-dither: none;
|
|
3347
|
+
--clio-popup-disabled-mask: none;
|
|
3348
|
+
--clio-caret-ticks: 48; /* Mac OS 9.0 General Controls' middle setting: about 795 ms (measured) */
|
|
3349
|
+
--clio-popup-disabled-fg: var(--clio-disabled);
|
|
1953
3350
|
/* Push button, disabled button and default ring: the real pixel frames
|
|
1954
3351
|
(tooling/frame-art.py: Mac OS 9.0 Appearance and GUIdebook's Mac OS 9.0). */
|
|
1955
3352
|
--clio-button-frame: var(--clio-art-frame-p9-button);
|
|
@@ -1969,10 +3366,44 @@
|
|
|
1969
3366
|
--clio-font-display: Charcoal, "Charcoal CY", "Clio Sans '97 Display", "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
1970
3367
|
--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;
|
|
1971
3368
|
--clio-font-button: Charcoal, "Charcoal CY", "Clio Sans '97 Exact", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
3369
|
+
/* List view (Finder, Mac OS 9.0): 21px bevelled headers, the sorted one sunk
|
|
3370
|
+
dark; the sorted column's rows #ddd, the others #eee, 19px rows. Drawn
|
|
3371
|
+
with background lines (List view rules), not tokens alone. */
|
|
3372
|
+
--clio-list-view-bg: #eeeeee;
|
|
3373
|
+
--clio-list-view-row: 19px;
|
|
3374
|
+
--clio-list-view-header-height: 21px;
|
|
3375
|
+
--clio-list-view-header-padding: 3px 4px 0;
|
|
3376
|
+
--clio-list-view-sorted-decoration: none;
|
|
3377
|
+
--clio-list-view-sorted-bg: #dddddd;
|
|
3378
|
+
--clio-list-view-sort-width: 15px;
|
|
3379
|
+
/* Separator (Mouse control panel, Mac OS 9.0): etched, #888 then white one
|
|
3380
|
+
row lower and one column further right. */
|
|
3381
|
+
--clio-separator-height: 2px;
|
|
3382
|
+
--clio-separator-bg: linear-gradient(#888888, #888888) 0 0 / calc(100% - 1px) 1px no-repeat, linear-gradient(#ffffff, #ffffff) 1px 1px / calc(100% - 1px) 1px no-repeat;
|
|
3383
|
+
/* Keyboard focus on a field or list: a 2px ring of the highlight colour's
|
|
3384
|
+
dark (#6666cc for Purple), its outer corners left out (Date & Time). */
|
|
3385
|
+
--clio-focus-ring-colour: #6666cc;
|
|
3386
|
+
--clio-focus-ring: 0 -1px 0 1px var(--clio-focus-ring-colour), 0 1px 0 1px var(--clio-focus-ring-colour), -1px 0 0 1px var(--clio-focus-ring-colour), 1px 0 0 1px var(--clio-focus-ring-colour);
|
|
3387
|
+
--clio-field-focus-shadow: var(--clio-focus-ring);
|
|
3388
|
+
--clio-field-focus-outline: none;
|
|
3389
|
+
--clio-list-focus-shadow: var(--clio-focus-ring);
|
|
3390
|
+
/* Little arrows (Date & Time, Mac OS 9.0): 13x23; dimmed while their field is
|
|
3391
|
+
not being edited. Held states were under the pointer and keep the normal. */
|
|
3392
|
+
--clio-little-arrows-width: 13px;
|
|
3393
|
+
--clio-little-arrows-height: 23px;
|
|
3394
|
+
--clio-art-little-arrows: url("art/platinum/little-arrows.png");
|
|
3395
|
+
--clio-art-little-arrows-up: url("art/platinum/little-arrows.png");
|
|
3396
|
+
--clio-art-little-arrows-down: url("art/platinum/little-arrows.png");
|
|
3397
|
+
--clio-art-little-arrows-disabled: url("art/platinum/little-arrows-disabled.png");
|
|
3398
|
+
/* Disclosure triangle: 13px with its shadow (Finder list view, Mac OS 9.0). */
|
|
3399
|
+
--clio-disclosure-size: 13px;
|
|
3400
|
+
--clio-art-disclosure: url("art/platinum/disclosure.png");
|
|
3401
|
+
--clio-art-disclosure-open: url("art/platinum/disclosure-open.png");
|
|
1972
3402
|
--clio-font-text: Geneva, "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
1973
3403
|
--clio-font-size: 12px;
|
|
1974
3404
|
--clio-font-smoothing: none;
|
|
1975
3405
|
--clio-text-smoothing: auto;
|
|
3406
|
+
--clio-text-smoothing-moz: auto;
|
|
1976
3407
|
--clio-font-small: var(--clio-font-text);
|
|
1977
3408
|
--clio-font-size-small: 10px;
|
|
1978
3409
|
--clio-chrome-weight: 700;
|
|
@@ -2083,7 +3514,6 @@
|
|
|
2083
3514
|
--clio-field-border: 1px solid #000000;
|
|
2084
3515
|
--clio-field-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff;
|
|
2085
3516
|
--clio-field-padding: 2px 3px;
|
|
2086
|
-
--clio-field-focus-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff;
|
|
2087
3517
|
|
|
2088
3518
|
/* Pop-up menus, measured from Mac OS 9.0 (Appearance tab, "Apple platinum"):
|
|
2089
3519
|
20px, black frame, #ddd face with a white top line and #aaa foot; a #aaa
|
|
@@ -2111,15 +3541,61 @@
|
|
|
2111
3541
|
linear-gradient(#aaaaaa, #aaaaaa) left 0 bottom 0 / calc(100% - 21px) 1px no-repeat;
|
|
2112
3542
|
|
|
2113
3543
|
/* Scroll bars (P16, P17, P27) */
|
|
2114
|
-
--clio-scrollbar-size:
|
|
3544
|
+
--clio-scrollbar-size: 15px;
|
|
3545
|
+
/* Mac OS 9.0 Finder (frames hig/platinum9/finder-*): a 15-row box between
|
|
3546
|
+
black lines, dragged live; the bar is its black line and 14px, the window's
|
|
3547
|
+
frame closing it. The arrow boxes' light and shade stop a pixel short of
|
|
3548
|
+
the far corners. */
|
|
3549
|
+
--clio-scrollbar-thumb-length: 17px;
|
|
3550
|
+
--clio-scrollbar-thumb-inset: 0px;
|
|
3551
|
+
--clio-scrollbar-thumb-overlap: 1px;
|
|
3552
|
+
--clio-scrollbar-thumb-after:
|
|
3553
|
+
linear-gradient(#cccccc, #cccccc) 100% 0 / 1px 2px no-repeat,
|
|
3554
|
+
linear-gradient(#bbbbbb, #bbbbbb) calc(100% - 1px) 1px / 1px 1px no-repeat,
|
|
3555
|
+
linear-gradient(#777777, #777777) 0 0 / 100% 1px no-repeat,
|
|
3556
|
+
linear-gradient(#777777, #777777) 0 0 / 1px 2px no-repeat,
|
|
3557
|
+
#888888;
|
|
3558
|
+
--clio-scrollbar-button-bevel: 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='M0 0h13v1H0zM0 1h1v12H0z'/%3E%3Cpath fill='%23bbb' d='M1 13h13v1H1zM13 1h1v12h-1z'/%3E%3C/svg%3E");
|
|
3559
|
+
/* held: #555 along the top and left, #999 along the bottom and right, the two
|
|
3560
|
+
other corners left the face's #777 (Mac OS 9.0 Finder, frame arrow-held) */
|
|
3561
|
+
--clio-scrollbar-button-bevel-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' shape-rendering='crispEdges'%3E%3Cpath fill='%23555' d='M0 0h13v1H0zM0 1h1v12H0z'/%3E%3Cpath fill='%23999' d='M1 13h13v1H1zM13 1h1v12h-1z'/%3E%3C/svg%3E");
|
|
3562
|
+
--clio-scrollbar-thumb-tracking: live;
|
|
3563
|
+
--clio-scrollbar-repeat-delay: 200ms; /* Mac OS 9.0 Finder: one step, then a pause of about 0.2 s */
|
|
3564
|
+
/* Mac OS 8 and 9 keep a clicked menu open (clio.js) */
|
|
3565
|
+
--clio-menu-sticky: 1;
|
|
3566
|
+
--clio-drag-outline-width: 2px; /* Mac OS 9.0: a 2px band */
|
|
3567
|
+
--clio-drag-outline-shadow-inset: 2px; /* the shadow starts 2px in from the corners */
|
|
3568
|
+
/* Zoom rects (Mac OS 9.0 opening Games, measured): 6 outlines in the 2px band at
|
|
3569
|
+
1.4^(k - 7) of the way, all on screen until the window draws */
|
|
3570
|
+
--clio-zoom-count: 6;
|
|
3571
|
+
--clio-zoom-steps: 7;
|
|
3572
|
+
--clio-zoom-ratio: 1.4;
|
|
3573
|
+
--clio-zoom-offset: 0;
|
|
3574
|
+
--clio-zoom-keep: 0;
|
|
2115
3575
|
--clio-scrollbar-track: #aaaaaa;
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
--clio-scrollbar-
|
|
3576
|
+
/* The lane: #777 and #888 along the top and left, #bbb and #ccc down the
|
|
3577
|
+
right, nothing along the bottom (frames finder-scroll-*). */
|
|
3578
|
+
--clio-scrollbar-track-shadow: inset -1px 0 #cccccc, inset 1px 1px #777777, inset -2px 0 #bbbbbb, inset 2px 2px #888888;
|
|
3579
|
+
/* The box: light and shade a pixel short of the far corners, a #eee corner;
|
|
3580
|
+
the grip rounds up and left, as QuickDraw's halving does. */
|
|
3581
|
+
--clio-scrollbar-thumb-bg: var(--clio-art-p-grip-v) 50% calc(50% - 0.5px) / 8px 8px no-repeat,
|
|
3582
|
+
linear-gradient(#eeeeee, #eeeeee) 0 0 / 1px 1px no-repeat,
|
|
3583
|
+
linear-gradient(#ccccff, #ccccff) 1px 0 / calc(100% - 2px) 1px no-repeat,
|
|
3584
|
+
linear-gradient(#ccccff, #ccccff) 0 1px / 1px calc(100% - 2px) no-repeat,
|
|
3585
|
+
linear-gradient(#6666cc, #6666cc) 100% 1px / 1px calc(100% - 1px) no-repeat,
|
|
3586
|
+
linear-gradient(#6666cc, #6666cc) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
3587
|
+
#9999ff;
|
|
3588
|
+
--clio-scrollbar-thumb-bg-horizontal: var(--clio-art-p-grip-h) calc(50% - 0.5px) 50% / 8px 8px no-repeat,
|
|
3589
|
+
linear-gradient(#eeeeee, #eeeeee) 0 0 / 1px 1px no-repeat,
|
|
3590
|
+
linear-gradient(#ccccff, #ccccff) 1px 0 / calc(100% - 2px) 1px no-repeat,
|
|
3591
|
+
linear-gradient(#ccccff, #ccccff) 0 1px / 1px calc(100% - 2px) no-repeat,
|
|
3592
|
+
linear-gradient(#6666cc, #6666cc) 100% 1px / 1px calc(100% - 1px) no-repeat,
|
|
3593
|
+
linear-gradient(#6666cc, #6666cc) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
3594
|
+
#9999ff;
|
|
2119
3595
|
--clio-scrollbar-thumb-border: 1px solid #000000;
|
|
2120
|
-
--clio-scrollbar-thumb-shadow:
|
|
3596
|
+
--clio-scrollbar-thumb-shadow: none;
|
|
2121
3597
|
--clio-scrollbar-button-bg: #dddddd;
|
|
2122
|
-
--clio-scrollbar-button-shadow:
|
|
3598
|
+
--clio-scrollbar-button-shadow: none;
|
|
2123
3599
|
--clio-scrollbar-up: var(--clio-art-p-up);
|
|
2124
3600
|
--clio-scrollbar-up-on: var(--clio-art-p-up);
|
|
2125
3601
|
--clio-scrollbar-down: var(--clio-art-p-down);
|
|
@@ -2235,7 +3711,8 @@
|
|
|
2235
3711
|
--clio-art-p9-submenu-on: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAALAQMAAABmnG7VAAAABlBMVEUAAAD///+l2Z/dAAAAAXRSTlMAQObYZgAAAB9JREFUeJxjaGA4wPCA4QPDD4Y/TH+YfjB9YHrAdAAAZSIJk3jnGdQAAAAASUVORK5CYII=");
|
|
2236
3712
|
--clio-art-p9-dropdown: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAKAQMAAABCAtZOAAAABlBMVEUAAAAAAAClZ7nPAAAAAXRSTlMAQObYZgAAABlJREFUeJxjEGDSYHJh+McAAv8YahgsGAQAHygDQTD2iPAAAAAASUVORK5CYII=");
|
|
2237
3713
|
--clio-art-p9-dropdown-off: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAKAQMAAABCAtZOAAAABlBMVEUAAACIiIhaeOqmAAAAAXRSTlMAQObYZgAAABlJREFUeJxjEGDSYHJh+McAAv8YahgsGAQAHygDQTD2iPAAAAAASUVORK5CYII=");
|
|
2238
|
-
--clio-art-p9-menucheck: url("data:image/png;base64,
|
|
3714
|
+
--clio-art-p9-menucheck: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAICAYAAADA+m62AAAATUlEQVR42o3MwQ2AIBAEwIkdaC2UYAsWZw2UIjXQCn4gIcSA+7ydPeYJuGFboAfH6lNB7I8nrg+UxnWqRehQxj7CWMsyQy35D1LLOEMvsWESqM0p+dQAAAAASUVORK5CYII="); /* 10x8 */
|
|
3715
|
+
--clio-art-p9-popup-open-arrows: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAASBAMAAABLIvhaAAAAGFBMVEUAAAAAAABERERVVVVmZmZ3d3eIiIj////aSdSVAAAAAXRSTlMAQObYZgAAAFdJREFUeJxVjtENgDAIRF8LC7iCE3QCB3YXk07iBiRGaKmS+3i54whlZ8yt26ByLKTOnMCWKJLYwq4gLlCw61OLUZAGb1DBXLHQ6RPNzai5+buwPkvkfAD7IAw5cOa/LwAAAABJRU5ErkJggg=="); /* 19x18 */
|
|
2239
3716
|
}
|
|
2240
3717
|
|
|
2241
3718
|
/* ---- Window ---------------------------------------------------------------- */
|
|
@@ -2243,10 +3720,7 @@
|
|
|
2243
3720
|
right and bottom (GUIdebook Appearance window, x=4 and x=width-5). */
|
|
2244
3721
|
:root .window:not(.inactive) {
|
|
2245
3722
|
background:
|
|
2246
|
-
|
|
2247
|
-
linear-gradient(#ffffff, #ffffff) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
2248
|
-
linear-gradient(#999999, #999999) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
2249
|
-
linear-gradient(#999999, #999999) 100% 1px / 1px calc(100% - 1px) no-repeat,
|
|
3723
|
+
var(--clio-p9-bevel),
|
|
2250
3724
|
linear-gradient(#999999, #999999) 3px 19px / 1px calc(100% - 22px) no-repeat,
|
|
2251
3725
|
linear-gradient(#ffffff, #ffffff) right 3px top 20px / 1px calc(100% - 23px) no-repeat,
|
|
2252
3726
|
linear-gradient(#ffffff, #ffffff) left 3px bottom 3px / calc(100% - 6px) 1px no-repeat,
|
|
@@ -2274,10 +3748,12 @@
|
|
|
2274
3748
|
/* Six ridges: white lines, and #777 lines one pixel to their right (the
|
|
2275
3749
|
ridge's shade), between the box slots (Mac OS 9.0, both ends measured). */
|
|
2276
3750
|
--clio-tb-ridges: calc(100% - var(--clio-tb-close) - var(--clio-tb-zoom) - var(--clio-tb-shade) - 1px);
|
|
3751
|
+
/* The ridges are 12px tiles over an opaque bar: a hard stop to transparent in a
|
|
3752
|
+
covering layer leaves WebKit's covering rows a hair translucent (±1 per channel). */
|
|
2277
3753
|
background:
|
|
2278
|
-
linear-gradient(to bottom, #
|
|
2279
|
-
repeating-linear-gradient(to bottom,
|
|
2280
|
-
|
|
3754
|
+
repeating-linear-gradient(to bottom, #ffffff 0 1px, transparent 1px 2px) var(--clio-tb-close) 1px / var(--clio-tb-ridges) 12px no-repeat,
|
|
3755
|
+
repeating-linear-gradient(to bottom, transparent 0 1px, #777777 1px 2px) calc(var(--clio-tb-close) + 1px) 1px / var(--clio-tb-ridges) 12px no-repeat,
|
|
3756
|
+
linear-gradient(to bottom, #cccccc 0 17px, #999999 17px 18px) 0 0 / 100% 18px no-repeat,
|
|
2281
3757
|
#cccccc;
|
|
2282
3758
|
}
|
|
2283
3759
|
|
|
@@ -2318,7 +3794,7 @@
|
|
|
2318
3794
|
0 1px 0 #ffffff;
|
|
2319
3795
|
}
|
|
2320
3796
|
|
|
2321
|
-
:root .title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse):is(:active, .active) {
|
|
3797
|
+
:root .title-bar > :is(button, .close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse):is(:active:where(:not([data-clio-off])), .active) {
|
|
2322
3798
|
background: linear-gradient(to bottom right, #444444, #bbbbbb);
|
|
2323
3799
|
box-shadow: -1px -1px 0 #888888, 1px 1px 0 #ffffff, inset -1px -1px 0 #999999;
|
|
2324
3800
|
}
|
|
@@ -2377,7 +3853,7 @@
|
|
|
2377
3853
|
box-shadow: var(--clio-button-shadow);
|
|
2378
3854
|
}
|
|
2379
3855
|
|
|
2380
|
-
:root :is(.default, .btn-default):not(:disabled, .disabled):is(:active, .active) {
|
|
3856
|
+
:root :is(.default, .btn-default):not(:disabled, .disabled):is(:active:where(:not([data-clio-off])), .active) {
|
|
2381
3857
|
box-shadow: var(--clio-button-active-shadow);
|
|
2382
3858
|
}
|
|
2383
3859
|
|
|
@@ -2397,7 +3873,7 @@
|
|
|
2397
3873
|
box-shadow: 0 0 0 1px #888888;
|
|
2398
3874
|
}
|
|
2399
3875
|
|
|
2400
|
-
: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
|
|
3876
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(:disabled, .disabled) {
|
|
2401
3877
|
background: transparent;
|
|
2402
3878
|
box-shadow: none;
|
|
2403
3879
|
border-image: var(--clio-button-frame-disabled) var(--clio-button-frame-slice) fill / calc(var(--clio-button-frame-slice) * 1px) stretch;
|
|
@@ -2427,24 +3903,24 @@
|
|
|
2427
3903
|
background: var(--clio-art-p9-radio-on) 0 0 / 12px 12px no-repeat;
|
|
2428
3904
|
}
|
|
2429
3905
|
|
|
2430
|
-
:root input[type="radio"]:not(:disabled):active {
|
|
3906
|
+
:root input[type="radio"]:not(:disabled):active:where(:not([data-clio-off])) {
|
|
2431
3907
|
background: var(--clio-art-p9-radio-pressed) 0 0 / 12px 12px no-repeat;
|
|
2432
3908
|
}
|
|
2433
3909
|
|
|
2434
3910
|
/* Held while on: not captured; the on ball stays (inferred). */
|
|
2435
|
-
:root input[type="radio"]:checked:not(:disabled):active {
|
|
3911
|
+
:root input[type="radio"]:checked:not(:disabled):active:where(:not([data-clio-off])) {
|
|
2436
3912
|
background: var(--clio-art-p9-radio-on) 0 0 / 12px 12px no-repeat;
|
|
2437
3913
|
}
|
|
2438
3914
|
|
|
2439
3915
|
/* Held while checked: the mark over the held box (inferred; only the empty
|
|
2440
3916
|
box was captured held). */
|
|
2441
|
-
:root input[type="checkbox"]:checked:not(:disabled):active {
|
|
3917
|
+
:root input[type="checkbox"]:checked:not(:disabled):active:where(:not([data-clio-off])) {
|
|
2442
3918
|
background:
|
|
2443
3919
|
var(--clio-art-p9-check) 0 0 / 10px 10px no-repeat padding-box,
|
|
2444
3920
|
var(--clio-art-p9-checkbox-pressed) -1px -1px / 12px 12px no-repeat;
|
|
2445
3921
|
}
|
|
2446
3922
|
|
|
2447
|
-
:root input[type="checkbox"]:not(:disabled):active {
|
|
3923
|
+
:root input[type="checkbox"]:not(:disabled):active:where(:not([data-clio-off])) {
|
|
2448
3924
|
border-color: transparent;
|
|
2449
3925
|
background: var(--clio-art-p9-checkbox-pressed) -1px -1px / 12px 12px no-repeat;
|
|
2450
3926
|
box-shadow: none;
|
|
@@ -2462,24 +3938,37 @@
|
|
|
2462
3938
|
|
|
2463
3939
|
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"])::before,
|
|
2464
3940
|
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked)::before {
|
|
2465
|
-
left:
|
|
2466
|
-
width:
|
|
3941
|
+
left: 8px; /* the art's first column is the glyph's (it used to start a column early) */
|
|
3942
|
+
width: 10px;
|
|
2467
3943
|
height: 8px;
|
|
2468
3944
|
margin-top: -4px;
|
|
2469
|
-
background: var(--clio-art-p-check) 0 0 /
|
|
3945
|
+
background: var(--clio-art-p-check) 0 0 / 10px 8px no-repeat;
|
|
2470
3946
|
}
|
|
2471
3947
|
|
|
2472
|
-
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active)::before,
|
|
2473
|
-
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active)::before {
|
|
3948
|
+
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active):where(:not([data-clio-blink]))::before,
|
|
3949
|
+
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active):where(:not([data-clio-blink]))::before {
|
|
2474
3950
|
filter: invert(1);
|
|
2475
3951
|
}
|
|
2476
3952
|
|
|
3953
|
+
/* The same check mark in an open pop-up menu drawn by the browser (base-select). */
|
|
3954
|
+
@supports (appearance: base-select) {
|
|
3955
|
+
:root select option::checkmark {
|
|
3956
|
+
left: 8px;
|
|
3957
|
+
width: 10px;
|
|
3958
|
+
background: var(--clio-art-p-check) 0 0 / 10px 8px no-repeat;
|
|
3959
|
+
}
|
|
3960
|
+
|
|
3961
|
+
:root select option:is(:hover, :focus-visible)::checkmark {
|
|
3962
|
+
filter: invert(1);
|
|
3963
|
+
}
|
|
3964
|
+
}
|
|
3965
|
+
|
|
2477
3966
|
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"]))::after,
|
|
2478
3967
|
:root :is(.menu, [role="menu"]) > li > [aria-haspopup="true"]::after {
|
|
2479
3968
|
background-image: var(--clio-art-p-submenu);
|
|
2480
3969
|
}
|
|
2481
3970
|
|
|
2482
|
-
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active)::after {
|
|
3971
|
+
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active):where(:not([data-clio-blink]))::after {
|
|
2483
3972
|
background-image: var(--clio-art-p-submenu-on);
|
|
2484
3973
|
}
|
|
2485
3974
|
|
|
@@ -2511,119 +4000,519 @@
|
|
|
2511
4000
|
line-height: 18px;
|
|
2512
4001
|
}
|
|
2513
4002
|
|
|
2514
|
-
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):not(:disabled):active {
|
|
2515
|
-
border-image-source: var(--clio-art-p-tab-pressed);
|
|
4003
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):not(:disabled):active:where(:not([data-clio-off])) {
|
|
4004
|
+
border-image-source: var(--clio-art-p-tab-pressed);
|
|
4005
|
+
background: transparent;
|
|
4006
|
+
color: #ffffff;
|
|
4007
|
+
}
|
|
4008
|
+
|
|
4009
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):is([aria-selected="true"], .active) {
|
|
4010
|
+
z-index: 1;
|
|
4011
|
+
padding-top: 0;
|
|
4012
|
+
border-image-source: var(--clio-art-p-tab-selected);
|
|
4013
|
+
background: transparent;
|
|
4014
|
+
color: #000000;
|
|
4015
|
+
}
|
|
4016
|
+
|
|
4017
|
+
:root :is([role="tabpanel"], .tab-panel) {
|
|
4018
|
+
border-top: 0;
|
|
4019
|
+
box-shadow: inset 1px 0 0 #ffffff, inset -1px -1px 0 #888888;
|
|
4020
|
+
}
|
|
4021
|
+
|
|
4022
|
+
/* ---- Scroll arrow art sits on the bevelled box ---------------------------- */
|
|
4023
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal {
|
|
4024
|
+
background-position: 0 1px, 0 0; /* the vertical boxes' art one pixel to the right, the horizontal one pixel down */
|
|
4025
|
+
}
|
|
4026
|
+
|
|
4027
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-button {
|
|
4028
|
+
background-position: 0 1px, 0 0; /* the vertical boxes' art one pixel to the right, the horizontal one pixel down */
|
|
4029
|
+
}
|
|
4030
|
+
|
|
4031
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button,
|
|
4032
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button {
|
|
4033
|
+
background-position: 1px 0, 0 0;
|
|
4034
|
+
background-size: 14px 14px, 100% 100%;
|
|
4035
|
+
}
|
|
4036
|
+
|
|
4037
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-button {
|
|
4038
|
+
background-position: 1px 0, 0 0;
|
|
4039
|
+
background-size: 14px 14px, 100% 100%;
|
|
4040
|
+
}
|
|
4041
|
+
|
|
4042
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:active,
|
|
4043
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button:active {
|
|
4044
|
+
/* Held (Mac OS 9.0 Finder, the down arrow held; frame arrow-held): a #777
|
|
4045
|
+
face in --clio-scrollbar-button-bevel-on's #555 and #999 bevel. */
|
|
4046
|
+
background-color: #777777;
|
|
4047
|
+
box-shadow: none;
|
|
4048
|
+
}
|
|
4049
|
+
|
|
4050
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-button.clio-held {
|
|
4051
|
+
/* Held (Mac OS 9.0 Finder, the down arrow held; frame arrow-held): a #777
|
|
4052
|
+
face in --clio-scrollbar-button-bevel-on's #555 and #999 bevel. */
|
|
4053
|
+
background-color: #777777;
|
|
4054
|
+
box-shadow: none;
|
|
4055
|
+
}
|
|
4056
|
+
|
|
4057
|
+
:root :is(fieldset) > legend {
|
|
4058
|
+
background: var(--clio-pane-bg);
|
|
4059
|
+
}
|
|
4060
|
+
|
|
4061
|
+
/* WebKit starts a fieldset's padding box below the whole legend (clientTop is the
|
|
4062
|
+
legend's height), so the dots would fill the band between the drawn top line and
|
|
4063
|
+
the legend's foot: the first layer covers that band with the pane in every engine. */
|
|
4064
|
+
:root fieldset {
|
|
4065
|
+
background:
|
|
4066
|
+
linear-gradient(var(--clio-pane-bg), var(--clio-pane-bg)) 1px 1px / calc(100% - 2px) calc(var(--clio-font-size) * 1.5) no-repeat border-box,
|
|
4067
|
+
linear-gradient(var(--clio-pane-bg), var(--clio-pane-bg)) 0 0 / 100% 100% no-repeat padding-box,
|
|
4068
|
+
var(--clio-art-p9-group-dots) 0 0 / 2px 2px fixed border-box;
|
|
4069
|
+
image-rendering: pixelated; /* keep the dots from blending into one grey */
|
|
4070
|
+
}
|
|
4071
|
+
|
|
4072
|
+
/* The title's gap opens 13px after the corner (General Controls, "Desktop"). */
|
|
4073
|
+
:root fieldset > legend {
|
|
4074
|
+
margin-left: 2px;
|
|
4075
|
+
}
|
|
4076
|
+
|
|
4077
|
+
/* Disabled pop-up menu: #888 frame, flat face, the #aaa divider and a grey
|
|
4078
|
+
arrow (Mac OS 9.0 Appearance, "Position Automatically"). Browsers also fade
|
|
4079
|
+
a disabled <select>; Mac OS did not. */
|
|
4080
|
+
:root select:disabled {
|
|
4081
|
+
border-color: #888888;
|
|
4082
|
+
background:
|
|
4083
|
+
var(--clio-art-p-dropdown-off) right 7px top 4px / 7px 10px no-repeat,
|
|
4084
|
+
linear-gradient(#aaaaaa, #aaaaaa) right 20px top 0 / 1px 100% no-repeat,
|
|
4085
|
+
#dddddd;
|
|
4086
|
+
background-clip: padding-box;
|
|
4087
|
+
box-shadow: none;
|
|
4088
|
+
color: #888888;
|
|
4089
|
+
opacity: 1;
|
|
4090
|
+
border-image-source: var(--clio-art-frame-p9-popup-disabled);
|
|
4091
|
+
}
|
|
4092
|
+
|
|
4093
|
+
/* The face stays inside the frame, so the rounded corners show what is behind. */
|
|
4094
|
+
:root select {
|
|
4095
|
+
background-clip: padding-box;
|
|
4096
|
+
}
|
|
4097
|
+
|
|
4098
|
+
/* Indeterminate progress (no value): Mac OS 9's stripes, one 16px period
|
|
4099
|
+
repeated (Finder copy window). Static: clio.css adds no motion. */
|
|
4100
|
+
:root progress:indeterminate,
|
|
4101
|
+
:root progress:indeterminate::-webkit-progress-bar {
|
|
4102
|
+
background: var(--clio-art-p9-progress-pole) 0 0 / 16px 10px repeat-x;
|
|
4103
|
+
}
|
|
4104
|
+
|
|
4105
|
+
:root .title-bar > :is(.title, h1, h2, h3)::after {
|
|
4106
|
+
content: "";
|
|
4107
|
+
position: absolute;
|
|
4108
|
+
top: 0;
|
|
4109
|
+
right: -1px;
|
|
4110
|
+
width: 1px;
|
|
4111
|
+
height: 12px;
|
|
4112
|
+
background: repeating-linear-gradient(to bottom, transparent 0 1px, #cccccc 1px 2px);
|
|
4113
|
+
}
|
|
4114
|
+
|
|
4115
|
+
:root .window.inactive > .title-bar > :is(.title, h1, h2, h3)::after,
|
|
4116
|
+
:root .inactive-title-bar > :is(.title, h1, h2, h3)::after {
|
|
4117
|
+
content: none;
|
|
4118
|
+
}
|
|
4119
|
+
|
|
4120
|
+
/* ---- Antialiasing as Mac OS blends it -------------------------------------
|
|
4121
|
+
Window titles and push button labels in their own colours on their own
|
|
4122
|
+
backgrounds take the exact palettes (src/00-fonts.css). */
|
|
4123
|
+
:root .title-bar > :is(.title, h1, h2, h3) {
|
|
4124
|
+
font-palette: --clio-aa-p9-title;
|
|
4125
|
+
}
|
|
4126
|
+
|
|
4127
|
+
:root :is(.window.inactive > .title-bar, .inactive-title-bar) > :is(.title, h1, h2, h3) {
|
|
4128
|
+
font-palette: --clio-aa-p9-title-inactive;
|
|
4129
|
+
}
|
|
4130
|
+
|
|
4131
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button) {
|
|
4132
|
+
font-family: var(--clio-font-button);
|
|
4133
|
+
font-palette: --clio-aa-p9-button;
|
|
4134
|
+
}
|
|
4135
|
+
|
|
4136
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):not(:disabled, .disabled):is(:active:where(:not([data-clio-off])), .active) {
|
|
4137
|
+
font-palette: --clio-aa-p9-button-held;
|
|
4138
|
+
}
|
|
4139
|
+
|
|
4140
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(:disabled, .disabled) {
|
|
4141
|
+
font-palette: --clio-aa-p9-button-disabled;
|
|
4142
|
+
}
|
|
4143
|
+
|
|
4144
|
+
/* ---- List view headers -----------------------------------------------------
|
|
4145
|
+
Measured row by row (Finder list view, Mac OS 9.0). A header: #666 above,
|
|
4146
|
+
white light along its top and left, #ccc, #888 shade and a #333 rule below;
|
|
4147
|
+
the #666 column on its left is the divider. The sorted header is sunk:
|
|
4148
|
+
#111 top and left, #444 right and below (#222 at the two odd corners), a
|
|
4149
|
+
#555 then #aaa inner bevel round #888. The sort-direction cell adds an #888
|
|
4150
|
+
shade on its right. */
|
|
4151
|
+
:root .list-view th {
|
|
4152
|
+
background:
|
|
4153
|
+
linear-gradient(#666666, #666666) 0 0 / 100% 1px no-repeat,
|
|
4154
|
+
linear-gradient(#666666, #666666) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
4155
|
+
linear-gradient(#555555, #555555) 0 100% / 1px 1px no-repeat,
|
|
4156
|
+
linear-gradient(#333333, #333333) 1px 100% / 100% 1px no-repeat,
|
|
4157
|
+
linear-gradient(#ffffff, #ffffff) 1px 1px / 100% 1px no-repeat,
|
|
4158
|
+
linear-gradient(#ffffff, #ffffff) 1px 1px / 1px calc(100% - 3px) no-repeat,
|
|
4159
|
+
linear-gradient(#888888, #888888) 2px calc(100% - 1px) / 100% 1px no-repeat,
|
|
4160
|
+
#cccccc;
|
|
4161
|
+
}
|
|
4162
|
+
|
|
4163
|
+
:root .list-view th[aria-sort]:not([aria-sort="none"]) {
|
|
4164
|
+
background:
|
|
4165
|
+
linear-gradient(#222222, #222222) 100% 0 / 1px 1px no-repeat,
|
|
4166
|
+
linear-gradient(#222222, #222222) 0 100% / 1px 1px no-repeat,
|
|
4167
|
+
linear-gradient(#111111, #111111) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
4168
|
+
linear-gradient(#111111, #111111) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
4169
|
+
linear-gradient(#444444, #444444) 100% 1px / 1px 100% no-repeat,
|
|
4170
|
+
linear-gradient(#444444, #444444) 1px 100% / 100% 1px no-repeat,
|
|
4171
|
+
linear-gradient(#777777, #777777) calc(100% - 1px) 1px / 1px 1px no-repeat,
|
|
4172
|
+
linear-gradient(#777777, #777777) 1px calc(100% - 1px) / 1px 1px no-repeat,
|
|
4173
|
+
linear-gradient(#555555, #555555) 1px 1px / calc(100% - 3px) 1px no-repeat,
|
|
4174
|
+
linear-gradient(#555555, #555555) 1px 1px / 1px calc(100% - 3px) no-repeat,
|
|
4175
|
+
linear-gradient(#aaaaaa, #aaaaaa) calc(100% - 1px) 2px / 1px calc(100% - 3px) no-repeat,
|
|
4176
|
+
linear-gradient(#aaaaaa, #aaaaaa) 2px calc(100% - 1px) / calc(100% - 3px) 1px no-repeat,
|
|
4177
|
+
#888888;
|
|
4178
|
+
}
|
|
4179
|
+
|
|
4180
|
+
:root .list-view th.sort-direction {
|
|
4181
|
+
background:
|
|
4182
|
+
linear-gradient(#888888, #888888) 100% 2px / 1px calc(100% - 3px) no-repeat,
|
|
4183
|
+
linear-gradient(#cccccc, #cccccc) 100% 1px / 1px 1px no-repeat,
|
|
4184
|
+
linear-gradient(#666666, #666666) 0 0 / 100% 1px no-repeat,
|
|
4185
|
+
linear-gradient(#666666, #666666) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
4186
|
+
linear-gradient(#555555, #555555) 0 100% / 1px 1px no-repeat,
|
|
4187
|
+
linear-gradient(#333333, #333333) 1px 100% / 100% 1px no-repeat,
|
|
4188
|
+
linear-gradient(#ffffff, #ffffff) 1px 1px / 100% 1px no-repeat,
|
|
4189
|
+
linear-gradient(#ffffff, #ffffff) 1px 1px / 1px calc(100% - 3px) no-repeat,
|
|
4190
|
+
linear-gradient(#888888, #888888) 2px calc(100% - 1px) / 100% 1px no-repeat,
|
|
4191
|
+
url("art/platinum/sort-direction.png") 4px 6px / 8px 7px no-repeat,
|
|
4192
|
+
#cccccc;
|
|
4193
|
+
}
|
|
4194
|
+
|
|
4195
|
+
: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):focus-visible {
|
|
4196
|
+
box-shadow: var(--clio-field-focus-shadow);
|
|
4197
|
+
}
|
|
4198
|
+
|
|
4199
|
+
/* Secondary group box (Sound, "Settings for selected device"): one #888 line,
|
|
4200
|
+
no light. */
|
|
4201
|
+
:root fieldset.secondary {
|
|
4202
|
+
border: 1px solid #888888;
|
|
4203
|
+
background: transparent;
|
|
4204
|
+
box-shadow: none;
|
|
4205
|
+
}
|
|
4206
|
+
|
|
4207
|
+
/* ---- Utility window (Application Switcher, Mac OS 9.0) --------------------------
|
|
4208
|
+
1px black outline and a 1px black drop; white light on the top and left,
|
|
4209
|
+
#999 shade on the right; a 13-row title bar of #ccc with a 3px dot pattern
|
|
4210
|
+
(white, #777 one down and right) in rows 3-10, 9x9 boxes, and a #999 rule
|
|
4211
|
+
under it. */
|
|
4212
|
+
:root .window.utility {
|
|
4213
|
+
--clio-utility-titlebar-height: 14px;
|
|
4214
|
+
--clio-utility-box-size: 10px;
|
|
4215
|
+
padding: 0;
|
|
4216
|
+
border: 1px solid #000000;
|
|
4217
|
+
background:
|
|
4218
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
4219
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px 100% no-repeat,
|
|
4220
|
+
linear-gradient(#999999, #999999) 100% 1px / 1px 100% no-repeat,
|
|
4221
|
+
#cccccc;
|
|
4222
|
+
box-shadow: none;
|
|
4223
|
+
isolation: isolate;
|
|
4224
|
+
}
|
|
4225
|
+
|
|
4226
|
+
/* The drop: 1px of black right and below, from the second row and column. */
|
|
4227
|
+
:root .window.utility::before {
|
|
4228
|
+
content: "";
|
|
4229
|
+
position: absolute;
|
|
4230
|
+
top: 1px;
|
|
4231
|
+
right: -2px;
|
|
4232
|
+
bottom: -2px;
|
|
4233
|
+
left: 1px;
|
|
4234
|
+
z-index: -1;
|
|
4235
|
+
background:
|
|
4236
|
+
linear-gradient(#000000, #000000) 100% 0 / 1px 100% no-repeat,
|
|
4237
|
+
linear-gradient(#000000, #000000) 0 100% / 100% 1px no-repeat;
|
|
4238
|
+
}
|
|
4239
|
+
|
|
4240
|
+
:root .window.utility > .title-bar {
|
|
4241
|
+
height: 13px;
|
|
4242
|
+
margin: 1px 1px 0;
|
|
4243
|
+
padding: 0 26px 0 12px;
|
|
4244
|
+
border-bottom: 0;
|
|
4245
|
+
background:
|
|
4246
|
+
linear-gradient(#999999, #999999) 0 100% / calc(100% - 1px) 1px no-repeat,
|
|
4247
|
+
url("art/platinum/utility-dots.png") 0 2px / 3px 3px repeat-x,
|
|
4248
|
+
url("art/platinum/utility-dots.png") 0 5px / 3px 3px repeat-x,
|
|
4249
|
+
url("art/platinum/utility-dots.png") 0 8px / 3px 3px repeat-x,
|
|
4250
|
+
#cccccc;
|
|
4251
|
+
background-clip: padding-box, content-box, content-box, content-box, padding-box;
|
|
4252
|
+
}
|
|
4253
|
+
|
|
4254
|
+
:root .window.utility > .title-bar > :is(.close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse) {
|
|
4255
|
+
position: absolute;
|
|
4256
|
+
grid-area: auto;
|
|
4257
|
+
top: 1px;
|
|
4258
|
+
left: 0;
|
|
4259
|
+
width: 10px;
|
|
4260
|
+
height: 10px;
|
|
4261
|
+
margin: 0;
|
|
4262
|
+
border: 0;
|
|
4263
|
+
background: url("art/platinum/utility-close.png") 0 0 / 10px 10px no-repeat;
|
|
4264
|
+
box-shadow: none;
|
|
4265
|
+
}
|
|
4266
|
+
|
|
4267
|
+
:root .window.utility > .title-bar > :is(.resize, .resize-box, .zoom) {
|
|
4268
|
+
left: auto;
|
|
4269
|
+
right: 11px;
|
|
4270
|
+
background-image: url("art/platinum/utility-zoom.png");
|
|
4271
|
+
box-shadow: -4px 0 0 #cccccc, 1px 0 0 #cccccc;
|
|
4272
|
+
}
|
|
4273
|
+
|
|
4274
|
+
:root .window.utility > .title-bar > :is(.shade, .shade-box, .collapse) {
|
|
4275
|
+
left: auto;
|
|
4276
|
+
right: 0;
|
|
4277
|
+
background-image: url("art/platinum/utility-collapse.png");
|
|
4278
|
+
}
|
|
4279
|
+
|
|
4280
|
+
/* With no collapse box, the zoom box takes its place. */
|
|
4281
|
+
:root .window.utility > .title-bar:not(:has(> :is(.shade, .shade-box, .collapse))) > :is(.resize, .resize-box, .zoom) {
|
|
4282
|
+
right: 0;
|
|
4283
|
+
}
|
|
4284
|
+
|
|
4285
|
+
:root .window.utility > .title-bar > :is(button, .close, .resize, .zoom, .shade, .collapse)::before,
|
|
4286
|
+
:root .window.utility > .title-bar > :is(button, .close, .resize, .zoom, .shade, .collapse)::after {
|
|
4287
|
+
content: none;
|
|
4288
|
+
}
|
|
4289
|
+
|
|
4290
|
+
:root .window.utility > .title-bar > :is(.title, h1, h2, h3) {
|
|
4291
|
+
height: 11px;
|
|
4292
|
+
padding: 0 2px;
|
|
4293
|
+
background: #cccccc;
|
|
4294
|
+
font-size: 12px;
|
|
4295
|
+
line-height: 11px;
|
|
4296
|
+
}
|
|
4297
|
+
|
|
4298
|
+
/* The dots right of the title run from the right end (their phase differs
|
|
4299
|
+
from the left run's by one column). */
|
|
4300
|
+
:root .window.utility > .title-bar::after {
|
|
4301
|
+
content: "";
|
|
4302
|
+
position: absolute;
|
|
4303
|
+
top: 0;
|
|
4304
|
+
right: 25px;
|
|
4305
|
+
bottom: 1px;
|
|
4306
|
+
left: 50%;
|
|
4307
|
+
border: 0;
|
|
4308
|
+
background:
|
|
4309
|
+
url("art/platinum/utility-dots.png") right -1px top 2px / 3px 3px repeat-x,
|
|
4310
|
+
url("art/platinum/utility-dots.png") right -1px top 5px / 3px 3px repeat-x,
|
|
4311
|
+
url("art/platinum/utility-dots.png") right -1px top 8px / 3px 3px repeat-x,
|
|
4312
|
+
#cccccc;
|
|
4313
|
+
box-shadow: none;
|
|
4314
|
+
}
|
|
4315
|
+
|
|
4316
|
+
:root .window.utility > .title-bar > :is(.title, h1, h2, h3) {
|
|
4317
|
+
position: relative;
|
|
4318
|
+
z-index: 1;
|
|
4319
|
+
}
|
|
4320
|
+
|
|
4321
|
+
/* ---- Movable modal window (Navigation Services "Open", Mac OS 9.0) --------------
|
|
4322
|
+
A title bar with no close box over a dialog body: no frame band, the black
|
|
4323
|
+
rule under the title bar runs the whole width, and the body has the modal
|
|
4324
|
+
dialog's white light and #999/#555 shade inside the outline. */
|
|
4325
|
+
:root .window.movable-modal {
|
|
4326
|
+
padding: 2px 0 0;
|
|
4327
|
+
background:
|
|
4328
|
+
linear-gradient(#ffffff, #ffffff) 1px 22px / calc(100% - 3px) 1px no-repeat,
|
|
4329
|
+
linear-gradient(#ffffff, #ffffff) 1px 22px / 1px calc(100% - 23px) no-repeat,
|
|
4330
|
+
linear-gradient(#999999, #999999) calc(100% - 1px) 23px / 1px calc(100% - 24px) no-repeat,
|
|
4331
|
+
linear-gradient(#555555, #555555) 100% 22px / 1px calc(100% - 22px) no-repeat,
|
|
4332
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 100% 1px no-repeat,
|
|
4333
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px 19px no-repeat,
|
|
4334
|
+
linear-gradient(#cccccc, #cccccc) 0 19px / 1px 1px no-repeat,
|
|
4335
|
+
linear-gradient(#000000, #000000) 0 20px / 1px 1px no-repeat,
|
|
4336
|
+
linear-gradient(#cccccc, #cccccc) 1px 1px / 100% 1px no-repeat,
|
|
4337
|
+
#dddddd;
|
|
4338
|
+
}
|
|
4339
|
+
|
|
4340
|
+
:root .window.movable-modal > .title-bar {
|
|
4341
|
+
--clio-tb-close: 3px;
|
|
4342
|
+
margin: 0 0 0 1px;
|
|
4343
|
+
border-bottom: 1px solid #000000;
|
|
4344
|
+
box-shadow: none;
|
|
4345
|
+
}
|
|
4346
|
+
|
|
4347
|
+
/* the frame's light down the title bar's first column, above its #999 row */
|
|
4348
|
+
:root .window.movable-modal {
|
|
4349
|
+
--clio-mm-light: linear-gradient(#ffffff, #ffffff) 1px 1px / 1px 19px no-repeat;
|
|
4350
|
+
}
|
|
4351
|
+
|
|
4352
|
+
:root .window.movable-modal > .window-pane {
|
|
4353
|
+
border: 0;
|
|
2516
4354
|
background: transparent;
|
|
2517
|
-
color: #ffffff;
|
|
2518
4355
|
}
|
|
2519
4356
|
|
|
2520
|
-
|
|
2521
|
-
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
|
|
4357
|
+
/* Safari's COLRv0 edge levels in white and dimmed text (src/00-fonts.css). */
|
|
4358
|
+
:root :is(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a, span):is([aria-expanded="true"], .active),
|
|
4359
|
+
:root :is(.menu-bar, [role="menubar"], [role="menu-bar"]) > li.open > :is(button, a, span),
|
|
4360
|
+
:root :is(.menu, [role="menu"]) > li:not(.disabled, [aria-disabled="true"], .separator, [role="separator"]):is(:hover, :focus-within, .active):where(:not([data-clio-blink])),
|
|
4361
|
+
:root :is(.menu, [role="menu"]) > li > :is(a, button):not([aria-disabled="true"], :disabled):is(:hover, :focus-visible, .active):where(:not([data-clio-blink])),
|
|
4362
|
+
:root .icon:is(.selected, [aria-selected="true"], [aria-pressed="true"]) > :is(figcaption, span, .icon-label) {
|
|
4363
|
+
font-palette: --clio-aa-white;
|
|
2526
4364
|
}
|
|
2527
4365
|
|
|
2528
|
-
:root :is([role="
|
|
2529
|
-
|
|
2530
|
-
|
|
4366
|
+
:root :is(.menu, [role="menu"]) > li:is(.disabled, [aria-disabled="true"]),
|
|
4367
|
+
:root :is(.menu, [role="menu"]) > li > :is(a, button):is(:disabled, [aria-disabled="true"]) {
|
|
4368
|
+
font-palette: --clio-aa-6f6f6f;
|
|
2531
4369
|
}
|
|
2532
4370
|
|
|
2533
|
-
/*
|
|
2534
|
-
|
|
2535
|
-
:root:is(
|
|
2536
|
-
|
|
2537
|
-
background-size: 14px 14px;
|
|
4371
|
+
/* A submenu sits inside its parent's <li>, which stays chosen while the
|
|
4372
|
+
pointer is in the submenu: its own items start from the black levels. */
|
|
4373
|
+
:root :is(.menu, [role="menu"]) :is(.menu, [role="menu"]) {
|
|
4374
|
+
font-palette: normal;
|
|
2538
4375
|
}
|
|
2539
4376
|
|
|
2540
|
-
|
|
2541
|
-
|
|
2542
|
-
|
|
2543
|
-
|
|
4377
|
+
/* ---- Side-title utility window (kWindowFloatSide*; Mac OS 9.0, the Appearance
|
|
4378
|
+
SDK's sample "Side Utility Window", frames side3) ------------------------------
|
|
4379
|
+
<div class="window utility side"> with the usual .title-bar (close box at the
|
|
4380
|
+
top, collapse box at the foot; no title is drawn). The frame is the utility
|
|
4381
|
+
window's: 1px black, white light on the top and left, #999 shade on the right
|
|
4382
|
+
and the bottom, the drop from the second row and column. The bar is 10px of #ccc
|
|
4383
|
+
down the left with the 3px dot pattern from 12px below its top to 12px above its
|
|
4384
|
+
foot; the collapse box is the title-bar one transposed. */
|
|
4385
|
+
:root .window.utility.side {
|
|
4386
|
+
flex-direction: row;
|
|
4387
|
+
background:
|
|
4388
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
4389
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
4390
|
+
linear-gradient(#999999, #999999) 100% 1px / 1px calc(100% - 1px) no-repeat,
|
|
4391
|
+
linear-gradient(#999999, #999999) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
4392
|
+
#cccccc;
|
|
2544
4393
|
}
|
|
2545
4394
|
|
|
2546
|
-
:root
|
|
2547
|
-
|
|
4395
|
+
:root .window.utility.side > .title-bar {
|
|
4396
|
+
display: block;
|
|
4397
|
+
flex: none;
|
|
4398
|
+
width: 10px;
|
|
4399
|
+
height: auto;
|
|
4400
|
+
margin: 1px 0 1px 1px;
|
|
4401
|
+
padding: 0;
|
|
4402
|
+
background: url("art/platinum/utility-dots.png") 1px 12px / 3px 3px repeat, #cccccc;
|
|
4403
|
+
box-shadow: none;
|
|
2548
4404
|
}
|
|
2549
4405
|
|
|
2550
|
-
:
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
4406
|
+
/* The dots keep to columns 1 to 9 and rows 12 to 12 above the foot: a #ccc frame
|
|
4407
|
+
painted over the pattern's edges. */
|
|
4408
|
+
:root .window.utility.side > .title-bar::before {
|
|
4409
|
+
content: "";
|
|
4410
|
+
position: absolute;
|
|
4411
|
+
inset: 0;
|
|
4412
|
+
border-style: solid;
|
|
4413
|
+
border-color: #cccccc;
|
|
4414
|
+
border-width: 12px 0 12px 1px;
|
|
4415
|
+
pointer-events: none;
|
|
2555
4416
|
}
|
|
2556
4417
|
|
|
2557
|
-
|
|
2558
|
-
:
|
|
2559
|
-
margin-left: 2px;
|
|
4418
|
+
:root .window.utility.side > .title-bar::after {
|
|
4419
|
+
content: none;
|
|
2560
4420
|
}
|
|
2561
4421
|
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
:
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
|
|
2569
|
-
|
|
2570
|
-
|
|
2571
|
-
|
|
4422
|
+
:root .window.utility.side > .title-bar > :is(.title, h1, h2, h3) {
|
|
4423
|
+
position: absolute;
|
|
4424
|
+
width: 1px;
|
|
4425
|
+
height: 1px;
|
|
4426
|
+
overflow: hidden;
|
|
4427
|
+
clip-path: inset(50%);
|
|
4428
|
+
white-space: nowrap;
|
|
4429
|
+
}
|
|
4430
|
+
|
|
4431
|
+
:root .window.utility.side > .title-bar > :is(.close, .close-box, .resize, .resize-box, .zoom, .shade, .shade-box, .collapse) {
|
|
4432
|
+
top: 0;
|
|
4433
|
+
right: auto;
|
|
4434
|
+
left: 0;
|
|
4435
|
+
z-index: 1;
|
|
2572
4436
|
box-shadow: none;
|
|
2573
|
-
color: #888888;
|
|
2574
|
-
opacity: 1;
|
|
2575
|
-
border-image-source: var(--clio-art-frame-p9-popup-disabled);
|
|
2576
4437
|
}
|
|
2577
4438
|
|
|
2578
|
-
|
|
2579
|
-
:
|
|
2580
|
-
|
|
4439
|
+
:root .window.utility.side > .title-bar > :is(.shade, .shade-box, .collapse, .resize, .resize-box, .zoom) {
|
|
4440
|
+
top: auto;
|
|
4441
|
+
bottom: 0;
|
|
4442
|
+
background-image: url("art/platinum/utility-collapse-side.png");
|
|
2581
4443
|
}
|
|
2582
4444
|
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
:root progress:indeterminate,
|
|
2586
|
-
:root progress:indeterminate::-webkit-progress-bar {
|
|
2587
|
-
background: var(--clio-art-p9-progress-pole) 0 0 / 16px 10px repeat-x;
|
|
4445
|
+
:root .window.utility.side > .window-pane {
|
|
4446
|
+
margin: 1px 1px 1px 0;
|
|
2588
4447
|
}
|
|
2589
4448
|
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
|
|
2594
|
-
right: -1px;
|
|
2595
|
-
width: 1px;
|
|
2596
|
-
height: 12px;
|
|
2597
|
-
background: repeating-linear-gradient(to bottom, transparent 0 1px, #cccccc 1px 2px);
|
|
4449
|
+
/* In the background: a #555 frame and drop on flat #ddd; no boxes, no dots. */
|
|
4450
|
+
:root .window.utility.side.inactive {
|
|
4451
|
+
border-color: #555555;
|
|
4452
|
+
background: #dddddd;
|
|
2598
4453
|
}
|
|
2599
4454
|
|
|
2600
|
-
:root .window.
|
|
2601
|
-
:
|
|
4455
|
+
:root .window.utility.side.inactive::before {
|
|
4456
|
+
background:
|
|
4457
|
+
linear-gradient(#555555, #555555) 100% 0 / 1px 100% no-repeat,
|
|
4458
|
+
linear-gradient(#555555, #555555) 0 100% / 100% 1px no-repeat;
|
|
4459
|
+
}
|
|
4460
|
+
|
|
4461
|
+
:root .window.utility.side.inactive > .title-bar {
|
|
4462
|
+
background: #dddddd;
|
|
4463
|
+
}
|
|
4464
|
+
|
|
4465
|
+
:root .window.utility.side.inactive > .title-bar::before {
|
|
2602
4466
|
content: none;
|
|
2603
4467
|
}
|
|
2604
4468
|
|
|
2605
|
-
/* ----
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
|
|
4469
|
+
/* ---- Placard (Mac OS 9.0, the Appearance SDK's CDEF Tester, frame placard) -----
|
|
4470
|
+
1px black, white light on the top and left, #aaa shade on the right and the
|
|
4471
|
+
bottom (the corners they would share stay #ddd), #ddd face. Disabled: a #555
|
|
4472
|
+
frame on #eee, no light or shade (frame placard-disabled). */
|
|
4473
|
+
:root .placard {
|
|
4474
|
+
border-color: #000000;
|
|
4475
|
+
background:
|
|
4476
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / calc(100% - 1px) 1px no-repeat,
|
|
4477
|
+
linear-gradient(#ffffff, #ffffff) 0 0 / 1px calc(100% - 1px) no-repeat,
|
|
4478
|
+
linear-gradient(#aaaaaa, #aaaaaa) 100% 1px / 1px calc(100% - 1px) no-repeat,
|
|
4479
|
+
linear-gradient(#aaaaaa, #aaaaaa) 1px 100% / calc(100% - 1px) 1px no-repeat,
|
|
4480
|
+
#dddddd;
|
|
4481
|
+
color: #000000;
|
|
2610
4482
|
}
|
|
2611
4483
|
|
|
2612
|
-
:root :is(
|
|
2613
|
-
|
|
4484
|
+
:root .placard:is(:disabled, [aria-disabled="true"], .window.inactive *) {
|
|
4485
|
+
border-color: #555555;
|
|
4486
|
+
background: #eeeeee;
|
|
4487
|
+
color: #555555;
|
|
2614
4488
|
}
|
|
2615
4489
|
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
4490
|
+
/* ---- Split bar (BBEdit 5.1, Mac OS 9.0, frames bb3 and split-done) -------------
|
|
4491
|
+
7 rows of black across the scroll bar's width; the split line puts its two
|
|
4492
|
+
lines on the bar's fourth and sixth rows. */
|
|
4493
|
+
:root :is(.split-view, .split-bar, .split-line) {
|
|
4494
|
+
--clio-split-bar-height: 7px;
|
|
4495
|
+
--clio-split-bg: #ffffff;
|
|
4496
|
+
--clio-split-ink: #000000;
|
|
2619
4497
|
}
|
|
2620
4498
|
|
|
2621
|
-
:root
|
|
2622
|
-
|
|
4499
|
+
:root .split-line {
|
|
4500
|
+
--clio-split-line-1: 3px;
|
|
2623
4501
|
}
|
|
2624
4502
|
|
|
2625
|
-
|
|
2626
|
-
|
|
4503
|
+
/* ---- Rounded-corner window (the Calculator, Mac OS 9.0 and 8.5) ----------------
|
|
4504
|
+
The old window definition draws it as in System 7, its title in the system font
|
|
4505
|
+
antialiased: white on black, black on white in the background (levels measured,
|
|
4506
|
+
tooling/aa-palettes.py). */
|
|
4507
|
+
:root .rounded-window > .rounded-title {
|
|
4508
|
+
font-family: Charcoal, "Charcoal CY", "Clio Sans '97 Title Exact", "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, sans-serif;
|
|
4509
|
+
padding-left: 16px; /* Clio Sans '97 Title sets "Calculator" 2px narrower than the Mac's Charcoal: fitted to the capture */
|
|
4510
|
+
font-size: 12px;
|
|
4511
|
+
font-palette: --clio-aa-rdoc-title;
|
|
4512
|
+
}
|
|
4513
|
+
|
|
4514
|
+
:root .rounded-window.inactive > .rounded-title {
|
|
4515
|
+
font-palette: --clio-aa-rdoc-title-inactive;
|
|
2627
4516
|
}
|
|
2628
4517
|
|
|
2629
4518
|
/* Mac OS 8.5 "Drawing Board" (the beta theme Apple shipped in 8.5b6 and
|
|
@@ -2639,6 +4528,22 @@
|
|
|
2639
4528
|
each found 1:1 in the capture. The stylesheet loads them from art/ beside
|
|
2640
4529
|
itself, as it loads fonts/. See EVIDENCE.md. */
|
|
2641
4530
|
:root {
|
|
4531
|
+
--clio-scrollbar-size: 16px;
|
|
4532
|
+
--clio-scrollbar-button-bevel: none;
|
|
4533
|
+
--clio-scrollbar-button-bevel-on: none;
|
|
4534
|
+
/* clio.js: the dragged region is the frame and its shadow, 7px across and 8px
|
|
4535
|
+
down, with the frame pieces' overrun near the corners (tooling/db-outline.py
|
|
4536
|
+
writes those as patches; the outline gets a 12px margin to hold them) */
|
|
4537
|
+
--clio-drag-outline-extra: 7px;
|
|
4538
|
+
--clio-drag-outline-extra-y: 8px;
|
|
4539
|
+
--clio-drag-outline-margin: 12px;
|
|
4540
|
+
--clio-db-outline-tl: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAQAAAAkGDomAAAARElEQVR42u3WwQ0AIAgEQUP/PWMHfD3iTAUbIcRzAF7pTqio9OiaUhLesNLHXDs2cUPU6lCA375ZDjQAAAAAAAAAADC6wVkT9TSjiRQAAAAASUVORK5CYII=");
|
|
4541
|
+
--clio-db-outline-tr: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAQAAAAkGDomAAAAZElEQVR42u3UwQ5AMBBF0Y74/1+ulSAS6YY8nLOTWFyjndZ4qd7H3pvSP0SgQIECb96Ec9birooJPKfETXD9xVvqaPQjcfsTeHxyi3+2ZuInWAnzu7q98RMEAAAAAAAAAAD4oAW4lBQeuypXEwAAAABJRU5ErkJggg==");
|
|
4542
|
+
--clio-db-outline-bl: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAQAAAAkGDomAAAAfElEQVR42u3XSw6AMAgFQNt4/yvj3sT6V9rMbHXxBIo6TQAAAAAAAAAAAGeV1sWI1c3l+4DzVpw/wtwSsa7nN+qZFqcKmCFcM2CWGWxWMEPI9DNY9s7u3y2vB58j31aMuLr5nh2M+sLUlOQB7cFO3iRaPHwFu/hE9Uc0ggXRch4XFPn+mwAAAABJRU5ErkJggg==");
|
|
4543
|
+
--clio-db-outline-br: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAQAAAAkGDomAAAATUlEQVR42u3XwQkAIAwDQO3+O+sAiviMcjdBqGDT1gAAAAAAAOBkDDMAACC8su5Ka2U16jViZU2xdzcJ8PNWeOpbuQ1Y6W8hoIACQrgJSZMT/52XbkwAAAAASUVORK5CYII=");
|
|
4544
|
+
/* outline patches: 176 pixels in four 80x80 corners (tooling/db-outline.py) */
|
|
4545
|
+
--clio-scrollbar-thumb-overlap: 0px;
|
|
4546
|
+
--clio-scrollbar-thumb-after: none;
|
|
2642
4547
|
/* Titles sit on the textured title bar, where no palette can know the
|
|
2643
4548
|
background: they keep Clio Sans '97 Title in the text colour. */
|
|
2644
4549
|
--clio-font-window-title: Charcoal, "Charcoal CY", "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
@@ -2646,6 +4551,34 @@
|
|
|
2646
4551
|
tile (64px) earlier, depending on where the window sits on screen; a page
|
|
2647
4552
|
matching a particular screen can set 64px on that window or control. */
|
|
2648
4553
|
--clio-db-phase: 0px;
|
|
4554
|
+
/* Slider (Keyboard, Key Repeat): a 1px pencil track (ppat 7024) 2px below
|
|
4555
|
+
the top of the theme's 9x16 thumb (1106). */
|
|
4556
|
+
--clio-slider-track-height: 1px;
|
|
4557
|
+
--clio-slider-track-top: 2px;
|
|
4558
|
+
--clio-slider-track-slice: 0px;
|
|
4559
|
+
--clio-slider-thumb-width: 9px;
|
|
4560
|
+
--clio-art-slider-thumb: url("art/drawingboard/parts/slider-thumb.png");
|
|
4561
|
+
/* Little arrows: the theme's 13x21 pictures (350: normal, up held, down held,
|
|
4562
|
+
dimmed), through 16 bits (Date & Time). */
|
|
4563
|
+
--clio-little-arrows-width: 13px;
|
|
4564
|
+
--clio-little-arrows-height: 21px;
|
|
4565
|
+
--clio-art-little-arrows: url("art/drawingboard/parts/little-arrows.png");
|
|
4566
|
+
--clio-art-little-arrows-up: url("art/drawingboard/parts/little-arrows-up.png");
|
|
4567
|
+
--clio-art-little-arrows-down: url("art/drawingboard/parts/little-arrows-down.png");
|
|
4568
|
+
--clio-art-little-arrows-disabled: url("art/drawingboard/parts/little-arrows-disabled.png");
|
|
4569
|
+
/* Chasing arrows: the theme's six frames (390). */
|
|
4570
|
+
--clio-art-chasing-arrows: url("art/drawingboard/parts/chasing-arrows.png");
|
|
4571
|
+
--clio-chasing-arrows-frames: 6;
|
|
4572
|
+
/* Help button: as the Keyboard control panel draws it. */
|
|
4573
|
+
--clio-art-help-button: url("art/drawingboard/help-button.png");
|
|
4574
|
+
/* Scrolling menu arrows: the theme's 364 and 389 (Control Panels submenu). */
|
|
4575
|
+
--clio-art-menu-scroll-down: url("art/drawingboard/parts/menu-scroll-down.png");
|
|
4576
|
+
--clio-art-menu-scroll-up: url("art/drawingboard/parts/menu-scroll-up.png");
|
|
4577
|
+
/* Disclosure triangle: the theme's 11px pictures (closed 340, open 343, which
|
|
4578
|
+
Mac OS draws through 16 bits), Finder list view. */
|
|
4579
|
+
--clio-disclosure-size: 11px;
|
|
4580
|
+
--clio-art-disclosure: url("art/drawingboard/parts/disclosure.png");
|
|
4581
|
+
--clio-art-disclosure-open: url("art/drawingboard/parts/disclosure-open.png");
|
|
2649
4582
|
--clio-ink: #313131;
|
|
2650
4583
|
--clio-paper: #e7ded6;
|
|
2651
4584
|
--clio-face: #cdc6bd;
|
|
@@ -2766,6 +4699,8 @@
|
|
|
2766
4699
|
--clio-field-focus-shadow: none;
|
|
2767
4700
|
--clio-button-disabled-fg: #8c8c8c;
|
|
2768
4701
|
--clio-button-disabled-border: 1px solid #888888;
|
|
4702
|
+
/* The theme's scroll box at its shortest, 7px end and 8px end. */
|
|
4703
|
+
--clio-scrollbar-thumb-length: 15px;
|
|
2769
4704
|
|
|
2770
4705
|
/* Scroll bars: the theme's 16px arrow boxes; a #ece6e4 track with a #aaa
|
|
2771
4706
|
edge, a two-pixel pencil rail down the middle and a #777 far edge; the
|
|
@@ -2784,15 +4719,17 @@
|
|
|
2784
4719
|
--clio-scrollbar-track: linear-gradient(to right, #555555 0 1px, #ece6e4 1px 7px, #777777 7px 9px, #ece6e4 9px 15px, #555555 15px);
|
|
2785
4720
|
--clio-scrollbar-track-color: #ece6e4;
|
|
2786
4721
|
--clio-scrollbar-track-shadow: none;
|
|
4722
|
+
/* The grip lies over the ends, (length - 2) / 2 rounded down from the start:
|
|
4723
|
+
on the 15px box it covers the start's last pixel (Themes tab list). */
|
|
2787
4724
|
--clio-scrollbar-thumb-bg:
|
|
4725
|
+
var(--clio-art-db-thumb-vgrip) 1px round(down, 50%, 1px) / 14px 2px no-repeat,
|
|
2788
4726
|
var(--clio-art-db-thumb-top) 1px 0 / 14px 7px no-repeat,
|
|
2789
4727
|
var(--clio-art-db-thumb-bottom) 1px 100% / 14px 8px no-repeat,
|
|
2790
|
-
var(--clio-art-db-thumb-vgrip) 1px 50% / 14px 2px no-repeat,
|
|
2791
4728
|
var(--clio-art-db-thumb-vstretch) 1px 0 / 14px 100% no-repeat;
|
|
2792
4729
|
--clio-scrollbar-thumb-bg-horizontal:
|
|
4730
|
+
var(--clio-art-db-thumb-hgrip) round(down, 50%, 1px) 1px / 2px 14px no-repeat,
|
|
2793
4731
|
var(--clio-art-db-thumb-left) 0 1px / 7px 14px no-repeat,
|
|
2794
4732
|
var(--clio-art-db-thumb-right) 100% 1px / 8px 14px no-repeat,
|
|
2795
|
-
var(--clio-art-db-thumb-hgrip) 50% 1px / 2px 14px no-repeat,
|
|
2796
4733
|
var(--clio-art-db-thumb-hstretch) 0 1px / 100% 14px no-repeat;
|
|
2797
4734
|
--clio-scrollbar-thumb-color: #cdc6bd;
|
|
2798
4735
|
--clio-scrollbar-thumb-border: 0 none;
|
|
@@ -2897,8 +4834,8 @@
|
|
|
2897
4834
|
--clio-art-db-title-underline-left: url("art/drawingboard/parts/title-underline-left.png"); /* 15x3 */
|
|
2898
4835
|
--clio-art-db-title-underline: url("art/drawingboard/parts/title-underline.png"); /* 32x4 */
|
|
2899
4836
|
--clio-art-db-title-underline-right: url("art/drawingboard/parts/title-underline-right.png"); /* 16x3 */
|
|
2900
|
-
--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 */
|
|
2901
|
-
--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 */
|
|
4837
|
+
--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 image-rendering='pixelated' style='image-rendering:pixelated' 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 */
|
|
4838
|
+
--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 image-rendering='pixelated' style='image-rendering:pixelated' 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 */
|
|
2902
4839
|
}
|
|
2903
4840
|
|
|
2904
4841
|
/* ---- Window ----------------------------------------------------------------
|
|
@@ -2913,6 +4850,8 @@
|
|
|
2913
4850
|
:root .window {
|
|
2914
4851
|
--db-tl: url("art/drawingboard/window-tl.png");
|
|
2915
4852
|
--db-top: url("art/drawingboard/window-top.png");
|
|
4853
|
+
--db-top-tiled: url("art/drawingboard/window-top-tiled.svg");
|
|
4854
|
+
--db-bottom-tiled: url("art/drawingboard/window-bottom-tiled.svg");
|
|
2916
4855
|
--db-tr: url("art/drawingboard/window-tr.png");
|
|
2917
4856
|
--db-ur: url("art/drawingboard/window-ur.png");
|
|
2918
4857
|
--db-right: url("art/drawingboard/window-right.png");
|
|
@@ -2928,6 +4867,8 @@
|
|
|
2928
4867
|
:root .window.inactive {
|
|
2929
4868
|
--db-tl: url("art/drawingboard/window-tl-inactive.png");
|
|
2930
4869
|
--db-top: url("art/drawingboard/window-top-inactive.png");
|
|
4870
|
+
--db-top-tiled: url("art/drawingboard/window-top-inactive-tiled.svg");
|
|
4871
|
+
--db-bottom-tiled: url("art/drawingboard/window-bottom-inactive-tiled.svg");
|
|
2931
4872
|
--db-tr: url("art/drawingboard/window-tr-inactive.png");
|
|
2932
4873
|
--db-ur: url("art/drawingboard/window-ur-inactive.png");
|
|
2933
4874
|
--db-right: url("art/drawingboard/window-right-inactive.png");
|
|
@@ -2974,6 +4915,40 @@
|
|
|
2974
4915
|
var(--db-bl) left 0 bottom 0 / 64px 32px no-repeat;
|
|
2975
4916
|
}
|
|
2976
4917
|
|
|
4918
|
+
/* Collapsed (Infinite HD's collapse box, Mac OS 8.5 with the theme; frame
|
|
4919
|
+
collapsed): the theme draws the frame as for an empty window, the bottom
|
|
4920
|
+
corners and the foot's shadow under the title bar, which is drawn last. The
|
|
4921
|
+
box is the title bar and the foot's black line. Two layers do it: ::after is
|
|
4922
|
+
the title bar's area alone (its paper, the top edge and the top corners);
|
|
4923
|
+
::before is everything outside that area (the corners' overrun, the bottom
|
|
4924
|
+
corners and the shadow). The edges tile from SVG patterns, which stop where
|
|
4925
|
+
their box does. The bottom right corner lies over the upper right edge here. */
|
|
4926
|
+
:root .window.collapsed {
|
|
4927
|
+
padding-bottom: 1px;
|
|
4928
|
+
}
|
|
4929
|
+
|
|
4930
|
+
:root .window.collapsed::after {
|
|
4931
|
+
clip-path: inset(10px 11px calc(100% - 32px) 8px);
|
|
4932
|
+
background:
|
|
4933
|
+
var(--db-tl) 4px 5px / 28px 27px no-repeat,
|
|
4934
|
+
var(--db-tr) right 1px top 0 / 16px 32px no-repeat,
|
|
4935
|
+
var(--db-top-tiled) 32px 10px / calc(100% - 49px) 22px no-repeat,
|
|
4936
|
+
url("art/drawingboard/paper.png") calc(14px - var(--clio-db-phase, 0px)) 32px / 128px 128px;
|
|
4937
|
+
}
|
|
4938
|
+
|
|
4939
|
+
:root .window.collapsed::before {
|
|
4940
|
+
inset: -10px -11px -18px -8px;
|
|
4941
|
+
clip-path: polygon(evenodd, 0 0, 100% 0, 100% 100%, 0 100%, 0 0,
|
|
4942
|
+
8px 10px, calc(100% - 11px) 10px, calc(100% - 11px) 32px, 8px 32px, 8px 10px);
|
|
4943
|
+
background:
|
|
4944
|
+
var(--db-tl) 4px 5px / 28px 27px no-repeat,
|
|
4945
|
+
var(--db-tr) right 1px top 0 / 16px 32px no-repeat,
|
|
4946
|
+
var(--db-br) right 0 bottom 2px / 63px 62px no-repeat,
|
|
4947
|
+
var(--db-ur) right 4px top 32px / 13px 32px no-repeat,
|
|
4948
|
+
var(--db-bl) left 0 bottom 0 / 64px 32px no-repeat,
|
|
4949
|
+
var(--db-bottom-tiled) left 64px bottom 10px / calc(100% - 126px) 14px no-repeat;
|
|
4950
|
+
}
|
|
4951
|
+
|
|
2977
4952
|
/* ---- Menus -----------------------------------------------------------------
|
|
2978
4953
|
The shade: 2px of pencil (ppat 130, 131) down the right from 3px below the
|
|
2979
4954
|
menu's top and along the foot from 4px in. A menu that is not a drop-down
|
|
@@ -3075,16 +5050,16 @@
|
|
|
3075
5050
|
background-image: var(--clio-art-db-collapse);
|
|
3076
5051
|
}
|
|
3077
5052
|
|
|
3078
|
-
:root .title-bar > :is(button, .close, .close-box):is(:active, .active) {
|
|
5053
|
+
:root .title-bar > :is(button, .close, .close-box):is(:active:where(:not([data-clio-off])), .active) {
|
|
3079
5054
|
background: var(--clio-art-db-close-on) 0 0 / 11px 11px no-repeat;
|
|
3080
5055
|
box-shadow: none;
|
|
3081
5056
|
}
|
|
3082
5057
|
|
|
3083
|
-
:root .title-bar > :is(.resize, .resize-box, .zoom):is(:active, .active) {
|
|
5058
|
+
:root .title-bar > :is(.resize, .resize-box, .zoom):is(:active:where(:not([data-clio-off])), .active) {
|
|
3084
5059
|
background: var(--clio-art-db-zoom-on) 0 0 / 11px 11px no-repeat;
|
|
3085
5060
|
}
|
|
3086
5061
|
|
|
3087
|
-
:root .title-bar > :is(.shade, .shade-box, .collapse):is(:active, .active) {
|
|
5062
|
+
:root .title-bar > :is(.shade, .shade-box, .collapse):is(:active:where(:not([data-clio-off])), .active) {
|
|
3088
5063
|
background: var(--clio-art-db-collapse-on) 0 0 / 11px 11px no-repeat;
|
|
3089
5064
|
}
|
|
3090
5065
|
|
|
@@ -3202,7 +5177,7 @@
|
|
|
3202
5177
|
|
|
3203
5178
|
/* Disabled push button: not captured; the plain button's frame and face with
|
|
3204
5179
|
the theme's grey label (inferred). */
|
|
3205
|
-
: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
|
|
5180
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(:disabled, .disabled) {
|
|
3206
5181
|
background: var(--clio-button-bg);
|
|
3207
5182
|
color: #9f9a94;
|
|
3208
5183
|
-webkit-text-fill-color: #9f9a94;
|
|
@@ -3230,12 +5205,12 @@
|
|
|
3230
5205
|
background-image: var(--clio-art-db-check-mixed);
|
|
3231
5206
|
}
|
|
3232
5207
|
|
|
3233
|
-
:root input[type="checkbox"]:not(:disabled):active {
|
|
5208
|
+
:root input[type="checkbox"]:not(:disabled):active:where(:not([data-clio-off])) {
|
|
3234
5209
|
background: var(--clio-art-db-check-pressed) 0 0 / 14px 11px no-repeat;
|
|
3235
5210
|
box-shadow: none;
|
|
3236
5211
|
}
|
|
3237
5212
|
|
|
3238
|
-
:root input[type="checkbox"]:checked:not(:disabled):active {
|
|
5213
|
+
:root input[type="checkbox"]:checked:not(:disabled):active:where(:not([data-clio-off])) {
|
|
3239
5214
|
background-image: var(--clio-art-db-check-on-pressed);
|
|
3240
5215
|
}
|
|
3241
5216
|
|
|
@@ -3248,7 +5223,7 @@
|
|
|
3248
5223
|
}
|
|
3249
5224
|
|
|
3250
5225
|
:root input[type="radio"],
|
|
3251
|
-
:root input[type="radio"]:not(:disabled):active {
|
|
5226
|
+
:root input[type="radio"]:not(:disabled):active:where(:not([data-clio-off])) {
|
|
3252
5227
|
width: 16px;
|
|
3253
5228
|
height: 12px;
|
|
3254
5229
|
border: 0;
|
|
@@ -3261,7 +5236,7 @@
|
|
|
3261
5236
|
background: var(--clio-art-db-radio-on) 0 0 / 16px 12px no-repeat;
|
|
3262
5237
|
}
|
|
3263
5238
|
|
|
3264
|
-
:root input[type="radio"]:checked:not(:disabled):active {
|
|
5239
|
+
:root input[type="radio"]:checked:not(:disabled):active:where(:not([data-clio-off])) {
|
|
3265
5240
|
background: var(--clio-art-db-radio-on-pressed) 0 0 / 16px 12px no-repeat;
|
|
3266
5241
|
}
|
|
3267
5242
|
|
|
@@ -3280,12 +5255,12 @@
|
|
|
3280
5255
|
/* ---- Menus ------------------------------------------------------------------ */
|
|
3281
5256
|
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"]))::after,
|
|
3282
5257
|
:root :is(.menu, [role="menu"]) > li > [aria-haspopup="true"]::after,
|
|
3283
|
-
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active)::after {
|
|
5258
|
+
:root :is(.menu, [role="menu"]) > li:has(> :is(.menu, ul[role="menu"])):is(:hover, :focus-within, .active):where(:not([data-clio-blink]))::after {
|
|
3284
5259
|
background-image: var(--clio-art-db-submenu);
|
|
3285
5260
|
}
|
|
3286
5261
|
|
|
3287
|
-
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active)::before,
|
|
3288
|
-
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active)::before {
|
|
5262
|
+
:root :is(.menu, [role="menu"]) > li:is(.checked, [aria-checked="true"]):is(:hover, :focus-within, .active):where(:not([data-clio-blink]))::before,
|
|
5263
|
+
:root :is(.menu, [role="menu"]) > li > :is([aria-checked="true"], .checked):is(:hover, :focus-visible, .active):where(:not([data-clio-blink]))::before {
|
|
3289
5264
|
filter: none;
|
|
3290
5265
|
}
|
|
3291
5266
|
|
|
@@ -3308,7 +5283,7 @@
|
|
|
3308
5283
|
line-height: 20px;
|
|
3309
5284
|
}
|
|
3310
5285
|
|
|
3311
|
-
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):not(:disabled):active {
|
|
5286
|
+
:root :is([role="tablist"], .tabs) > :is([role="tab"], li, button):not(:disabled):active:where(:not([data-clio-off])) {
|
|
3312
5287
|
border-image-source: var(--clio-art-db-tab-pressed);
|
|
3313
5288
|
color: #313131;
|
|
3314
5289
|
}
|
|
@@ -3347,6 +5322,10 @@
|
|
|
3347
5322
|
border: 0;
|
|
3348
5323
|
}
|
|
3349
5324
|
|
|
5325
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-track {
|
|
5326
|
+
border: 0;
|
|
5327
|
+
}
|
|
5328
|
+
|
|
3350
5329
|
/* The scroll box is the theme's 15px picture at its shortest (7px end + 8px end). */
|
|
3351
5330
|
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-thumb,
|
|
3352
5331
|
:root:is(html.clio-scrollbars)::-webkit-scrollbar-thumb {
|
|
@@ -3354,6 +5333,11 @@
|
|
|
3354
5333
|
min-height: 15px;
|
|
3355
5334
|
}
|
|
3356
5335
|
|
|
5336
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-thumb {
|
|
5337
|
+
min-width: 15px;
|
|
5338
|
+
min-height: 15px;
|
|
5339
|
+
}
|
|
5340
|
+
|
|
3357
5341
|
/* Tracks: #ece6e4 ruled by pattern pens (ppat 7045-7049) tiled from the
|
|
3358
5342
|
track's start: the edges and a double centre line. Rules, not tokens: the
|
|
3359
5343
|
pens read the scroller's own --clio-db-phase. */
|
|
@@ -3367,6 +5351,15 @@
|
|
|
3367
5351
|
#ece6e4;
|
|
3368
5352
|
}
|
|
3369
5353
|
|
|
5354
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-track {
|
|
5355
|
+
background:
|
|
5356
|
+
url("art/drawingboard/track-v-left.png") 0 0 / 1px 128px repeat-y,
|
|
5357
|
+
url("art/drawingboard/track-v-mid1.png") 7px 0 / 1px 256px repeat-y,
|
|
5358
|
+
url("art/drawingboard/track-v-mid2.png") 8px 0 / 1px 256px repeat-y,
|
|
5359
|
+
url("art/drawingboard/track-v-right.png") 15px 0 / 1px 128px repeat-y,
|
|
5360
|
+
#ece6e4;
|
|
5361
|
+
}
|
|
5362
|
+
|
|
3370
5363
|
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-track:horizontal,
|
|
3371
5364
|
:root:is(html.clio-scrollbars)::-webkit-scrollbar-track:horizontal {
|
|
3372
5365
|
background:
|
|
@@ -3377,10 +5370,33 @@
|
|
|
3377
5370
|
#ece6e4;
|
|
3378
5371
|
}
|
|
3379
5372
|
|
|
5373
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-track {
|
|
5374
|
+
background:
|
|
5375
|
+
url("art/drawingboard/track-h-top.png") calc(0px - var(--clio-db-phase, 0px)) 0 / 128px 1px repeat-x,
|
|
5376
|
+
url("art/drawingboard/track-h-mid1.png") calc(0px - var(--clio-db-phase, 0px)) 7px / 256px 1px repeat-x,
|
|
5377
|
+
url("art/drawingboard/track-h-mid2.png") calc(0px - var(--clio-db-phase, 0px)) 8px / 256px 1px repeat-x,
|
|
5378
|
+
url("art/drawingboard/track-h-bottom.png") calc(0px - var(--clio-db-phase, 0px)) 15px / 128px 1px repeat-x,
|
|
5379
|
+
#ece6e4;
|
|
5380
|
+
}
|
|
5381
|
+
|
|
3380
5382
|
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button,
|
|
3381
5383
|
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button,
|
|
3382
5384
|
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:active,
|
|
3383
|
-
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button:active
|
|
5385
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button:active,
|
|
5386
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *)::-webkit-scrollbar-button:horizontal,
|
|
5387
|
+
:root:is(html.clio-scrollbars)::-webkit-scrollbar-button:horizontal {
|
|
5388
|
+
/* :horizontal outweighs the Platinum rule that moves that art a pixel down. */
|
|
5389
|
+
border: 0;
|
|
5390
|
+
background-color: transparent;
|
|
5391
|
+
background-position: 0 0;
|
|
5392
|
+
background-size: 16px 16px;
|
|
5393
|
+
box-shadow: none;
|
|
5394
|
+
}
|
|
5395
|
+
|
|
5396
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-button,
|
|
5397
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb > .clio-sb-button.clio-held,
|
|
5398
|
+
:root :is(.window-pane, .listbox, [role="listbox"], textarea, select[multiple], .clio-scroll, .clio-scrollbars *) > .clio-sb-anchor > .clio-sb.clio-sb-h > .clio-sb-button {
|
|
5399
|
+
/* :horizontal outweighs the Platinum rule that moves that art a pixel down. */
|
|
3384
5400
|
border: 0;
|
|
3385
5401
|
background-color: transparent;
|
|
3386
5402
|
background-position: 0 0;
|
|
@@ -3415,7 +5431,7 @@
|
|
|
3415
5431
|
rows; held: 7127, 7126, tiled from the second column and row). A default
|
|
3416
5432
|
button instead wears a 3px pencil band (ppat 7085 rows, 7086 columns) whose
|
|
3417
5433
|
inner line is the box's edge, 2px outside it. Insets are from the padding box. */
|
|
3418
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip
|
|
5434
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button)::before {
|
|
3419
5435
|
content: "";
|
|
3420
5436
|
position: absolute;
|
|
3421
5437
|
top: 0;
|
|
@@ -3431,14 +5447,14 @@
|
|
|
3431
5447
|
pointer-events: none;
|
|
3432
5448
|
}
|
|
3433
5449
|
|
|
3434
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *, :disabled, .disabled):is(:active, .active)::before {
|
|
5450
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button, :disabled, .disabled):is(:active:where(:not([data-clio-off])), .active)::before {
|
|
3435
5451
|
left: 0;
|
|
3436
5452
|
background:
|
|
3437
5453
|
url("art/drawingboard/pens/button-held-shade-right.png") right 0 top 0 / 1px 16px repeat-y,
|
|
3438
5454
|
url("art/drawingboard/pens/button-held-shade-bottom.png") left 0 bottom 0 / 32px 1px repeat-x;
|
|
3439
5455
|
}
|
|
3440
5456
|
|
|
3441
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip
|
|
5457
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(.default, .btn-default)::before {
|
|
3442
5458
|
inset: -3px;
|
|
3443
5459
|
background:
|
|
3444
5460
|
url("art/drawingboard/pens/button-default-left-3.png") left 0 bottom 3px / 1px 16px repeat-y,
|
|
@@ -3457,11 +5473,11 @@
|
|
|
3457
5473
|
|
|
3458
5474
|
/* The pencil overruns at a push button's corners, outside its box: Button*
|
|
3459
5475
|
pieces round a plain button, *Default pieces round the default one. */
|
|
3460
|
-
: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
|
|
5476
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button) {
|
|
3461
5477
|
position: relative;
|
|
3462
5478
|
}
|
|
3463
5479
|
|
|
3464
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip
|
|
5480
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button)::after {
|
|
3465
5481
|
content: "";
|
|
3466
5482
|
position: absolute;
|
|
3467
5483
|
inset: -6px; /* from the padding box: 5px outside the frame */
|
|
@@ -3473,7 +5489,7 @@
|
|
|
3473
5489
|
pointer-events: none;
|
|
3474
5490
|
}
|
|
3475
5491
|
|
|
3476
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip *, :disabled, .disabled):is(:active, .active)::after {
|
|
5492
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button, :disabled, .disabled):is(:active:where(:not([data-clio-off])), .active)::after {
|
|
3477
5493
|
background:
|
|
3478
5494
|
var(--clio-art-db-btn-tl) left 3px top 3px / 7px 3px no-repeat,
|
|
3479
5495
|
var(--clio-art-db-btn-tr) right 2px top 3px / 4px 3px no-repeat,
|
|
@@ -3481,11 +5497,11 @@
|
|
|
3481
5497
|
var(--clio-art-db-btn-bl) left 3px bottom 2px / 7px 4px no-repeat;
|
|
3482
5498
|
}
|
|
3483
5499
|
|
|
3484
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip
|
|
5500
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(.default, .btn-default) {
|
|
3485
5501
|
border-image-source: none;
|
|
3486
5502
|
}
|
|
3487
5503
|
|
|
3488
|
-
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .control-strip
|
|
5504
|
+
:root :is(button, .btn, .btn-default):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(.default, .btn-default)::after {
|
|
3489
5505
|
background:
|
|
3490
5506
|
url("art/drawingboard/pens/button-default-corner-tl.png") left 5px top 5px / 5px 5px no-repeat,
|
|
3491
5507
|
url("art/drawingboard/pens/button-default-corner-tr.png") right 5px top 5px / 5px 5px no-repeat,
|
|
@@ -3516,15 +5532,193 @@
|
|
|
3516
5532
|
|
|
3517
5533
|
/* ---- Antialiasing as Mac OS blends it: #333 labels on #cec6b5 (their solid
|
|
3518
5534
|
pixels #313131, from a 16-bit buffer); grey when disabled. */
|
|
3519
|
-
: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
|
|
3520
|
-
: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
|
|
5535
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button),
|
|
5536
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):not(:disabled, .disabled):is(:active:where(:not([data-clio-off])), .active) {
|
|
3521
5537
|
font-palette: --clio-aa-db-button;
|
|
3522
5538
|
}
|
|
3523
5539
|
|
|
3524
|
-
: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
|
|
5540
|
+
:root :is(button, .btn, .btn-default, input[type="button"], input[type="submit"], input[type="reset"]):not(.icon, [role="tab"], [role="menuitem"], .title-bar > *, .rounded-title > *, .control-strip *, .disclosure, .little-arrows > *, .help-button):is(:disabled, .disabled) {
|
|
3525
5541
|
font-palette: --clio-aa-db-button-disabled;
|
|
3526
5542
|
}
|
|
3527
5543
|
|
|
5544
|
+
/* ---- List view headers (Finder list view, Mac OS 8.5): a #9f9a94 pencil line
|
|
5545
|
+
above and below; plain headers #cdc6bd with a #555 line at the foot, the
|
|
5546
|
+
sorted one #9f9a94 with the #555 line at the top and #333 on its left; #888
|
|
5547
|
+
between columns. Colours are each line's dominant one: the theme draws
|
|
5548
|
+
these lines with pattern pens, not reproduced here. */
|
|
5549
|
+
:root .list-view th {
|
|
5550
|
+
background:
|
|
5551
|
+
linear-gradient(#9f9a94, #9f9a94) 0 0 / 100% 1px no-repeat,
|
|
5552
|
+
linear-gradient(#9f9a94, #9f9a94) 0 100% / 100% 1px no-repeat,
|
|
5553
|
+
linear-gradient(#555555, #555555) 0 calc(100% - 1px) / 100% 1px no-repeat,
|
|
5554
|
+
linear-gradient(#888888, #888888) 0 1px / 1px calc(100% - 2px) no-repeat,
|
|
5555
|
+
#cdc6bd;
|
|
5556
|
+
}
|
|
5557
|
+
|
|
5558
|
+
:root .list-view th[aria-sort]:not([aria-sort="none"]) {
|
|
5559
|
+
background:
|
|
5560
|
+
linear-gradient(#9f9a94, #9f9a94) 0 0 / 100% 1px no-repeat,
|
|
5561
|
+
linear-gradient(#555555, #555555) 0 1px / 100% 1px no-repeat,
|
|
5562
|
+
linear-gradient(#333333, #333333) 0 1px / 1px calc(100% - 2px) no-repeat,
|
|
5563
|
+
#9f9a94;
|
|
5564
|
+
}
|
|
5565
|
+
|
|
5566
|
+
:root .list-view th.sort-direction {
|
|
5567
|
+
background:
|
|
5568
|
+
linear-gradient(#555555, #555555) 100% 1px / 1px calc(100% - 2px) no-repeat,
|
|
5569
|
+
linear-gradient(#9f9a94, #9f9a94) 0 0 / 100% 1px no-repeat,
|
|
5570
|
+
linear-gradient(#9f9a94, #9f9a94) 0 100% / 100% 1px no-repeat,
|
|
5571
|
+
linear-gradient(#555555, #555555) 0 calc(100% - 1px) / 100% 1px no-repeat,
|
|
5572
|
+
linear-gradient(#888888, #888888) 0 1px / 1px calc(100% - 2px) no-repeat,
|
|
5573
|
+
#cdc6bd;
|
|
5574
|
+
}
|
|
5575
|
+
|
|
5576
|
+
:root .list-view {
|
|
5577
|
+
--clio-list-view-bg: #e7ded6;
|
|
5578
|
+
--clio-list-view-sorted-bg: #d6c6b5;
|
|
5579
|
+
}
|
|
5580
|
+
|
|
5581
|
+
:root input[type="range"]::-webkit-slider-runnable-track {
|
|
5582
|
+
border: 0;
|
|
5583
|
+
border-image: none;
|
|
5584
|
+
background: url("art/drawingboard/slider-track.png") calc(0px - var(--clio-db-phase, 0px)) 0 / 64px 1px repeat-x;
|
|
5585
|
+
}
|
|
5586
|
+
|
|
5587
|
+
:root input[type="range"]::-moz-range-track {
|
|
5588
|
+
border: 0;
|
|
5589
|
+
border-image: none;
|
|
5590
|
+
background: url("art/drawingboard/slider-track.png") calc(0px - var(--clio-db-phase, 0px)) 0 / 64px 1px repeat-x;
|
|
5591
|
+
}
|
|
5592
|
+
|
|
5593
|
+
/* Bevel buttons: drawn as the theme's push button (its pens, corner pixels,
|
|
5594
|
+
hatch and shade); the Navigation Services bevel buttons were not matched
|
|
5595
|
+
pen for pen (inferred). */
|
|
5596
|
+
:root .bevel {
|
|
5597
|
+
border-width: 1px;
|
|
5598
|
+
border-image: url("art/drawingboard/pens/button-corners.png") 5 / 5px stretch;
|
|
5599
|
+
background: var(--clio-button-bg);
|
|
5600
|
+
}
|
|
5601
|
+
|
|
5602
|
+
:root .bevel:is(:active:where(:not([data-clio-off])), .active, [aria-pressed="true"]):not(:disabled) {
|
|
5603
|
+
border-image-source: url("art/drawingboard/pens/button-held-corners.png");
|
|
5604
|
+
background: var(--clio-button-active-bg);
|
|
5605
|
+
}
|
|
5606
|
+
|
|
5607
|
+
/* Drawing Board's chosen items stay #313131 (underlined, not inverted) and its
|
|
5608
|
+
dimmed text is #8c8c8c. Browsers with COLRv1 draw the edge levels in the text
|
|
5609
|
+
colour; Safari's COLRv0 file draws them from these palettes. */
|
|
5610
|
+
:root :is(.menu-bar, [role="menubar"], [role="menu-bar"]) > li > :is(button, a, span),
|
|
5611
|
+
:root :is(.menu, [role="menu"]) > li,
|
|
5612
|
+
:root :is(.menu, [role="menu"]) > li > :is(a, button) {
|
|
5613
|
+
font-palette: --clio-aa-313131 !important; /* outranks the shared chosen-item rule */
|
|
5614
|
+
}
|
|
5615
|
+
|
|
5616
|
+
:root :is(.menu, [role="menu"]) > li:is(.disabled, [aria-disabled="true"]),
|
|
5617
|
+
:root :is(.menu, [role="menu"]) > li > :is(a, button):is(:disabled, [aria-disabled="true"]) {
|
|
5618
|
+
font-palette: --clio-aa-8c8c8c !important;
|
|
5619
|
+
}
|
|
5620
|
+
|
|
5621
|
+
/* ---- Smart Scrolling (clio.js bars, data-clio-scrolling="smart") ----------
|
|
5622
|
+
Both arrows at the far end are one picture of the theme's (ScrollArrowsDbl,
|
|
5623
|
+
pxm# 334 and 324), each button showing its half (Mac OS 8.5 with the theme,
|
|
5624
|
+
Appearance > Options > Smart Scrolling, frame smart-scroll). Held, the
|
|
5625
|
+
picture's held state for that arrow; nothing to scroll, the dimmed one. */
|
|
5626
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-h.clio-sb-smart > .clio-sb-button {
|
|
5627
|
+
border: 0;
|
|
5628
|
+
background: url("art/drawingboard/parts/hpair.png") 0 0 / 32px 16px no-repeat;
|
|
5629
|
+
box-shadow: none;
|
|
5630
|
+
}
|
|
5631
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-h.clio-sb-smart > .clio-sb-button.clio-sb-inc { background-position: -16px 0; }
|
|
5632
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-h.clio-sb-smart > .clio-sb-dec.clio-held { background-image: url("art/drawingboard/parts/hpair-dec-on.png"); }
|
|
5633
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-h.clio-sb-smart > .clio-sb-inc.clio-held { background-image: url("art/drawingboard/parts/hpair-inc-on.png"); }
|
|
5634
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-h.clio-sb-smart.clio-sb-off > .clio-sb-button { background-image: url("art/drawingboard/parts/hpair-off.png"); }
|
|
5635
|
+
|
|
5636
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-v.clio-sb-smart > .clio-sb-button {
|
|
5637
|
+
border: 0;
|
|
5638
|
+
background: url("art/drawingboard/parts/vpair.png") 0 0 / 16px 32px no-repeat;
|
|
5639
|
+
box-shadow: none;
|
|
5640
|
+
}
|
|
5641
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-v.clio-sb-smart > .clio-sb-button.clio-sb-inc { background-position: 0 -16px; }
|
|
5642
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-v.clio-sb-smart > .clio-sb-dec.clio-held { background-image: url("art/drawingboard/parts/vpair-dec-on.png"); }
|
|
5643
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-v.clio-sb-smart > .clio-sb-inc.clio-held { background-image: url("art/drawingboard/parts/vpair-inc-on.png"); }
|
|
5644
|
+
:root .clio-sb-host > .clio-sb-anchor > .clio-sb.clio-sb-v.clio-sb-smart.clio-sb-off > .clio-sb-button { background-image: url("art/drawingboard/parts/vpair-off.png"); }
|
|
5645
|
+
|
|
5646
|
+
/* The open pop-up menu (Appearance > Appearance held; frame popup-open): its top
|
|
5647
|
+
on the button's with the current item there, as wide as the button less its
|
|
5648
|
+
20px of arrows. */
|
|
5649
|
+
:root select {
|
|
5650
|
+
--clio-popup-menu-trim: 20px;
|
|
5651
|
+
--clio-popup-menu-align: top;
|
|
5652
|
+
}
|
|
5653
|
+
|
|
5654
|
+
/* In the open pop-up the top line is the pen shifted with the button's phase (a
|
|
5655
|
+
full line: the menu hangs from no bar), the text a pixel higher and 18px in,
|
|
5656
|
+
the check mark 1px in, and the chosen item's underline on its last rows. */
|
|
5657
|
+
:root ul.clio-popup-menu.menu { /* outweighs the menus' :is(.menu, ul[role="menu"]) */
|
|
5658
|
+
--clio-menu-item-active-bg:
|
|
5659
|
+
var(--clio-art-db-menu-underline-left) left 16px bottom 0 / 29px 3px no-repeat,
|
|
5660
|
+
var(--clio-art-db-menu-underline-right) right 15px bottom 0 / 36px 3px no-repeat,
|
|
5661
|
+
var(--clio-art-db-menu-underline-tiled) left 45px bottom 0 / calc(100% - 96px) 3px no-repeat;
|
|
5662
|
+
background:
|
|
5663
|
+
url("art/drawingboard/menu-top.png") calc(0px - var(--clio-db-phase, 0px)) 0 / 128px 1px repeat-x border-box,
|
|
5664
|
+
url("art/drawingboard/menu-left.png") 0 0 / 1px 128px repeat-y border-box,
|
|
5665
|
+
url("art/drawingboard/menu-right.png") right 0 top 4px / 1px 128px repeat-y border-box,
|
|
5666
|
+
url("art/drawingboard/menu-foot.png") calc(4px - var(--clio-db-phase, 0px)) 100% / 128px 1px repeat-x border-box,
|
|
5667
|
+
url("art/drawingboard/menu-paper.png") 0 0 / 64px 64px padding-box,
|
|
5668
|
+
#dddddd;
|
|
5669
|
+
}
|
|
5670
|
+
|
|
5671
|
+
:root .clio-popup-menu > li {
|
|
5672
|
+
min-height: 16px;
|
|
5673
|
+
padding-left: 18px;
|
|
5674
|
+
padding-bottom: 2px;
|
|
5675
|
+
line-height: 16px;
|
|
5676
|
+
}
|
|
5677
|
+
|
|
5678
|
+
:root .clio-popup-menu > li:is(.checked, [aria-checked="true"])::before {
|
|
5679
|
+
left: 1px;
|
|
5680
|
+
margin-top: -5px;
|
|
5681
|
+
}
|
|
5682
|
+
|
|
5683
|
+
/* With clio.js there (data-clio-popups), Drawing Board's pop-ups are not the
|
|
5684
|
+
browser's picker: clio.js draws the menu with the theme's paper, pens and
|
|
5685
|
+
shade, which a picker cannot carry. Without clio.js, base-select still does. */
|
|
5686
|
+
@supports (appearance: base-select) {
|
|
5687
|
+
@media (pointer: fine) {
|
|
5688
|
+
:root[data-clio-popups] :root select:not([multiple], [size]:not([size="1"])),
|
|
5689
|
+
:root[data-clio-popups]:root select:not([multiple], [size]:not([size="1"])) {
|
|
5690
|
+
appearance: none;
|
|
5691
|
+
}
|
|
5692
|
+
}
|
|
5693
|
+
}
|
|
5694
|
+
|
|
5695
|
+
/* The dragged outline: the plain band round the frame and shadow (inside the
|
|
5696
|
+
margin), with each corner's patch XORed in. */
|
|
5697
|
+
:root .clio-outline {
|
|
5698
|
+
mask:
|
|
5699
|
+
var(--clio-db-outline-tl) left 0 top 0 / 80px 80px no-repeat border-box exclude,
|
|
5700
|
+
var(--clio-db-outline-tr) right 0 top 0 / 80px 80px no-repeat border-box exclude,
|
|
5701
|
+
var(--clio-db-outline-bl) left 0 bottom 0 / 80px 80px no-repeat border-box exclude,
|
|
5702
|
+
var(--clio-db-outline-br) right 0 bottom 0 / 80px 80px no-repeat border-box exclude,
|
|
5703
|
+
linear-gradient(#000 0 0) content-box exclude,
|
|
5704
|
+
linear-gradient(#000 0 0) 12px 12px / calc(100% - 24px) calc(100% - 24px) no-repeat border-box;
|
|
5705
|
+
}
|
|
5706
|
+
|
|
5707
|
+
/* ---- Placard (Mac OS 8.5, the Appearance SDK's CDEF Tester, frames placard and
|
|
5708
|
+
placard-disabled): a #cebdb5 face in a pencil line whose shade drifts from #333 to
|
|
5709
|
+
#888 (drawn flat in its commonest shade, #555); disabled, a #cdc6bd face with a
|
|
5710
|
+
faint line along the top only. */
|
|
5711
|
+
:root .placard {
|
|
5712
|
+
border-color: #555555;
|
|
5713
|
+
background: #cebdb5;
|
|
5714
|
+
}
|
|
5715
|
+
|
|
5716
|
+
:root .placard:is(:disabled, [aria-disabled="true"], .window.inactive *) {
|
|
5717
|
+
border-color: #b6ada5 #cdc6bd #cdc6bd;
|
|
5718
|
+
background: #cdc6bd;
|
|
5719
|
+
color: #9f9a94;
|
|
5720
|
+
}
|
|
5721
|
+
|
|
3528
5722
|
/* Adaptations the historical machines never needed. Historical sizes are
|
|
3529
5723
|
calibration, not a cage: on a touch screen the controls grow to the
|
|
3530
5724
|
"coarse pointer" sizes from AI System 6's fidelity contract, without any
|
|
@@ -3568,3 +5762,134 @@
|
|
|
3568
5762
|
box-shadow: none;
|
|
3569
5763
|
}
|
|
3570
5764
|
}
|
|
5765
|
+
|
|
5766
|
+
/* Retina and other whole-number pixel ratios: every Mac pixel becomes a solid
|
|
5767
|
+
2x2 or 3x3 block (nearest neighbour), as a 1x screen magnified would show it.
|
|
5768
|
+
At fractional ratios (1.25, 1.5, browser zoom) the browser's smoothing stays:
|
|
5769
|
+
nearest neighbour there gives uneven pixel widths. image-rendering inherits,
|
|
5770
|
+
so the page's own pictures, video and canvas are handed back to smoothing. */
|
|
5771
|
+
@media (resolution: 2dppx), (resolution: 3dppx), (resolution: 4dppx) {
|
|
5772
|
+
:root {
|
|
5773
|
+
image-rendering: pixelated;
|
|
5774
|
+
}
|
|
5775
|
+
|
|
5776
|
+
:where(img, picture, video, canvas, iframe, object, embed) {
|
|
5777
|
+
image-rendering: auto;
|
|
5778
|
+
}
|
|
5779
|
+
}
|
|
5780
|
+
|
|
5781
|
+
/* Optional chrome faces for Platinum and Drawing Board:
|
|
5782
|
+
data-clio-font="virtue" Virtue 3.2.1, Marty P. Pfeiffer's 1997-99 TrueType
|
|
5783
|
+
reworking of Charcoal, (c) Scooter Graphics
|
|
5784
|
+
(https://www.scootergraphics.com/). Ships as
|
|
5785
|
+
fonts/Virtue.woff2, unchanged, with the author's
|
|
5786
|
+
permission (THIRD-PARTY.md).
|
|
5787
|
+
data-clio-font="truth" Truth FB, David Berlow's own 2005 expansion of
|
|
5788
|
+
Charcoal, sold by Font Bureau. Not shipped: install
|
|
5789
|
+
it or add your own @font-face.
|
|
5790
|
+
Set the attribute on <html> or any ancestor. It changes Platinum and
|
|
5791
|
+
Drawing Board only; System 6 and 7 keep Chicago. Clio Sans '97 stays as the
|
|
5792
|
+
fallback. These are outline fonts drawn by the browser, not the measured
|
|
5793
|
+
pixels. */
|
|
5794
|
+
@font-face {
|
|
5795
|
+
font-family: Virtue;
|
|
5796
|
+
src: local("Virtue"), url("fonts/Virtue.woff2") format("woff2");
|
|
5797
|
+
font-display: swap;
|
|
5798
|
+
}
|
|
5799
|
+
|
|
5800
|
+
[data-clio-font="virtue"]:root,
|
|
5801
|
+
[data-clio-font="virtue"] :root,
|
|
5802
|
+
:root [data-clio-font="virtue"] {
|
|
5803
|
+
--clio-font-chrome: Virtue, "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5804
|
+
--clio-font-window-title: Virtue, "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5805
|
+
--clio-font-button: Virtue, "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5806
|
+
}
|
|
5807
|
+
|
|
5808
|
+
[data-clio-font="truth"]:root,
|
|
5809
|
+
[data-clio-font="truth"] :root,
|
|
5810
|
+
:root [data-clio-font="truth"] {
|
|
5811
|
+
--clio-font-chrome: "Truth FB", Truth, "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5812
|
+
--clio-font-window-title: "Truth FB", Truth, "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5813
|
+
--clio-font-button: "Truth FB", Truth, "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5814
|
+
}
|
|
5815
|
+
|
|
5816
|
+
/* Chinese, Japanese and Korean (owner decisions 9 and 10, 2026-11-14).
|
|
5817
|
+
|
|
5818
|
+
Measured: KanjiTalk 7.5.3 and Mac OS 9.0 with the Chinese Language Kits draw CJK text
|
|
5819
|
+
at the Roman geometry: 16px menu and text rows, the same baseline, 12px ideographs whose
|
|
5820
|
+
ink runs from 10px above the baseline to 1px below (tooling/emulator/measure-cjk.sh).
|
|
5821
|
+
So nothing moves; only the fonts change. A localized system's system font is the
|
|
5822
|
+
script's font, Latin included (KanjiTalk draws "Infinite HD" and OK in Osaka), so the
|
|
5823
|
+
CJK font leads every stack.
|
|
5824
|
+
|
|
5825
|
+
Each stack names the period bitmap interface font (Taipei, Beijing, Osaka, Seoul), then
|
|
5826
|
+
Clio's stand-in, Fusion Pixel 12px proportional (OFL-1.1, THIRD-PARTY.md) cut to the
|
|
5827
|
+
character set that bitmap font drew (Big5, GB 2312, JIS X 0208, KS X 1001), then an
|
|
5828
|
+
outline family of the period. The outline families come after the stand-in because
|
|
5829
|
+
current macOS still installs some of them (AppleGothic) as antialiased outlines.
|
|
5830
|
+
A browser fetches a stand-in only for an element in that language that has text in
|
|
5831
|
+
its unicode-range: pages without CJK text never load them. */
|
|
5832
|
+
@font-face {
|
|
5833
|
+
font-family: "Clio Pixel TC";
|
|
5834
|
+
src: url("fonts/FusionPixel12-TC.woff2") format("woff2");
|
|
5835
|
+
font-weight: 100 900;
|
|
5836
|
+
font-display: swap;
|
|
5837
|
+
unicode-range: U+20-F7, U+391-451, U+2013-203E, U+2103-2199, U+2460-247D, U+2500-2642, U+3000-3129, U+32A3, U+4E00-7E9C, U+7F36-8B9E, U+8C37-9483, U+9577-9FA4, U+FA0C-FA0D, U+FE30-FE4F, U+FF01-FFE3;
|
|
5838
|
+
}
|
|
5839
|
+
|
|
5840
|
+
@font-face {
|
|
5841
|
+
font-family: "Clio Pixel SC";
|
|
5842
|
+
src: url("fonts/FusionPixel12-SC.woff2") format("woff2");
|
|
5843
|
+
font-weight: 100 900;
|
|
5844
|
+
font-display: swap;
|
|
5845
|
+
unicode-range: U+20-1DC, U+391-451, U+2015-203B, U+2103-2193, U+2312, U+2460-2642, U+3000-3129, U+3220-3229, U+4E00-7DAE, U+7E3B-8C98, U+8D1D-8ECE, U+8F66-91DC, U+9274-99A8, U+9A6C-9B54, U+9C7C-9CE2, U+9E1F-9FA0, U+FF01-FF5E, U+FFE0-FFE5;
|
|
5846
|
+
}
|
|
5847
|
+
|
|
5848
|
+
@font-face {
|
|
5849
|
+
font-family: "Clio Pixel JA";
|
|
5850
|
+
src: url("fonts/FusionPixel12-JA.woff2") format("woff2");
|
|
5851
|
+
font-weight: 100 900;
|
|
5852
|
+
font-display: swap;
|
|
5853
|
+
unicode-range: U+20-F7, U+391-451, U+2010-203B, U+2103-21D4, U+2312, U+2500-266F, U+3000-30FE, U+4E00-7E9C, U+7F36-8B9A, U+8C37-9481, U+9577-9FA0, U+FF01-FFE5;
|
|
5854
|
+
}
|
|
5855
|
+
|
|
5856
|
+
@font-face {
|
|
5857
|
+
font-family: "Clio Pixel KO";
|
|
5858
|
+
src: url("fonts/FusionPixel12-KO.woff2") format("woff2");
|
|
5859
|
+
font-weight: 100 900;
|
|
5860
|
+
font-display: swap;
|
|
5861
|
+
unicode-range: U+20-167, U+391-451, U+2015-21D4, U+2312, U+2460-266D, U+3000-318E, U+327F, U+4E00-7E9C, U+7F36-8B9A, U+8C37-947F, U+9577-9C57, U+9CE5-9F9C, U+AC00-D79D, U+F900-FA0B, U+FF01-FF5E, U+FFE0-FFE6;
|
|
5862
|
+
}
|
|
5863
|
+
|
|
5864
|
+
:lang(zh) { --clio-font-cjk: Beijing, "Clio Pixel SC", Hei; }
|
|
5865
|
+
:is(:lang(zh-Hant), :lang(zh-TW), :lang(zh-HK), :lang(zh-MO)) { --clio-font-cjk: Taipei, "Clio Pixel TC", "Apple LiGothic"; }
|
|
5866
|
+
:lang(ja) { --clio-font-cjk: Osaka, "Clio Pixel JA"; }
|
|
5867
|
+
:lang(ko) { --clio-font-cjk: Seoul, "Clio Pixel KO", AppleGothic; }
|
|
5868
|
+
|
|
5869
|
+
/* Declared beside --clio-font-cjk, on every element in the language, so var() resolves there. */
|
|
5870
|
+
:is(:lang(zh), :lang(ja), :lang(ko)) {
|
|
5871
|
+
--clio-font-chrome: var(--clio-font-cjk), "Clio Sans '84", Chicago, "ChicagoFLF", Charcoal, Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5872
|
+
--clio-font-text: var(--clio-font-cjk), "Clio Text '84", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5873
|
+
/* Small text keeps the 9px Latin face: the stand-in is a 12px font (KanjiTalk's Finder
|
|
5874
|
+
drew 8px kanji here, from a 9-point Osaka clio.css does not have). */
|
|
5875
|
+
--clio-font-small: "Clio Text '84 9", var(--clio-font-cjk), Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5876
|
+
--clio-font-display: var(--clio-font-cjk), Chicago, "ChicagoFLF", Charcoal, "Helvetica Neue", Arial, sans-serif;
|
|
5877
|
+
}
|
|
5878
|
+
|
|
5879
|
+
/* CJK on the Appearance Manager eras: the same order as 96-cjk.css over the
|
|
5880
|
+
Charcoal stacks. Measured on Mac OS 9.0 with the Chinese Language Kits: the Text
|
|
5881
|
+
control panel's Script pop-up draws 繁體中文 and 简体中文 in 16px rows, ink 2px below
|
|
5882
|
+
the row's top to 12px, 1-bit (frame p9-script-popup-open). */
|
|
5883
|
+
:is(:root :is(:lang(zh), :lang(ja), :lang(ko)), :root:is(:lang(zh), :lang(ja), :lang(ko))) {
|
|
5884
|
+
--clio-font-chrome: var(--clio-font-cjk), Charcoal, "Charcoal CY", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5885
|
+
--clio-font-display: var(--clio-font-cjk), Charcoal, "Charcoal CY", "Clio Sans '97 Display", "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
5886
|
+
--clio-font-window-title: var(--clio-font-cjk), Charcoal, "Charcoal CY", "Clio Sans '97 Title Exact", "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5887
|
+
--clio-font-button: var(--clio-font-cjk), Charcoal, "Charcoal CY", "Clio Sans '97 Exact", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5888
|
+
--clio-font-text: var(--clio-font-cjk), Geneva, "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
5889
|
+
--clio-font-small: Geneva, var(--clio-font-cjk), "Clio Asap", "Helvetica Neue", Arial, sans-serif;
|
|
5890
|
+
}
|
|
5891
|
+
|
|
5892
|
+
/* Drawing Board's own title stack (92-drawingboard.css), CJK first. */
|
|
5893
|
+
:is(:root :is(:lang(zh), :lang(ja), :lang(ko)), :root:is(:lang(zh), :lang(ja), :lang(ko))) {
|
|
5894
|
+
--clio-font-window-title: var(--clio-font-cjk), Charcoal, "Charcoal CY", "Clio Sans '97 Title", "Clio Sans '97", "Clio Asap", Geneva, "Helvetica Neue", Arial, sans-serif;
|
|
5895
|
+
}
|