@vaadin/vaadin-lumo-styles 25.0.0-beta4 → 25.0.0-beta5

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.
@@ -118,7 +118,7 @@
118
118
  overflow: visible;
119
119
  }
120
120
 
121
- [part~='row'] {
121
+ .row {
122
122
  display: flex;
123
123
  width: 100%;
124
124
  box-sizing: border-box;
@@ -126,23 +126,23 @@
126
126
  position: relative;
127
127
  }
128
128
 
129
- [part~='row'][loading] [part~='body-cell'] ::slotted(vaadin-grid-cell-content) {
129
+ .body-row[loading] .body-cell ::slotted(vaadin-grid-cell-content) {
130
130
  visibility: hidden;
131
131
  }
132
132
 
133
- [column-rendering='lazy'] [part~='body-cell']:not([frozen]):not([frozen-to-end]) {
133
+ [column-rendering='lazy'] .body-cell:not([frozen]):not([frozen-to-end]) {
134
134
  transform: translateX(var(--_grid-lazy-columns-start));
135
135
  }
136
136
 
137
- #items [part~='row'] {
137
+ #items .body-row {
138
138
  position: absolute;
139
139
  }
140
140
 
141
- #items [part~='row']:empty {
141
+ #items .body-row:empty {
142
142
  height: 100%;
143
143
  }
144
144
 
145
- [part~='cell']:not([part~='details-cell']) {
145
+ .cell:not(.details-cell) {
146
146
  flex-shrink: 0;
147
147
  flex-grow: 1;
148
148
  box-sizing: border-box;
@@ -154,7 +154,7 @@
154
154
  white-space: nowrap;
155
155
  }
156
156
 
157
- [part~='cell'] {
157
+ .cell {
158
158
  outline: none;
159
159
  min-height: var(--lumo-size-m);
160
160
  background-color: var(--vaadin-grid-cell-background, var(--lumo-base-color));
@@ -163,7 +163,7 @@
163
163
  --_cell-default-padding: var(--lumo-space-xs) var(--lumo-space-m);
164
164
  }
165
165
 
166
- [part~='cell'] > [tabindex] {
166
+ .cell > [tabindex] {
167
167
  display: flex;
168
168
  align-items: inherit;
169
169
  outline: none;
@@ -173,11 +173,11 @@
173
173
 
174
174
  /* Switch the focusButtonMode wrapping element to "position: static" temporarily
175
175
  when measuring real width of the cells in the auto-width columns. */
176
- [measuring-auto-width] [part~='cell'] > [tabindex] {
176
+ #scroller[measuring-auto-width] .cell > [tabindex] {
177
177
  position: static;
178
178
  }
179
179
 
180
- [part~='details-cell'] {
180
+ .details-cell {
181
181
  position: absolute;
182
182
  bottom: 0;
183
183
  width: 100%;
@@ -185,7 +185,7 @@
185
185
  padding: 0;
186
186
  }
187
187
 
188
- [part~='cell'] ::slotted(vaadin-grid-cell-content) {
188
+ .cell ::slotted(vaadin-grid-cell-content) {
189
189
  display: block;
190
190
  width: 100%;
191
191
  box-sizing: border-box;
@@ -237,13 +237,13 @@
237
237
  }
238
238
 
239
239
  /* Reordering styles */
240
- :host([reordering]) [part~='cell'] ::slotted(vaadin-grid-cell-content),
241
- :host([reordering]) [part~='resize-handle'],
242
- #scroller[no-content-pointer-events] [part~='cell'] ::slotted(vaadin-grid-cell-content) {
240
+ :host([reordering]) .cell ::slotted(vaadin-grid-cell-content),
241
+ :host([reordering]) .resize-handle,
242
+ #scroller[no-content-pointer-events] .cell ::slotted(vaadin-grid-cell-content) {
243
243
  pointer-events: none;
244
244
  }
245
245
 
246
- [part~='reorder-ghost'] {
246
+ .reorder-ghost {
247
247
  visibility: hidden;
248
248
  position: fixed;
249
249
  pointer-events: none;
@@ -263,41 +263,25 @@
263
263
  }
264
264
 
265
265
  /* Resizing styles */
266
- [part~='resize-handle'] {
267
- position: absolute;
268
- top: 0;
269
- right: 0;
270
- height: 100%;
271
- cursor: col-resize;
272
- z-index: 1;
273
- }
274
266
 
275
- [part~='resize-handle']::before {
276
- position: absolute;
277
- content: '';
278
- height: 100%;
279
- width: 35px;
280
- transform: translateX(-50%);
281
- }
282
-
283
- [last-column] [part~='resize-handle']::before,
284
- [last-frozen] [part~='resize-handle']::before {
267
+ [last-column] .resize-handle::before,
268
+ [last-frozen] .resize-handle::before {
285
269
  width: 18px;
286
270
  transform: none;
287
271
  right: 0;
288
272
  }
289
273
 
290
- [frozen-to-end] [part~='resize-handle'] {
274
+ [frozen-to-end] .resize-handle {
291
275
  left: 0;
292
276
  right: auto;
293
277
  }
294
278
 
295
- [frozen-to-end] [part~='resize-handle']::before {
279
+ [frozen-to-end] .resize-handle::before {
296
280
  left: 0;
297
281
  right: auto;
298
282
  }
299
283
 
300
- [first-frozen-to-end] [part~='resize-handle']::before {
284
+ [first-frozen-to-end] .resize-handle::before {
301
285
  width: 18px;
302
286
  transform: none;
303
287
  }
@@ -308,7 +292,7 @@
308
292
  }
309
293
 
310
294
  /* Hide resize handle if scrolled to end */
311
- :host(:not([overflow~='end'])) [first-frozen-to-end] [part~='resize-handle'] {
295
+ :host(:not([overflow~='end'])) [first-frozen-to-end] .resize-handle {
312
296
  display: none;
313
297
  }
314
298
 
@@ -325,15 +309,15 @@
325
309
  visibility: hidden;
326
310
  }
327
311
 
328
- #sizer [part~='details-cell'] {
312
+ #sizer .details-cell {
329
313
  display: none !important;
330
314
  }
331
315
 
332
- #sizer [part~='cell'][hidden] {
316
+ #sizer .cell[hidden] {
333
317
  display: none !important;
334
318
  }
335
319
 
336
- #sizer [part~='cell'] {
320
+ #sizer .cell {
337
321
  display: block;
338
322
  flex-shrink: 0;
339
323
  line-height: 0;
@@ -344,11 +328,11 @@
344
328
  border: none !important;
345
329
  }
346
330
 
347
- #sizer [part~='cell']::before {
331
+ #sizer .cell::before {
348
332
  content: '-';
349
333
  }
350
334
 
351
- #sizer [part~='cell'] ::slotted(vaadin-grid-cell-content) {
335
+ #sizer .cell ::slotted(vaadin-grid-cell-content) {
352
336
  display: none !important;
353
337
  }
354
338
 
@@ -360,32 +344,32 @@
360
344
  left: auto;
361
345
  }
362
346
 
363
- :host([dir='rtl']) [part~='reorder-ghost'] {
347
+ :host([dir='rtl']) .reorder-ghost {
364
348
  left: auto;
365
349
  right: 0;
366
350
  }
367
351
 
368
- :host([dir='rtl']) [part~='resize-handle'] {
352
+ :host([dir='rtl']) .resize-handle {
369
353
  left: 0;
370
354
  right: auto;
371
355
  }
372
356
 
373
- :host([dir='rtl']) [part~='resize-handle']::before {
357
+ :host([dir='rtl']) .resize-handle::before {
374
358
  transform: translateX(50%);
375
359
  }
376
360
 
377
- :host([dir='rtl']) [last-column] [part~='resize-handle']::before,
378
- :host([dir='rtl']) [last-frozen] [part~='resize-handle']::before {
361
+ :host([dir='rtl']) [last-column] .resize-handle::before,
362
+ :host([dir='rtl']) [last-frozen] .resize-handle::before {
379
363
  left: 0;
380
364
  right: auto;
381
365
  }
382
366
 
383
- :host([dir='rtl']) [frozen-to-end] [part~='resize-handle'] {
367
+ :host([dir='rtl']) [frozen-to-end] .resize-handle {
384
368
  right: 0;
385
369
  left: auto;
386
370
  }
387
371
 
388
- :host([dir='rtl']) [frozen-to-end] [part~='resize-handle']::before {
372
+ :host([dir='rtl']) [frozen-to-end] .resize-handle::before {
389
373
  right: 0;
390
374
  left: auto;
391
375
  }
@@ -399,25 +383,25 @@
399
383
  /* Cell styles */
400
384
 
401
385
  /* Apply row borders by default and introduce the "no-row-borders" variant */
402
- :host(:not([theme~='no-row-borders'])) [part~='cell']:not([part~='details-cell']) {
386
+ :host(:not([theme~='no-row-borders'])) .cell:not(.details-cell) {
403
387
  border-top: var(--_lumo-grid-border-width) solid var(--_lumo-grid-secondary-border-color);
404
388
  }
405
389
 
406
390
  /* Hide first body row top border */
407
- :host(:not([theme~='no-row-borders'])) [part~='first-row'] [part~='cell']:not([part~='details-cell']) {
391
+ :host(:not([theme~='no-row-borders'])) .first-row .cell:not(.details-cell) {
408
392
  border-top: 0;
409
393
  min-height: calc(var(--lumo-size-m) - var(--_lumo-grid-border-width));
410
394
  }
411
395
 
412
396
  /* Focus-ring */
413
397
 
414
- [part~='row']:focus,
415
- [part~='focused-cell']:focus {
398
+ .row:focus,
399
+ .focused-cell:focus {
416
400
  outline: none;
417
401
  }
418
402
 
419
- :host([navigating]) [part~='row']:focus::before,
420
- :host([navigating]) [part~='focused-cell']:focus::before {
403
+ :host([navigating]) .row:focus::before,
404
+ :host([navigating]) .focused-cell:focus::before {
421
405
  content: '';
422
406
  position: absolute;
423
407
  inset: 0;
@@ -425,13 +409,13 @@
425
409
  box-shadow: inset 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);
426
410
  }
427
411
 
428
- :host([navigating]) [part~='row']:focus::before {
412
+ :host([navigating]) .row:focus::before {
429
413
  transform: translateX(var(--_grid-horizontal-scroll-position));
430
414
  z-index: 3;
431
415
  }
432
416
 
433
417
  /* Empty state */
434
- [part~='empty-state'] {
418
+ .empty-state {
435
419
  padding: var(--lumo-space-m);
436
420
  color: var(--lumo-secondary-text-color);
437
421
  }
@@ -446,15 +430,15 @@
446
430
  box-shadow: inset 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);
447
431
  }
448
432
 
449
- [part~='row'][dragover] {
433
+ .body-row[dragover] {
450
434
  z-index: 100 !important;
451
435
  }
452
436
 
453
- [part~='row'][dragover] [part~='cell'] {
437
+ .body-row[dragover] .cell {
454
438
  overflow: visible;
455
439
  }
456
440
 
457
- [part~='row'][dragover] [part~='cell']::after {
441
+ .body-row[dragover] .cell::after {
458
442
  content: '';
459
443
  position: absolute;
460
444
  inset: 0;
@@ -463,54 +447,54 @@
463
447
  background: var(--lumo-primary-color-50pct);
464
448
  }
465
449
 
466
- [part~='row'][dragover] [part~='cell'][last-frozen]::after {
450
+ .body-row[dragover] .cell[last-frozen]::after {
467
451
  right: -1px;
468
452
  }
469
453
 
470
- :host([theme~='no-row-borders']) [dragover] [part~='cell']::after {
454
+ :host([theme~='no-row-borders']) [dragover] .cell::after {
471
455
  height: 2px;
472
456
  }
473
457
 
474
- [part~='row'][dragover='below'] [part~='cell']::after {
458
+ .body-row[dragover='below'] .cell::after {
475
459
  top: 100%;
476
460
  bottom: auto;
477
461
  margin-top: -1px;
478
462
  }
479
463
 
480
- :host([all-rows-visible]) [part~='last-row'][dragover='below'] [part~='cell']::after {
464
+ :host([all-rows-visible]) .last-row[dragover='below'] .cell::after {
481
465
  height: 1px;
482
466
  }
483
467
 
484
- [part~='row'][dragover='above'] [part~='cell']::after {
468
+ .row[dragover='above'] .cell::after {
485
469
  top: auto;
486
470
  bottom: 100%;
487
471
  margin-bottom: -1px;
488
472
  }
489
473
 
490
- [part~='row'][details-opened][dragover='below'] [part~='cell']:not([part~='details-cell'])::after,
491
- [part~='row'][details-opened][dragover='above'] [part~='details-cell']::after {
474
+ .row[details-opened][dragover='below'] .cell:not(.details-cell)::after,
475
+ .row[details-opened][dragover='above'] .details-cell::after {
492
476
  display: none;
493
477
  }
494
478
 
495
- [part~='row'][dragover][dragover='on-top'] [part~='cell']::after {
479
+ .row[dragover][dragover='on-top'] .cell::after {
496
480
  height: 100%;
497
481
  opacity: 0.5;
498
482
  }
499
483
 
500
- [part~='row'][dragstart] [part~='cell'] {
484
+ .row[dragstart] .cell {
501
485
  border: none !important;
502
486
  box-shadow: none !important;
503
487
  }
504
488
 
505
- [part~='row'][dragstart] [part~='cell'][last-column] {
489
+ .row[dragstart] .cell[last-column] {
506
490
  border-radius: 0 var(--lumo-border-radius-s) var(--lumo-border-radius-s) 0;
507
491
  }
508
492
 
509
- [part~='row'][dragstart] [part~='cell'][first-column] {
493
+ .row[dragstart] .cell[first-column] {
510
494
  border-radius: var(--lumo-border-radius-s) 0 0 var(--lumo-border-radius-s);
511
495
  }
512
496
 
513
- #scroller [part~='row'][dragstart]:not([dragstart=''])::after {
497
+ #scroller .row[dragstart]:not([dragstart=''])::after {
514
498
  display: block;
515
499
  position: absolute;
516
500
  left: var(--_grid-drag-start-x);
@@ -536,99 +520,108 @@
536
520
 
537
521
  /* Headers and footers */
538
522
 
539
- [part~='header-cell'],
540
- [part~='footer-cell'],
541
- [part~='reorder-ghost'] {
523
+ .header-cell,
524
+ .footer-cell,
525
+ .reorder-ghost {
542
526
  font-size: var(--lumo-font-size-s);
543
527
  font-weight: 500;
544
528
  }
545
529
 
546
- [part~='footer-cell'] {
530
+ .footer-cell {
547
531
  font-weight: 400;
548
532
  }
549
533
 
550
- [part~='row']:only-child [part~='header-cell'] {
534
+ .header-row:only-child .header-cell {
551
535
  min-height: var(--lumo-size-xl);
552
536
  }
553
537
 
554
538
  /* Header borders */
555
539
 
556
540
  /* Hide first header row top border */
557
- :host(:not([theme~='no-row-borders'])) [part~='row']:first-child [part~='header-cell'] {
541
+ :host(:not([theme~='no-row-borders'])) .first-header-row .header-cell {
558
542
  border-top: 0;
559
543
  }
560
544
 
561
545
  /* Hide header row top border if previous row is hidden */
562
- [part~='row'][hidden] + [part~='row'] [part~='header-cell'] {
546
+ .header-row[hidden] + .header-row .header-cell {
563
547
  border-top: 0;
564
548
  }
565
549
 
566
- [part~='row']:last-child [part~='header-cell'] {
550
+ .last-header-row .header-cell {
567
551
  border-bottom: var(--_lumo-grid-border-width) solid transparent;
568
552
  }
569
553
 
570
- :host(:not([theme~='no-row-borders'])) [part~='row']:last-child [part~='header-cell'] {
554
+ :host(:not([theme~='no-row-borders'])) .last-header-row .header-cell {
571
555
  border-bottom-color: var(--_lumo-grid-secondary-border-color);
572
556
  }
573
557
 
574
558
  /* Overflow uses a stronger border color */
575
- :host([overflow~='top']) [part~='row']:last-child [part~='header-cell'] {
559
+ :host([overflow~='top']) .last-header-row .header-cell {
576
560
  border-bottom-color: var(--_lumo-grid-border-color);
577
561
  }
578
562
 
579
563
  /* Footer borders */
580
564
 
581
- [part~='row']:first-child [part~='footer-cell'] {
565
+ .first-footer-row .footer-cell {
582
566
  border-top: var(--_lumo-grid-border-width) solid transparent;
583
567
  }
584
568
 
585
- :host(:not([theme~='no-row-borders'])) [part~='row']:first-child [part~='footer-cell'] {
569
+ :host(:not([theme~='no-row-borders'])) .first-footer-row .footer-cell {
586
570
  border-top-color: var(--_lumo-grid-secondary-border-color);
587
571
  }
588
572
 
589
573
  /* Overflow uses a stronger border color */
590
- :host([overflow~='bottom']) [part~='row']:first-child [part~='footer-cell'] {
574
+ :host([overflow~='bottom']) .first-footer-row .footer-cell {
591
575
  border-top-color: var(--_lumo-grid-border-color);
592
576
  }
593
577
 
594
578
  /* Column reordering */
595
579
 
596
- :host([reordering]) [part~='cell'] {
580
+ :host([reordering]) .cell {
597
581
  background: linear-gradient(var(--lumo-shade-20pct), var(--lumo-shade-20pct)) var(--lumo-base-color);
598
582
  }
599
583
 
600
- :host([reordering]) [part~='cell'][reorder-status='allowed'] {
584
+ :host([reordering]) .cell[reorder-status='allowed'] {
601
585
  background: var(--lumo-base-color);
602
586
  }
603
587
 
604
- :host([reordering]) [part~='cell'][reorder-status='dragging'] {
588
+ :host([reordering]) .cell[reorder-status='dragging'] {
605
589
  background: linear-gradient(var(--lumo-contrast-5pct), var(--lumo-contrast-5pct)) var(--lumo-base-color);
606
590
  }
607
591
 
608
592
  /* Column resizing */
609
593
 
610
- [part='resize-handle'] {
594
+ .resize-handle {
611
595
  --_resize-handle-width: 3px;
596
+ position: absolute;
597
+ top: 0;
598
+ right: 0;
599
+ height: 100%;
600
+ cursor: col-resize;
601
+ z-index: 1;
612
602
  width: var(--_resize-handle-width);
613
603
  background-color: var(--lumo-primary-color-50pct);
614
604
  opacity: 0;
615
605
  transition: opacity 0.2s;
616
606
  }
617
607
 
618
- [part='resize-handle']::before {
608
+ .resize-handle::before {
609
+ position: absolute;
610
+ content: '';
611
+ height: 100%;
619
612
  transform: translateX(calc(-50% + var(--_resize-handle-width) / 2));
620
613
  width: var(--lumo-size-s);
621
614
  }
622
615
 
623
- :host(:not([reordering])) *:not([column-resizing]) [part~='cell']:hover [part='resize-handle'],
624
- [part='resize-handle']:active {
616
+ :host(:not([reordering])) *:not([column-resizing]) .cell:hover .resize-handle,
617
+ .resize-handle:active {
625
618
  opacity: 1;
626
619
  transition-delay: 0.15s;
627
620
  }
628
621
 
629
622
  /* Column borders */
630
623
 
631
- :host([theme~='column-borders']) [part~='cell']:not([last-column]):not([part~='details-cell']) {
624
+ :host([theme~='column-borders']) .cell:not([last-column]):not(.details-cell) {
632
625
  border-right: var(--_lumo-grid-border-width) solid var(--_lumo-grid-secondary-border-color);
633
626
  }
634
627
 
@@ -639,18 +632,18 @@
639
632
  overflow: hidden;
640
633
  }
641
634
 
642
- :host([overflow~='start']) [part~='cell'][last-frozen]:not([part~='details-cell']) {
635
+ :host([overflow~='start']) .cell[last-frozen]:not(.details-cell) {
643
636
  border-right-color: var(--_lumo-grid-border-color);
644
637
  }
645
638
 
646
- :host([overflow~='end']) [part~='cell'][first-frozen-to-end]:not([part~='details-cell']) {
639
+ :host([overflow~='end']) .cell[first-frozen-to-end]:not(.details-cell) {
647
640
  border-left-color: var(--_lumo-grid-border-color);
648
641
  }
649
642
 
650
643
  /* Row stripes */
651
644
 
652
- :host([theme~='row-stripes']) [part~='even-row'] [part~='body-cell'],
653
- :host([theme~='row-stripes']) [part~='even-row'] [part~='details-cell'] {
645
+ :host([theme~='row-stripes']) .even-row .body-cell,
646
+ :host([theme~='row-stripes']) .even-row .details-cell {
654
647
  background-image: linear-gradient(var(--lumo-contrast-5pct), var(--lumo-contrast-5pct));
655
648
  background-repeat: repeat-x;
656
649
  }
@@ -658,56 +651,56 @@
658
651
  /* Selected row */
659
652
 
660
653
  /* Raise the selected rows above unselected rows (so that box-shadow can cover unselected rows) */
661
- :host(:not([reordering])) [part~='row'][selected] {
654
+ :host(:not([reordering])) .row[selected] {
662
655
  z-index: 1;
663
656
  }
664
657
 
665
- :host(:not([reordering])) [part~='row'][selected] [part~='body-cell']:not([part~='details-cell']) {
658
+ :host(:not([reordering])) .row[selected] .body-cell:not(.details-cell) {
666
659
  background-image: linear-gradient(var(--_lumo-grid-selected-row-color), var(--_lumo-grid-selected-row-color));
667
660
  background-repeat: repeat;
668
661
  }
669
662
 
670
663
  /* Cover the border of an unselected row */
671
- :host(:not([theme~='no-row-borders'])) [part~='row'][selected] [part~='cell']:not([part~='details-cell']) {
664
+ :host(:not([theme~='no-row-borders'])) .row[selected] .cell:not(.details-cell) {
672
665
  box-shadow: 0 var(--_lumo-grid-border-width) 0 0 var(--_lumo-grid-selected-row-color);
673
666
  }
674
667
 
675
668
  /* Compact */
676
669
 
677
- :host([theme~='compact']) [part~='row']:only-child [part~='header-cell'] {
670
+ :host([theme~='compact']) .header-row:only-child .header-cell {
678
671
  min-height: var(--lumo-size-m);
679
672
  }
680
673
 
681
- :host([theme~='compact']) [part~='cell'] {
674
+ :host([theme~='compact']) .cell {
682
675
  min-height: var(--lumo-size-s);
683
676
  --_cell-default-padding: var(--lumo-space-xs) var(--lumo-space-s);
684
677
  }
685
678
 
686
- :host([theme~='compact']) [part~='first-row'] [part~='cell']:not([part~='details-cell']) {
679
+ :host([theme~='compact']) .first-row .cell:not(.details-cell) {
687
680
  min-height: calc(var(--lumo-size-s) - var(--_lumo-grid-border-width));
688
681
  }
689
682
 
690
- :host([theme~='compact']) [part~='empty-state'] {
683
+ :host([theme~='compact']) .empty-state {
691
684
  padding: var(--lumo-space-s);
692
685
  }
693
686
 
694
687
  /* Wrap cell contents */
695
688
 
696
- :host([theme~='wrap-cell-content']) [part~='cell'] ::slotted(vaadin-grid-cell-content) {
689
+ :host([theme~='wrap-cell-content']) .cell ::slotted(vaadin-grid-cell-content) {
697
690
  white-space: normal;
698
691
  }
699
692
 
700
693
  /* RTL specific styles */
701
694
 
702
- :host([dir='rtl']) [part~='row'][dragstart] [part~='cell'][last-column] {
695
+ :host([dir='rtl']) .row[dragstart] .cell[last-column] {
703
696
  border-radius: var(--lumo-border-radius-s) 0 0 var(--lumo-border-radius-s);
704
697
  }
705
698
 
706
- :host([dir='rtl']) [part~='row'][dragstart] [part~='cell'][first-column] {
699
+ :host([dir='rtl']) .row[dragstart] .cell[first-column] {
707
700
  border-radius: 0 var(--lumo-border-radius-s) var(--lumo-border-radius-s) 0;
708
701
  }
709
702
 
710
- :host([dir='rtl'][theme~='column-borders']) [part~='cell']:not([last-column]):not([part~='details-cell']) {
703
+ :host([dir='rtl'][theme~='column-borders']) .cell:not([last-column]):not(.details-cell) {
711
704
  border-right: none;
712
705
  border-left: var(--_lumo-grid-border-width) solid var(--_lumo-grid-secondary-border-color);
713
706
  }
@@ -722,16 +715,16 @@
722
715
  border-right: var(--_lumo-grid-border-width) solid transparent;
723
716
  }
724
717
 
725
- :host([dir='rtl'][overflow~='start']) [part~='cell'][last-frozen]:not([part~='details-cell']) {
718
+ :host([dir='rtl'][overflow~='start']) .cell[last-frozen]:not(.details-cell) {
726
719
  border-left-color: var(--_lumo-grid-border-color);
727
720
  }
728
721
 
729
- :host([dir='rtl'][overflow~='end']) [part~='cell'][first-frozen-to-end]:not([part~='details-cell']) {
722
+ :host([dir='rtl'][overflow~='end']) .cell[first-frozen-to-end]:not(.details-cell) {
730
723
  border-right-color: var(--_lumo-grid-border-color);
731
724
  }
732
725
 
733
726
  @media (forced-colors: active) {
734
- [part~='selected-row'] [part~='first-column-cell']::after {
727
+ .selected-row .first-column-cell::after {
735
728
  content: '';
736
729
  position: absolute;
737
730
  top: 0;
@@ -740,7 +733,7 @@
740
733
  border: 2px solid;
741
734
  }
742
735
 
743
- [part~='focused-cell']::before {
736
+ .focused-cell::before {
744
737
  outline: 2px solid !important;
745
738
  outline-offset: -1px;
746
739
  }
@@ -4,6 +4,11 @@
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  @media lumo_components_rich-text-editor-popup-overlay {
7
+ :host {
8
+ --_focus-ring-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));
9
+ --_focus-ring-width: var(--vaadin-focus-ring-width, 2px);
10
+ }
11
+
7
12
  [part='overlay'] {
8
13
  margin: var(--lumo-space-xs) 0;
9
14
  }
@@ -20,8 +25,29 @@
20
25
 
21
26
  [part='content'] ::slotted(button) {
22
27
  border: none;
28
+ background-color: var(--_btn-background);
23
29
  width: var(--_button-size);
24
30
  height: var(--_button-size);
25
31
  margin: var(--_button-margin);
26
32
  }
33
+
34
+ [part='content'] ::slotted(button:focus-visible) {
35
+ outline: var(--_focus-ring-width) solid var(--_focus-ring-color);
36
+ outline-offset: calc(var(--_focus-ring-width) * -1 + 1px);
37
+ }
38
+
39
+ [part='content'] ::slotted(button:first-of-type) {
40
+ position: relative;
41
+ border: solid 1px var(--lumo-contrast-10pct);
42
+ background-image: repeating-linear-gradient(
43
+ 135deg,
44
+ transparent 0%,
45
+ transparent 47%,
46
+ red 50%,
47
+ transparent 53%,
48
+ transparent 100%
49
+ );
50
+ background-color: transparent;
51
+ background-clip: padding-box;
52
+ }
27
53
  }
@@ -9,9 +9,6 @@
9
9
  font-family: var(--lumo-font-family);
10
10
  font-size: var(--lumo-font-size-m);
11
11
  line-height: var(--lumo-line-height-m);
12
- background: transparent;
13
- border: none;
14
- border-radius: 0;
15
12
  -webkit-text-size-adjust: 100%;
16
13
  -webkit-font-smoothing: antialiased;
17
14
  -moz-osx-font-smoothing: grayscale;
@@ -25,6 +22,12 @@
25
22
  outline: none;
26
23
  }
27
24
 
25
+ .vaadin-rich-text-editor-container {
26
+ background: transparent;
27
+ border: none;
28
+ border-radius: 0;
29
+ }
30
+
28
31
  [part='content'] {
29
32
  background-color: var(--lumo-base-color);
30
33
  }