PluginProbe
OpenStation: Desktop Windows, Dock & Virtual Desktops for WP Admin / 1.1.11
OpenStation: Desktop Windows, Dock & Virtual Desktops for WP Admin v1.1.11
1.1.11 1.1.10 1.1.9 1.1.8 1.1.7 1.1.6 1.1.5 1.1.4 1.1.3 1.1.2 1.1.1 1.1.0 1.0.1 1.0.0 0.9.8 0.9.7 0.9.6 0.9.4 0.9.5 0.9.3 0.9.2 0.9.1 0.9.0 0.8.9 0.8.8 All 35 releases
← All changes | assets/css/dock-peek.css +89 -89 0.9.8 → 1.1.11 View file →
@@ -1,6 +1,6 @@
1 1 /**
2 - * Desktop Mode — Dock Peek.
2 + * OpenStation — Dock Peek.
3 3 *
4 4 * Hover-reveal popover that fans out from a multi-instance dock tile.
5 5 * Each card is styled as a miniature window — faux titlebar with
6 6 * traffic-light dots + the page icon + the live window title, tinted
@@ -26,9 +26,9 @@
26 26 present (the icon should feel responsive even when there's no
27 27 peek to show).
28 28 ────────────────────────────────────────────────────────────────── */
29 29
30 -.desktop-mode-dock__item-primary {
30 +.os-dock__item-primary {
31 31 transition:
32 32 transform 240ms cubic-bezier( 0.34, 1.56, 0.64, 1 ),
33 33 filter 240ms ease-out;
34 34 }
@@ -43,17 +43,17 @@
43 43 * DOCK_ITEM texture from under the cursor on any theme that ships
44 44 * one. dock.css sets the resting wash as a colour for exactly this
45 45 * reason — "so it composes with the texture rather than erasing it" —
46 46 * and this rule quietly undid it on hover. */
47 -.desktop-mode-dock__item:hover .desktop-mode-dock__item-primary,
48 -.desktop-mode-dock__item[data-peek-active] .desktop-mode-dock__item-primary {
47 +.os-dock__item:hover .os-dock__item-primary,
48 +.os-dock__item[data-peek-active] .os-dock__item-primary {
49 49 background-color: var(
50 - --desktop-mode-dock-item-bg-hover,
50 + --os-dock-item-bg-hover,
51 51 rgba( 255, 255, 255, 0.15 )
52 52 );
53 53 color: var(
54 - --desktop-mode-dock-icon-color-hover,
55 - var( --wpd-fg-on-accent, #fff )
54 + --os-dock-icon-color-hover,
55 + var( --os-ui-fg-on-accent, #fff )
56 56 );
57 57 transform: scale( 1.08 );
58 58 filter: drop-shadow( 0 4px 8px rgba( 0, 0, 0, 0.18 ) );
59 59 }
@@ -58,11 +58,11 @@
58 58 filter: drop-shadow( 0 4px 8px rgba( 0, 0, 0, 0.18 ) );
59 59 }
60 60
61 61 @media ( prefers-reduced-motion: reduce ) {
62 - .desktop-mode-dock__item-primary,
63 - .desktop-mode-dock__item:hover .desktop-mode-dock__item-primary,
64 - .desktop-mode-dock__item[data-peek-active] .desktop-mode-dock__item-primary {
62 + .os-dock__item-primary,
63 + .os-dock__item:hover .os-dock__item-primary,
64 + .os-dock__item[data-peek-active] .os-dock__item-primary {
65 65 transition: none;
66 66 transform: none;
67 67 }
68 68 }
@@ -70,14 +70,14 @@
70 70 /* ──────────────────────────────────────────────────────────────────
71 71 Popover surface — glass material, body-attached.
72 72 ────────────────────────────────────────────────────────────────── */
73 73
74 -.desktop-mode-dock-peek {
74 +.os-dock-peek {
75 75 position: fixed;
76 76 z-index: 999999;
77 77 padding: 10px;
78 78 border-radius: 16px;
79 - background: color-mix( in srgb, var( --desktop-mode-bg, #1d2327 ) 76%, transparent );
79 + background: color-mix( in srgb, var( --os-bg, #1d2327 ) 76%, transparent );
80 80 backdrop-filter: blur( 28px ) saturate( 180% );
81 81 -webkit-backdrop-filter: blur( 28px ) saturate( 180% );
82 82 border: 1px solid rgba( 255, 255, 255, 0.12 );
83 83 box-shadow:
@@ -83,9 +83,9 @@
83 83 box-shadow:
84 84 0 1px 0 rgba( 255, 255, 255, 0.08 ) inset,
85 85 0 16px 40px -10px rgba( 0, 0, 0, 0.55 ),
86 86 0 6px 16px -4px rgba( 0, 0, 0, 0.36 );
87 - color: var( --desktop-mode-fg, #fff );
87 + color: var( --os-fg, #fff );
88 88 pointer-events: auto;
89 89 opacity: 0;
90 90 display: flex;
91 91 flex-direction: column;
@@ -99,14 +99,14 @@
99 99 /* Bottom-dock orientation: cards form a horizontal reel. The popover
100 100 caps in WIDTH instead of height, and the cards container scrolls
101 101 horizontally. Visually mirrors how taskbar-style docks work — a
102 102 row of mini-windows above the icon, not a stack. */
103 -.desktop-mode-dock-peek[ data-orientation = "bottom" ] {
103 +.os-dock-peek[ data-orientation = "bottom" ] {
104 104 max-height: none;
105 105 max-width: min( 92vw, 920px );
106 106 }
107 107
108 -.desktop-mode-dock-peek--open {
108 +.os-dock-peek--open {
109 109 opacity: 1;
110 110 }
111 111
112 112 /* Anchor flips by orientation. The popover's anchor point (the
@@ -119,9 +119,9 @@
119 119 Docks: top-aligned to the tile so the popover grows downward
120 120 when minimized cards expand. The old vertical-centre
121 121 anchor pushed the top edge into the browser's bar on growth.
122 122 Bottom dock: stays above the tile, growing upward. */
123 -.desktop-mode-dock-peek[ data-orientation = "left" ] {
123 +.os-dock-peek[ data-orientation = "left" ] {
124 124 transform:
125 125 translate(
126 126 var( --peek-clamp-x, 0 ),
127 127 var( --peek-clamp-y, 0 )
@@ -126,9 +126,9 @@
126 126 var( --peek-clamp-x, 0 ),
127 127 var( --peek-clamp-y, 0 )
128 128 );
129 129 }
130 -.desktop-mode-dock-peek[ data-orientation = "right" ] {
130 +.os-dock-peek[ data-orientation = "right" ] {
131 131 transform:
132 132 translate(
133 133 calc( -100% + var( --peek-clamp-x, 0px ) ),
134 134 var( --peek-clamp-y, 0 )
@@ -133,9 +133,9 @@
133 133 calc( -100% + var( --peek-clamp-x, 0px ) ),
134 134 var( --peek-clamp-y, 0 )
135 135 );
136 136 }
137 -.desktop-mode-dock-peek[ data-orientation = "bottom" ] {
137 +.os-dock-peek[ data-orientation = "bottom" ] {
138 138 transform:
139 139 translate(
140 140 calc( -50% + var( --peek-clamp-x, 0px ) ),
141 141 calc( -100% + var( --peek-clamp-y, 0px ) )
@@ -145,9 +145,9 @@
145 145 /* ──────────────────────────────────────────────────────────────────
146 146 Cards.
147 147 ────────────────────────────────────────────────────────────────── */
148 148
149 -.desktop-mode-dock-peek__cards {
149 +.os-dock-peek__cards {
150 150 display: flex;
151 151 flex-direction: column;
152 152 gap: 8px;
153 153 min-width: 280px;
@@ -168,9 +168,9 @@
168 168 }
169 169
170 170 /* Bottom dock: cards lay out as a horizontal reel and scroll on the
171 171 X-axis instead of Y. */
172 -.desktop-mode-dock-peek[ data-orientation = "bottom" ] .desktop-mode-dock-peek__cards {
172 +.os-dock-peek[ data-orientation = "bottom" ] .os-dock-peek__cards {
173 173 flex-direction: row;
174 174 min-width: 0;
175 175 overflow-x: auto;
176 176 overflow-y: hidden;
@@ -176,9 +176,9 @@
176 176 overflow-y: hidden;
177 177 max-width: 100%;
178 178 }
179 179
180 -.desktop-mode-dock-peek[ data-orientation = "bottom" ] .desktop-mode-dock-peek__card {
180 +.os-dock-peek[ data-orientation = "bottom" ] .os-dock-peek__card {
181 181 /* Bottom-dock cards are narrower than left/right dock cards —
182 182 a horizontal reel reads better with thumbnail-shaped tiles
183 183 (Mission Control / Stage Manager) than with full-width
184 184 sidebar-shaped ones. flex: 0 0 auto so a long reel doesn't
@@ -191,37 +191,37 @@
191 191 points back at the icon. */
192 192 transform: translateY( 10px ) scale( 0.96 );
193 193 }
194 194
195 -.desktop-mode-dock-peek[ data-orientation = "bottom" ] .desktop-mode-dock-peek__card--ghost {
195 +.os-dock-peek[ data-orientation = "bottom" ] .os-dock-peek__card--ghost {
196 196 width: 200px;
197 197 min-height: 116px;
198 198 }
199 199
200 -.desktop-mode-dock-peek[ data-orientation = "bottom" ].desktop-mode-dock-peek--open
201 - .desktop-mode-dock-peek__card {
200 +.os-dock-peek[ data-orientation = "bottom" ].os-dock-peek--open
201 + .os-dock-peek__card {
202 202 transform: translateY( 0 ) scale( 1 );
203 203 }
204 204
205 -.desktop-mode-dock-peek__cards::-webkit-scrollbar {
205 +.os-dock-peek__cards::-webkit-scrollbar {
206 206 width: 8px;
207 207 height: 8px;
208 208 }
209 -.desktop-mode-dock-peek__cards::-webkit-scrollbar-track {
209 +.os-dock-peek__cards::-webkit-scrollbar-track {
210 210 background: transparent;
211 211 }
212 -.desktop-mode-dock-peek__cards::-webkit-scrollbar-thumb {
212 +.os-dock-peek__cards::-webkit-scrollbar-thumb {
213 213 background: rgba( 255, 255, 255, 0.18 );
214 214 border-radius: 8px;
215 215 border: 2px solid transparent;
216 216 background-clip: padding-box;
217 217 }
218 -.desktop-mode-dock-peek__cards::-webkit-scrollbar-thumb:hover {
218 +.os-dock-peek__cards::-webkit-scrollbar-thumb:hover {
219 219 background: rgba( 255, 255, 255, 0.32 );
220 220 background-clip: padding-box;
221 221 }
222 222
223 -.desktop-mode-dock-peek__card {
223 +.os-dock-peek__card {
224 224 /* Card frame — looks like a tiny window. */
225 225 display: flex;
226 226 flex-direction: column;
227 227 overflow: hidden;
@@ -247,9 +247,9 @@
247 247 border-color 180ms ease-out,
248 248 box-shadow 180ms ease-out;
249 249 }
250 250
251 -.desktop-mode-dock-peek--open .desktop-mode-dock-peek__card {
251 +.os-dock-peek--open .os-dock-peek__card {
252 252 opacity: 1;
253 253 transform: translateX( 0 ) scale( 1 );
254 254 }
255 255
@@ -254,17 +254,17 @@
254 254 }
255 255
256 256 /* Aero Peek hover: accent border + glow on every previewed card, not
257 257 just minimumzd ones.*/
258 -.desktop-mode-dock-peek__card--instance:hover {
259 - border-color: var( --desktop-mode-accent, #2271b1 );
258 +.os-dock-peek__card--instance:hover {
259 + border-color: var( --os-accent, #2271b1 );
260 260 box-shadow:
261 - 0 0 14px -2px var( --desktop-mode-accent, #2271b1 ),
261 + 0 0 14px -2px var( --os-accent, #2271b1 ),
262 262 0 4px 14px -4px rgba( 0, 0, 0, 0.4 );
263 263 }
264 264
265 -.desktop-mode-dock-peek__card:focus-visible {
266 - outline: 2px solid var( --wpd-accent, #2271b1 );
265 +.os-dock-peek__card:focus-visible {
266 + outline: 2px solid var( --os-ui-accent, #2271b1 );
267 267 outline-offset: 2px;
268 268 }
269 269
270 270 /* ──────────────────────────────────────────────────────────────────
@@ -270,9 +270,9 @@
270 270 /* ──────────────────────────────────────────────────────────────────
271 271 Mini-window chrome — instance card faux titlebar.
272 272 ────────────────────────────────────────────────────────────────── */
273 273
274 -.desktop-mode-dock-peek__card-titlebar {
274 +.os-dock-peek__card-titlebar {
275 275 display: flex;
276 276 align-items: center;
277 277 gap: 8px;
278 278 padding: 8px 10px;
@@ -280,9 +280,9 @@
280 280 reads as a faithful shrink of the real window. Falls back to a
281 281 neutral translucent gradient when the variable isn't set (early
282 282 load, theme without the token, tests). */
283 283 background: var(
284 - --desktop-mode-titlebar-bg-focused,
284 + --os-titlebar-bg-focused,
285 285 linear-gradient(
286 286 to bottom,
287 287 rgba( 255, 255, 255, 0.10 ),
288 288 rgba( 255, 255, 255, 0.04 )
@@ -288,10 +288,10 @@
288 288 rgba( 255, 255, 255, 0.04 )
289 289 )
290 290 );
291 291 color: var(
292 - --desktop-mode-titlebar-color-focused,
293 - var( --desktop-mode-fg, #fff )
292 + --os-titlebar-color-focused,
293 + var( --os-fg, #fff )
294 294 );
295 295 border-bottom: 1px solid rgba( 0, 0, 0, 0.12 );
296 296 font-size: 12px;
297 297 line-height: 1.2;
@@ -296,15 +296,15 @@
296 296 font-size: 12px;
297 297 line-height: 1.2;
298 298 }
299 299
300 -.desktop-mode-dock-peek__card-dots {
300 +.os-dock-peek__card-dots {
301 301 display: inline-flex;
302 302 gap: 4px;
303 303 flex: 0 0 auto;
304 304 }
305 305
306 -.desktop-mode-dock-peek__card-dots i {
306 +.os-dock-peek__card-dots i {
307 307 width: 8px;
308 308 height: 8px;
309 309 border-radius: 50%;
310 310 background: rgba( 255, 255, 255, 0.22 );
@@ -309,19 +309,19 @@
309 309 border-radius: 50%;
310 310 background: rgba( 255, 255, 255, 0.22 );
311 311 }
312 312
313 -.desktop-mode-dock-peek__card-dots i:nth-child( 1 ) {
313 +.os-dock-peek__card-dots i:nth-child( 1 ) {
314 314 background: #ff5f57;
315 315 }
316 -.desktop-mode-dock-peek__card-dots i:nth-child( 2 ) {
316 +.os-dock-peek__card-dots i:nth-child( 2 ) {
317 317 background: #febc2e;
318 318 }
319 -.desktop-mode-dock-peek__card-dots i:nth-child( 3 ) {
319 +.os-dock-peek__card-dots i:nth-child( 3 ) {
320 320 background: #28c840;
321 321 }
322 322
323 -.desktop-mode-dock-peek__card-icon {
323 +.os-dock-peek__card-icon {
324 324 flex: 0 0 auto;
325 325 width: 14px;
326 326 height: 14px;
327 327 font-size: 14px;
@@ -328,9 +328,9 @@
328 328 line-height: 1;
329 329 opacity: 0.92;
330 330 }
331 331
332 -.desktop-mode-dock-peek__card-label {
332 +.os-dock-peek__card-label {
333 333 flex: 1 1 auto;
334 334 overflow: hidden;
335 335 text-overflow: ellipsis;
336 336 white-space: nowrap;
@@ -344,9 +344,9 @@
344 344 instances of the same page (`edit.php` and `edit.php-2`) read as
345 345 visually distinct without us having to invent unique colors.
346 346 ────────────────────────────────────────────────────────────────── */
347 347
348 -.desktop-mode-dock-peek__card-body {
348 +.os-dock-peek__card-body {
349 349 flex: 1 1 auto;
350 350 display: flex;
351 351 flex-direction: column;
352 352 gap: 6px;
@@ -358,9 +358,9 @@
358 358 hsl( var( --peek-card-hue, 210 ) 55% 14% / 0.5 )
359 359 );
360 360 }
361 361
362 -.desktop-mode-dock-peek__card-line {
362 +.os-dock-peek__card-line {
363 363 display: block;
364 364 height: 6px;
365 365 border-radius: 3px;
366 366 background: rgba( 255, 255, 255, 0.16 );
@@ -365,15 +365,15 @@
365 365 border-radius: 3px;
366 366 background: rgba( 255, 255, 255, 0.16 );
367 367 }
368 368
369 -.desktop-mode-dock-peek__card-line:nth-child( 1 ) {
369 +.os-dock-peek__card-line:nth-child( 1 ) {
370 370 width: 80%;
371 371 }
372 -.desktop-mode-dock-peek__card-line:nth-child( 2 ) {
372 +.os-dock-peek__card-line:nth-child( 2 ) {
373 373 width: 60%;
374 374 }
375 -.desktop-mode-dock-peek__card-line:nth-child( 3 ) {
375 +.os-dock-peek__card-line:nth-child( 3 ) {
376 376 width: 70%;
377 377 }
378 378
379 379 /* Plugin-customized body — drop the default tinted background +
@@ -379,9 +379,9 @@
379 379 /* Plugin-customized body — drop the default tinted background +
380 380 ghost-line padding so the plugin's own markup gets a clean canvas.
381 381 Plugins that want the tinted look back can re-add their own
382 382 background; otherwise they get a transparent flex container. */
383 -.desktop-mode-dock-peek__card-body--custom {
383 +.os-dock-peek__card-body--custom {
384 384 background: transparent;
385 385 padding: 0;
386 386 gap: 0;
387 387 }
@@ -394,9 +394,9 @@
394 394 user's WP profile accent so the card "belongs" to the active
395 395 color scheme.
396 396 ────────────────────────────────────────────────────────────────── */
397 397
398 -.desktop-mode-dock-peek__card-body--os-settings {
398 +.os-dock-peek__card-body--os-settings {
399 399 display: flex;
400 400 flex-direction: column;
401 401 align-items: center;
402 402 justify-content: center;
@@ -406,12 +406,12 @@
406 406 135deg,
407 407 color-mix( in srgb, var( --wp-admin-theme-color, #2271b1 ) 65%, #1d2327 ) 0%,
408 408 color-mix( in srgb, var( --wp-admin-theme-color, #2271b1 ) 35%, #1d2327 ) 100%
409 409 );
410 - color: var( --wpd-fg-on-accent, #fff );
410 + color: var( --os-ui-fg-on-accent, #fff );
411 411 }
412 412
413 -.desktop-mode-dock-peek__os-hero {
413 +.os-dock-peek__os-hero {
414 414 font-size: 32px;
415 415 width: 32px;
416 416 height: 32px;
417 417 line-height: 1;
@@ -418,9 +418,9 @@
418 418 opacity: 0.95;
419 419 filter: drop-shadow( 0 1px 2px rgba( 0, 0, 0, 0.4 ) );
420 420 }
421 421
422 -.desktop-mode-dock-peek__os-subtitle {
422 +.os-dock-peek__os-subtitle {
423 423 font-size: 11px;
424 424 font-weight: 500;
425 425 letter-spacing: 0.04em;
426 426 text-transform: uppercase;
@@ -427,15 +427,15 @@
427 427 opacity: 0.85;
428 428 text-shadow: 0 1px 2px rgba( 0, 0, 0, 0.3 );
429 429 }
430 430
431 -.desktop-mode-dock-peek__os-tabs {
431 +.os-dock-peek__os-tabs {
432 432 display: flex;
433 433 gap: 6px;
434 434 margin-top: 2px;
435 435 }
436 436
437 -.desktop-mode-dock-peek__os-tab {
437 +.os-dock-peek__os-tab {
438 438 width: 18px;
439 439 height: 18px;
440 440 font-size: 13px;
441 441 line-height: 18px;
@@ -452,9 +452,9 @@
452 452 three "slips" peeking from behind the icon + a count chip in the
453 453 corner. The `data-empty` attribute toggles between the two.
454 454 ────────────────────────────────────────────────────────────────── */
455 455
456 -.desktop-mode-dock-peek__card-body--recycle-bin {
456 +.os-dock-peek__card-body--recycle-bin {
457 457 display: flex;
458 458 flex-direction: column;
459 459 align-items: center;
460 460 justify-content: center;
@@ -467,9 +467,9 @@
467 467 );
468 468 color: rgba( 255, 255, 255, 0.92 );
469 469 }
470 470
471 -.desktop-mode-dock-peek__bin-stage {
471 +.os-dock-peek__bin-stage {
472 472 position: relative;
473 473 width: 44px;
474 474 height: 44px;
475 475 display: flex;
@@ -476,9 +476,9 @@
476 476 align-items: center;
477 477 justify-content: center;
478 478 }
479 479
480 -.desktop-mode-dock-peek__bin-icon {
480 +.os-dock-peek__bin-icon {
481 481 font-size: 32px;
482 482 width: 32px;
483 483 height: 32px;
484 484 line-height: 1;
@@ -486,9 +486,9 @@
486 486 filter: drop-shadow( 0 1px 2px rgba( 0, 0, 0, 0.4 ) );
487 487 z-index: 1;
488 488 }
489 489
490 -.desktop-mode-dock-peek__bin-stack {
490 +.os-dock-peek__bin-stack {
491 491 position: absolute;
492 492 inset: 0;
493 493 display: flex;
494 494 align-items: flex-end;
@@ -497,14 +497,14 @@
497 497 opacity: 0;
498 498 transition: opacity 200ms ease-out;
499 499 }
500 500
501 -.desktop-mode-dock-peek__card-body--recycle-bin[ data-empty = "false" ]
502 - .desktop-mode-dock-peek__bin-stack {
501 +.os-dock-peek__card-body--recycle-bin[ data-empty = "false" ]
502 + .os-dock-peek__bin-stack {
503 503 opacity: 1;
504 504 }
505 505
506 -.desktop-mode-dock-peek__bin-slip {
506 +.os-dock-peek__bin-slip {
507 507 position: absolute;
508 508 width: 22px;
509 509 height: 4px;
510 510 border-radius: 1px;
@@ -511,22 +511,22 @@
511 511 background: rgba( 255, 255, 255, 0.55 );
512 512 bottom: 6px;
513 513 }
514 514
515 -.desktop-mode-dock-peek__bin-slip:nth-child( 1 ) {
515 +.os-dock-peek__bin-slip:nth-child( 1 ) {
516 516 transform: translate( -10px, -16px ) rotate( -8deg );
517 517 background: rgba( 255, 255, 255, 0.45 );
518 518 }
519 -.desktop-mode-dock-peek__bin-slip:nth-child( 2 ) {
519 +.os-dock-peek__bin-slip:nth-child( 2 ) {
520 520 transform: translate( 8px, -20px ) rotate( 6deg );
521 521 background: rgba( 255, 255, 255, 0.5 );
522 522 }
523 -.desktop-mode-dock-peek__bin-slip:nth-child( 3 ) {
523 +.os-dock-peek__bin-slip:nth-child( 3 ) {
524 524 transform: translate( -2px, -22px ) rotate( -2deg );
525 525 background: rgba( 255, 255, 255, 0.6 );
526 526 }
527 527
528 -.desktop-mode-dock-peek__bin-label {
528 +.os-dock-peek__bin-label {
529 529 font-size: 11px;
530 530 font-weight: 500;
531 531 letter-spacing: 0.02em;
532 532 color: rgba( 255, 255, 255, 0.78 );
@@ -531,10 +531,10 @@
531 531 letter-spacing: 0.02em;
532 532 color: rgba( 255, 255, 255, 0.78 );
533 533 }
534 534
535 -.desktop-mode-dock-peek__card-body--recycle-bin[ data-empty = "false" ]
536 - .desktop-mode-dock-peek__bin-label {
535 +.os-dock-peek__card-body--recycle-bin[ data-empty = "false" ]
536 + .os-dock-peek__bin-label {
537 537 color: var( --wp-admin-theme-color, #4f9cff );
538 538 font-weight: 600;
539 539 }
540 540
@@ -551,9 +551,9 @@
551 551 and opacity ramps to full — the card "solidifies" into the same
552 552 visual weight as an instance card.
553 553 ────────────────────────────────────────────────────────────────── */
554 554
555 -.desktop-mode-dock-peek__card--ghost {
555 +.os-dock-peek__card--ghost {
556 556 display: flex;
557 557 align-items: center;
558 558 justify-content: center;
559 559 gap: 10px;
@@ -563,30 +563,30 @@
563 563 border-style: dashed;
564 564 border-color: rgba( 255, 255, 255, 0.34 );
565 565 /* A self-contained dark translucent fill so the white label
566 566 reads on light wallpapers / light color schemes too. The
567 - popover's parent surface uses `color-mix(--desktop-mode-bg)`,
567 + popover's parent surface uses `color-mix(--os-bg)`,
568 568 which goes near-white on light themes — without our own
569 569 backdrop the Ghost Card was white-on-white. */
570 - background: var( --wpd-scrim, rgba( 0, 0, 0, 0.32 ) );
571 - color: var( --wpd-fg-on-accent, #fff );
570 + background: var( --os-ui-scrim, rgba( 0, 0, 0, 0.32 ) );
571 + color: var( --os-ui-fg-on-accent, #fff );
572 572 text-shadow: 0 1px 2px rgba( 0, 0, 0, 0.45 );
573 573 font-size: 13px;
574 574 font-weight: 500;
575 - animation: desktop-mode-dock-peek-breathe 2400ms ease-in-out infinite;
575 + animation: os-dock-peek-breathe 2400ms ease-in-out infinite;
576 576 }
577 577
578 -.desktop-mode-dock-peek__card--ghost:hover {
578 +.os-dock-peek__card--ghost:hover {
579 579 border-style: solid;
580 580 border-color: rgba( 255, 255, 255, 0.55 );
581 - background: var( --wpd-scrim, rgba( 0, 0, 0, 0.45 ) );
582 - color: var( --wpd-fg-on-accent, #fff );
581 + background: var( --os-ui-scrim, rgba( 0, 0, 0, 0.45 ) );
582 + color: var( --os-ui-fg-on-accent, #fff );
583 583 animation: none;
584 584 transform: scale( 1.02 );
585 585 box-shadow: 0 4px 14px -4px rgba( 0, 0, 0, 0.5 );
586 586 }
587 587
588 -.desktop-mode-dock-peek__card-plus {
588 +.os-dock-peek__card-plus {
589 589 flex: 0 0 auto;
590 590 display: inline-flex;
591 591 align-items: center;
592 592 justify-content: center;
@@ -603,13 +603,13 @@
603 603 text-shadow: 0 1px 2px rgba( 0, 0, 0, 0.45 );
604 604 transition: color 160ms ease-out;
605 605 }
606 606
607 -.desktop-mode-dock-peek__card--ghost:hover .desktop-mode-dock-peek__card-plus {
608 - color: var( --wpd-accent, #4f9cff );
607 +.os-dock-peek__card--ghost:hover .os-dock-peek__card-plus {
608 + color: var( --os-ui-accent, #4f9cff );
609 609 }
610 610
611 -@keyframes desktop-mode-dock-peek-breathe {
611 +@keyframes os-dock-peek-breathe {
612 612 0%, 100% {
613 613 opacity: 0.74;
614 614 transform: scale( 1 );
615 615 }
@@ -619,16 +619,16 @@
619 619 }
620 620 }
621 621
622 622 @media ( prefers-reduced-motion: reduce ) {
623 - .desktop-mode-dock-peek,
624 - .desktop-mode-dock-peek__card,
625 - .desktop-mode-dock-peek__card--ghost {
623 + .os-dock-peek,
624 + .os-dock-peek__card,
625 + .os-dock-peek__card--ghost {
626 626 transition: opacity 80ms linear;
627 627 animation: none !important;
628 628 transform: none !important;
629 629 }
630 - .desktop-mode-dock-peek--open .desktop-mode-dock-peek__card {
630 + .os-dock-peek--open .os-dock-peek__card {
631 631 transform: none;
632 632 }
633 633 }
634 634
@@ -648,11 +648,11 @@
648 648 }
649 649 }
650 650
651 651 /* Collapse minimized cards to just the titlebar. */
652 -.desktop-mode-dock-peek__card[data-state="minimized"] {
652 +.os-dock-peek__card[data-state="minimized"] {
653 653 min-height: 0;
654 654 opacity: 0.85;
655 655 }
656 -.desktop-mode-dock-peek__card[data-state="minimized"] > :not(.desktop-mode-dock-peek__card-titlebar) {
656 +.os-dock-peek__card[data-state="minimized"] > :not(.os-dock-peek__card-titlebar) {
657 657 display: none;
658 658 }