@lolmath/ui 9.1.1 → 9.2.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/dist/index.css CHANGED
@@ -181,17 +181,22 @@
181
181
  }
182
182
  }
183
183
  @layer lol {
184
- ._breadcrumbs_1c3hr_2 {
184
+ ._breadcrumbs_1gzfl_2 {
185
185
  display: flex;
186
186
  gap: 0.25rem;
187
+ /* An <ol>: the UA gives it block margins and a 40px marker gutter. */
188
+ margin: 0;
189
+ padding: 0;
190
+ list-style: none;
187
191
  }
188
192
 
189
- ._item_1c3hr_7 {
193
+ ._item_1gzfl_11 {
190
194
  display: flex;
191
195
  align-items: center;
192
196
  }
193
197
 
194
- ._link_1c3hr_12 {
198
+ ._link_1gzfl_16 {
199
+ text-decoration: none;
195
200
  font-family: var(--lol-font-family-beaufort);
196
201
  color: var(--lol-color-gold-300);
197
202
  position: relative;
@@ -206,16 +211,28 @@
206
211
  }
207
212
  }
208
213
 
209
- ._divider_1c3hr_27 {
214
+ ._divider_1gzfl_32 {
215
+ /* Off the text baseline, so the row's height is the glyph's, and never
216
+ wider than the row. */
217
+ display: block;
218
+ max-width: 100%;
210
219
  height: 11px;
211
220
  }
212
221
  }
213
222
  @layer lol {
214
- ._button_lhmqr_2 {
223
+ ._button_7nrx3_2 {
224
+ appearance: none;
225
+ margin: 0;
226
+ /* Presets that want horizontal padding add it back further down. Without a
227
+ zero here, `text` (which wants none) picks up the UA's `1px 6px`. */
228
+ padding: 0;
229
+ /* Also rendered on the <a> of ButtonLink, which the UA underlines. */
230
+ text-decoration: none;
231
+
215
232
  border-radius: 0px;
216
233
  border: 2px solid transparent;
217
234
 
218
- &._thin_lhmqr_6 {
235
+ &._thin_7nrx3_14 {
219
236
  border-width: 1px;
220
237
  }
221
238
 
@@ -246,17 +263,17 @@
246
263
  outline: none;
247
264
  }
248
265
 
249
- &._small_lhmqr_37 {
266
+ &._small_7nrx3_45 {
250
267
  font-size: var(--lol-font-size-sm);
251
268
  min-height: var(--lol-form-height-small);
252
269
  }
253
270
 
254
- &._medium_lhmqr_42 {
271
+ &._medium_7nrx3_50 {
255
272
  font-size: var(--lol-font-size-base);
256
273
  min-height: var(--lol-form-height-medium);
257
274
  }
258
275
 
259
- &._large_lhmqr_47 {
276
+ &._large_7nrx3_55 {
260
277
  font-size: var(--lol-font-size-base);
261
278
  min-height: var(--lol-form-height-large);
262
279
  }
@@ -266,14 +283,14 @@
266
283
  * `.button` and loses the border-radius and font-weight to whichever rule
267
284
  * is written last.
268
285
  */
269
- &._round_lhmqr_53,
270
- &._square_lhmqr_58 {
286
+ &._round_7nrx3_61,
287
+ &._square_7nrx3_66 {
271
288
  aspect-ratio: 1 / 1;
272
289
  padding: 0px;
273
290
  font-weight: 900;
274
291
  }
275
292
 
276
- &._round_lhmqr_53 {
293
+ &._round_7nrx3_61 {
277
294
  border-radius: 9999px;
278
295
  }
279
296
 
@@ -304,22 +321,22 @@
304
321
  * together by exactly one border width so their two gradient borders read as
305
322
  * a single seam instead of a double-thick one.
306
323
  */
307
- ._toggleButtonGroup_lhmqr_95 {
324
+ ._toggleButtonGroup_7nrx3_103 {
308
325
  display: inline-flex;
309
326
 
310
- & > ._button_lhmqr_2 + ._button_lhmqr_2 {
327
+ & > ._button_7nrx3_2 + ._button_7nrx3_2 {
311
328
  margin-left: -2px;
312
329
  }
313
330
 
314
331
  /* Must follow the rule above: thin buttons only need a 1px overlap. */
315
- & > ._thin_lhmqr_6 + ._thin_lhmqr_6 {
332
+ & > ._thin_7nrx3_14 + ._thin_7nrx3_14 {
316
333
  margin-left: -1px;
317
334
  }
318
335
 
319
336
  /* Whichever button is highlighted owns the seams next to it. */
320
- & > ._button_lhmqr_2:hover,
321
- & > ._button_lhmqr_2:focus-visible,
322
- & > ._button_lhmqr_2[data-selected] {
337
+ & > ._button_7nrx3_2:hover,
338
+ & > ._button_7nrx3_2:focus-visible,
339
+ & > ._button_7nrx3_2[data-selected] {
323
340
  position: relative;
324
341
  z-index: 1;
325
342
  }
@@ -329,48 +346,48 @@
329
346
  /* Equal widths keep the collapsed seams lined up. */
330
347
  align-items: stretch;
331
348
 
332
- & > ._button_lhmqr_2 + ._button_lhmqr_2 {
349
+ & > ._button_7nrx3_2 + ._button_7nrx3_2 {
333
350
  margin-left: 0;
334
351
  margin-top: -2px;
335
352
  }
336
353
 
337
- & > ._thin_lhmqr_6 + ._thin_lhmqr_6 {
354
+ & > ._thin_7nrx3_14 + ._thin_7nrx3_14 {
338
355
  margin-top: -1px;
339
356
  }
340
357
  }
341
358
  }
342
359
 
343
- ._primary_lhmqr_131,
344
- ._secondary_lhmqr_132,
345
- ._hextech_lhmqr_133,
346
- ._dimmed_lhmqr_134 {
347
- &:not(._square_lhmqr_58, ._round_lhmqr_53) {
348
- &._small_lhmqr_37 {
360
+ ._primary_7nrx3_139,
361
+ ._secondary_7nrx3_140,
362
+ ._hextech_7nrx3_141,
363
+ ._dimmed_7nrx3_142 {
364
+ &:not(._square_7nrx3_66, ._round_7nrx3_61) {
365
+ &._small_7nrx3_45 {
349
366
  padding: 0 0.5rem;
350
367
  }
351
368
 
352
- &._medium_lhmqr_42 {
369
+ &._medium_7nrx3_50 {
353
370
  padding: 0 1rem;
354
371
  }
355
372
 
356
- &._large_lhmqr_47 {
373
+ &._large_7nrx3_55 {
357
374
  padding: 0 1rem;
358
375
  }
359
376
  }
360
377
  }
361
378
 
362
- ._text_lhmqr_150 {
363
- &._round_lhmqr_53,
364
- &._square_lhmqr_58 {
379
+ ._text_7nrx3_158 {
380
+ &._round_7nrx3_61,
381
+ &._square_7nrx3_66 {
365
382
  &:hover {
366
383
  --lol-button-background-gradient: var(--lol-gradient-grey-300);
367
384
  --lol-button-border-gradient: var(--lol-gradient-transparent);
368
385
  }
369
386
  }
370
387
 
371
- &._round_lhmqr_53,
372
- &._square_lhmqr_58,
373
- &._normal_lhmqr_161 {
388
+ &._round_7nrx3_61,
389
+ &._square_7nrx3_66,
390
+ &._normal_7nrx3_169 {
374
391
  position: relative;
375
392
 
376
393
  &::after {
@@ -388,7 +405,7 @@
388
405
  }
389
406
  }
390
407
 
391
- ._hextech_lhmqr_133 {
408
+ ._hextech_7nrx3_141 {
392
409
  color: var(--lol-color-blue-100);
393
410
  --lol-button-border-gradient: var(--lol-gradient-hextech);
394
411
  --lol-button-background-gradient: var(--lol-gradient-grey-300);
@@ -413,17 +430,16 @@
413
430
  }
414
431
  }
415
432
 
416
- ._dimmed_lhmqr_134 {
433
+ ._dimmed_7nrx3_142 {
417
434
  --lol-button-background-gradient: var(--lol-gradient-hextech-black);
418
435
  --lol-button-border-gradient: var(--lol-gradient-grey-300);
419
436
 
420
- &._selected_lhmqr_208,
421
437
  &:focus-visible {
422
438
  --lol-button-border-gradient: var(--lol-gradient-gold);
423
439
  }
424
440
  }
425
441
 
426
- ._primary_lhmqr_131 {
442
+ ._primary_7nrx3_139 {
427
443
  --lol-button-border-gradient: var(--lol-gradient-gold);
428
444
  --lol-button-background-gradient: linear-gradient(
429
445
  to top,
@@ -451,36 +467,740 @@
451
467
  }
452
468
  }
453
469
 
454
- ._secondary_lhmqr_132 {
455
- --lol-button-border-gradient: var(--lol-gradient-gold);
456
- --lol-button-background-gradient: var(--lol-gradient-grey-300);
457
- }
470
+ ._secondary_7nrx3_140 {
471
+ --lol-button-border-gradient: var(--lol-gradient-gold);
472
+ --lol-button-background-gradient: var(--lol-gradient-grey-300);
473
+ }
474
+
475
+ ._primary_7nrx3_139:hover,
476
+ ._secondary_7nrx3_140:hover,
477
+ ._dimmed_7nrx3_142:hover {
478
+ --lol-button-border-gradient: var(--lol-gradient-gold-hover);
479
+ }
480
+
481
+ ._primary_7nrx3_139:active,
482
+ ._secondary_7nrx3_140:active,
483
+ ._dimmed_7nrx3_142:active {
484
+ --lol-button-border-gradient: var(--lol-gradient-gold-press);
485
+ }
486
+
487
+ /*
488
+ * A selected toggle takes the hextech background from `.button`, so the
489
+ * dimmed border follows it there: a hextech body inside the resting grey
490
+ * frame reads as an unfinished button. Must stay after the gold `:hover`
491
+ * and `:active` rules above so the resting selected border wins, and
492
+ * before `:disabled` below so a disabled toggle still greys out.
493
+ */
494
+ ._dimmed_7nrx3_142[data-selected] {
495
+ --lol-button-border-gradient: var(--lol-gradient-hextech);
496
+
497
+ &:hover {
498
+ --lol-button-border-gradient: var(--lol-gradient-hextech-hover);
499
+ }
500
+
501
+ &:active {
502
+ --lol-button-border-gradient: var(--lol-gradient-hextech-press);
503
+ }
504
+ }
505
+
506
+ ._primary_7nrx3_139:disabled,
507
+ ._secondary_7nrx3_140:disabled,
508
+ ._dimmed_7nrx3_142:disabled {
509
+ --lol-button-border-gradient: var(--lol-gradient-disabled);
510
+ }
511
+
512
+ ._primary_7nrx3_139:focus-visible,
513
+ ._secondary_7nrx3_140:focus-visible {
514
+ outline-color: var(--lol-color-gold-400);
515
+ }
516
+ }
517
+ @layer lol {
518
+ ._text_1tvjr_2 {
519
+ font-family: var(--lol-font-family-spiegel);
520
+ }
521
+
522
+ ._label_1tvjr_6 {
523
+ font-size: var(--lol-font-size-label);
524
+ line-height: var(--lol-line-height-label);
525
+ letter-spacing: var(--lol-letter-spacing-label);
526
+ font-weight: var(--lol-font-weight-label);
527
+ }
528
+
529
+ ._stat_1tvjr_13 {
530
+ font-size: var(--lol-font-size-stat);
531
+ line-height: var(--lol-line-height-stat);
532
+ letter-spacing: var(--lol-letter-spacing-stat);
533
+ font-weight: var(--lol-font-weight-stat);
534
+ }
535
+
536
+ ._largeNumber_1tvjr_20 {
537
+ font-size: var(--lol-font-size-large-number);
538
+ line-height: var(--lol-line-height-large-number);
539
+ letter-spacing: var(--lol-letter-spacing-large-number);
540
+ font-weight: var(--lol-font-weight-large-number);
541
+ }
542
+
543
+ ._sm_1tvjr_27 {
544
+ font-size: var(--lol-font-size-sm);
545
+ line-height: var(--lol-line-height-sm);
546
+ letter-spacing: var(--lol-letter-spacing-sm);
547
+ font-weight: var(--lol-font-weight-sm);
548
+ }
549
+
550
+ ._base_1tvjr_34 {
551
+ font-size: var(--lol-font-size-base);
552
+ line-height: var(--lol-line-height-base);
553
+ letter-spacing: var(--lol-letter-spacing-base);
554
+ font-weight: var(--lol-font-weight-base);
555
+ }
556
+
557
+ ._md_1tvjr_41 {
558
+ font-size: var(--lol-font-size-md);
559
+ line-height: var(--lol-line-height-md);
560
+ letter-spacing: var(--lol-letter-spacing-md);
561
+ font-weight: var(--lol-font-weight-md);
562
+ }
563
+
564
+ ._lg_1tvjr_48 {
565
+ font-size: var(--lol-font-size-lg);
566
+ line-height: var(--lol-line-height-lg);
567
+ letter-spacing: var(--lol-letter-spacing-lg);
568
+ font-weight: var(--lol-font-weight-lg);
569
+ }
570
+
571
+ ._grey100_1tvjr_55 {
572
+ color: var(--lol-color-grey-100);
573
+ }
574
+
575
+ ._grey150_1tvjr_59 {
576
+ color: var(--lol-color-grey-150);
577
+ }
578
+
579
+ ._gold100_1tvjr_63 {
580
+ color: var(--lol-color-gold-100);
581
+ }
582
+ }
583
+ @layer lol {
584
+ ._button_2pv2a_2 {
585
+ /* A <button>; the trigger's whole look is drawn below. */
586
+ appearance: none;
587
+ margin: 0;
588
+ font-family: var(--lol-font-family-spiegel);
589
+ display: inline-block;
590
+ min-width: 200px;
591
+ outline: none;
592
+
593
+ border: 1px solid transparent;
594
+
595
+ color: var(--lol-color-grey-100);
596
+ padding: 0 1.5rem 0 0.5rem;
597
+
598
+ font-size: 0.75rem;
599
+ font-weight: 500;
600
+ line-height: 1rem;
601
+ letter-spacing: 0.025em;
602
+ text-align: left;
603
+
604
+ --lol-select-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAASCAYAAACAa1QyAAAAiUlEQVR42mL8//8/A6mAiYEMQJYmFnSBk6vzYcwmIP4LxI0gjnnoRNyaoKAViKuQ+I14bQKCTiAuA+I6IGYG4gZ0jSw4nFwB1QwDjIRsKkbjNwxckFNNUw8QlyLx66EYb0D8A+IuIGaDyjcQE0+gOPoDxC1I8dNASBMDNDX8hWKMIGcc3FkDIMAA1n8bpHnZDOAAAAAASUVORK5CYII=");
605
+ --lol-select-border-gradient: var(--lol-gradient-gold);
606
+ --lol-select-background-gradient: var(--lol-gradient-hextech-black);
607
+
608
+ &[data-open] {
609
+ --lol-select-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAASCAYAAACAa1QyAAAA90lEQVR42mL8//8/A6mAiYEMwILVJG4RNiAlDcQgZzz79/XNL2R5RnTnATWwAyn5BEfBaqDUv4UH3rcD+Q+QNaJoAmrgAFJyiY6CdWL8LNEgsRcf/ixA14juJ6kkJ8FGkIbn7//MB2pYKCHAkhDvIFgJksPlJ0ZGRgbmp+9+z1py6EMvSACoASyO009A53FCTfwNCgCoS2A2wAOEcWDiCcl5v6DOY8bmPBYsodf28/f/90sPf+iDBgQo5BiAwd4ICnZcKeKfjDBrepy9IAsoJEFBDgp6fKGHLXIXAm1pQ45cfMmoBpqM2vAmIzSNUkQnWJrFE0CAAQCQxYvehN8YFAAAAABJRU5ErkJggg==");
610
+ color: var(--lol-color-gold-600);
611
+ --lol-select-background-gradient: var(--lol-gradient-grey-300);
612
+ --lol-select-border-gradient: var(--lol-gradient-gold-press);
613
+ }
614
+
615
+ &[data-pressed] {
616
+ --lol-select-border-gradient: var(--lol-gradient-gold-press);
617
+ }
618
+
619
+ &[data-hovered] {
620
+ --lol-select-border-gradient: var(--lol-gradient-gold-hover);
621
+ }
622
+
623
+ &[data-disabled] {
624
+ --lol-select-border-gradient: var(--lol-gradient-disabled);
625
+ /* make the image gray */
626
+ filter: grayscale(100%);
627
+ }
628
+
629
+ &._small_2pv2a_47 {
630
+ min-height: var(--lol-form-height-small);
631
+ }
632
+
633
+ &._medium_2pv2a_51 {
634
+ min-height: var(--lol-form-height-medium);
635
+ }
636
+
637
+ &._large_2pv2a_55 {
638
+ min-height: var(--lol-form-height-large);
639
+ }
640
+ }
641
+
642
+ ._singleSelect_2pv2a_60 {
643
+ background:
644
+ var(--lol-select-image) no-repeat right 0.5rem center,
645
+ var(--lol-select-background-gradient) padding-box,
646
+ var(--lol-select-border-gradient) border-box;
647
+ }
648
+
649
+ ._multiSelect_2pv2a_67 {
650
+ background:
651
+ var(--lol-select-background-gradient) padding-box,
652
+ var(--lol-select-border-gradient) border-box;
653
+ }
654
+
655
+ ._listBox_2pv2a_73 {
656
+ background-color: var(--lol-color-hextech-black);
657
+ border: 1px solid var(--lol-color-gold-600);
658
+ outline: none;
659
+ overflow-y: auto;
660
+ }
661
+
662
+ ._item_2pv2a_80 {
663
+ border-bottom: 1px solid var(--lol-color-grey-300);
664
+ color: var(--lol-color-gold-300);
665
+ font-size: var(--lol-font-size-sm);
666
+ font-weight: var(--lol-font-weight-sm);
667
+ line-height: var(--lol-line-height-sm);
668
+ letter-spacing: var(--lol-letter-spacing-sm);
669
+ padding: 0.375rem 0.5rem;
670
+ outline: none;
671
+ cursor: pointer;
672
+
673
+ &[data-hovered] {
674
+ background-color: var(--lol-color-grey-300);
675
+ color: var(--lol-color-gold-100);
676
+ }
677
+
678
+ &[data-pressed],
679
+ &._focus_2pv2a_97 {
680
+ background-color: color-mix(
681
+ in srgb,
682
+ var(--lol-color-grey-300),
683
+ transparent 50%
684
+ );
685
+ color: var(--lol-color-gold-600);
686
+ }
687
+
688
+ &._selected_2pv2a_106 {
689
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAALCAYAAABPhbxiAAAAsElEQVR42pTQXQoBURTA8ZmbdxuxAi/WgfLmQb4pYgMi36QUJUuxBIvw7FEi/qfOrds0NPfW7+We85+mG95v18DjhGjglPKMNqjibTyilUYTbE3CaIE65ujLZZJQlptYomsvJUyjp1+Oi1pYo+MOjA7GmEWiKdrY6c7HHcqrjpDRpQeGGslv7VGLRjZ8Ii9PjAFyyOKISlxkQzkvFDUu4Izyr8gNA41KuODwL5LzFWAAUJ8mTIVblvcAAAAASUVORK5CYII=);
690
+ background-position: right 0.5rem center;
691
+ background-repeat: no-repeat;
692
+ }
693
+ }
694
+
695
+ ._popover_2pv2a_113 {
696
+ width: var(--trigger-width);
697
+ display: flex;
698
+ flex-direction: column;
699
+ }
700
+
701
+ ._emptyList_2pv2a_119 {
702
+ padding: 0.5rem 0.25rem;
703
+ text-align: left;
704
+ }
705
+ }
706
+ @layer lol {
707
+ ._calendar_dpi4c_2,
708
+ ._rangeCalendar_dpi4c_3 {
709
+ --lol-calendar-cell-size: 2.5rem;
710
+
711
+ display: flex;
712
+ flex-direction: column;
713
+ /*
714
+ * A flex column is still a normal block box for its own sizing: with
715
+ * no explicit width it fills its parent (a popover, a wide form)
716
+ * rather than shrinking to its content. `fit-content` makes the
717
+ * calendar itself only as wide as its widest child (the grid), and
718
+ * `align-items: stretch` (the default, kept intentionally) then
719
+ * stretches every other child — including the `header="picker"` nav
720
+ * row, which sits directly in this container rather than inside
721
+ * `.month` — to match that same width, instead of each shrinking
722
+ * independently to its own content.
723
+ */
724
+ width: fit-content;
725
+ gap: 0.75rem;
726
+ outline: none;
727
+
728
+ &[data-disabled] {
729
+ opacity: 0.6;
730
+ }
731
+ }
732
+
733
+ ._months_dpi4c_28 {
734
+ display: flex;
735
+ gap: 1.5rem;
736
+ }
737
+
738
+ ._month_dpi4c_16 {
739
+ display: flex;
740
+ flex-direction: column;
741
+ gap: 0.5rem;
742
+ }
743
+
744
+ ._nav_dpi4c_39 {
745
+ display: flex;
746
+ align-items: center;
747
+ justify-content: space-between;
748
+ gap: 0.5rem;
749
+ }
750
+
751
+ ._pickerGroup_dpi4c_46 {
752
+ display: flex;
753
+ align-items: center;
754
+ justify-content: center;
755
+ gap: 0.375rem;
756
+ flex: 1;
757
+ }
758
+
759
+ ._chevronFlipped_dpi4c_54 {
760
+ transform: rotate(180deg);
761
+ }
762
+
763
+ ._heading_dpi4c_58 {
764
+ flex: 1;
765
+ margin: 0;
766
+ text-align: center;
767
+ color: var(--lol-color-gold-100);
768
+ font-family: var(--lol-font-family-beaufort);
769
+ text-transform: uppercase;
770
+ font-size: var(--lol-font-size-sm);
771
+ font-weight: var(--lol-font-weight-h5);
772
+ letter-spacing: var(--lol-letter-spacing-h5);
773
+ }
774
+
775
+ ._grid_dpi4c_70 {
776
+ /*
777
+ * `separate` (not `collapse`) is what makes the continuous-selection
778
+ * border below work at all: `collapse` merges each pair of adjacent
779
+ * cells' touching borders into one, picking a winner between a
780
+ * selected row's colored edge and its unselected neighbor's
781
+ * transparent one — which silently erases every other segment of the
782
+ * "continuous" line. `separate` keeps each cell's border independent.
783
+ *
784
+ * The table is sized to exactly 7 cells wide rather than `100%`: with
785
+ * no intrinsic width, it stretches to fill whatever it's placed in
786
+ * (a popover, a wide form), dragging the popover along with it and
787
+ * spacing the 7 columns far enough apart that `.cell`'s fixed size
788
+ * reads as small islands with visible gaps instead of a tight grid.
789
+ *
790
+ * `border-spacing` is 0 horizontally (columns within a week must
791
+ * touch, or the continuous selection border above breaks into
792
+ * islands again) but 3px vertically: with no gap between rows, two
793
+ * consecutive fully-selected weeks touch top-border-to-bottom-border
794
+ * and read as one tall block instead of two separate rounded bars.
795
+ */
796
+ border-collapse: separate;
797
+ border-spacing: 0 3px;
798
+ table-layout: fixed;
799
+ width: calc(var(--lol-calendar-cell-size) * 7);
800
+ }
801
+
802
+ ._gridHeader_dpi4c_97 {
803
+ /* thead: no visual treatment of its own beyond the cells within it. */
804
+ }
805
+
806
+ ._headerCell_dpi4c_101 {
807
+ padding: 0 0 0.5rem 0;
808
+ font-family: var(--lol-font-family-spiegel);
809
+ font-size: var(--lol-font-size-xs);
810
+ font-weight: 700;
811
+ letter-spacing: 0.05em;
812
+ text-transform: uppercase;
813
+ text-align: center;
814
+ color: var(--lol-color-grey-100);
815
+ }
816
+
817
+ ._cell_dpi4c_82 {
818
+ position: relative;
819
+ z-index: 0;
820
+ width: 100%;
821
+ height: var(--lol-calendar-cell-size);
822
+ display: flex;
823
+ align-items: center;
824
+ justify-content: center;
825
+
826
+ font-family: var(--lol-font-family-spiegel);
827
+ font-size: var(--lol-font-size-sm);
828
+ font-weight: 500;
829
+ color: var(--lol-color-gold-100);
830
+
831
+ border-radius: 9999px;
832
+ outline: none;
833
+ cursor: default;
834
+ -webkit-tap-highlight-color: transparent;
835
+
836
+ &[data-outside-month] {
837
+ color: var(--lol-color-grey-150);
838
+ }
839
+
840
+ &[data-outside-visible-range] {
841
+ visibility: hidden;
842
+ }
843
+
844
+ &[data-unavailable] {
845
+ color: var(--lol-color-grey-150);
846
+ text-decoration: line-through;
847
+ }
848
+
849
+ &[data-disabled] {
850
+ color: var(--lol-color-grey-150);
851
+ }
852
+
853
+ &[data-hovered]:not([data-disabled], [data-selected]) {
854
+ background-color: var(--lol-color-grey-300);
855
+ }
856
+
857
+ &[data-pressed]:not([data-disabled]) {
858
+ background-color: var(--lol-color-grey-200);
859
+ }
860
+
861
+ &[data-focus-visible] {
862
+ z-index: 2;
863
+ outline: 2px solid var(--lol-color-gold-400);
864
+ outline-offset: 2px;
865
+ }
866
+
867
+ &[data-invalid] {
868
+ color: var(--lol-color-gold-400);
869
+ }
870
+
871
+ &[data-today]:not([data-selected]) {
872
+ color: var(--lol-color-gold-400);
873
+ font-weight: 700;
874
+
875
+ &::after {
876
+ content: "";
877
+ position: absolute;
878
+ bottom: 0.25rem;
879
+ width: 3px;
880
+ height: 3px;
881
+ border-radius: 9999px;
882
+ background-color: var(--lol-color-gold-400);
883
+ }
884
+ }
885
+ }
886
+
887
+ /*
888
+ * `border-color` can't be a gradient, and `border-image` (which can) turns
889
+ * out not to clip to `border-radius` — it paints a sharp rectangular frame
890
+ * regardless, which is exactly wrong for a rounded pill. So the ring is
891
+ * drawn the other way around: the cell's own `background` is the gold
892
+ * gradient, filling its full (possibly rounded) shape, and a `::before`
893
+ * sits on top with the hextech fill, inset by the ring's 2px thickness —
894
+ * the same `--lol-gradient-hextech` a selected `ToggleButton` fills itself
895
+ * with, so a selected date reads as the same "active" surface as
896
+ * everywhere else in the library. `border-radius: inherit` copies
897
+ * whatever radius the cell itself ends up with, so the hextech layer's
898
+ * corners always match the gold shape's. Where its inset is 0 on a given
899
+ * side, it covers that side's gold completely — which is how a
900
+ * RangeCalendar's row-interior cells (below) suppress the ring on their
901
+ * left/right and stay open into their neighbors, so the hextech fill
902
+ * (identical in every selected cell) reads as one continuous surface
903
+ * running the length of the range, across as many rows as it spans.
904
+ * `z-index: -1` keeps it behind the day number: an absolutely-positioned
905
+ * box otherwise paints above plain in-flow text regardless of source
906
+ * order, which would bury the digit under it. No inset `box-shadow` here
907
+ * (unlike the selected `ToggleButton` it borrows the fill from): a
908
+ * per-cell shadow is a per-cell seam, visible at every date within a
909
+ * selected run instead of once around the whole shape.
910
+ */
911
+ ._calendar_dpi4c_2 ._cell_dpi4c_82[data-selected],
912
+ ._rangeCalendar_dpi4c_3 ._cell_dpi4c_82[data-selected] {
913
+ position: relative;
914
+ background: var(--lol-gradient-gold);
915
+ color: var(--lol-color-blue-100);
916
+
917
+ &::before {
918
+ content: "";
919
+ position: absolute;
920
+ z-index: -1;
921
+ top: 2px;
922
+ bottom: 2px;
923
+ left: 0;
924
+ right: 0;
925
+ background: var(--lol-gradient-hextech);
926
+ border-radius: inherit;
927
+ }
928
+ }
929
+
930
+ /*
931
+ * Single-selection Calendar: exactly one date can be selected, so it's
932
+ * always drawn as a standalone rounded pill — there's no row to stay
933
+ * continuous with.
934
+ */
935
+ ._calendar_dpi4c_2 ._cell_dpi4c_82[data-selected] {
936
+ border-radius: 9999px;
937
+
938
+ &::before {
939
+ left: 2px;
940
+ right: 2px;
941
+ }
942
+ }
943
+
944
+ /*
945
+ * RangeCalendar: the selection is a run of adjacent cells, and the ring
946
+ * needs to read as one continuous gold outline around that whole shape
947
+ * rather than a stack of separate pills. By default a selected cell is
948
+ * square and open on both sides (the black layer covers left/right
949
+ * completely), so the gold shows only along the top/bottom and one cell's
950
+ * fill runs straight into the next. Only the actual start/end of the
951
+ * range, or a cell sitting at the edge of its own week row (the range
952
+ * wraps there), opens up a side and rounds that corner — capping the bar
953
+ * at the true ends and at every row break. The two rules below only ever
954
+ * touch their own side, so a single-day range (both start and end) still
955
+ * gets both sides capped.
956
+ *
957
+ * A multi-month display (`visibleDuration: {months: 2+}`) adds a second
958
+ * way a row can "break": when one calendar week straddles two displayed
959
+ * months, each month's own grid still renders all 7 columns for that
960
+ * week, padding out with the days that belong to the *other* grid. Those
961
+ * padding days are dimmed (`data-outside-month`) but very much still in
962
+ * the DOM and, crucially, never carry `data-selected` themselves — even
963
+ * when the date they show *is* selected in its own home grid — to avoid
964
+ * two different interactive elements both claiming to be the selected
965
+ * Sept 1st. So `td:last-child`/`td:first-child` land on those always-
966
+ * unselected padding cells, not on the last/first cell that's actually
967
+ * part of the run, and the real edge (e.g. the 31st, sitting right next
968
+ * to a dimmed, unselected "1") never matches either selector — left
969
+ * square instead of capped. The two extra rules below cap a selected
970
+ * cell whenever its neighbor plainly isn't selected, for whatever
971
+ * reason: this padding, an unavailable date, or anything else that
972
+ * breaks the run — which is the same condition `td:first-child`/
973
+ * `td:last-child` are really standing in for at a genuine row edge.
974
+ */
975
+ ._rangeCalendar_dpi4c_3 ._cell_dpi4c_82[data-selected] {
976
+ border-radius: 0;
977
+ }
978
+
979
+ ._rangeCalendar_dpi4c_3 ._cell_dpi4c_82[data-selected][data-selection-start],
980
+ ._rangeCalendar_dpi4c_3 td:first-child > ._cell_dpi4c_82[data-selected],
981
+ ._rangeCalendar_dpi4c_3
982
+ td:has(._cell_dpi4c_82:not([data-selected]))
983
+ + td
984
+ > ._cell_dpi4c_82[data-selected] {
985
+ border-top-left-radius: 9999px;
986
+ border-bottom-left-radius: 9999px;
987
+
988
+ &::before {
989
+ left: 2px;
990
+ }
991
+ }
992
+
993
+ ._rangeCalendar_dpi4c_3 ._cell_dpi4c_82[data-selected][data-selection-end],
994
+ ._rangeCalendar_dpi4c_3 td:last-child > ._cell_dpi4c_82[data-selected],
995
+ ._rangeCalendar_dpi4c_3
996
+ td:has(+ td ._cell_dpi4c_82:not([data-selected]))
997
+ > ._cell_dpi4c_82[data-selected] {
998
+ border-top-right-radius: 9999px;
999
+ border-bottom-right-radius: 9999px;
1000
+
1001
+ &::before {
1002
+ right: 2px;
1003
+ }
1004
+ }
1005
+ }
1006
+ @layer lol {
1007
+ ._dateInput_qxz9d_2 {
1008
+ background:
1009
+ var(--lol-input-background-gradient) padding-box,
1010
+ var(--lol-input-border-gradient) border-box;
1011
+
1012
+ --lol-input-border-gradient: var(--lol-gradient-gold);
1013
+ --lol-input-background-gradient: var(--lol-gradient-hextech-black);
1014
+
1015
+ border: 1px solid transparent;
1016
+ display: flex;
1017
+ align-items: center;
1018
+ width: 100%;
1019
+ margin: 0;
1020
+ padding: 0 0.75rem;
1021
+ outline: none;
1022
+
1023
+ font-family: var(--lol-font-family-spiegel);
1024
+
1025
+ &[data-disabled] {
1026
+ --lol-input-border-gradient: var(--lol-gradient-disabled);
1027
+ }
1028
+
1029
+ &[data-focus-within] {
1030
+ --lol-input-border-gradient: var(--lol-gradient-gold-hover);
1031
+ --lol-input-background-gradient: var(--lol-gradient-grey-focus);
1032
+ }
1033
+
1034
+ &._small_qxz9d_29 {
1035
+ min-height: var(--lol-form-height-small);
1036
+ }
1037
+
1038
+ &._medium_qxz9d_33 {
1039
+ min-height: var(--lol-form-height-medium);
1040
+ }
1041
+
1042
+ &._large_qxz9d_37 {
1043
+ min-height: var(--lol-form-height-large);
1044
+ }
1045
+ }
1046
+
1047
+ ._segment_qxz9d_42 {
1048
+ padding: 0 0.125rem;
1049
+ border-radius: 2px;
1050
+ font-size: 0.75rem;
1051
+ line-height: 1rem;
1052
+ font-weight: 500;
1053
+ letter-spacing: 0.025em;
1054
+ color: var(--lol-color-gold-100);
1055
+ font-variant-numeric: tabular-nums;
1056
+ outline: none;
1057
+ caret-color: transparent;
1058
+
1059
+ /* Literal separators ("/", ":", ",") sit between segments; they are not
1060
+ editable so they shouldn't pick up hover/focus affordances. */
1061
+ &[data-type="literal"] {
1062
+ padding: 0 0.125rem;
1063
+ color: var(--lol-color-grey-100);
1064
+ }
1065
+
1066
+ &[data-placeholder] {
1067
+ color: var(--lol-color-grey-100);
1068
+ }
1069
+
1070
+ &[data-hovered]:not([data-type="literal"]) {
1071
+ background-color: var(--lol-color-grey-300);
1072
+ }
1073
+
1074
+ &[data-focused]:not([data-type="literal"]) {
1075
+ background-color: var(--lol-color-gold-600);
1076
+ color: var(--lol-color-gold-100);
1077
+ }
1078
+
1079
+ &[data-disabled] {
1080
+ color: var(--lol-color-grey-150);
1081
+ }
1082
+
1083
+ &[data-readonly] {
1084
+ color: var(--lol-color-grey-100);
1085
+ }
1086
+ }
1087
+ }
1088
+ @layer lol {
1089
+ ._group_xtlnv_2 {
1090
+ display: flex;
1091
+ align-items: stretch;
1092
+ gap: 1px;
1093
+ padding: 1px;
1094
+ outline: none;
1095
+
1096
+ background-image: var(--lol-gradient-gold);
1097
+
1098
+ &[data-disabled] {
1099
+ background-image: var(--lol-gradient-disabled);
1100
+ }
1101
+
1102
+ &[data-focus-within] {
1103
+ background-image: var(--lol-gradient-gold-hover);
1104
+ }
1105
+
1106
+ &._small_xtlnv_19 {
1107
+ min-height: var(--lol-form-height-small);
1108
+ }
1109
+
1110
+ &._medium_xtlnv_23 {
1111
+ min-height: var(--lol-form-height-medium);
1112
+ }
1113
+
1114
+ &._large_xtlnv_27 {
1115
+ min-height: var(--lol-form-height-large);
1116
+ }
1117
+ }
1118
+
1119
+ ._input_xtlnv_32 {
1120
+ flex: 1;
1121
+ display: flex;
1122
+ align-items: center;
1123
+ min-width: 0;
1124
+ background-color: var(--lol-color-hextech-black);
1125
+ padding: 0 0.75rem;
1126
+ outline: none;
1127
+ font-family: var(--lol-font-family-spiegel);
1128
+
1129
+ &[data-disabled] {
1130
+ background-color: var(--lol-color-grey-300);
1131
+ }
1132
+ }
1133
+
1134
+ ._separator_xtlnv_47 {
1135
+ display: flex;
1136
+ align-items: center;
1137
+ background-color: var(--lol-color-hextech-black);
1138
+ color: var(--lol-color-grey-100);
1139
+ padding: 0 0.125rem;
1140
+ font-family: var(--lol-font-family-spiegel);
1141
+ /*
1142
+ * `.group`'s `gap` is what shows its gold background between every
1143
+ * pair of children — including the two 1px slivers flanking this
1144
+ * dash, which reads as the dash sitting in its own gold-bordered box
1145
+ * rather than as a plain separator between the two dates. Negative
1146
+ * margin pulls it 1px into each neighboring gap, so its own opaque
1147
+ * fill covers those two slivers instead.
1148
+ */
1149
+ margin: 0 -1px;
1150
+
1151
+ &[data-disabled] {
1152
+ background-color: var(--lol-color-grey-300);
1153
+ color: var(--lol-color-grey-150);
1154
+ }
1155
+ }
1156
+
1157
+ ._button_xtlnv_70 {
1158
+ /* A <button> we never paint: without this it falls back to the UA's
1159
+ `buttonface` slab, which is grey under `color-scheme: dark`. */
1160
+ appearance: none;
1161
+ border: 0;
1162
+ margin: 0;
458
1163
 
459
- ._primary_lhmqr_131:hover,
460
- ._secondary_lhmqr_132:hover,
461
- ._dimmed_lhmqr_134:hover {
462
- --lol-button-border-gradient: var(--lol-gradient-gold-hover);
463
- }
1164
+ display: flex;
1165
+ align-items: center;
1166
+ justify-content: center;
1167
+ padding: 0 0.625rem;
464
1168
 
465
- ._primary_lhmqr_131:active,
466
- ._secondary_lhmqr_132:active,
467
- ._dimmed_lhmqr_134:active {
468
- --lol-button-border-gradient: var(--lol-gradient-gold-press);
469
- }
1169
+ color: var(--lol-color-gold-300);
1170
+ background-color: var(--lol-color-hextech-black);
470
1171
 
471
- ._primary_lhmqr_131:disabled,
472
- ._secondary_lhmqr_132:disabled,
473
- ._dimmed_lhmqr_134:disabled {
474
- --lol-button-border-gradient: var(--lol-gradient-disabled);
1172
+ &[data-hovered] {
1173
+ color: var(--lol-color-gold-100);
1174
+ }
1175
+
1176
+ &[data-pressed] {
1177
+ color: var(--lol-color-gold-600);
1178
+ }
1179
+
1180
+ &[data-disabled] {
1181
+ color: var(--lol-color-grey-150);
1182
+ background-color: var(--lol-color-grey-300);
1183
+ }
475
1184
  }
476
1185
 
477
- ._primary_lhmqr_131:focus-visible,
478
- ._secondary_lhmqr_132:focus-visible {
479
- outline-color: var(--lol-color-gold-400);
1186
+ /*
1187
+ * The gold border + hextech-black fill are drawn once, on the popover
1188
+ * itself, and cover it edge to edge — the header and grid inside stay
1189
+ * transparent so it reads as one continuous surface rather than a stack
1190
+ * of separately-filled sections. The visible "hextech" gradient lives on
1191
+ * selected dates themselves (see calendar.module.css), not the popover.
1192
+ */
1193
+ ._popover_xtlnv_106 {
1194
+ padding: 0.75rem;
1195
+ border: 2px solid transparent;
1196
+ box-shadow: 0 2px 4px 0 var(--lol-color-grey-300);
1197
+ background:
1198
+ var(--lol-gradient-hextech-black) padding-box,
1199
+ var(--lol-gradient-gold) border-box;
480
1200
  }
481
1201
  }
482
1202
  @layer lol {
483
- ._checkbox_10zee_2 {
1203
+ ._checkbox_6xifu_2 {
484
1204
  font-family: var(--lol-font-family-spiegel);
485
1205
  color: var(--lol-color-grey-100);
486
1206
  display: flex;
@@ -500,13 +1220,25 @@
500
1220
  }
501
1221
  }
502
1222
 
503
- ._icon_10zee_22 {
1223
+ ._icon_6xifu_22 {
1224
+ /* Off the text baseline, so the box is the glyph. */
1225
+ display: block;
1226
+ flex-shrink: 0;
504
1227
  width: 0.875rem;
505
1228
  height: 0.875rem;
506
1229
  }
507
1230
  }
508
1231
  @layer lol {
509
- ._disclosureButton_9s3bw_2 {
1232
+ ._disclosureButton_1wmxg_2 {
1233
+ /* A <button> we never paint: without this it falls back to the UA's
1234
+ `buttonface` slab, which is grey under `color-scheme: dark`. */
1235
+ appearance: none;
1236
+ background: none;
1237
+ border: 0;
1238
+ margin: 0;
1239
+ font: inherit;
1240
+ letter-spacing: inherit;
1241
+
510
1242
  color: var(--lol-color-grey-100);
511
1243
  font-family: var(--lol-font-family-beaufort);
512
1244
 
@@ -524,7 +1256,7 @@
524
1256
  text-align: left;
525
1257
  }
526
1258
 
527
- ._icon_9s3bw_20 {
1259
+ ._icon_1wmxg_29 {
528
1260
  margin-left: 0.125rem;
529
1261
  margin-right: 0.5rem;
530
1262
  display: inline-block;
@@ -532,7 +1264,7 @@
532
1264
  font-size: var(--lol-font-size-sm);
533
1265
  }
534
1266
 
535
- ._disclosure_9s3bw_2 {
1267
+ ._disclosure_1wmxg_2 {
536
1268
  border-bottom: 1px solid var(--lol-color-gold-600);
537
1269
 
538
1270
  &:last-of-type {
@@ -540,7 +1272,7 @@
540
1272
  }
541
1273
  }
542
1274
 
543
- ._disclosurePanel_9s3bw_36 {
1275
+ ._disclosurePanel_1wmxg_45 {
544
1276
  color: var(--lol-color-grey-100);
545
1277
  font-family: var(--lol-font-family-spiegel);
546
1278
 
@@ -562,14 +1294,17 @@
562
1294
  }
563
1295
  }
564
1296
  @layer lol {
565
- ._divider_8g14c_2 {
1297
+ ._divider_wpkyb_2 {
566
1298
  height: 1px;
567
1299
  flex-grow: 1;
568
1300
  border: none;
1301
+ /* An <hr>: the UA gives it 0.5em block margins and a grey `color`. */
1302
+ margin: 0;
1303
+ color: inherit;
569
1304
  display: flex;
570
1305
  }
571
1306
 
572
- ._left_8g14c_9 {
1307
+ ._left_wpkyb_12 {
573
1308
  background-image: linear-gradient(
574
1309
  to right,
575
1310
  rgba(0, 0, 0, 0),
@@ -577,7 +1312,7 @@
577
1312
  );
578
1313
  }
579
1314
 
580
- ._center_8g14c_17 {
1315
+ ._center_wpkyb_20 {
581
1316
  background-image: linear-gradient(
582
1317
  to right,
583
1318
  rgba(0, 0, 0, 0),
@@ -586,7 +1321,7 @@
586
1321
  );
587
1322
  }
588
1323
 
589
- ._right_8g14c_26 {
1324
+ ._right_wpkyb_29 {
590
1325
  background-image: linear-gradient(
591
1326
  to right,
592
1327
  var(--lol-color-gold-600),
@@ -594,20 +1329,20 @@
594
1329
  );
595
1330
  }
596
1331
 
597
- ._block_8g14c_34 {
1332
+ ._block_wpkyb_37 {
598
1333
  width: 5px;
599
1334
  height: 5px;
600
1335
  border: 1px solid var(--lol-color-gold-600);
601
1336
  rotate: 45deg;
602
1337
  }
603
1338
 
604
- ._wrapper_8g14c_41 {
1339
+ ._wrapper_wpkyb_44 {
605
1340
  display: flex;
606
1341
  align-items: center;
607
1342
  flex-grow: 1;
608
1343
  }
609
1344
 
610
- ._childrenWrapper_8g14c_47 {
1345
+ ._childrenWrapper_wpkyb_50 {
611
1346
  display: flex;
612
1347
  align-items: center;
613
1348
  gap: 2rem;
@@ -615,60 +1350,62 @@
615
1350
  }
616
1351
  }
617
1352
  @layer lol {
618
- ._heading_1ff83_2 {
1353
+ ._heading_4cie6_2 {
1354
+ /* Rendered as h1-h5, which the UA gives block margins scaled to the font. */
1355
+ margin: 0;
619
1356
  font-family: var(--lol-font-family-beaufort);
620
1357
  scroll-margin-top: 5rem;
621
1358
  text-transform: uppercase;
622
1359
  }
623
1360
 
624
- ._h1_1ff83_8 {
1361
+ ._h1_4cie6_10 {
625
1362
  font-size: var(--lol-font-size-h1);
626
1363
  line-height: var(--lol-line-height-h1);
627
1364
  letter-spacing: var(--lol-letter-spacing-h1);
628
1365
  font-weight: var(--lol-font-weight-h1);
629
1366
  }
630
1367
 
631
- ._h2_1ff83_15 {
1368
+ ._h2_4cie6_17 {
632
1369
  font-size: var(--lol-font-size-h2);
633
1370
  line-height: var(--lol-line-height-h2);
634
1371
  letter-spacing: var(--lol-letter-spacing-h2);
635
1372
  font-weight: var(--lol-font-weight-h2);
636
1373
  }
637
1374
 
638
- ._h3_1ff83_22 {
1375
+ ._h3_4cie6_24 {
639
1376
  font-size: var(--lol-font-size-h3);
640
1377
  line-height: var(--lol-line-height-h3);
641
1378
  letter-spacing: var(--lol-letter-spacing-h3);
642
1379
  font-weight: var(--lol-font-weight-h3);
643
1380
  }
644
1381
 
645
- ._h4_1ff83_29 {
1382
+ ._h4_4cie6_31 {
646
1383
  font-size: var(--lol-font-size-h4);
647
1384
  line-height: var(--lol-line-height-h4);
648
1385
  letter-spacing: var(--lol-letter-spacing-h4);
649
1386
  font-weight: var(--lol-font-weight-h4);
650
1387
  }
651
1388
 
652
- ._h5_1ff83_36 {
1389
+ ._h5_4cie6_38 {
653
1390
  font-size: var(--lol-font-size-h5);
654
1391
  line-height: var(--lol-line-height-h5);
655
1392
  letter-spacing: var(--lol-letter-spacing-h5);
656
1393
  font-weight: var(--lol-font-weight-h5);
657
1394
  }
658
1395
 
659
- ._grey100_1ff83_43 {
1396
+ ._grey100_4cie6_45 {
660
1397
  color: var(--lol-color-grey-100);
661
1398
  }
662
1399
 
663
- ._gold100_1ff83_47 {
1400
+ ._gold100_4cie6_49 {
664
1401
  color: var(--lol-color-gold-100);
665
1402
  }
666
1403
 
667
- ._gold200_1ff83_51 {
1404
+ ._gold200_4cie6_53 {
668
1405
  color: var(--lol-color-gold-200);
669
1406
  }
670
1407
 
671
- ._gold400_1ff83_55 {
1408
+ ._gold400_4cie6_57 {
672
1409
  color: var(--lol-color-gold-400);
673
1410
  }
674
1411
  }
@@ -757,7 +1494,7 @@
757
1494
  }
758
1495
  }
759
1496
  @layer lol {
760
- ._overlay_1kg5a_2 {
1497
+ ._overlay_cjo05_2 {
761
1498
  background-color: color-mix(
762
1499
  in srgb,
763
1500
  var(--lol-color-hextech-black),
@@ -780,7 +1517,7 @@
780
1517
  backdrop-filter: blur(8px);
781
1518
  }
782
1519
 
783
- ._dialog_1kg5a_25 {
1520
+ ._dialog_cjo05_25 {
784
1521
  background:
785
1522
  var(--lol-button-background-gradient) padding-box,
786
1523
  var(--lol-button-border-gradient) border-box;
@@ -822,12 +1559,14 @@
822
1559
  }
823
1560
  }
824
1561
 
825
- ._modal_1kg5a_67 {
1562
+ ._modal_cjo05_67 {
826
1563
  width: 100%;
827
1564
  max-width: 28rem;
828
1565
  }
829
1566
 
830
- ._dialogHeading_1kg5a_72 {
1567
+ ._dialogHeading_cjo05_72 {
1568
+ /* React aria renders an <h3>, which the UA gives block margins. */
1569
+ margin: 0;
831
1570
  color: var(--lol-color-gold-100);
832
1571
  font-family: var(--lol-font-family-beaufort);
833
1572
  text-transform: uppercase;
@@ -837,7 +1576,7 @@
837
1576
  line-height: var(--lol-line-height-h5);
838
1577
  }
839
1578
 
840
- ._dialogButtons_1kg5a_82 {
1579
+ ._dialogButtons_cjo05_84 {
841
1580
  justify-content: center;
842
1581
  transform: translateY(2px);
843
1582
  padding: 0 0.25rem;
@@ -847,18 +1586,18 @@
847
1586
  }
848
1587
  }
849
1588
  @layer lol {
850
- ._group_7wszc_2 {
1589
+ ._group_1haju_2 {
851
1590
  display: grid;
852
1591
  grid-template-columns: auto 1fr auto;
853
1592
  gap: 1px;
854
1593
  padding: 1px;
855
1594
  outline: none;
856
1595
 
857
- &._normal_7wszc_9 {
1596
+ &._normal_1haju_9 {
858
1597
  background-image: var(--lol-gradient-gold);
859
1598
  }
860
1599
 
861
- &._dimmed_7wszc_13 {
1600
+ &._dimmed_1haju_13 {
862
1601
  background-image: var(--lol-gradient-grey-300);
863
1602
  }
864
1603
 
@@ -870,20 +1609,23 @@
870
1609
  background-image: var(--lol-gradient-gold-hover);
871
1610
  }
872
1611
 
873
- &._small_7wszc_25 {
1612
+ &._small_1haju_25 {
874
1613
  min-height: var(--lol-form-height-small);
875
1614
  }
876
1615
 
877
- &._medium_7wszc_29 {
1616
+ &._medium_1haju_29 {
878
1617
  min-height: var(--lol-form-height-medium);
879
1618
  }
880
1619
 
881
- &._large_7wszc_33 {
1620
+ &._large_1haju_33 {
882
1621
  min-height: var(--lol-form-height-large);
883
1622
  }
884
1623
  }
885
1624
 
886
- ._input_7wszc_38 {
1625
+ ._input_1haju_38 {
1626
+ /* The group draws the border as its own 1px gradient padding. */
1627
+ border: 0;
1628
+ margin: 0;
887
1629
  background-color: var(--lol-color-hextech-black);
888
1630
  color: var(--lol-color-gold-100);
889
1631
  font-family: var(--lol-font-family-spiegel);
@@ -898,12 +1640,20 @@
898
1640
  color: var(--lol-color-grey-100);
899
1641
  }
900
1642
 
901
- &._focus_7wszc_53 {
1643
+ &._focus_1haju_56 {
902
1644
  background-image: var(--lol-gradient-grey-focus);
903
1645
  }
904
1646
  }
905
1647
 
906
- ._button_7wszc_58 {
1648
+ ._button_1haju_61 {
1649
+ /* A <button> we never paint: without this it falls back to the UA's
1650
+ `buttonface` slab, which is grey under `color-scheme: dark`. */
1651
+ appearance: none;
1652
+ border: 0;
1653
+ margin: 0;
1654
+ font: inherit;
1655
+ letter-spacing: inherit;
1656
+
907
1657
  color: var(--lol-color-gold-100);
908
1658
  background-color: var(--lol-color-hextech-black);
909
1659
  padding: 0 0.625rem;
@@ -915,7 +1665,7 @@
915
1665
  }
916
1666
  }
917
1667
  @layer lol {
918
- ._popover_6y5ml_2 {
1668
+ ._popover_18zyh_2 {
919
1669
  padding: 2px;
920
1670
  box-shadow: 0 2px 4px 0 var(--lol-color-grey-300);
921
1671
  border: 2px solid transparent;
@@ -925,49 +1675,61 @@
925
1675
  --lol-button-border-gradient: var(--lol-gradient-gold-press);
926
1676
  --lol-button-background-gradient: var(--lol-gradient-grey-300);
927
1677
 
928
- &._top_6y5ml_12 {
1678
+ &._top_18zyh_12 {
929
1679
  margin-bottom: 0.5rem;
930
1680
  }
931
1681
 
932
- &._bottom_6y5ml_16 {
1682
+ &._bottom_18zyh_16 {
933
1683
  margin-top: 0.5rem;
934
1684
  }
935
1685
 
936
- &._left_6y5ml_20 {
1686
+ &._left_18zyh_20 {
937
1687
  margin-right: 0.5rem;
938
1688
  }
939
1689
 
940
- &._right_6y5ml_24 {
1690
+ &._right_18zyh_24 {
941
1691
  margin-left: 0.5rem;
942
1692
  }
943
1693
  }
944
1694
 
945
- ._arrow_6y5ml_29 {
946
- ._outer_6y5ml_30 {
1695
+ ._body_18zyh_29 {
1696
+ padding: 1rem;
1697
+ }
1698
+
1699
+ ._arrow_18zyh_33 {
1700
+ /*
1701
+ * React aria anchors the arrow's wrapper with `bottom: 100%`, so the
1702
+ * wrapper's box has to *be* the glyph. Left inline the svg sits on a text
1703
+ * baseline: the wrapper grows to a line-height and the arrow floats off the
1704
+ * popover by the difference.
1705
+ */
1706
+ display: block;
1707
+
1708
+ ._outer_18zyh_42 {
947
1709
  fill: var(--lol-color-gold-600);
948
1710
  }
949
1711
 
950
- ._inner_6y5ml_34 {
1712
+ ._inner_18zyh_46 {
951
1713
  fill: var(--lol-color-grey-300);
952
1714
  }
953
1715
 
954
- &._top_6y5ml_12 {
1716
+ &._top_18zyh_12 {
955
1717
  transform: translateX(-1.5px);
956
1718
  }
957
1719
 
958
- &._bottom_6y5ml_16 {
1720
+ &._bottom_18zyh_16 {
959
1721
  transform: translateX(-1.5px) rotate(180deg);
960
1722
 
961
- ._outer_6y5ml_30 {
1723
+ ._outer_18zyh_42 {
962
1724
  fill: var(--lol-color-gold-500);
963
1725
  }
964
1726
  }
965
1727
 
966
- &._left_6y5ml_20 {
1728
+ &._left_18zyh_20 {
967
1729
  transform: translateY(-2px) translateX(-5px) rotate(-90deg);
968
1730
  }
969
1731
 
970
- &._right_6y5ml_24 {
1732
+ &._right_18zyh_24 {
971
1733
  transform: translateY(-2px) translateX(5px) rotate(90deg);
972
1734
  }
973
1735
  }
@@ -1068,7 +1830,7 @@
1068
1830
  }
1069
1831
  }
1070
1832
  @layer lol {
1071
- ._searchField_7htjg_2 {
1833
+ ._searchField_tm8b9_2 {
1072
1834
  display: grid;
1073
1835
  grid-template-areas:
1074
1836
  "label label"
@@ -1080,7 +1842,7 @@
1080
1842
  color: var(--lol-color-gold-100);
1081
1843
  }
1082
1844
 
1083
- ._input_7htjg_14 {
1845
+ ._input_tm8b9_14 {
1084
1846
  background:
1085
1847
  url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAERElEQVR42uycz0tVQRTH54lamBakLUStQKhEW6V/gC2qhRgRqJURVJj9oBL7oWVBWFj0O/pd2EbJ3ARt2uW6tFUWZkhkiYQVSBZk6esc7rkgkXfm3rkzb957c+CL8Obcc+d+5vcPjESjUWZtdkuxCCwgC8gCsoAsIAvIArKArFlAASzVj/P46KuE+OgFuSvVAJKsqWWgclApaBkoDzSP0n+ARkCDoD5QD6gXNB1XNSiA5YP2graACjz85oAWgrBoN9JvH0GdoBugT4nWB2XThw2BmjhwZrMCenaIYmUnCqAq0ABoDyg9hHjpFAtjVsczIGyut0CPQDkK8ooxu+gdqfEGKAP0GFSvIc/19K6MeAGEpfkQVKGx5lfQO1PjAdB1UGUM+s9KerfRgLDT3OXDfxh0FrSWRqm5oCxQEWgdpb33EQ/fvUkloIifTft/ZtLZNLLkCILBIbsbNCVQaNUEa7FA7G+gFaAxFTNpmRp0WhDOE1AJ9RlTAv7T5FtMf3mGE8xW05oYluwOAb+roA2g7wHeMUEz8MsCvtsFa5s2QLtBaRwfnA81SK6nsP03UiwvS6M8GQEIn6kV6HN20gfKWpRiDXP8alWsDIIELKNFqJc1UxMJyzDWUYGFcZkJgFZz0j/QkiBs66bYXlZuAqBVnPQuRfs40wLgS00AtJyT3qNw3tYjmTctgHI56f0KAfVL5k0LoCxO+heFgMYk8xaz7Y6EtSCAeLPiHIX5XSSZNy2ARjnpxQoBlUjmTQugt5LzJBkrl8ybFkAvOenVivo2dxvEy/pMAMSbiyxlzslG2FZFsbXOwYIAesH4B3nnQJkh5jOTYnoZ5qnXBEA45e/g+ODezD1QJIQ8RigWb7+nQ8USJ2hfgSedkxyfGuZsdqVIwjlPsbxskvLETAGE1fm+gN8B5pxhZQVsVlgrGgV825mi83uZ0j0J+irgV0lrqBrB96WQ72vQZgH/cVCLSTNp1xDOPkFf7D9wAx6PdNpAa5hz/SWNlEe/Ydo78hXdY54P2qoKkMyxj2u3mb+zMVWGTfGSiKOuYx/X9jPnaCfWdhF0yMTVPI4geLr51ABIOOIdMXG74ydoPeiOAZBwQtlkGiC038y5moK1ScWm2S8fvm1hjWwqFpW4sV5EnfdkSE0YYy0BPfDxXCtNRYwDxKgG4UlnIVX5kQAxRujZQor1mTkHiO0+YpwixXSYFy0IPNTDvSI8NsJrwPkzFrQTNBMepO2UZ2z2a8C4/LhLsEQNL1qcCDLM67rrhx/6nCRrWKJ1FLNO8JkWKqTjpjQx1RalAeGmj2eOgc4kCyAXEi51RK/h4d2kN8kEyIWEM/lrAnC2MefmflIBciEdBF0JG06iAHIhNfxnsSoFJ5EAzVzRXwgLjs5hXqcdBv1hziZdp2ywRASE1hxWoIj95ybJ1QdZQBaQBWQBWUAWkDULyAKygPTYXwEGAArW2QJagQgvAAAAAElFTkSuQmCC") no-repeat 5px center,
1086
1848
  var(--lol-search-field-background-gradient) padding-box,
@@ -1117,20 +1879,30 @@
1117
1879
  --lol-search-field-background-gradient: var(--lol-gradient-grey-focus);
1118
1880
  }
1119
1881
 
1120
- &._small_7htjg_51 {
1882
+ &._small_tm8b9_51 {
1121
1883
  min-height: var(--lol-form-height-small);
1122
1884
  }
1123
1885
 
1124
- &._medium_7htjg_55 {
1886
+ &._medium_tm8b9_55 {
1125
1887
  min-height: var(--lol-form-height-medium);
1126
1888
  }
1127
1889
 
1128
- &._large_7htjg_59 {
1890
+ &._large_tm8b9_59 {
1129
1891
  min-height: var(--lol-form-height-large);
1130
1892
  }
1131
1893
  }
1132
1894
 
1133
- ._button_7htjg_64 {
1895
+ ._button_tm8b9_64 {
1896
+ /* A <button> we never paint: without this it falls back to the UA's
1897
+ `buttonface` slab, which is grey under `color-scheme: dark`. */
1898
+ appearance: none;
1899
+ background: none;
1900
+ border: 0;
1901
+ margin: 0;
1902
+ padding: 0;
1903
+ font: inherit;
1904
+ letter-spacing: inherit;
1905
+
1134
1906
  grid-area: button;
1135
1907
 
1136
1908
  font-size: 0.75rem;
@@ -1158,280 +1930,116 @@
1158
1930
  }
1159
1931
  }
1160
1932
  }
1161
- /* Base tag sets up CSS variables; variants (gold/hextech) define actual gradients */
1162
- ._tag_qypr1_2 {
1163
- background:
1164
- var(--lol-multiple-select-background-gradient) padding-box,
1165
- var(--lol-multiple-select-border-gradient) border-box;
1166
-
1167
- border: 2px solid transparent;
1168
- border-radius: 9999px;
1169
-
1170
- align-items: center;
1171
- display: grid;
1172
- grid-template-columns: 1fr auto;
1173
-
1174
- font-family: var(--lol-font-family-spiegel);
1175
- letter-spacing: var(--lol-letter-spacing-sm);
1176
- font-weight: var(--lol-font-weight-sm);
1177
- font-size: 0.75rem;
1178
- line-height: 1;
1179
- color: var(--lol-color-gold-300);
1180
- padding: 0 0.3rem 0 0.5rem;
1181
- }
1182
-
1183
- ._gold_qypr1_23 {
1184
- border-width: 1px;
1185
- --lol-multiple-select-border-gradient: var(--lol-gradient-gold);
1186
- --lol-multiple-select-background-gradient: var(--lol-gradient-grey-300);
1187
- color: var(--lol-color-gold-300);
1188
- }
1189
-
1190
- ._hextech_qypr1_30 {
1191
- border-width: 1px;
1192
- --lol-multiple-select-border-gradient: var(--lol-gradient-hextech);
1193
- --lol-multiple-select-background-gradient: var(--lol-gradient-grey-300);
1194
- color: var(--lol-color-blue-100);
1195
- }
1196
-
1197
- ._grey_qypr1_37 {
1198
- border-width: 1px;
1199
- --lol-multiple-select-border-gradient: var(--lol-color-grey-100);
1200
- --lol-multiple-select-background-gradient: var(--lol-gradient-grey-300);
1201
- color: var(--lol-color-gold-100);
1202
- }
1203
-
1204
- ._text_qypr1_44 {
1205
- padding: 0.25rem 0;
1206
- }
1207
-
1208
- ._remove_qypr1_48 {
1209
- mask: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAACKklEQVR42uzcvUoDQRQF4M0QBW0srHwICxttIygGRH0PsRAfwELsI/gkghYiiGATQVDwIawsUmihRbzjDyyLm2Qnc+eejefC6Taw+zGz88NkG/1+P2OVlyMBgQhEIAIRiEAEIhCLQAQiEIHQqhn6w97zU60edG5hEaoFNdjFymtecitpJXyOFckuVBcbgHMlWZJcSDYlNwlwLn0vkkxLTlBbUB7H1+wPUisRjq+OZB8RqIiTJUAq4mQaSE4RRxOpDCc6UgygswE4GkjDcPJIewhAh5K3Ea6LgTQqztdUTXKPAHQt2UqAVBWnLemivKS1kUxwYg/zWkhmOBoz6dhIpjhaS41YSOY4movVcZEgcDSBxkGCwdEGCkWCwUkBFIIEg5MKqCoSDE5KoFhISXFSA42LlBzHAigUyQTHCsjXq+SjwvVTkhmLG7UAqjLPyY9u55LVSQcKwTFFcjXBMUNyNcIxQXJgOL0KM+4kSA4Mp11xWaKO5MBwugFrN1UkB4YTusBVQ3KAOFBIDhQHBskB40AgOXAccyRXAxxTpBhAy1m6bdKqSMcIQKeSg4T7OaMiPUq2Ud5BnQFIGptdw5AeJGuSF6RR7C8kj7OR6ewEliF5nPUYOBrzoDzSL86d4nKmiBQVx1dT4aY90nv2fXhJE6eIdCTZiYnjqxH6v3nAk/b+8Hrpw6CdtLcolS8kNPjlhf/TgghEIAIRiEAEYhGIQAQiEIEINCH1KcAAQX7SgLqjwvQAAAAASUVORK5CYII=);
1210
- height: 1rem;
1211
- aspect-ratio: 1;
1212
- background-color: currentColor;
1213
- mask-size: contain;
1214
-
1215
- &[data-hovered] {
1216
- background-color: var(--lol-color-gold-100);
1217
- }
1218
-
1219
- &[data-pressed] {
1220
- background-color: var(--lol-color-grey-150);
1221
- }
1222
- }
1223
-
1224
- ._tagGroup_qypr1_64 {
1225
- padding: 0.25rem;
1226
- display: flex;
1227
- justify-content: center;
1228
- }
1229
-
1230
- ._tagList_qypr1_70 {
1231
- display: flex;
1232
- flex-wrap: wrap;
1233
- gap: 0.25rem;
1234
- row-gap: 0.25rem;
1235
- }
1236
- ._popover_jlt01_1 {
1237
- width: 250px;
1238
- display: flex;
1239
- flex-direction: column;
1240
- }
1241
-
1242
- ._select_jlt01_7 {
1243
- border-right: none;
1244
- display: flex;
1245
- align-items: center;
1246
- }
1247
-
1248
- ._triggerContainer_jlt01_13 {
1249
- display: inline-flex;
1250
- }
1251
1933
  @layer lol {
1252
- ._text_1tvjr_2 {
1253
- font-family: var(--lol-font-family-spiegel);
1254
- }
1255
-
1256
- ._label_1tvjr_6 {
1257
- font-size: var(--lol-font-size-label);
1258
- line-height: var(--lol-line-height-label);
1259
- letter-spacing: var(--lol-letter-spacing-label);
1260
- font-weight: var(--lol-font-weight-label);
1261
- }
1934
+ /* Base tag sets up CSS variables; variants (gold/hextech) define actual gradients */
1935
+ ._tag_1db70_3 {
1936
+ background:
1937
+ var(--lol-multiple-select-background-gradient) padding-box,
1938
+ var(--lol-multiple-select-border-gradient) border-box;
1262
1939
 
1263
- ._stat_1tvjr_13 {
1264
- font-size: var(--lol-font-size-stat);
1265
- line-height: var(--lol-line-height-stat);
1266
- letter-spacing: var(--lol-letter-spacing-stat);
1267
- font-weight: var(--lol-font-weight-stat);
1268
- }
1940
+ border: 2px solid transparent;
1941
+ border-radius: 9999px;
1269
1942
 
1270
- ._largeNumber_1tvjr_20 {
1271
- font-size: var(--lol-font-size-large-number);
1272
- line-height: var(--lol-line-height-large-number);
1273
- letter-spacing: var(--lol-letter-spacing-large-number);
1274
- font-weight: var(--lol-font-weight-large-number);
1275
- }
1943
+ align-items: center;
1944
+ display: grid;
1945
+ grid-template-columns: 1fr auto;
1276
1946
 
1277
- ._sm_1tvjr_27 {
1278
- font-size: var(--lol-font-size-sm);
1279
- line-height: var(--lol-line-height-sm);
1947
+ font-family: var(--lol-font-family-spiegel);
1280
1948
  letter-spacing: var(--lol-letter-spacing-sm);
1281
1949
  font-weight: var(--lol-font-weight-sm);
1950
+ font-size: 0.75rem;
1951
+ line-height: 1;
1952
+ color: var(--lol-color-gold-300);
1953
+ padding: 0 0.3rem 0 0.5rem;
1282
1954
  }
1283
1955
 
1284
- ._base_1tvjr_34 {
1285
- font-size: var(--lol-font-size-base);
1286
- line-height: var(--lol-line-height-base);
1287
- letter-spacing: var(--lol-letter-spacing-base);
1288
- font-weight: var(--lol-font-weight-base);
1289
- }
1290
-
1291
- ._md_1tvjr_41 {
1292
- font-size: var(--lol-font-size-md);
1293
- line-height: var(--lol-line-height-md);
1294
- letter-spacing: var(--lol-letter-spacing-md);
1295
- font-weight: var(--lol-font-weight-md);
1296
- }
1297
-
1298
- ._lg_1tvjr_48 {
1299
- font-size: var(--lol-font-size-lg);
1300
- line-height: var(--lol-line-height-lg);
1301
- letter-spacing: var(--lol-letter-spacing-lg);
1302
- font-weight: var(--lol-font-weight-lg);
1303
- }
1304
-
1305
- ._grey100_1tvjr_55 {
1306
- color: var(--lol-color-grey-100);
1956
+ ._gold_1db70_24 {
1957
+ border-width: 1px;
1958
+ --lol-multiple-select-border-gradient: var(--lol-gradient-gold);
1959
+ --lol-multiple-select-background-gradient: var(--lol-gradient-grey-300);
1960
+ color: var(--lol-color-gold-300);
1307
1961
  }
1308
1962
 
1309
- ._grey150_1tvjr_59 {
1310
- color: var(--lol-color-grey-150);
1963
+ ._hextech_1db70_31 {
1964
+ border-width: 1px;
1965
+ --lol-multiple-select-border-gradient: var(--lol-gradient-hextech);
1966
+ --lol-multiple-select-background-gradient: var(--lol-gradient-grey-300);
1967
+ color: var(--lol-color-blue-100);
1311
1968
  }
1312
1969
 
1313
- ._gold100_1tvjr_63 {
1970
+ ._grey_1db70_38 {
1971
+ border-width: 1px;
1972
+ --lol-multiple-select-border-gradient: var(--lol-color-grey-100);
1973
+ --lol-multiple-select-background-gradient: var(--lol-gradient-grey-300);
1314
1974
  color: var(--lol-color-gold-100);
1315
1975
  }
1316
- }
1317
- @layer lol {
1318
- ._button_zllmp_2 {
1319
- font-family: var(--lol-font-family-spiegel);
1320
- display: inline-block;
1321
- min-width: 200px;
1322
- outline: none;
1323
-
1324
- border: 1px solid transparent;
1325
-
1326
- color: var(--lol-color-grey-100);
1327
- padding: 0 1.5rem 0 0.5rem;
1328
1976
 
1329
- font-size: 0.75rem;
1330
- font-weight: 500;
1331
- line-height: 1rem;
1332
- letter-spacing: 0.025em;
1333
- text-align: left;
1334
-
1335
- --lol-select-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAASCAYAAACAa1QyAAAAiUlEQVR42mL8//8/A6mAiYEMQJYmFnSBk6vzYcwmIP4LxI0gjnnoRNyaoKAViKuQ+I14bQKCTiAuA+I6IGYG4gZ0jSw4nFwB1QwDjIRsKkbjNwxckFNNUw8QlyLx66EYb0D8A+IuIGaDyjcQE0+gOPoDxC1I8dNASBMDNDX8hWKMIGcc3FkDIMAA1n8bpHnZDOAAAAAASUVORK5CYII=");
1336
- --lol-select-border-gradient: var(--lol-gradient-gold);
1337
- --lol-select-background-gradient: var(--lol-gradient-hextech-black);
1977
+ ._text_1db70_45 {
1978
+ padding: 0.25rem 0;
1979
+ }
1338
1980
 
1339
- &[data-open] {
1340
- --lol-select-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAASCAYAAACAa1QyAAAA90lEQVR42mL8//8/A6mAiYEMwILVJG4RNiAlDcQgZzz79/XNL2R5RnTnATWwAyn5BEfBaqDUv4UH3rcD+Q+QNaJoAmrgAFJyiY6CdWL8LNEgsRcf/ixA14juJ6kkJ8FGkIbn7//MB2pYKCHAkhDvIFgJksPlJ0ZGRgbmp+9+z1py6EMvSACoASyO009A53FCTfwNCgCoS2A2wAOEcWDiCcl5v6DOY8bmPBYsodf28/f/90sPf+iDBgQo5BiAwd4ICnZcKeKfjDBrepy9IAsoJEFBDgp6fKGHLXIXAm1pQ45cfMmoBpqM2vAmIzSNUkQnWJrFE0CAAQCQxYvehN8YFAAAAABJRU5ErkJggg==");
1341
- color: var(--lol-color-gold-600);
1342
- --lol-select-background-gradient: var(--lol-gradient-grey-300);
1343
- --lol-select-border-gradient: var(--lol-gradient-gold-press);
1344
- }
1981
+ ._remove_1db70_49 {
1982
+ /* A <button> we never paint: without this it falls back to the UA's
1983
+ `buttonface` slab, which is grey under `color-scheme: dark`. The mask is
1984
+ filled with `currentColor`, so the inherited colour matters too. */
1985
+ appearance: none;
1986
+ border: 0;
1987
+ margin: 0;
1988
+ padding: 0;
1989
+ font: inherit;
1990
+ letter-spacing: inherit;
1991
+ color: inherit;
1345
1992
 
1346
- &[data-pressed] {
1347
- --lol-select-border-gradient: var(--lol-gradient-gold-press);
1348
- }
1993
+ mask: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAACKklEQVR42uzcvUoDQRQF4M0QBW0srHwICxttIygGRH0PsRAfwELsI/gkghYiiGATQVDwIawsUmihRbzjDyyLm2Qnc+eejefC6Taw+zGz88NkG/1+P2OVlyMBgQhEIAIRiEAEIhCLQAQiEIHQqhn6w97zU60edG5hEaoFNdjFymtecitpJXyOFckuVBcbgHMlWZJcSDYlNwlwLn0vkkxLTlBbUB7H1+wPUisRjq+OZB8RqIiTJUAq4mQaSE4RRxOpDCc6UgygswE4GkjDcPJIewhAh5K3Ea6LgTQqztdUTXKPAHQt2UqAVBWnLemivKS1kUxwYg/zWkhmOBoz6dhIpjhaS41YSOY4movVcZEgcDSBxkGCwdEGCkWCwUkBFIIEg5MKqCoSDE5KoFhISXFSA42LlBzHAigUyQTHCsjXq+SjwvVTkhmLG7UAqjLPyY9u55LVSQcKwTFFcjXBMUNyNcIxQXJgOL0KM+4kSA4Mp11xWaKO5MBwugFrN1UkB4YTusBVQ3KAOFBIDhQHBskB40AgOXAccyRXAxxTpBhAy1m6bdKqSMcIQKeSg4T7OaMiPUq2Ud5BnQFIGptdw5AeJGuSF6RR7C8kj7OR6ewEliF5nPUYOBrzoDzSL86d4nKmiBQVx1dT4aY90nv2fXhJE6eIdCTZiYnjqxH6v3nAk/b+8Hrpw6CdtLcolS8kNPjlhf/TgghEIAIRiEAEYhGIQAQiEIEINCH1KcAAQX7SgLqjwvQAAAAASUVORK5CYII=);
1994
+ height: 1rem;
1995
+ aspect-ratio: 1;
1996
+ background-color: currentColor;
1997
+ mask-size: contain;
1349
1998
 
1350
1999
  &[data-hovered] {
1351
- --lol-select-border-gradient: var(--lol-gradient-gold-hover);
1352
- }
1353
-
1354
- &[data-disabled] {
1355
- --lol-select-border-gradient: var(--lol-gradient-disabled);
1356
- /* make the image gray */
1357
- filter: grayscale(100%);
1358
- }
1359
-
1360
- &._small_zllmp_44 {
1361
- min-height: var(--lol-form-height-small);
1362
- }
1363
-
1364
- &._medium_zllmp_48 {
1365
- min-height: var(--lol-form-height-medium);
2000
+ background-color: var(--lol-color-gold-100);
1366
2001
  }
1367
2002
 
1368
- &._large_zllmp_52 {
1369
- min-height: var(--lol-form-height-large);
2003
+ &[data-pressed] {
2004
+ background-color: var(--lol-color-grey-150);
1370
2005
  }
1371
2006
  }
1372
2007
 
1373
- ._singleSelect_zllmp_57 {
1374
- background:
1375
- var(--lol-select-image) no-repeat right 0.5rem center,
1376
- var(--lol-select-background-gradient) padding-box,
1377
- var(--lol-select-border-gradient) border-box;
2008
+ ._tagGroup_1db70_76 {
2009
+ padding: 0.25rem;
2010
+ display: flex;
2011
+ justify-content: flex-start;
1378
2012
  }
1379
2013
 
1380
- ._multiSelect_zllmp_64 {
1381
- background:
1382
- var(--lol-select-background-gradient) padding-box,
1383
- var(--lol-select-border-gradient) border-box;
2014
+ ._tagList_1db70_82 {
2015
+ display: flex;
2016
+ flex-wrap: wrap;
2017
+ gap: 0.25rem;
2018
+ row-gap: 0.25rem;
1384
2019
  }
1385
-
1386
- ._listBox_zllmp_70 {
1387
- background-color: var(--lol-color-hextech-black);
1388
- border: 1px solid var(--lol-color-gold-600);
1389
- outline: none;
1390
- overflow-y: auto;
2020
+ }
2021
+ @layer lol {
2022
+ ._popover_1gisa_2 {
2023
+ width: 250px;
2024
+ display: flex;
2025
+ flex-direction: column;
1391
2026
  }
1392
2027
 
1393
- ._item_zllmp_77 {
1394
- border-bottom: 1px solid var(--lol-color-grey-300);
1395
- color: var(--lol-color-gold-300);
1396
- font-size: var(--lol-font-size-sm);
1397
- font-weight: var(--lol-font-weight-sm);
1398
- line-height: var(--lol-line-height-sm);
1399
- letter-spacing: var(--lol-letter-spacing-sm);
1400
- padding: 0.375rem 0.5rem;
1401
- outline: none;
1402
- cursor: pointer;
1403
-
1404
- &[data-hovered] {
1405
- background-color: var(--lol-color-grey-300);
1406
- color: var(--lol-color-gold-100);
1407
- }
1408
-
1409
- &[data-pressed],
1410
- &._focus_zllmp_94 {
1411
- background-color: color-mix(
1412
- in srgb,
1413
- var(--lol-color-grey-300),
1414
- transparent 50%
1415
- );
1416
- color: var(--lol-color-gold-600);
1417
- }
1418
-
1419
- &._selected_zllmp_103 {
1420
- background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAALCAYAAABPhbxiAAAAsElEQVR42pTQXQoBURTA8ZmbdxuxAi/WgfLmQb4pYgMi36QUJUuxBIvw7FEi/qfOrds0NPfW7+We85+mG95v18DjhGjglPKMNqjibTyilUYTbE3CaIE65ujLZZJQlptYomsvJUyjp1+Oi1pYo+MOjA7GmEWiKdrY6c7HHcqrjpDRpQeGGslv7VGLRjZ8Ii9PjAFyyOKISlxkQzkvFDUu4Izyr8gNA41KuODwL5LzFWAAUJ8mTIVblvcAAAAASUVORK5CYII=);
1421
- background-position: right 0.5rem center;
1422
- background-repeat: no-repeat;
1423
- }
2028
+ ._triggerContainer_1gisa_8 {
2029
+ display: inline-flex;
1424
2030
  }
1425
2031
 
1426
- ._popover_zllmp_110 {
1427
- width: var(--trigger-width);
2032
+ /* Descendant selector, not just `.select`: needs higher specificity than
2033
+ `.button`'s `display: inline-block` (select.module.css), since equal-
2034
+ specificity rules would otherwise resolve by CSS source order — which
2035
+ depends on unrelated bundling details, not intent. Losing that race
2036
+ blockifies to `display: block` (this is a flex item) and silently
2037
+ drops `align-items`, so tags/empty text stick to the top instead of
2038
+ centering. */
2039
+ ._triggerContainer_1gisa_8 ._select_1gisa_12 {
2040
+ border-right: none;
1428
2041
  display: flex;
1429
- flex-direction: column;
1430
- }
1431
-
1432
- ._emptyList_zllmp_116 {
1433
- padding: 0.5rem 0.25rem;
1434
- text-align: center;
2042
+ align-items: center;
1435
2043
  }
1436
2044
  }
1437
2045
  @layer lol {
@@ -1514,13 +2122,16 @@
1514
2122
  }
1515
2123
  }
1516
2124
  @layer lol {
1517
- ._spinner_9di76_2 {
2125
+ ._spinner_15he7_2 {
2126
+ /* Off the text baseline, so the box is the glyph. */
2127
+ display: block;
2128
+ max-width: 100%;
1518
2129
  aspect-ratio: 1 / 1;
1519
2130
  width: 3rem;
1520
- animation: _spin_9di76_2 1s linear infinite;
2131
+ animation: _spin_15he7_2 1s linear infinite;
1521
2132
  }
1522
2133
 
1523
- @keyframes _spin_9di76_2 {
2134
+ @keyframes _spin_15he7_2 {
1524
2135
  from {
1525
2136
  transform: rotate(0deg);
1526
2137
  }
@@ -1531,7 +2142,7 @@
1531
2142
  }
1532
2143
  }
1533
2144
  @layer lol {
1534
- ._toast_15hp0_2 {
2145
+ ._toast_1a46s_2 {
1535
2146
  padding: 1rem;
1536
2147
  border: 2px solid transparent;
1537
2148
  background:
@@ -1545,23 +2156,23 @@
1545
2156
  gap: 6px;
1546
2157
  }
1547
2158
 
1548
- ._default_15hp0_16 {
2159
+ ._default_1a46s_16 {
1549
2160
  --lol-toast-background-gradient: var(--lol-gradient-hextech-black);
1550
2161
  --lol-toast-border-gradient: var(--lol-gradient-grey-300);
1551
2162
  --lol-toast-icon-color: var(--lol-color-gold-300);
1552
2163
  }
1553
2164
 
1554
- ._title_15hp0_22 {
2165
+ ._title_1a46s_22 {
1555
2166
  font-size: var(--lol-font-size-sm);
1556
2167
  }
1557
2168
 
1558
- ._content_15hp0_26 {
2169
+ ._content_1a46s_26 {
1559
2170
  display: flex;
1560
2171
  align-items: flex-start;
1561
2172
  gap: 0.75rem;
1562
2173
  }
1563
2174
 
1564
- ._icon_15hp0_32 {
2175
+ ._icon_1a46s_32 {
1565
2176
  display: flex;
1566
2177
  height: 20px;
1567
2178
  width: 20px;
@@ -1574,25 +2185,30 @@
1574
2185
  & > * {
1575
2186
  flex-shrink: 0;
1576
2187
  }
2188
+ /* Off the text baseline, so the box is the glyph. */
2189
+ & > img {
2190
+ display: block;
2191
+ max-width: 100%;
2192
+ }
1577
2193
  & svg {
1578
2194
  margin-left: var(--toast-svg-margin-start);
1579
2195
  margin-right: var(--toast-svg-margin-end);
1580
2196
  }
1581
2197
  }
1582
2198
 
1583
- ._content_15hp0_26 {
2199
+ ._content_1a46s_26 {
1584
2200
  display: flex;
1585
2201
  flex-direction: column;
1586
2202
  gap: 2px;
1587
2203
  }
1588
2204
 
1589
- ._actions_15hp0_57 {
2205
+ ._actions_1a46s_62 {
1590
2206
  display: flex;
1591
2207
  justify-content: flex-end;
1592
2208
  margin-top: 0.25rem;
1593
2209
  }
1594
2210
 
1595
- ._button_15hp0_63 {
2211
+ ._button_1a46s_68 {
1596
2212
  padding-left: 8px;
1597
2213
  padding-right: 8px;
1598
2214
  margin-left: var(--toast-button-margin-start);
@@ -1600,7 +2216,7 @@
1600
2216
  flex-shrink: 0;
1601
2217
  }
1602
2218
 
1603
- ._closeButton_15hp0_71 {
2219
+ ._closeButton_1a46s_76 {
1604
2220
  position: absolute;
1605
2221
  min-height: 1.33rem !important;
1606
2222
  left: var(--toast-close-button-start);
@@ -1616,7 +2232,7 @@
1616
2232
  z-index: 1;
1617
2233
  }
1618
2234
 
1619
- ._loader_15hp0_87 {
2235
+ ._loader_1a46s_92 {
1620
2236
  width: 20px;
1621
2237
  height: 20px;
1622
2238
  }
@@ -1702,12 +2318,12 @@
1702
2318
  }
1703
2319
  }
1704
2320
  @layer lol {
1705
- ._resizableContainer_1vns6_2 {
2321
+ ._resizableContainer_1iv6r_2 {
1706
2322
  overflow: auto;
1707
2323
  position: relative;
1708
2324
  }
1709
2325
 
1710
- ._table_1vns6_7 {
2326
+ ._table_1iv6r_7 {
1711
2327
  border-collapse: collapse;
1712
2328
  border-spacing: 0;
1713
2329
  width: 100%;
@@ -1725,7 +2341,7 @@
1725
2341
  }
1726
2342
  }
1727
2343
 
1728
- ._row_1vns6_25 {
2344
+ ._row_1iv6r_25 {
1729
2345
  color: var(--lol-color-grey-100);
1730
2346
  outline: none;
1731
2347
  transition: color 0.3s ease;
@@ -1784,7 +2400,14 @@
1784
2400
  }
1785
2401
  }
1786
2402
 
1787
- ._cell_1vns6_84 {
2403
+ ._cell_1iv6r_84 {
2404
+ /*
2405
+ * Collapsed borders are resolved between neighbours, and Chrome paints the
2406
+ * winning hairline once per edge when the losing side is styled `none`. The
2407
+ * header's 25%-opacity line then blends twice and comes out twice as
2408
+ * bright; a zero-width `solid` border on the cell below keeps it single.
2409
+ */
2410
+ border: 0 solid;
1788
2411
  padding: 0.375rem 0.75rem;
1789
2412
  vertical-align: middle;
1790
2413
  outline: none;
@@ -1795,7 +2418,7 @@
1795
2418
  }
1796
2419
  }
1797
2420
 
1798
- ._resizer_1vns6_95 {
2421
+ ._resizer_1iv6r_102 {
1799
2422
  position: absolute;
1800
2423
  inset-block: 0;
1801
2424
  inset-inline-end: 0;
@@ -1827,7 +2450,7 @@
1827
2450
  }
1828
2451
 
1829
2452
  /* Fixed footprint so toggling the sort direction never shifts the header. */
1830
- ._sortIndicator_1vns6_127 {
2453
+ ._sortIndicator_1iv6r_134 {
1831
2454
  display: inline-block;
1832
2455
  vertical-align: middle;
1833
2456
  width: 0.5rem;
@@ -1851,7 +2474,7 @@
1851
2474
  }
1852
2475
  }
1853
2476
 
1854
- ._column_1vns6_151 {
2477
+ ._column_1iv6r_158 {
1855
2478
  position: relative;
1856
2479
  font-family: var(--lol-font-family-beaufort);
1857
2480
  color: var(--lol-color-gold-100);
@@ -1887,15 +2510,15 @@
1887
2510
  color: var(--lol-color-gold-500);
1888
2511
  }
1889
2512
 
1890
- &[data-hovered] ._sortIndicator_1vns6_127 {
2513
+ &[data-hovered] ._sortIndicator_1iv6r_134 {
1891
2514
  opacity: 0.5;
1892
2515
  }
1893
2516
 
1894
- &[data-sort-direction] ._sortIndicator_1vns6_127 {
2517
+ &[data-sort-direction] ._sortIndicator_1iv6r_134 {
1895
2518
  opacity: 1;
1896
2519
  }
1897
2520
 
1898
- &[data-sort-direction="descending"] ._sortIndicator_1vns6_127::after {
2521
+ &[data-sort-direction="descending"] ._sortIndicator_1iv6r_134::after {
1899
2522
  border-width: 0.375rem 0.25rem 0;
1900
2523
  border-top-color: currentColor;
1901
2524
  border-bottom-color: transparent;
@@ -1907,28 +2530,34 @@
1907
2530
  }
1908
2531
  }
1909
2532
 
1910
- ._footer_1vns6_207 {
2533
+ ._footer_1iv6r_214 {
1911
2534
  color: var(--lol-color-gold-300);
1912
2535
 
1913
- & ._cell_1vns6_84 {
2536
+ & ._cell_1iv6r_84 {
1914
2537
  border-top: 1px solid rgb(from var(--lol-color-grey-100) r g b / 0.25);
1915
2538
  }
1916
2539
  }
1917
2540
 
1918
- ._empty_1vns6_215 {
2541
+ ._empty_1iv6r_222 {
1919
2542
  padding: 1rem 0.75rem;
1920
2543
  text-align: center;
1921
2544
  }
1922
2545
 
1923
- ._start_1vns6_220 {
2546
+ /* React aria renders the empty state in a row it builds itself, so that cell
2547
+ never gets `.cell` and keeps the UA's 1px padding. */
2548
+ ._table_1iv6r_7 [data-empty] > tr > td {
2549
+ padding: 0;
2550
+ }
2551
+
2552
+ ._start_1iv6r_233 {
1924
2553
  text-align: start;
1925
2554
  }
1926
2555
 
1927
- ._center_1vns6_224 {
2556
+ ._center_1iv6r_237 {
1928
2557
  text-align: center;
1929
2558
  }
1930
2559
 
1931
- ._end_1vns6_228 {
2560
+ ._end_1iv6r_241 {
1932
2561
  text-align: end;
1933
2562
  }
1934
2563
  }
@@ -1996,7 +2625,7 @@
1996
2625
  }
1997
2626
  }
1998
2627
  @layer lol {
1999
- ._textField_cjv2r_2 {
2628
+ ._textField_1dbgw_2 {
2000
2629
  background:
2001
2630
  var(--lol-input-background-gradient) padding-box,
2002
2631
  var(--lol-input-border-gradient) border-box;
@@ -2032,26 +2661,29 @@
2032
2661
  --lol-input-background-gradient: var(--lol-gradient-grey-focus);
2033
2662
  }
2034
2663
 
2035
- &._small_cjv2r_38 {
2664
+ &._small_1dbgw_38 {
2036
2665
  min-height: var(--lol-form-height-small);
2037
2666
  }
2038
2667
 
2039
- &._medium_cjv2r_42 {
2668
+ &._medium_1dbgw_42 {
2040
2669
  min-height: var(--lol-form-height-medium);
2041
2670
  }
2042
2671
 
2043
- &._large_cjv2r_46 {
2672
+ &._large_1dbgw_46 {
2044
2673
  min-height: var(--lol-form-height-large);
2045
2674
  }
2046
2675
 
2047
- &._textArea_cjv2r_50 {
2676
+ &._textArea_1dbgw_50 {
2048
2677
  padding-top: 0.5rem;
2049
2678
  padding-bottom: 0.5rem;
2679
+ /* The UA lets a textarea be resized in both axes, which breaks the
2680
+ field's layout; only the height is safe to drag. */
2681
+ resize: vertical;
2050
2682
  }
2051
2683
  }
2052
2684
  }
2053
2685
  @layer lol {
2054
- ._toolbar_pv0cj_2 {
2686
+ ._toolbar_1j7x4_2 {
2055
2687
  display: flex;
2056
2688
  align-items: center;
2057
2689
  gap: 0.5rem;
@@ -2066,9 +2698,12 @@
2066
2698
  }
2067
2699
  }
2068
2700
 
2069
- ._separator_pv0cj_17 {
2701
+ ._separator_1j7x4_17 {
2070
2702
  border: none;
2703
+ /* An <hr> when horizontal: the UA gives it block margins and a grey
2704
+ `color`. */
2071
2705
  margin: 0;
2706
+ color: inherit;
2072
2707
  flex: none;
2073
2708
  align-self: stretch;
2074
2709
  height: 1px;
@@ -2093,7 +2728,7 @@
2093
2728
  }
2094
2729
  }
2095
2730
  @layer lol {
2096
- ._tree_1jyu5_2 {
2731
+ ._tree_17ans_2 {
2097
2732
  --lol-tree-indent: 1.125rem;
2098
2733
 
2099
2734
  box-sizing: border-box;
@@ -2112,7 +2747,7 @@
2112
2747
  }
2113
2748
  }
2114
2749
 
2115
- ._item_1jyu5_21 {
2750
+ ._item_17ans_21 {
2116
2751
  display: flex;
2117
2752
  align-items: center;
2118
2753
  gap: 0.375rem;
@@ -2195,16 +2830,24 @@
2195
2830
 
2196
2831
  /* Top-level items are separated by the client's faint gold hairline. The
2197
2832
  sibling combinator keeps it off the first row, whichever level follows. */
2198
- ._item_1jyu5_21 + ._item_1jyu5_21[data-level="1"] {
2833
+ ._item_17ans_21 + ._item_17ans_21[data-level="1"] {
2199
2834
  border-top: 1px solid var(--lol-color-gold-600);
2200
2835
  }
2201
2836
 
2202
- ._chevron_1jyu5_108 {
2837
+ ._chevron_17ans_108 {
2838
+ /* A <button> we never paint: without this it falls back to the UA's
2839
+ `buttonface` slab, which is grey under `color-scheme: dark`. */
2840
+ appearance: none;
2841
+ border: 0;
2842
+ margin: 0;
2843
+ padding: 0;
2844
+ font: inherit;
2845
+ letter-spacing: inherit;
2846
+ color: inherit;
2847
+
2203
2848
  flex: none;
2204
2849
  width: 0.5rem;
2205
2850
  height: 0.75rem;
2206
- padding: 0;
2207
- border: none;
2208
2851
  outline: none;
2209
2852
  cursor: pointer;
2210
2853
 
@@ -2222,27 +2865,27 @@
2222
2865
  }
2223
2866
  }
2224
2867
 
2225
- ._chevronSpacer_1jyu5_131 {
2868
+ ._chevronSpacer_17ans_139 {
2226
2869
  flex: none;
2227
2870
  width: 0.5rem;
2228
2871
  }
2229
2872
 
2230
- ._item_1jyu5_21[data-expanded] ._chevron_1jyu5_108 {
2873
+ ._item_17ans_21[data-expanded] ._chevron_17ans_108 {
2231
2874
  rotate: 90deg;
2232
2875
  }
2233
2876
 
2234
- ._item_1jyu5_21[data-hovered] ._chevron_1jyu5_108,
2235
- ._chevron_1jyu5_108[data-hovered],
2236
- ._chevron_1jyu5_108[data-focus-visible] {
2877
+ ._item_17ans_21[data-hovered] ._chevron_17ans_108,
2878
+ ._chevron_17ans_108[data-hovered],
2879
+ ._chevron_17ans_108[data-focus-visible] {
2237
2880
  --lol-tree-chevron: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAoCAYAAADg+OpoAAABGElEQVR42r3WO47CMBCA4T+jaCtuQLEcZE+x3IOOxxVIRcM1tlvtPTgBNFQIQUu1TSxFVpw44xlGiiI5o/nk0dhK9bie6IkVMAe2GEWdQA5A1T4bC0gGEIA10FhDMYIlJiOIGSbAZ1ukGsktwgS4AEvglZGvxkLrfoFvT6w7DK5YPN5umPSsuWCSWDfHZOCbKSYjBcwwyShggknm0BRjMuEoFGEy8YCrMVFcWyqsVl7GAfsBPjIw1Y5CPDN3BXDTQl/AHzDLyN0CjbwD0bROhUyF1MgUqAjJhYqRHMgEGYPMkCHIFElB5kgf5ILEkBvShVyRAC28kQCdgaMn0m3dDth7IfEwpLBipG+8Y8wESf0z7Nr33QoB+AdPzF+bRdCP8QAAAABJRU5ErkJggg==");
2238
2881
  }
2239
2882
 
2240
- ._item_1jyu5_21[data-disabled] ._chevron_1jyu5_108 {
2883
+ ._item_17ans_21[data-disabled] ._chevron_17ans_108 {
2241
2884
  cursor: default;
2242
2885
  filter: grayscale(100%);
2243
2886
  }
2244
2887
 
2245
- ._label_1jyu5_151 {
2888
+ ._label_17ans_159 {
2246
2889
  flex: 1;
2247
2890
  min-width: 0;
2248
2891
  overflow: hidden;
@@ -2250,18 +2893,18 @@
2250
2893
  text-overflow: ellipsis;
2251
2894
  }
2252
2895
 
2253
- ._empty_1jyu5_159 {
2896
+ ._empty_17ans_167 {
2254
2897
  padding: 1rem 0.75rem;
2255
2898
  text-align: center;
2256
2899
  }
2257
2900
 
2258
- ._loadMore_1jyu5_164 {
2901
+ ._loadMore_17ans_172 {
2259
2902
  display: flex;
2260
2903
  justify-content: center;
2261
2904
  padding: 0.5rem;
2262
2905
  }
2263
2906
 
2264
- ._spinner_1jyu5_170 {
2907
+ ._spinner_17ans_178 {
2265
2908
  width: 1.5rem;
2266
2909
  }
2267
2910
  }