@floegence/floe-webapp-core 0.36.42 → 0.36.44

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.
Files changed (31) hide show
  1. package/dist/components/icons/index.d.ts +2 -0
  2. package/dist/components/icons/index.js +419 -397
  3. package/dist/components/workbench/WorkbenchCanvas.d.ts +45 -2
  4. package/dist/components/workbench/WorkbenchCanvas.js +265 -66
  5. package/dist/components/workbench/WorkbenchCanvasField.d.ts +47 -2
  6. package/dist/components/workbench/WorkbenchCanvasField.js +258 -78
  7. package/dist/components/workbench/WorkbenchFilterBar.d.ts +9 -7
  8. package/dist/components/workbench/WorkbenchFilterBar.js +233 -145
  9. package/dist/components/workbench/WorkbenchLayerObjects.d.ts +136 -0
  10. package/dist/components/workbench/WorkbenchLayerObjects.js +999 -0
  11. package/dist/components/workbench/WorkbenchOverlay.d.ts +4 -1
  12. package/dist/components/workbench/WorkbenchOverlay.js +59 -29
  13. package/dist/components/workbench/WorkbenchSurface.d.ts +23 -11
  14. package/dist/components/workbench/WorkbenchSurface.js +315 -195
  15. package/dist/components/workbench/WorkbenchWidget.js +37 -37
  16. package/dist/components/workbench/index.d.ts +2 -1
  17. package/dist/components/workbench/types.d.ts +96 -1
  18. package/dist/components/workbench/types.js +12 -4
  19. package/dist/components/workbench/useWorkbenchModel.d.ts +62 -4
  20. package/dist/components/workbench/useWorkbenchModel.js +790 -253
  21. package/dist/components/workbench/widgets/widgetRegistry.d.ts +1 -1
  22. package/dist/components/workbench/workbenchHelpers.d.ts +5 -5
  23. package/dist/components/workbench/workbenchHelpers.js +345 -154
  24. package/dist/components/workbench/workbenchOptions.d.ts +43 -0
  25. package/dist/components/workbench/workbenchOptions.js +112 -0
  26. package/dist/full.js +620 -618
  27. package/dist/icons.js +71 -69
  28. package/dist/styles.css +1 -1
  29. package/dist/workbench.css +1122 -26
  30. package/dist/workbench.js +52 -36
  31. package/package.json +1 -1
@@ -214,38 +214,1009 @@
214
214
  inset: 0;
215
215
  pointer-events: none;
216
216
  overflow: hidden;
217
- z-index: 3;
217
+ z-index: 13;
218
+ }
219
+
220
+ .workbench-canvas__projected-layer.is-work-layer-locked > .workbench-widget,
221
+ .workbench-canvas__projected-layer.is-work-layer-locked > .workbench-sticky {
222
+ pointer-events: none;
223
+ opacity: 0.16;
224
+ filter: saturate(0.45) contrast(0.86);
218
225
  }
219
226
 
220
227
  .workbench-canvas__grid {
221
228
  position: absolute;
222
- inset: 0;
229
+ inset: 0;
230
+ pointer-events: none;
231
+ background-image:
232
+ linear-gradient(
233
+ to right,
234
+ color-mix(in srgb, var(--border, #e5e5e5) 42%, transparent) 1px,
235
+ transparent 1px
236
+ ),
237
+ linear-gradient(
238
+ to bottom,
239
+ color-mix(in srgb, var(--border, #e5e5e5) 42%, transparent) 1px,
240
+ transparent 1px
241
+ ),
242
+ radial-gradient(
243
+ circle,
244
+ color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent) 0.9px,
245
+ transparent 1px
246
+ );
247
+ background-size:
248
+ var(--wb-grid-major) var(--wb-grid-major),
249
+ var(--wb-grid-major) var(--wb-grid-major),
250
+ var(--wb-grid-minor) var(--wb-grid-minor);
251
+ background-position:
252
+ 0 0,
253
+ 0 0,
254
+ var(--wb-grid-minor-offset) var(--wb-grid-minor-offset);
255
+ opacity: 0.78;
256
+ }
257
+
258
+ .workbench-background-layer,
259
+ .workbench-annotation-layer,
260
+ .workbench-work-layer,
261
+ .workbench-control-overlay-layer {
262
+ position: absolute;
263
+ inset: 0;
264
+ }
265
+
266
+ .workbench-background-layer {
267
+ pointer-events: none;
268
+ z-index: 1;
269
+ }
270
+
271
+ .workbench-background-layer.is-editable {
272
+ pointer-events: none;
273
+ }
274
+
275
+ .workbench-background-layer.is-filtered-out,
276
+ .workbench-annotation-layer.is-filtered-out,
277
+ .workbench-sticky.is-filtered-out {
278
+ opacity: 0;
279
+ pointer-events: none;
280
+ }
281
+
282
+ .workbench-annotation-layer {
283
+ pointer-events: none;
284
+ z-index: 2;
285
+ }
286
+
287
+ .workbench-annotation-layer.is-editable {
288
+ pointer-events: none;
289
+ }
290
+
291
+ .workbench-work-layer {
292
+ z-index: 10;
293
+ }
294
+
295
+ .workbench-control-overlay-layer {
296
+ pointer-events: none;
297
+ z-index: 20;
298
+ }
299
+
300
+ .workbench-canvas__field.is-work-layer-muted .workbench-work-layer {
301
+ pointer-events: none;
302
+ }
303
+
304
+ .workbench-canvas__field.is-work-layer-muted .workbench-work-layer > :is(.workbench-widget, .workbench-sticky) {
305
+ opacity: 0.16;
306
+ filter: saturate(0.45) contrast(0.86);
307
+ }
308
+
309
+ /* ------------------------------------------------------------------ */
310
+ /* Workbench freeform layers */
311
+ /* ------------------------------------------------------------------ */
312
+ .workbench-background-region,
313
+ .workbench-text-annotation,
314
+ .workbench-sticky {
315
+ position: absolute;
316
+ top: 0;
317
+ left: 0;
318
+ box-sizing: border-box;
319
+ }
320
+
321
+ .workbench-text-annotation,
322
+ .workbench-sticky {
323
+ will-change: transform;
324
+ }
325
+
326
+ .workbench-background-region {
327
+ border-radius: 0;
328
+ background-color: var(--workbench-region-surface, var(--workbench-region-fill));
329
+ opacity: 1;
330
+ border: none;
331
+ box-shadow: none;
332
+ pointer-events: none;
333
+ }
334
+
335
+ .workbench-background-region.is-transforming {
336
+ will-change: transform;
337
+ }
338
+
339
+ .workbench-background-region.is-editable {
340
+ pointer-events: auto;
341
+ cursor: move;
342
+ }
343
+
344
+ .workbench-background-region.is-material-dotted {
345
+ background-image:
346
+ radial-gradient(circle, var(--workbench-region-ink) 1.45px, transparent 1.65px);
347
+ background-position: 0 0;
348
+ background-size: 11px 11px;
349
+ }
350
+
351
+ .workbench-background-region.is-material-grid {
352
+ background-image:
353
+ linear-gradient(var(--workbench-region-ink) 1px, transparent 1px),
354
+ linear-gradient(90deg, var(--workbench-region-ink) 1px, transparent 1px);
355
+ background-size: 28px 28px, 28px 28px;
356
+ }
357
+
358
+ .workbench-background-region.is-material-hatched {
359
+ background-image:
360
+ repeating-linear-gradient(
361
+ 135deg,
362
+ var(--workbench-region-ink) 0 1.2px,
363
+ transparent 1.2px 9px
364
+ );
365
+ }
366
+
367
+ .workbench-background-region.is-material-glass {
368
+ background:
369
+ linear-gradient(135deg, var(--workbench-region-highlight), transparent 58%),
370
+ var(--workbench-region-surface, var(--workbench-region-fill));
371
+ }
372
+
373
+ .workbench-background-region__toolbar,
374
+ .workbench-text-annotation__toolbar {
375
+ position: absolute;
376
+ left: -8px;
377
+ bottom: calc(100% + 10px);
378
+ display: inline-flex;
379
+ align-items: center;
380
+ gap: 5px;
381
+ padding: 5px;
382
+ border-radius: 10px;
383
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 80%, transparent);
384
+ background: color-mix(in srgb, var(--card, #fff) 92%, transparent);
385
+ box-shadow:
386
+ 0 14px 32px -18px color-mix(in srgb, var(--foreground, #000) 30%, transparent),
387
+ 0 1px 0 color-mix(in srgb, white 60%, transparent) inset;
388
+ transform: scale(var(--workbench-layer-control-inverse-scale, 1));
389
+ transform-origin: bottom left;
390
+ z-index: 20;
391
+ }
392
+
393
+ .workbench-background-region__toolbar {
394
+ left: 0;
395
+ }
396
+
397
+ .workbench-background-region__label {
398
+ position: absolute;
399
+ left: 12px;
400
+ top: 10px;
401
+ display: inline-flex;
402
+ align-items: center;
403
+ gap: 6px;
404
+ max-width: calc(100% - 24px);
405
+ padding: 4px 7px;
406
+ border-radius: 6px;
407
+ background: color-mix(in srgb, white 56%, transparent);
408
+ color: color-mix(in srgb, var(--foreground, #111) 74%, var(--workbench-region-fill));
409
+ font-size: 11px;
410
+ font-weight: 700;
411
+ overflow: hidden;
412
+ white-space: nowrap;
413
+ text-overflow: ellipsis;
414
+ pointer-events: none;
415
+ }
416
+
417
+ .workbench-layer-mini-button,
418
+ .workbench-layer-swatch {
419
+ display: inline-flex;
420
+ align-items: center;
421
+ justify-content: center;
422
+ flex-shrink: 0;
423
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent);
424
+ background: color-mix(in srgb, var(--card, #fff) 88%, transparent);
425
+ color: var(--foreground, #111);
426
+ cursor: pointer;
427
+ }
428
+
429
+ .workbench-layer-mini-button {
430
+ height: 26px;
431
+ min-width: 26px;
432
+ padding: 0 8px;
433
+ border-radius: 7px;
434
+ font-size: 10px;
435
+ font-weight: 700;
436
+ }
437
+
438
+ .workbench-layer-mini-button:hover,
439
+ .workbench-layer-mini-button.is-active {
440
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 64%, transparent);
441
+ background: color-mix(in srgb, var(--primary, #3b82f6) 12%, var(--card, #fff));
442
+ color: var(--primary, #3b82f6);
443
+ }
444
+
445
+ .workbench-layer-mini-button.is-danger {
446
+ color: var(--destructive, #ef4444);
447
+ }
448
+
449
+ .workbench-text-size-stepper {
450
+ display: inline-flex;
451
+ align-items: center;
452
+ height: 26px;
453
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent);
454
+ border-radius: 8px;
455
+ background: color-mix(in srgb, var(--card, #fff) 88%, transparent);
456
+ overflow: hidden;
457
+ }
458
+
459
+ .workbench-text-font-picker {
460
+ position: relative;
461
+ display: inline-flex;
462
+ align-items: center;
463
+ }
464
+
465
+ .workbench-text-font-trigger {
466
+ display: inline-flex;
467
+ align-items: center;
468
+ gap: 6px;
469
+ height: 26px;
470
+ min-width: 86px;
471
+ padding: 0 8px;
472
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent);
473
+ border-radius: 8px;
474
+ background: color-mix(in srgb, var(--card, #fff) 88%, transparent);
475
+ color: color-mix(in srgb, var(--foreground, #111) 82%, transparent);
476
+ cursor: pointer;
477
+ transition:
478
+ background-color 140ms ease,
479
+ border-color 140ms ease,
480
+ color 140ms ease;
481
+ }
482
+
483
+ .workbench-text-font-trigger:hover,
484
+ .workbench-text-font-trigger[aria-expanded='true'] {
485
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 50%, transparent);
486
+ background: color-mix(in srgb, var(--primary, #3b82f6) 10%, var(--card, #fff));
487
+ color: var(--primary, #3b82f6);
488
+ }
489
+
490
+ .workbench-text-font-trigger__sample {
491
+ font-size: 13px;
492
+ line-height: 1;
493
+ }
494
+
495
+ .workbench-text-font-trigger__label {
496
+ font-size: 10.5px;
497
+ font-weight: 750;
498
+ line-height: 1;
499
+ }
500
+
501
+ .workbench-text-font-trigger__icon {
502
+ width: 12px;
503
+ height: 12px;
504
+ opacity: 0.66;
505
+ }
506
+
507
+ .workbench-text-font-popover {
508
+ position: absolute;
509
+ left: 0;
510
+ bottom: calc(100% + 7px);
511
+ display: grid;
512
+ gap: 3px;
513
+ min-width: 134px;
514
+ padding: 5px;
515
+ border-radius: 10px;
516
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 78%, transparent);
517
+ background: color-mix(in srgb, var(--popover, var(--card, #fff)) 96%, transparent);
518
+ box-shadow:
519
+ 0 16px 34px -18px color-mix(in srgb, var(--foreground, #000) 34%, transparent),
520
+ 0 1px 0 color-mix(in srgb, white 50%, transparent) inset;
521
+ z-index: 30;
522
+ }
523
+
524
+ .workbench-text-font-option {
525
+ display: flex;
526
+ align-items: center;
527
+ gap: 8px;
528
+ width: 100%;
529
+ height: 28px;
530
+ padding: 0 7px;
531
+ border: 1px solid transparent;
532
+ border-radius: 7px;
533
+ background: transparent;
534
+ color: color-mix(in srgb, var(--foreground, #111) 82%, transparent);
535
+ cursor: pointer;
536
+ text-align: left;
537
+ transition:
538
+ background-color 120ms ease,
539
+ border-color 120ms ease,
540
+ color 120ms ease;
541
+ }
542
+
543
+ .workbench-text-font-option:hover,
544
+ .workbench-text-font-option.is-active {
545
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 44%, transparent);
546
+ background: color-mix(in srgb, var(--primary, #3b82f6) 10%, transparent);
547
+ color: var(--primary, #3b82f6);
548
+ }
549
+
550
+ .workbench-text-font-option__sample {
551
+ width: 28px;
552
+ font-size: 13px;
553
+ line-height: 1;
554
+ }
555
+
556
+ .workbench-text-font-option__label {
557
+ flex: 1;
558
+ min-width: 0;
559
+ font-size: 11px;
560
+ font-weight: 650;
561
+ line-height: 1;
562
+ }
563
+
564
+ .workbench-text-emoji-picker {
565
+ position: relative;
566
+ display: inline-flex;
567
+ align-items: center;
568
+ }
569
+
570
+ .workbench-text-emoji-trigger {
571
+ display: inline-flex;
572
+ align-items: center;
573
+ justify-content: center;
574
+ width: 28px;
575
+ height: 26px;
576
+ padding: 0;
577
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent);
578
+ border-radius: 8px;
579
+ background: color-mix(in srgb, var(--card, #fff) 88%, transparent);
580
+ color: var(--foreground, #111);
581
+ font-size: 14px;
582
+ line-height: 1;
583
+ cursor: pointer;
584
+ transition:
585
+ background-color 140ms ease,
586
+ border-color 140ms ease,
587
+ transform 140ms ease;
588
+ }
589
+
590
+ .workbench-text-emoji-trigger:hover,
591
+ .workbench-text-emoji-trigger[aria-expanded='true'] {
592
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 50%, transparent);
593
+ background: color-mix(in srgb, var(--primary, #3b82f6) 10%, var(--card, #fff));
594
+ }
595
+
596
+ .workbench-text-emoji-trigger:active {
597
+ transform: translateY(1px);
598
+ }
599
+
600
+ .workbench-text-emoji-popover {
601
+ position: absolute;
602
+ right: 0;
603
+ bottom: calc(100% + 7px);
604
+ display: grid;
605
+ grid-template-columns: repeat(6, 28px);
606
+ gap: 4px;
607
+ padding: 6px;
608
+ border-radius: 11px;
609
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 78%, transparent);
610
+ background: color-mix(in srgb, var(--popover, var(--card, #fff)) 96%, transparent);
611
+ box-shadow:
612
+ 0 16px 34px -18px color-mix(in srgb, var(--foreground, #000) 34%, transparent),
613
+ 0 1px 0 color-mix(in srgb, white 50%, transparent) inset;
614
+ z-index: 30;
615
+ }
616
+
617
+ .workbench-text-emoji-option {
618
+ display: inline-flex;
619
+ align-items: center;
620
+ justify-content: center;
621
+ width: 28px;
622
+ height: 28px;
623
+ padding: 0;
624
+ border: 1px solid transparent;
625
+ border-radius: 8px;
626
+ background: transparent;
627
+ font-size: 16px;
628
+ line-height: 1;
629
+ cursor: pointer;
630
+ transition:
631
+ background-color 120ms ease,
632
+ border-color 120ms ease,
633
+ transform 120ms ease;
634
+ }
635
+
636
+ .workbench-text-emoji-option:hover {
637
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 34%, transparent);
638
+ background: color-mix(in srgb, var(--primary, #3b82f6) 10%, transparent);
639
+ transform: translateY(-1px);
640
+ }
641
+
642
+ .workbench-text-size-stepper__button {
643
+ display: inline-flex;
644
+ align-items: center;
645
+ justify-content: center;
646
+ width: 25px;
647
+ height: 100%;
648
+ border: 0;
649
+ background: transparent;
650
+ color: color-mix(in srgb, var(--foreground, #111) 72%, transparent);
651
+ cursor: pointer;
652
+ }
653
+
654
+ .workbench-text-size-stepper__button:hover {
655
+ background: color-mix(in srgb, var(--primary, #3b82f6) 10%, transparent);
656
+ color: var(--primary, #3b82f6);
657
+ }
658
+
659
+ .workbench-layer-swatch {
660
+ width: 22px;
661
+ height: 22px;
662
+ border-radius: 999px;
663
+ border-color: color-mix(in srgb, currentColor 24%, var(--border, #e5e5e5));
664
+ box-shadow:
665
+ inset 0 0 0 2px color-mix(in srgb, var(--background, #fff) 36%, transparent),
666
+ 0 1px 2px color-mix(in srgb, var(--foreground, #000) 18%, transparent);
667
+ }
668
+
669
+ .workbench-layer-swatch--region {
670
+ border-radius: 7px;
671
+ }
672
+
673
+ .workbench-layer-swatch.is-active {
674
+ outline: 2px solid color-mix(in srgb, var(--primary, #3b82f6) 64%, transparent);
675
+ outline-offset: 2px;
676
+ }
677
+
678
+ .workbench-region-material-group {
679
+ display: inline-flex;
680
+ align-items: center;
681
+ gap: 2px;
682
+ height: 26px;
683
+ padding: 2px;
684
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent);
685
+ border-radius: 8px;
686
+ background: color-mix(in srgb, var(--card, #fff) 84%, transparent);
687
+ }
688
+
689
+ .workbench-region-material {
690
+ display: inline-flex;
691
+ align-items: center;
692
+ justify-content: center;
693
+ width: 22px;
694
+ height: 20px;
695
+ padding: 0;
696
+ border: 1px solid transparent;
697
+ border-radius: 6px;
698
+ background: transparent;
699
+ cursor: pointer;
700
+ }
701
+
702
+ .workbench-region-material:hover,
703
+ .workbench-region-material.is-active {
704
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 50%, transparent);
705
+ background: color-mix(in srgb, var(--primary, #3b82f6) 9%, transparent);
706
+ }
707
+
708
+ .workbench-region-material__sample {
709
+ width: 14px;
710
+ height: 14px;
711
+ border-radius: 4px;
712
+ border: 1px solid color-mix(in srgb, var(--workbench-region-ink) 34%, transparent);
713
+ background: var(--workbench-region-fill);
714
+ }
715
+
716
+ .workbench-region-material.is-dotted .workbench-region-material__sample {
717
+ background:
718
+ radial-gradient(circle, color-mix(in srgb, var(--workbench-region-ink) 72%, transparent) 1px, transparent 1.12px),
719
+ var(--workbench-region-fill);
720
+ background-size: 5px 5px, auto;
721
+ }
722
+
723
+ .workbench-region-material.is-grid .workbench-region-material__sample {
724
+ background:
725
+ linear-gradient(color-mix(in srgb, var(--workbench-region-ink) 64%, transparent) 1px, transparent 1px),
726
+ linear-gradient(90deg, color-mix(in srgb, var(--workbench-region-ink) 64%, transparent) 1px, transparent 1px),
727
+ var(--workbench-region-fill);
728
+ background-size: 6px 6px, 6px 6px, auto;
729
+ }
730
+
731
+ .workbench-region-material.is-hatched .workbench-region-material__sample {
732
+ background:
733
+ repeating-linear-gradient(
734
+ 135deg,
735
+ color-mix(in srgb, var(--workbench-region-ink) 66%, transparent) 0 1px,
736
+ transparent 1px 5px
737
+ ),
738
+ var(--workbench-region-fill);
739
+ }
740
+
741
+ .workbench-region-material.is-glass .workbench-region-material__sample {
742
+ background:
743
+ linear-gradient(135deg, color-mix(in srgb, white 65%, transparent), transparent 60%),
744
+ color-mix(in srgb, var(--primary, #3b82f6) 12%, transparent);
745
+ }
746
+
747
+ .workbench-layer-resize {
748
+ position: absolute;
749
+ right: -1px;
750
+ bottom: -1px;
751
+ width: 22px;
752
+ height: 22px;
753
+ padding: 0;
754
+ border: none;
755
+ border-radius: 6px 0 0 0;
756
+ background:
757
+ linear-gradient(135deg, transparent 45%, color-mix(in srgb, var(--foreground, #111) 42%, transparent) 46% 54%, transparent 55%),
758
+ linear-gradient(135deg, transparent 64%, color-mix(in srgb, var(--foreground, #111) 30%, transparent) 65% 73%, transparent 74%);
759
+ cursor: nwse-resize;
760
+ transform: scale(var(--workbench-layer-control-inverse-scale, 1));
761
+ transform-origin: bottom right;
762
+ }
763
+
764
+ .workbench-layer-control {
765
+ position: absolute;
766
+ top: 0;
767
+ left: 0;
768
+ box-sizing: border-box;
769
+ pointer-events: none;
770
+ transform-origin: 0 0;
771
+ will-change: transform;
772
+ }
773
+
774
+ .workbench-layer-control__selection {
775
+ position: absolute;
776
+ inset: 0;
777
+ pointer-events: none;
778
+ }
779
+
780
+ .workbench-layer-control__selection.is-region {
781
+ outline: 1.5px dashed color-mix(in srgb, var(--primary, #3b82f6) 62%, transparent);
782
+ outline-offset: 3px;
783
+ }
784
+
785
+ .workbench-layer-control__selection.is-text {
786
+ outline: 1.5px dashed color-mix(in srgb, var(--primary, #3b82f6) 72%, transparent);
787
+ outline-offset: 8px;
788
+ }
789
+
790
+ .workbench-layer-control .workbench-background-region__toolbar,
791
+ .workbench-layer-control .workbench-text-annotation__toolbar,
792
+ .workbench-layer-control .workbench-layer-resize {
793
+ pointer-events: auto;
794
+ }
795
+
796
+ .workbench-text-annotation {
797
+ color: var(--workbench-text-color);
798
+ pointer-events: none;
799
+ cursor: default;
800
+ border: 0 !important;
801
+ outline: 0 !important;
802
+ box-shadow: none !important;
803
+ background: transparent;
804
+ }
805
+
806
+ .workbench-text-annotation.is-editable {
807
+ pointer-events: auto;
808
+ }
809
+
810
+ .workbench-text-annotation:focus,
811
+ .workbench-text-annotation:focus-visible,
812
+ .workbench-text-annotation:focus-within,
813
+ .workbench-text-annotation.is-selected,
814
+ .workbench-text-annotation.is-selected:focus-within {
815
+ border: 0 !important;
816
+ outline: 0 !important;
817
+ box-shadow: none !important;
818
+ background: transparent;
819
+ }
820
+
821
+ .workbench-layer-move-handle {
822
+ cursor: move;
823
+ }
824
+
825
+ .workbench-layer-move-handle:active {
826
+ cursor: grabbing;
827
+ }
828
+
829
+ .workbench-text-annotation__content {
830
+ display: block;
831
+ box-sizing: border-box;
832
+ width: 100%;
833
+ height: 100%;
834
+ padding: 0;
835
+ border: 0 !important;
836
+ border-radius: 0;
837
+ background: transparent;
838
+ box-shadow: none !important;
839
+ font-family: var(--workbench-text-family);
840
+ font-size: var(--workbench-text-size);
841
+ font-weight: var(--workbench-text-weight);
842
+ line-height: 1.12;
843
+ text-align: var(--workbench-text-align);
844
+ overflow: auto;
845
+ white-space: pre-wrap;
846
+ word-break: break-word;
847
+ text-shadow: 0 1px 0 color-mix(in srgb, var(--background, #fff) 64%, transparent);
848
+ cursor: text;
849
+ outline: 0 !important;
850
+ color: var(--workbench-text-color);
851
+ -webkit-user-select: text;
852
+ user-select: text;
853
+ caret-color: var(--workbench-text-color);
854
+ }
855
+
856
+ .floe-infinite-canvas .workbench-text-annotation__content,
857
+ .workbench-text-annotation__content:focus,
858
+ .workbench-text-annotation__content:focus-visible,
859
+ .workbench-text-annotation__content:active {
860
+ display: block;
861
+ box-sizing: border-box;
862
+ width: 100%;
863
+ height: 100%;
864
+ padding: 0;
865
+ border: 0 !important;
866
+ border-radius: 0;
867
+ outline: 0 !important;
868
+ box-shadow: none !important;
869
+ background: transparent;
870
+ font-family: var(--workbench-text-family);
871
+ font-size: var(--workbench-text-size);
872
+ font-weight: var(--workbench-text-weight);
873
+ line-height: 1.12;
874
+ text-align: var(--workbench-text-align);
875
+ overflow: auto;
876
+ white-space: pre-wrap;
877
+ word-break: break-word;
878
+ text-shadow: 0 1px 0 color-mix(in srgb, var(--background, #fff) 64%, transparent);
879
+ cursor: text;
880
+ color: var(--workbench-text-color);
881
+ -webkit-user-select: text;
882
+ user-select: text;
883
+ caret-color: var(--workbench-text-color);
884
+ }
885
+
886
+ .workbench-text-annotation__size-input {
887
+ width: 39px;
888
+ height: 100%;
889
+ padding: 0 4px;
890
+ border: 0;
891
+ border-right: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 62%, transparent);
892
+ border-left: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 62%, transparent);
893
+ border-radius: 0;
894
+ background: color-mix(in srgb, var(--background, #fff) 34%, transparent);
895
+ color: var(--foreground, #111);
896
+ font-size: 11px;
897
+ font-weight: 700;
898
+ text-align: center;
899
+ outline: none;
900
+ }
901
+
902
+ .workbench-text-annotation__size-input:focus {
903
+ box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--primary, #3b82f6) 18%, transparent);
904
+ }
905
+
906
+ .workbench-sticky {
907
+ --workbench-sticky-accent: #d8b25a;
908
+ --workbench-sticky-surface: #fff2bd;
909
+ --workbench-sticky-surface-strong: #ffe9a6;
910
+ --workbench-sticky-border: color-mix(in srgb, var(--workbench-sticky-accent) 32%, var(--border, #e5e5e5));
911
+ --workbench-sticky-ink: #302616;
912
+ --workbench-sticky-ribbon: #c89734;
913
+ display: flex;
914
+ flex-direction: column;
915
+ overflow: visible;
916
+ cursor: default;
917
+ transform-origin: 0 0;
918
+ }
919
+
920
+ .workbench-sticky.is-amber {
921
+ --workbench-sticky-accent: #d8b25a;
922
+ --workbench-sticky-surface: #fff2bd;
923
+ --workbench-sticky-surface-strong: #ffe9a6;
924
+ --workbench-sticky-ribbon: #c89734;
925
+ }
926
+
927
+ .workbench-sticky.is-sage {
928
+ --workbench-sticky-accent: #8fae72;
929
+ --workbench-sticky-surface: #e4f0d7;
930
+ --workbench-sticky-surface-strong: #d8e8c8;
931
+ --workbench-sticky-ribbon: #78945d;
932
+ }
933
+
934
+ .workbench-sticky.is-azure {
935
+ --workbench-sticky-accent: #7f9fc7;
936
+ --workbench-sticky-surface: #dceafd;
937
+ --workbench-sticky-surface-strong: #cfddf3;
938
+ --workbench-sticky-ribbon: #688abc;
939
+ }
940
+
941
+ .workbench-sticky.is-coral {
942
+ --workbench-sticky-accent: #ce8b70;
943
+ --workbench-sticky-surface: #ffe1d4;
944
+ --workbench-sticky-surface-strong: #ffd3c2;
945
+ --workbench-sticky-ribbon: #b9785d;
946
+ }
947
+
948
+ .workbench-sticky.is-rose {
949
+ --workbench-sticky-accent: #be879e;
950
+ --workbench-sticky-surface: #f6dde8;
951
+ --workbench-sticky-surface-strong: #efccd9;
952
+ --workbench-sticky-ribbon: #a66f86;
953
+ }
954
+
955
+ .workbench-sticky.is-graphite {
956
+ --workbench-sticky-accent: oklch(0.5 0.03 250);
957
+ --workbench-sticky-surface: color-mix(in srgb, #2b3038 92%, var(--workbench-sticky-accent) 8%);
958
+ --workbench-sticky-surface-strong: color-mix(in srgb, #343a44 88%, var(--workbench-sticky-accent) 12%);
959
+ --workbench-sticky-border: color-mix(in srgb, white 16%, var(--workbench-sticky-accent) 84%);
960
+ --workbench-sticky-ink: #f4f4f5;
961
+ --workbench-sticky-ribbon: color-mix(in srgb, #111827 72%, white 28%);
962
+ }
963
+
964
+ .workbench-sticky__surface {
965
+ position: relative;
966
+ display: flex;
967
+ flex: 1;
968
+ flex-direction: column;
969
+ width: 100%;
970
+ height: 100%;
971
+ border: 1px solid var(--workbench-sticky-border);
972
+ border-radius: 7px;
973
+ background:
974
+ linear-gradient(180deg, color-mix(in srgb, white 18%, transparent), transparent 34%),
975
+ linear-gradient(
976
+ 135deg,
977
+ var(--workbench-sticky-surface),
978
+ color-mix(in srgb, var(--workbench-sticky-surface) 88%, var(--workbench-sticky-accent) 12%)
979
+ );
980
+ box-shadow:
981
+ 0 16px 28px color-mix(in srgb, var(--foreground, #000) 7%, transparent),
982
+ 0 1px 0 color-mix(in srgb, white 9%, transparent) inset;
983
+ overflow: hidden;
984
+ transition:
985
+ border-color 180ms ease,
986
+ box-shadow 180ms ease,
987
+ transform 180ms cubic-bezier(0.22, 1, 0.36, 1),
988
+ background-color 180ms ease;
989
+ }
990
+
991
+ .workbench-sticky__surface::before {
992
+ content: '';
993
+ position: absolute;
994
+ inset: 0 auto 0 0;
995
+ width: 4px;
996
+ background: var(--workbench-sticky-ribbon);
997
+ opacity: 0.92;
998
+ box-shadow: 1px 0 0 color-mix(in srgb, white 18%, transparent) inset;
223
999
  pointer-events: none;
224
- background-image:
225
- linear-gradient(
226
- to right,
227
- color-mix(in srgb, var(--border, #e5e5e5) 42%, transparent) 1px,
228
- transparent 1px
229
- ),
1000
+ }
1001
+
1002
+ .workbench-sticky:hover .workbench-sticky__surface,
1003
+ .workbench-sticky:focus-within .workbench-sticky__surface {
1004
+ border-color: color-mix(in srgb, var(--workbench-sticky-accent) 42%, var(--border, #e5e5e5));
1005
+ background:
1006
+ linear-gradient(180deg, color-mix(in srgb, white 24%, transparent), transparent 32%),
230
1007
  linear-gradient(
231
- to bottom,
232
- color-mix(in srgb, var(--border, #e5e5e5) 42%, transparent) 1px,
233
- transparent 1px
234
- ),
235
- radial-gradient(
236
- circle,
237
- color-mix(in srgb, var(--border, #e5e5e5) 70%, transparent) 0.9px,
238
- transparent 1px
1008
+ 135deg,
1009
+ var(--workbench-sticky-surface-strong),
1010
+ color-mix(in srgb, var(--workbench-sticky-surface-strong) 82%, var(--workbench-sticky-accent) 18%)
239
1011
  );
240
- background-size:
241
- var(--wb-grid-major) var(--wb-grid-major),
242
- var(--wb-grid-major) var(--wb-grid-major),
243
- var(--wb-grid-minor) var(--wb-grid-minor);
244
- background-position:
245
- 0 0,
246
- 0 0,
247
- var(--wb-grid-minor-offset) var(--wb-grid-minor-offset);
248
- opacity: 0.78;
1012
+ box-shadow:
1013
+ 0 20px 34px color-mix(in srgb, var(--foreground, #000) 10%, transparent),
1014
+ 0 1px 0 color-mix(in srgb, white 12%, transparent) inset;
1015
+ }
1016
+
1017
+ .workbench-sticky.is-selected .workbench-sticky__surface {
1018
+ border-color: color-mix(in srgb, var(--primary, #3b82f6) 38%, var(--workbench-sticky-border));
1019
+ box-shadow:
1020
+ 0 0 0 2px color-mix(in srgb, var(--primary, #3b82f6) 24%, transparent),
1021
+ 0 22px 42px -18px color-mix(in srgb, var(--primary, #3b82f6) 26%, transparent),
1022
+ 0 1px 0 color-mix(in srgb, white 12%, transparent) inset;
1023
+ }
1024
+
1025
+ .workbench-sticky.is-dragging .workbench-sticky__surface {
1026
+ box-shadow:
1027
+ 0 0 0 2px color-mix(in srgb, var(--primary, #3b82f6) 28%, transparent),
1028
+ 0 26px 46px color-mix(in srgb, var(--foreground, #000) 14%, transparent),
1029
+ 0 1px 0 color-mix(in srgb, white 12%, transparent) inset;
1030
+ transition: none;
1031
+ }
1032
+
1033
+ .workbench-sticky.is-dragging,
1034
+ .workbench-sticky.is-resizing {
1035
+ transition: none;
1036
+ will-change: transform;
1037
+ }
1038
+
1039
+ .workbench-sticky.is-copied .workbench-sticky__surface {
1040
+ border-color: color-mix(in srgb, var(--success, #22c55e) 38%, var(--workbench-sticky-border));
1041
+ box-shadow:
1042
+ 0 0 0 1px color-mix(in srgb, var(--success, #22c55e) 26%, transparent),
1043
+ 0 22px 36px color-mix(in srgb, var(--foreground, #000) 12%, transparent),
1044
+ 0 1px 0 color-mix(in srgb, white 12%, transparent) inset;
1045
+ }
1046
+
1047
+ .workbench-sticky__header {
1048
+ position: relative;
1049
+ z-index: 1;
1050
+ display: flex;
1051
+ align-items: center;
1052
+ min-height: 31px;
1053
+ padding: 8px 9px 0 10px;
1054
+ cursor: move;
1055
+ }
1056
+
1057
+ .workbench-sticky.is-locked .workbench-sticky__header {
1058
+ cursor: default;
1059
+ }
1060
+
1061
+ .workbench-sticky.is-locked .workbench-sticky__body {
1062
+ cursor: default;
1063
+ }
1064
+
1065
+ .workbench-sticky__grip,
1066
+ .workbench-sticky__tool {
1067
+ display: inline-flex;
1068
+ align-items: center;
1069
+ justify-content: center;
1070
+ border: none;
1071
+ background: transparent;
1072
+ color: color-mix(in srgb, var(--workbench-sticky-ink) 58%, var(--muted-foreground, #737373));
1073
+ cursor: pointer;
1074
+ transition:
1075
+ background-color 140ms ease,
1076
+ color 140ms ease,
1077
+ opacity 140ms ease,
1078
+ transform 140ms ease;
1079
+ }
1080
+
1081
+ .workbench-sticky__grip {
1082
+ width: 25px;
1083
+ height: 25px;
1084
+ border-radius: 7px;
1085
+ opacity: 0.48;
1086
+ cursor: move;
1087
+ }
1088
+
1089
+ .workbench-sticky:hover .workbench-sticky__grip,
1090
+ .workbench-sticky:focus-within .workbench-sticky__grip,
1091
+ .workbench-sticky.is-dragging .workbench-sticky__grip {
1092
+ opacity: 0.92;
1093
+ }
1094
+
1095
+ .workbench-sticky__grip:hover,
1096
+ .workbench-sticky__tool:hover {
1097
+ color: var(--workbench-sticky-ink);
1098
+ background: color-mix(in srgb, var(--background, #fff) 74%, transparent);
1099
+ transform: translateY(-1px);
1100
+ }
1101
+
1102
+ .workbench-sticky__grip:active,
1103
+ .workbench-sticky__tool:active {
1104
+ transform: translateY(0);
1105
+ }
1106
+
1107
+ .workbench-sticky.is-dragging .workbench-sticky__grip,
1108
+ .workbench-sticky__grip:active {
1109
+ cursor: grabbing;
1110
+ }
1111
+
1112
+ .workbench-sticky__actions {
1113
+ position: absolute;
1114
+ top: -10px;
1115
+ right: -10px;
1116
+ z-index: 5;
1117
+ display: flex;
1118
+ flex-direction: column;
1119
+ align-items: center;
1120
+ gap: 4px;
1121
+ padding: 4px;
1122
+ border: 1px solid color-mix(in srgb, var(--workbench-sticky-accent) 18%, var(--workbench-sticky-border));
1123
+ border-radius: 999px;
1124
+ background: color-mix(in srgb, var(--background, #fff) 80%, transparent);
1125
+ backdrop-filter: blur(12px);
1126
+ box-shadow:
1127
+ 0 14px 26px color-mix(in srgb, var(--foreground, #000) 11%, transparent),
1128
+ 0 0 0 1px color-mix(in srgb, white 16%, transparent) inset;
1129
+ }
1130
+
1131
+ .workbench-sticky__tool {
1132
+ width: 27px;
1133
+ height: 27px;
1134
+ border-radius: 999px;
1135
+ border: 1px solid color-mix(in srgb, var(--workbench-sticky-accent) 14%, transparent);
1136
+ background: color-mix(in srgb, var(--background, #fff) 66%, transparent);
1137
+ box-shadow: 0 1px 0 color-mix(in srgb, white 12%, transparent) inset;
1138
+ }
1139
+
1140
+ .workbench-sticky__tool.is-danger {
1141
+ color: var(--destructive, #ef4444);
1142
+ }
1143
+
1144
+ .workbench-sticky__tool.is-success {
1145
+ color: color-mix(in srgb, var(--success, #22c55e) 84%, var(--workbench-sticky-ink));
1146
+ border-color: color-mix(in srgb, var(--success, #22c55e) 34%, var(--workbench-sticky-border));
1147
+ background: color-mix(in srgb, var(--success, #22c55e) 12%, var(--background, #fff));
1148
+ }
1149
+
1150
+ .workbench-sticky__tool.is-danger:hover {
1151
+ border-color: color-mix(in srgb, var(--destructive, #ef4444) 28%, var(--workbench-sticky-border));
1152
+ background: color-mix(in srgb, var(--destructive, #ef4444) 10%, var(--background, #fff));
1153
+ }
1154
+
1155
+ .workbench-sticky__color-dot {
1156
+ width: 11px;
1157
+ height: 11px;
1158
+ border-radius: 999px;
1159
+ background: var(--workbench-sticky-accent);
1160
+ box-shadow:
1161
+ 0 0 0 1px color-mix(in srgb, var(--workbench-sticky-ribbon) 54%, transparent),
1162
+ 0 1px 0 color-mix(in srgb, white 38%, transparent) inset;
1163
+ }
1164
+
1165
+ .workbench-sticky__body {
1166
+ position: relative;
1167
+ z-index: 1;
1168
+ flex: 1;
1169
+ min-height: 0;
1170
+ padding: 2px 16px 15px 18px;
1171
+ color: var(--workbench-sticky-ink);
1172
+ font-size: 14px;
1173
+ line-height: 1.52;
1174
+ overflow: auto;
1175
+ outline: 0;
1176
+ cursor: text;
1177
+ white-space: pre-wrap;
1178
+ word-break: break-word;
1179
+ -webkit-user-select: text;
1180
+ user-select: text;
1181
+ caret-color: var(--workbench-sticky-ink);
1182
+ }
1183
+
1184
+ .workbench-sticky__body:focus,
1185
+ .workbench-sticky__body:focus-visible {
1186
+ outline: 0;
1187
+ box-shadow: none;
1188
+ }
1189
+
1190
+ .workbench-sticky__resize {
1191
+ right: -3px;
1192
+ bottom: -3px;
1193
+ width: 34px;
1194
+ height: 34px;
1195
+ border-radius: 10px 0 7px 0;
1196
+ background: transparent;
1197
+ z-index: 4;
1198
+ pointer-events: auto;
1199
+ opacity: 0;
1200
+ transition: opacity 140ms ease;
1201
+ }
1202
+
1203
+ .workbench-sticky__resize::after {
1204
+ content: '';
1205
+ position: absolute;
1206
+ right: 6px;
1207
+ bottom: 6px;
1208
+ width: 10px;
1209
+ height: 10px;
1210
+ border-radius: 3px 0 4px 0;
1211
+ background:
1212
+ linear-gradient(135deg, transparent 54%, color-mix(in srgb, var(--workbench-sticky-ink) 38%, transparent) 55% 62%, transparent 63%),
1213
+ linear-gradient(135deg, transparent 72%, color-mix(in srgb, var(--workbench-sticky-ink) 26%, transparent) 73% 80%, transparent 81%);
1214
+ pointer-events: none;
1215
+ }
1216
+
1217
+ .workbench-sticky:hover .workbench-sticky__resize,
1218
+ .workbench-sticky.is-selected .workbench-sticky__resize {
1219
+ opacity: 1;
249
1220
  }
250
1221
 
251
1222
  /* ------------------------------------------------------------------ */
@@ -320,7 +1291,8 @@
320
1291
  cursor: grabbing;
321
1292
  }
322
1293
 
323
- .workbench-widget.is-filtered-out {
1294
+ .workbench-widget.is-filtered-out,
1295
+ .workbench-sticky.is-filtered-out {
324
1296
  opacity: 0;
325
1297
  pointer-events: none;
326
1298
  }
@@ -717,6 +1689,16 @@
717
1689
  z-index: 8;
718
1690
  }
719
1691
 
1692
+ .workbench-dock__mode-switcher {
1693
+ position: relative;
1694
+ display: inline-flex;
1695
+ }
1696
+
1697
+ .workbench-dock__mode-icon {
1698
+ width: 14px;
1699
+ height: 14px;
1700
+ }
1701
+
720
1702
  .workbench-dock__item {
721
1703
  position: relative;
722
1704
  display: inline-flex;
@@ -779,6 +1761,107 @@
779
1761
  0 1px 0 color-mix(in srgb, white 50%, transparent) inset;
780
1762
  }
781
1763
 
1764
+ .workbench-dock__item.is-filter-muted .workbench-dock__tile {
1765
+ opacity: 0.46;
1766
+ background: color-mix(in srgb, var(--muted, #f1f1f1) 42%, transparent);
1767
+ color: color-mix(in srgb, var(--muted-foreground, #888) 72%, transparent);
1768
+ box-shadow: none;
1769
+ }
1770
+
1771
+ .workbench-dock__mode-popover {
1772
+ position: absolute;
1773
+ left: 50%;
1774
+ bottom: calc(100% + 16px);
1775
+ transform: translateX(-50%);
1776
+ display: grid;
1777
+ gap: 6px;
1778
+ width: 238px;
1779
+ padding: 8px;
1780
+ border-radius: 13px;
1781
+ border: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 80%, transparent);
1782
+ background: color-mix(in srgb, var(--popover, var(--card, #fff)) 92%, transparent);
1783
+ box-shadow:
1784
+ 0 22px 48px -16px color-mix(in srgb, var(--foreground, #000) 24%, transparent),
1785
+ 0 1px 0 color-mix(in srgb, white 54%, transparent) inset;
1786
+ backdrop-filter: blur(18px) saturate(180%);
1787
+ -webkit-backdrop-filter: blur(18px) saturate(180%);
1788
+ z-index: 2;
1789
+ }
1790
+
1791
+ .workbench-dock__mode-popover::after {
1792
+ content: '';
1793
+ position: absolute;
1794
+ left: 50%;
1795
+ bottom: -6px;
1796
+ width: 12px;
1797
+ height: 12px;
1798
+ transform: translateX(-50%) rotate(45deg);
1799
+ border-right: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 80%, transparent);
1800
+ border-bottom: 1px solid color-mix(in srgb, var(--border, #e5e5e5) 80%, transparent);
1801
+ background: color-mix(in srgb, var(--popover, var(--card, #fff)) 92%, transparent);
1802
+ }
1803
+
1804
+ .workbench-dock__mode-option {
1805
+ position: relative;
1806
+ display: flex;
1807
+ align-items: center;
1808
+ gap: 10px;
1809
+ min-height: 52px;
1810
+ padding: 7px 9px;
1811
+ border: none;
1812
+ border-radius: 9px;
1813
+ background: transparent;
1814
+ color: var(--muted-foreground, #888);
1815
+ text-align: left;
1816
+ cursor: pointer;
1817
+ transition:
1818
+ background-color 150ms ease,
1819
+ color 150ms ease,
1820
+ box-shadow 150ms ease;
1821
+ }
1822
+
1823
+ .workbench-dock__mode-option:hover {
1824
+ background: color-mix(in srgb, var(--accent, #f2f2f2) 78%, transparent);
1825
+ color: var(--foreground, #111);
1826
+ }
1827
+
1828
+ .workbench-dock__mode-option.is-active {
1829
+ background: color-mix(in srgb, var(--primary, #3b82f6) 12%, var(--card, #fff));
1830
+ color: var(--foreground, #111);
1831
+ box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--primary, #3b82f6) 18%, transparent);
1832
+ }
1833
+
1834
+ .workbench-dock__mode-option-icon {
1835
+ display: inline-flex;
1836
+ align-items: center;
1837
+ justify-content: center;
1838
+ flex: 0 0 auto;
1839
+ width: 30px;
1840
+ height: 30px;
1841
+ border-radius: 8px;
1842
+ background: color-mix(in srgb, var(--muted, #f1f1f1) 70%, transparent);
1843
+ color: inherit;
1844
+ }
1845
+
1846
+ .workbench-dock__mode-option-copy {
1847
+ display: grid;
1848
+ min-width: 0;
1849
+ gap: 2px;
1850
+ }
1851
+
1852
+ .workbench-dock__mode-option-label {
1853
+ font-size: 12px;
1854
+ font-weight: 750;
1855
+ line-height: 1.1;
1856
+ }
1857
+
1858
+ .workbench-dock__mode-option-description {
1859
+ font-size: 10px;
1860
+ font-weight: 500;
1861
+ line-height: 1.25;
1862
+ color: var(--muted-foreground, #888);
1863
+ }
1864
+
782
1865
  .workbench-dock__divider {
783
1866
  width: 1px;
784
1867
  height: 24px;
@@ -906,6 +1989,8 @@
906
1989
  /* Cap the width so magnified tiles can't push the dock outside the
907
1990
  viewport, and so the HUD / lock above stay clear. */
908
1991
  max-width: calc(100vw - 24px);
1992
+ overflow-x: auto;
1993
+ overflow-y: visible;
909
1994
  }
910
1995
 
911
1996
  .workbench-dock__item,
@@ -914,6 +1999,17 @@
914
1999
  height: 32px;
915
2000
  }
916
2001
 
2002
+ .workbench-dock__mode-popover {
2003
+ left: 0;
2004
+ transform: none;
2005
+ width: min(238px, calc(100vw - 32px));
2006
+ }
2007
+
2008
+ .workbench-dock__mode-popover::after {
2009
+ left: 16px;
2010
+ transform: rotate(45deg);
2011
+ }
2012
+
917
2013
  .workbench-dock__icon {
918
2014
  width: 16px;
919
2015
  height: 16px;