@eos-ui/vue 0.3.0 → 0.4.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.
Files changed (48) hide show
  1. package/dist/components/Avatar/EAvatar.js.map +1 -1
  2. package/dist/components/Avatar/EAvatar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  3. package/dist/components/Button/EButton.js.map +1 -1
  4. package/dist/components/Button/EButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  5. package/dist/components/Calendar/ECalendar.js.map +1 -1
  6. package/dist/components/Calendar/ECalendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  7. package/dist/components/CodeBlock/ECodeBlock.js.map +1 -1
  8. package/dist/components/CodeBlock/ECodeBlock.vue_vue_type_script_setup_true_lang.js.map +1 -1
  9. package/dist/components/DataGrid/EDataGrid.js.map +1 -1
  10. package/dist/components/DataGrid/EDataGrid.vue_vue_type_script_setup_true_lang.js.map +1 -1
  11. package/dist/components/EmptyState/EEmptyState.js.map +1 -1
  12. package/dist/components/EmptyState/EEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -1
  13. package/dist/components/ExpandableRow/EExpandableRow.js.map +1 -1
  14. package/dist/components/ExpandableRow/EExpandableRow.vue_vue_type_script_setup_true_lang.js.map +1 -1
  15. package/dist/components/Kbd/EKbd.js.map +1 -1
  16. package/dist/components/Kbd/EKbd.vue_vue_type_script_setup_true_lang.js.map +1 -1
  17. package/dist/components/Menu/EMenu.js.map +1 -1
  18. package/dist/components/Menu/EMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
  19. package/dist/components/NavList/ENavList.js.map +1 -1
  20. package/dist/components/NavList/ENavList.vue_vue_type_script_setup_true_lang.js.map +1 -1
  21. package/dist/components/Notice/ENotice.js.map +1 -1
  22. package/dist/components/Notice/ENotice.vue_vue_type_script_setup_true_lang.js.map +1 -1
  23. package/dist/components/Pagination/EPagination.js.map +1 -1
  24. package/dist/components/Pagination/EPagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
  25. package/dist/components/PasswordField/EPasswordField.js.map +1 -1
  26. package/dist/components/PasswordField/EPasswordField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  27. package/dist/components/Progress/EProgress.js.map +1 -1
  28. package/dist/components/Progress/EProgress.vue_vue_type_script_setup_true_lang.js.map +1 -1
  29. package/dist/components/SearchBar/ESearchBar.js.map +1 -1
  30. package/dist/components/SearchBar/ESearchBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  31. package/dist/components/SearchResults/ESearchResults.js.map +1 -1
  32. package/dist/components/SearchResults/ESearchResults.vue_vue_type_script_setup_true_lang.js.map +1 -1
  33. package/dist/components/Segmented/ESegmented.js.map +1 -1
  34. package/dist/components/Segmented/ESegmented.vue_vue_type_script_setup_true_lang.js.map +1 -1
  35. package/dist/components/SignaturePad/ESignaturePad.js.map +1 -1
  36. package/dist/components/SignaturePad/ESignaturePad.vue_vue_type_script_setup_true_lang.js.map +1 -1
  37. package/dist/components/Skeleton/ESkeleton.js.map +1 -1
  38. package/dist/components/Skeleton/ESkeleton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  39. package/dist/components/Stamp/EStamp.js.map +1 -1
  40. package/dist/components/Stamp/EStamp.vue_vue_type_script_setup_true_lang.js.map +1 -1
  41. package/dist/components/Surface/ESurface.js.map +1 -1
  42. package/dist/components/Surface/ESurface.vue_vue_type_script_setup_true_lang.js.map +1 -1
  43. package/dist/components/Switch/ESwitch.js.map +1 -1
  44. package/dist/components/Switch/ESwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
  45. package/dist/components/Tabs/ETabs.js.map +1 -1
  46. package/dist/components/Tabs/ETabs.vue_vue_type_script_setup_true_lang.js.map +1 -1
  47. package/dist/style.css +50 -221
  48. package/package.json +2 -2
package/dist/style.css CHANGED
@@ -472,11 +472,6 @@
472
472
  height: var(--e-tap, 44px);
473
473
  overflow: hidden;
474
474
  border: var(--e-stroke-edge) solid var(--e-border-strong);
475
-
476
- --e-bc: var(--e-border-strong);
477
-
478
- outline: var(--e-stroke-edge) solid var(--e-bc);
479
- outline-offset: calc(-1 * var(--e-stroke-edge));
480
475
  border-radius: var(--e-radius-md);
481
476
  background: var(--e-surface-tint);
482
477
  color: var(--e-primary);
@@ -491,8 +486,6 @@
491
486
  }
492
487
  .e-avatar--button:hover {
493
488
  border-color: var(--e-ink);
494
-
495
- --e-bc: var(--e-ink);
496
489
  }
497
490
  .e-avatar--button:focus-visible {
498
491
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
@@ -615,22 +608,21 @@
615
608
  --e-hover: color-mix(in srgb, var(--e-fill), var(--e-shade-hover));
616
609
  --e-press: color-mix(in srgb, var(--e-fill), var(--e-shade-press));
617
610
 
611
+ /* The face is a whole rounded box and the slab is an offset copy of it showing underneath, in the colour of the face's own edge. The margin gives back the room the slab takes, so the button is still one control height tall, and pressing sinks the face onto the slab. */
612
+ --e-lift: var(--e-depth);
613
+
618
614
  position: relative;
619
615
  display: inline-flex;
620
616
  align-items: center;
621
617
  justify-content: center;
622
618
  gap: var(--e-space-2);
623
- height: var(--e-control-height);
624
- padding: var(--e-depth) var(--e-space-4) 0;
619
+ height: calc(var(--e-control-height) - var(--e-lift));
620
+ margin-block-end: var(--e-lift);
621
+ padding: 0 var(--e-space-4);
625
622
  border: var(--e-stroke-edge) solid var(--e-slab);
626
-
627
- --e-bc: var(--e-slab);
628
-
629
- outline: var(--e-stroke-edge) solid var(--e-bc);
630
- outline-offset: calc(-1 * var(--e-stroke-edge));
631
- border-bottom-width: calc(var(--e-stroke-edge) + var(--e-depth));
632
623
  border-radius: var(--e-radius-md);
633
624
  background: var(--e-fill);
625
+ box-shadow: 0 var(--e-lift) 0 0 var(--e-slab);
634
626
  color: var(--e-on-fill);
635
627
  font: 500 var(--e-text-md) / 1 var(--e-font-sans);
636
628
  letter-spacing: 0.01em;
@@ -638,6 +630,7 @@
638
630
  text-decoration: none;
639
631
  cursor: pointer;
640
632
  transition:
633
+ transform var(--e-duration-tap) var(--e-easing-out),
641
634
  box-shadow var(--e-duration-tap) var(--e-easing-out),
642
635
  background-color var(--e-duration-tap) var(--e-easing-out);
643
636
  }
@@ -646,8 +639,8 @@
646
639
  }
647
640
  .e-btn:active {
648
641
  background: var(--e-press);
649
- border-bottom-width: var(--e-stroke-edge);
650
- box-shadow: inset 0 var(--e-depth) 0 0 color-mix(in srgb, transparent, var(--e-shade-press));
642
+ box-shadow: 0 0 0 0 var(--e-slab);
643
+ transform: translateY(var(--e-lift));
651
644
  }
652
645
  .e-btn--secondary {
653
646
  --e-fill: var(--e-secondary);
@@ -665,28 +658,19 @@
665
658
  .e-btn--outline:hover {
666
659
  background: color-mix(in srgb, var(--e-surface), var(--e-shade-hover));
667
660
  border-color: var(--e-ink);
668
-
669
- --e-bc: var(--e-ink);
670
661
  }
671
662
  .e-btn--outline:active {
672
663
  background: color-mix(in srgb, var(--e-surface), var(--e-shade-press));
673
664
  border-color: var(--e-ink);
674
-
675
- --e-bc: var(--e-ink);
676
-
677
- border-bottom-width: var(--e-stroke-edge);
678
- box-shadow: inset 0 var(--e-depth) 0 0 color-mix(in srgb, transparent, var(--e-shade-press));
679
665
  }
680
666
  .e-btn--quiet {
681
667
  border-color: transparent;
682
668
 
683
- --e-bc: transparent;
669
+ --e-lift: 0px;
684
670
 
685
- border-bottom-width: var(--e-stroke-edge);
686
671
  background: transparent;
687
672
  color: var(--e-ink);
688
673
  box-shadow: none;
689
- padding-top: 0;
690
674
  padding-inline: var(--e-space-3);
691
675
  text-decoration: underline;
692
676
  text-underline-offset: 5px;
@@ -695,20 +679,13 @@
695
679
  }
696
680
  .e-btn--quiet:not([disabled], [aria-disabled="true"]):hover {
697
681
  border-color: var(--e-wash-ring);
698
-
699
- --e-bc: var(--e-wash-ring);
700
-
701
682
  background: var(--e-wash-hover);
702
683
  text-decoration-color: currentcolor;
703
684
  }
704
685
  .e-btn--quiet:not([disabled], [aria-disabled="true"]):active {
705
686
  border-color: var(--e-ink);
706
-
707
- --e-bc: var(--e-ink);
708
-
709
687
  background: var(--e-wash-press);
710
- box-shadow: none;
711
- padding-top: 0;
688
+ transform: none;
712
689
  }
713
690
  .e-btn .e-icon {
714
691
  margin-inline-start: calc(-0.5 * var(--e-space-1));
@@ -722,7 +699,6 @@
722
699
  .e-btn[aria-pressed="true"]:hover,
723
700
  .e-btn[aria-pressed="true"]:active {
724
701
  --e-slab: var(--e-primary);
725
- --e-bc: var(--e-primary);
726
702
 
727
703
  border-color: var(--e-primary);
728
704
  background: var(--e-surface-hover);
@@ -730,13 +706,15 @@
730
706
  }
731
707
  .e-btn[disabled],
732
708
  .e-btn[aria-disabled="true"] {
709
+ --e-lift: 0px;
710
+
733
711
  cursor: not-allowed;
734
712
  background: transparent;
735
713
  color: var(--e-muted);
736
714
  border: var(--e-stroke-edge) dashed var(--e-border-strong);
737
715
  outline: 0;
738
716
  box-shadow: none;
739
- padding-top: 0;
717
+ transform: none;
740
718
  }
741
719
  @media (prefers-reduced-motion: reduce) {
742
720
  .e-btn {
@@ -849,11 +827,6 @@
849
827
  height: var(--e-control-height);
850
828
  padding: 0 var(--e-space-2);
851
829
  border: var(--e-stroke-edge) solid transparent;
852
-
853
- --e-bc: transparent;
854
-
855
- outline: var(--e-stroke-edge) solid var(--e-bc);
856
- outline-offset: calc(-1 * var(--e-stroke-edge));
857
830
  border-radius: var(--e-radius-md);
858
831
  background: transparent;
859
832
  color: var(--e-ink);
@@ -864,8 +837,6 @@
864
837
  .e-cal-pick:hover {
865
838
  background: var(--e-surface-hover);
866
839
  border-color: var(--e-border-strong);
867
-
868
- --e-bc: var(--e-border-strong);
869
840
  }
870
841
  .e-cal-pick:focus-visible {
871
842
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
@@ -919,11 +890,6 @@
919
890
  height: var(--e-tap);
920
891
  padding: 0;
921
892
  border: var(--e-stroke-edge) solid transparent;
922
-
923
- --e-bc: transparent;
924
-
925
- outline: var(--e-stroke-edge) solid var(--e-bc);
926
- outline-offset: calc(-1 * var(--e-stroke-edge));
927
893
  border-radius: var(--e-radius-md);
928
894
  background: transparent;
929
895
  color: var(--e-ink);
@@ -937,8 +903,6 @@
937
903
  .e-day:hover:not(:disabled):not(.e-day--sel) {
938
904
  background: var(--e-surface-hover);
939
905
  border-color: var(--e-border-strong);
940
-
941
- --e-bc: var(--e-border-strong);
942
906
  }
943
907
  .e-day:focus-visible {
944
908
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
@@ -954,9 +918,6 @@
954
918
  .e-day--sel {
955
919
  background: var(--e-primary);
956
920
  border-color: var(--e-primary);
957
-
958
- --e-bc: var(--e-primary);
959
-
960
921
  font-weight: 700;
961
922
  color: var(--e-on-primary);
962
923
  }
@@ -1000,11 +961,6 @@
1000
961
  min-height: var(--e-tap);
1001
962
  padding: 0;
1002
963
  border: var(--e-stroke-edge) solid transparent;
1003
-
1004
- --e-bc: transparent;
1005
-
1006
- outline: var(--e-stroke-edge) solid var(--e-bc);
1007
- outline-offset: calc(-1 * var(--e-stroke-edge));
1008
964
  border-radius: var(--e-radius-md);
1009
965
  background: transparent;
1010
966
  color: var(--e-ink);
@@ -1021,8 +977,6 @@
1021
977
  .e-cal-cell:hover:not(:disabled):not(.e-day--sel) {
1022
978
  background: var(--e-surface-hover);
1023
979
  border-color: var(--e-border-strong);
1024
-
1025
- --e-bc: var(--e-border-strong);
1026
980
  }
1027
981
  .e-cal-cell:focus-visible {
1028
982
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
@@ -1036,9 +990,6 @@
1036
990
  .e-cal-cell.e-day--sel {
1037
991
  background: var(--e-primary);
1038
992
  border-color: var(--e-primary);
1039
-
1040
- --e-bc: var(--e-primary);
1041
-
1042
993
  font-weight: 700;
1043
994
  color: var(--e-on-primary);
1044
995
  }
@@ -1278,8 +1229,6 @@
1278
1229
  border-radius: var(--e-radius-md);
1279
1230
  background: var(--e-surface);
1280
1231
  box-shadow: var(--e-edge);
1281
- outline: var(--e-stroke-card) solid var(--e-border);
1282
- outline-offset: 0;
1283
1232
  }
1284
1233
 
1285
1234
  /* Code blocks stacked back to back share one seam: the rings overlap into a single line. */
@@ -1363,11 +1312,6 @@
1363
1312
  height: var(--e-control-height);
1364
1313
  padding: 0 var(--e-space-4);
1365
1314
  border: var(--e-stroke-edge) solid var(--e-border-strong);
1366
-
1367
- --e-bc: var(--e-border-strong);
1368
-
1369
- outline: var(--e-stroke-edge) solid var(--e-bc);
1370
- outline-offset: calc(-1 * var(--e-stroke-edge));
1371
1315
  border-radius: var(--e-radius-md);
1372
1316
  background-color: var(--e-surface);
1373
1317
  box-shadow: var(--e-well);
@@ -1384,17 +1328,11 @@
1384
1328
 
1385
1329
  .e-input:hover {
1386
1330
  border-color: var(--e-ink);
1387
-
1388
- --e-bc: var(--e-ink);
1389
-
1390
1331
  background-color: var(--e-surface-hover);
1391
1332
  }
1392
1333
 
1393
1334
  .e-input:focus {
1394
1335
  border-color: var(--e-focus-field);
1395
-
1396
- --e-bc: var(--e-focus-field);
1397
-
1398
1336
  background-color: var(--e-surface);
1399
1337
  }
1400
1338
 
@@ -1405,9 +1343,6 @@
1405
1343
 
1406
1344
  .e-input[aria-invalid="true"] {
1407
1345
  border-color: var(--e-danger);
1408
-
1409
- --e-bc: var(--e-danger);
1410
-
1411
1346
  background-color: var(--e-surface);
1412
1347
  box-shadow:
1413
1348
  var(--e-well), inset 0 0 0 var(--e-stroke-hair) var(--e-danger);
@@ -1436,11 +1371,6 @@
1436
1371
  min-width: 0;
1437
1372
  min-height: var(--e-control-height);
1438
1373
  border: var(--e-stroke-edge) solid var(--e-border-strong);
1439
-
1440
- --e-bc: var(--e-border-strong);
1441
-
1442
- outline: var(--e-stroke-edge) solid var(--e-bc);
1443
- outline-offset: calc(-1 * var(--e-stroke-edge));
1444
1374
  border-radius: var(--e-radius-md);
1445
1375
  background: var(--e-surface);
1446
1376
  box-shadow: var(--e-well);
@@ -1451,17 +1381,11 @@
1451
1381
 
1452
1382
  .e-input-wrap:hover {
1453
1383
  border-color: var(--e-ink);
1454
-
1455
- --e-bc: var(--e-ink);
1456
-
1457
1384
  background: var(--e-surface-hover);
1458
1385
  }
1459
1386
 
1460
1387
  .e-input-wrap:focus-within {
1461
1388
  border-color: var(--e-focus-field);
1462
-
1463
- --e-bc: var(--e-focus-field);
1464
-
1465
1389
  background: var(--e-surface);
1466
1390
  outline: var(--e-stroke-focus) solid var(--e-focus-field);
1467
1391
  outline-offset: var(--e-focus-gap-field);
@@ -1469,9 +1393,6 @@
1469
1393
 
1470
1394
  .e-input-wrap[data-invalid] {
1471
1395
  border-color: var(--e-danger);
1472
-
1473
- --e-bc: var(--e-danger);
1474
-
1475
1396
  box-shadow:
1476
1397
  var(--e-well), inset 0 0 0 var(--e-stroke-hair) var(--e-danger);
1477
1398
  background: var(--e-surface);
@@ -1479,9 +1400,6 @@
1479
1400
 
1480
1401
  .e-input-wrap[data-invalid]:focus-within {
1481
1402
  border-color: var(--e-danger);
1482
-
1483
- --e-bc: var(--e-danger);
1484
-
1485
1403
  outline-color: var(--e-danger);
1486
1404
  }
1487
1405
 
@@ -1649,8 +1567,6 @@ to {
1649
1567
  background: var(--e-surface);
1650
1568
  color: var(--e-ink);
1651
1569
  box-shadow: var(--e-float);
1652
- outline: var(--e-stroke-card) solid var(--e-border-strong);
1653
- outline-offset: 0;
1654
1570
  font-family: var(--e-font-sans);
1655
1571
  }
1656
1572
 
@@ -1697,8 +1613,6 @@ to {
1697
1613
  .e-opt--active {
1698
1614
  background: var(--e-surface-tint);
1699
1615
  box-shadow: inset 0 0 0 var(--e-stroke-hair) var(--e-border-strong);
1700
- outline: var(--e-stroke-hair) solid var(--e-border-strong);
1701
- outline-offset: calc(-1 * var(--e-stroke-hair));
1702
1616
  }
1703
1617
 
1704
1618
  .e-opt--selected .e-opt-label {
@@ -1762,8 +1676,6 @@ to {
1762
1676
  .e-opt[data-highlighted]:not(.e-opt--disabled) {
1763
1677
  background: var(--e-surface-tint);
1764
1678
  box-shadow: inset 0 0 0 var(--e-stroke-hair) var(--e-border-strong);
1765
- outline: var(--e-stroke-hair) solid var(--e-border-strong);
1766
- outline-offset: calc(-1 * var(--e-stroke-hair));
1767
1679
  }
1768
1680
 
1769
1681
  .e-opt-set {
@@ -2059,11 +1971,6 @@ to {
2059
1971
  border-radius: 50%;
2060
1972
  background: var(--e-secondary-soft);
2061
1973
  border: var(--e-stroke-hair) solid var(--e-secondary);
2062
-
2063
- --e-bc: var(--e-secondary);
2064
-
2065
- outline: var(--e-stroke-hair) solid var(--e-bc);
2066
- outline-offset: calc(-1 * var(--e-stroke-hair));
2067
1974
  }
2068
1975
  .e-empty-icon .e-icon {
2069
1976
  width: 26px;
@@ -2110,11 +2017,6 @@ to {
2110
2017
  height: var(--e-control-height);
2111
2018
  padding: 0 var(--e-space-2);
2112
2019
  border: var(--e-stroke-edge) solid transparent;
2113
-
2114
- --e-bc: transparent;
2115
-
2116
- outline: var(--e-stroke-edge) solid var(--e-bc);
2117
- outline-offset: calc(-1 * var(--e-stroke-edge));
2118
2020
  border-radius: var(--e-radius-md);
2119
2021
  background: transparent;
2120
2022
  color: var(--e-ink);
@@ -2128,8 +2030,6 @@ to {
2128
2030
  .e-page:hover {
2129
2031
  background: var(--e-surface-hover);
2130
2032
  border-color: var(--e-border-strong);
2131
-
2132
- --e-bc: var(--e-border-strong);
2133
2033
  }
2134
2034
  .e-page:focus-visible {
2135
2035
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
@@ -2138,9 +2038,6 @@ to {
2138
2038
  .e-page[aria-current="page"] {
2139
2039
  background: var(--e-primary);
2140
2040
  border-color: var(--e-primary);
2141
-
2142
- --e-bc: var(--e-primary);
2143
-
2144
2041
  color: var(--e-on-primary);
2145
2042
  font-weight: 600;
2146
2043
  cursor: default;
@@ -2322,8 +2219,6 @@ to {
2322
2219
  border-radius: var(--e-radius-sm);
2323
2220
  background: var(--e-surface-tint);
2324
2221
  box-shadow: inset 0 0 0 var(--e-stroke-hair) var(--e-border);
2325
- outline: var(--e-stroke-hair) solid var(--e-border);
2326
- outline-offset: calc(-1 * var(--e-stroke-hair));
2327
2222
  animation: e-pulse 1.4s ease-in-out infinite;
2328
2223
  }
2329
2224
  @keyframes e-pulse {
@@ -2350,8 +2245,6 @@ to {
2350
2245
  z-index: var(--e-z-sticky);
2351
2246
  border-radius: inherit;
2352
2247
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-border-strong);
2353
- outline: var(--e-stroke-card) solid var(--e-border-strong);
2354
- outline-offset: calc(-1 * var(--e-stroke-card));
2355
2248
  pointer-events: none;
2356
2249
  }
2357
2250
  .e-grid-frame {
@@ -2645,8 +2538,6 @@ to {
2645
2538
  border-radius: var(--e-radius-md);
2646
2539
  background: var(--e-surface);
2647
2540
  box-shadow: var(--e-edge);
2648
- outline: var(--e-stroke-card) solid var(--e-border-strong);
2649
- outline-offset: 0;
2650
2541
  }
2651
2542
  .e-grid--cards .e-gridtable tbody tr:hover td {
2652
2543
  background: transparent;
@@ -2729,8 +2620,6 @@ to {
2729
2620
  background: var(--e-surface);
2730
2621
  color: var(--e-ink);
2731
2622
  box-shadow: var(--e-float);
2732
- outline: var(--e-stroke-card) solid var(--e-border-strong);
2733
- outline-offset: 0;
2734
2623
  font-family: var(--e-font-sans);
2735
2624
  }
2736
2625
  }
@@ -2755,8 +2644,6 @@ to {
2755
2644
  background: var(--e-strong);
2756
2645
  color: var(--e-on);
2757
2646
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-bc);
2758
- outline: var(--e-stroke-card) solid var(--e-bc);
2759
- outline-offset: calc(-1 * var(--e-stroke-card));
2760
2647
  cursor: default;
2761
2648
  justify-self: start;
2762
2649
  }
@@ -2924,8 +2811,6 @@ to {
2924
2811
  background: var(--e-surface);
2925
2812
  color: var(--e-ink);
2926
2813
  box-shadow: var(--e-float);
2927
- outline: var(--e-stroke-card) solid var(--e-border);
2928
- outline-offset: 0;
2929
2814
  font-family: var(--e-font-sans);
2930
2815
  }
2931
2816
 
@@ -3187,34 +3072,33 @@ to {
3187
3072
  @layer e.reset, e.tokens, e.base, e.primitives, e.blocks, e.controls, e.composites, e.containers, e.page;
3188
3073
  @layer e.containers {
3189
3074
  .e-xrow {
3190
- border-bottom: var(--e-depth) solid var(--e-border);
3075
+ --e-band-c: var(--e-border);
3076
+
3077
+ border-bottom: var(--e-depth) solid transparent;
3191
3078
  border-radius: var(--e-radius-md);
3192
- background: var(--e-surface);
3079
+ background-color: var(--e-surface);
3080
+ background-image: linear-gradient(to top, var(--e-band-c) var(--e-depth), transparent var(--e-depth));
3081
+ background-origin: border-box;
3082
+ background-repeat: no-repeat;
3193
3083
  box-shadow: var(--e-edge);
3194
- outline: var(--e-stroke-card) solid var(--e-border);
3195
- outline-offset: 0;
3196
3084
  transition:
3197
3085
  background-color var(--e-duration-tap) var(--e-easing-out),
3198
3086
  box-shadow var(--e-duration-tap) var(--e-easing-out);
3199
3087
  }
3200
3088
  .e-xrow:not([open]):hover {
3201
- border-bottom-color: var(--e-border-strong);
3202
- background: var(--e-surface-hover);
3089
+ --e-band-c: var(--e-border-strong);
3090
+
3091
+ background-color: var(--e-surface-hover);
3203
3092
  box-shadow: 0 0 0 var(--e-stroke-card) var(--e-border-strong);
3204
- outline: var(--e-stroke-card) solid var(--e-border-strong);
3205
- outline-offset: 0;
3206
3093
  }
3207
3094
  .e-xrow[open] {
3208
3095
  border-bottom-width: 0;
3096
+ background-image: none;
3209
3097
  box-shadow: var(--e-edge);
3210
- outline: var(--e-stroke-card) solid var(--e-border);
3211
- outline-offset: 0;
3212
3098
  }
3213
3099
  .e-xrow[open]:has(> summary:hover) {
3214
3100
  background-color: var(--e-surface-hover);
3215
3101
  box-shadow: 0 0 0 var(--e-stroke-card) var(--e-border-strong);
3216
- outline: var(--e-stroke-card) solid var(--e-border-strong);
3217
- outline-offset: 0;
3218
3102
  }
3219
3103
  .e-xrow[open] > summary:hover {
3220
3104
  border-bottom-color: var(--e-border-strong);
@@ -3562,11 +3446,6 @@ a:any-link > .e-highlight {
3562
3446
  min-width: 1.5em;
3563
3447
  padding: 0 var(--e-space-1);
3564
3448
  border: var(--e-stroke-hair) solid var(--e-border-strong);
3565
-
3566
- --e-bc: var(--e-border-strong);
3567
-
3568
- outline: var(--e-stroke-hair) solid var(--e-bc);
3569
- outline-offset: calc(-1 * var(--e-stroke-hair));
3570
3449
  border-radius: var(--e-radius-sm);
3571
3450
  background: var(--e-surface-tint);
3572
3451
  color: var(--e-muted);
@@ -3646,8 +3525,6 @@ a:any-link > .e-highlight {
3646
3525
  .e-menu-item[data-highlighted] {
3647
3526
  background: var(--e-surface-hover);
3648
3527
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-border-strong);
3649
- outline: var(--e-stroke-card) solid var(--e-border-strong);
3650
- outline-offset: calc(-1 * var(--e-stroke-card));
3651
3528
  }
3652
3529
  .e-menu-item--danger {
3653
3530
  color: var(--e-danger);
@@ -3720,9 +3597,13 @@ a:any-link > .e-highlight {
3720
3597
  display: flex;
3721
3598
  align-items: center;
3722
3599
  gap: var(--e-space-3);
3723
- height: var(--e-control-height);
3600
+ height: calc(var(--e-control-height) - var(--e-lift));
3601
+ margin-block-end: var(--e-lift);
3724
3602
  box-sizing: border-box;
3725
3603
  padding: 0 var(--e-space-3);
3604
+
3605
+ --e-lift: 0px;
3606
+
3726
3607
  border: var(--e-stroke-edge) solid transparent;
3727
3608
  border-radius: var(--e-radius-md);
3728
3609
  color: var(--e-ink);
@@ -3731,17 +3612,20 @@ a:any-link > .e-highlight {
3731
3612
  transition: background-color var(--e-duration-tap) var(--e-easing-out);
3732
3613
  }
3733
3614
  .e-nav-item:hover {
3734
- background: var(--e-surface-hover);
3615
+ background-color: var(--e-surface-hover);
3735
3616
  }
3736
3617
  .e-nav-item:focus-visible {
3737
3618
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
3738
3619
  outline-offset: var(--e-focus-gap);
3739
3620
  }
3740
3621
  .e-nav-item[aria-current="page"] {
3741
- background: color-mix(in srgb, var(--e-surface-tint), var(--e-ink) 3%);
3622
+ background-color: color-mix(in srgb, var(--e-surface-tint), var(--e-ink) 3%);
3742
3623
  font-weight: 600;
3743
3624
  border-color: var(--e-primary);
3744
- border-bottom-width: calc(var(--e-stroke-edge) + var(--e-depth));
3625
+
3626
+ --e-lift: var(--e-depth);
3627
+
3628
+ box-shadow: 0 var(--e-lift) 0 0 var(--e-primary);
3745
3629
  }
3746
3630
  .e-nav-label {
3747
3631
  flex: 1;
@@ -3781,8 +3665,6 @@ a:any-link > .e-highlight {
3781
3665
  border-radius: var(--e-radius-pill);
3782
3666
  background: color-mix(in srgb, var(--e-primary) 12%, var(--e-surface));
3783
3667
  box-shadow: inset 0 0 0 var(--e-stroke-hair) var(--e-primary);
3784
- outline: var(--e-stroke-hair) solid var(--e-primary);
3785
- outline-offset: calc(-1 * var(--e-stroke-hair));
3786
3668
  font: 600 var(--e-text-xs) / 20px var(--e-font-mono);
3787
3669
  text-align: center;
3788
3670
  }
@@ -3864,15 +3746,13 @@ a:any-link > .e-highlight {
3864
3746
 
3865
3747
  container-type: inline-size;
3866
3748
  padding: var(--e-space-3) var(--e-space-4);
3749
+ padding-left: calc(var(--e-space-4) + 2 * var(--e-depth));
3867
3750
  border: var(--e-stroke-edge) solid var(--e-tone);
3868
-
3869
- --e-bc: var(--e-tone);
3870
-
3871
- outline: var(--e-stroke-edge) solid var(--e-bc);
3872
- outline-offset: calc(-1 * var(--e-stroke-edge));
3873
- border-left-width: calc(var(--e-stroke-edge) + 2 * var(--e-depth));
3874
3751
  border-radius: var(--e-radius-md);
3875
- background: var(--e-bg);
3752
+ background-color: var(--e-bg);
3753
+ background-image: linear-gradient(to right, var(--e-tone) calc(var(--e-stroke-edge) + 2 * var(--e-depth)), transparent calc(var(--e-stroke-edge) + 2 * var(--e-depth)));
3754
+ background-origin: border-box;
3755
+ background-repeat: no-repeat;
3876
3756
  color: var(--e-ink);
3877
3757
  }
3878
3758
  .e-notice--success {
@@ -4007,11 +3887,6 @@ a:any-link > .e-highlight {
4007
3887
  width: 14px;
4008
3888
  height: 14px;
4009
3889
  border: var(--e-stroke-edge) solid var(--e-border-strong);
4010
-
4011
- --e-bc: var(--e-border-strong);
4012
-
4013
- outline: var(--e-stroke-edge) solid var(--e-bc);
4014
- outline-offset: calc(-1 * var(--e-stroke-edge));
4015
3890
  border-radius: 50%;
4016
3891
  }
4017
3892
  }
@@ -4047,8 +3922,6 @@ a:any-link > .e-highlight {
4047
3922
  border-radius: var(--e-radius-pill);
4048
3923
  background: var(--e-surface-tint);
4049
3924
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-border-strong);
4050
- outline: var(--e-stroke-card) solid var(--e-border-strong);
4051
- outline-offset: calc(-1 * var(--e-stroke-card));
4052
3925
  overflow: hidden;
4053
3926
  }
4054
3927
  .e-progress-fill {
@@ -4056,8 +3929,6 @@ a:any-link > .e-highlight {
4056
3929
  border-radius: var(--e-radius-pill);
4057
3930
  background: var(--e-primary);
4058
3931
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-primary);
4059
- outline: var(--e-stroke-card) solid var(--e-primary);
4060
- outline-offset: calc(-1 * var(--e-stroke-card));
4061
3932
  transition: width var(--e-duration-move) var(--e-easing-out);
4062
3933
  }
4063
3934
  .e-progress--indeterminate .e-progress-fill {
@@ -4155,11 +4026,6 @@ to {
4155
4026
  height: var(--e-control-height);
4156
4027
  padding: 0 var(--e-space-1) 0 var(--e-space-2);
4157
4028
  border: var(--e-stroke-edge) solid var(--e-border-strong);
4158
-
4159
- --e-bc: var(--e-border-strong);
4160
-
4161
- outline: var(--e-stroke-edge) solid var(--e-bc);
4162
- outline-offset: calc(-1 * var(--e-stroke-edge));
4163
4029
  border-radius: var(--e-radius-md);
4164
4030
  background: var(--e-surface);
4165
4031
  box-shadow: var(--e-well);
@@ -4167,12 +4033,10 @@ to {
4167
4033
  }
4168
4034
  .e-search:hover {
4169
4035
  border-color: var(--e-ink);
4170
-
4171
- --e-bc: var(--e-ink);
4172
4036
  }
4173
4037
  .e-search .e-btn {
4174
4038
  position: relative;
4175
- height: calc(var(--e-control-height) - 6px);
4039
+ height: calc(var(--e-control-height) - 6px - var(--e-lift));
4176
4040
  padding: 0 var(--e-space-3);
4177
4041
  font-size: var(--e-text-md);
4178
4042
  }
@@ -4241,9 +4105,6 @@ to {
4241
4105
  }
4242
4106
  .e-search:focus-within {
4243
4107
  border-color: var(--e-focus-field);
4244
-
4245
- --e-bc: var(--e-focus-field);
4246
-
4247
4108
  outline: var(--e-stroke-focus) solid var(--e-focus-field);
4248
4109
  outline-offset: var(--e-focus-gap-field);
4249
4110
  }
@@ -4267,8 +4128,6 @@ to {
4267
4128
  padding: var(--e-space-1);
4268
4129
  border-radius: var(--e-radius-md);
4269
4130
  box-shadow: var(--e-edge);
4270
- outline: var(--e-stroke-card) solid var(--e-border-strong);
4271
- outline-offset: 0;
4272
4131
  color: var(--e-ink);
4273
4132
  }
4274
4133
  .e-results-list {
@@ -4285,8 +4144,6 @@ to {
4285
4144
  .e-results .e-opt:focus-visible {
4286
4145
  background: var(--e-surface-hover);
4287
4146
  box-shadow: inset 0 0 0 var(--e-stroke-hair) var(--e-border-strong);
4288
- outline: var(--e-stroke-hair) solid var(--e-border-strong);
4289
- outline-offset: calc(-1 * var(--e-stroke-hair));
4290
4147
  }
4291
4148
  .e-results .e-opt:focus-visible {
4292
4149
  outline: var(--e-stroke-focus) solid var(--e-focus-ring);
@@ -4307,11 +4164,6 @@ to {
4307
4164
  display: inline-flex;
4308
4165
  height: var(--e-control-height);
4309
4166
  border: var(--e-stroke-edge) solid var(--e-border-strong);
4310
-
4311
- --e-bc: var(--e-border-strong);
4312
-
4313
- outline: var(--e-stroke-edge) solid var(--e-bc);
4314
- outline-offset: calc(-1 * var(--e-stroke-edge));
4315
4167
  border-radius: var(--e-radius-md);
4316
4168
  background: var(--e-border-strong);
4317
4169
  overflow: hidden;
@@ -4350,7 +4202,6 @@ to {
4350
4202
  }
4351
4203
  .e-seg-input:checked + .e-seg-text {
4352
4204
  background: var(--e-primary);
4353
- box-shadow: inset 0 var(--e-depth) 0 0 color-mix(in srgb, var(--e-primary), var(--e-shade-slab));
4354
4205
  color: var(--e-on-primary);
4355
4206
  font-weight: 600;
4356
4207
  }
@@ -4369,7 +4220,6 @@ to {
4369
4220
  .e-seg-opt:has(:disabled:checked):hover .e-seg-text {
4370
4221
  background: var(--e-surface-hover);
4371
4222
  color: var(--e-ink);
4372
- box-shadow: inset 0 calc(-1 * var(--e-depth)) 0 0 var(--e-border-strong);
4373
4223
  }
4374
4224
  .e-seg-field {
4375
4225
  display: grid;
@@ -4398,11 +4248,6 @@ to {
4398
4248
  position: relative;
4399
4249
  overflow: hidden;
4400
4250
  border: var(--e-stroke-edge) solid var(--e-border-strong);
4401
-
4402
- --e-bc: var(--e-border-strong);
4403
-
4404
- outline: var(--e-stroke-edge) solid var(--e-bc);
4405
- outline-offset: calc(-1 * var(--e-stroke-edge));
4406
4251
  border-radius: var(--e-radius-md);
4407
4252
  background: var(--e-surface);
4408
4253
  box-shadow: var(--e-well);
@@ -4499,8 +4344,6 @@ to {
4499
4344
  border-radius: var(--e-radius-md);
4500
4345
  background: var(--e-surface-tint);
4501
4346
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-border-strong);
4502
- outline: var(--e-stroke-card) solid var(--e-border-strong);
4503
- outline-offset: calc(-1 * var(--e-stroke-card));
4504
4347
  animation: e-pulse 1.4s ease-in-out infinite;
4505
4348
  }
4506
4349
  .e-skel {
@@ -4509,8 +4352,6 @@ to {
4509
4352
  border-radius: var(--e-radius-sm);
4510
4353
  background: var(--e-surface-tint);
4511
4354
  box-shadow: inset 0 0 0 var(--e-stroke-card) var(--e-border-strong);
4512
- outline: var(--e-stroke-card) solid var(--e-border-strong);
4513
- outline-offset: calc(-1 * var(--e-stroke-card));
4514
4355
  animation: e-pulse 1.4s ease-in-out infinite;
4515
4356
  }
4516
4357
  .e-skeleton--circle {
@@ -4679,8 +4520,6 @@ to {
4679
4520
  border-radius: var(--e-radius-md);
4680
4521
  background: var(--e-surface);
4681
4522
  box-shadow: var(--e-edge);
4682
- outline: var(--e-stroke-card) solid var(--e-border);
4683
- outline-offset: 0;
4684
4523
  }
4685
4524
  .e-surface--clip {
4686
4525
  overflow: hidden;
@@ -4700,8 +4539,6 @@ to {
4700
4539
  }
4701
4540
  .e-surface--raised {
4702
4541
  box-shadow: var(--e-float);
4703
- outline: var(--e-stroke-card) solid var(--e-border);
4704
- outline-offset: 0;
4705
4542
  }
4706
4543
  .e-surface--pad-sm {
4707
4544
  padding: var(--e-space-3) var(--e-space-4);
@@ -4745,11 +4582,6 @@ to {
4745
4582
  width: var(--e-switch-w);
4746
4583
  height: 24px;
4747
4584
  border: var(--e-stroke-edge) solid var(--e-border-strong);
4748
-
4749
- --e-bc: var(--e-border-strong);
4750
-
4751
- outline: var(--e-stroke-edge) solid var(--e-bc);
4752
- outline-offset: calc(-1 * var(--e-stroke-edge));
4753
4585
  border-radius: var(--e-radius-pill);
4754
4586
  background: var(--e-surface-tint);
4755
4587
  transition:
@@ -4770,14 +4602,10 @@ to {
4770
4602
  }
4771
4603
  .e-switch:hover .e-switch-track {
4772
4604
  border-color: var(--e-ink);
4773
-
4774
- --e-bc: var(--e-ink);
4775
4605
  }
4776
4606
  .e-switch-input:checked + .e-switch-track {
4777
4607
  background: var(--e-primary);
4778
4608
  border-color: var(--e-primary);
4779
-
4780
- --e-bc: var(--e-primary);
4781
4609
  }
4782
4610
  .e-switch-input:checked + .e-switch-track::after {
4783
4611
  background: var(--e-on-primary);
@@ -4828,17 +4656,19 @@ to {
4828
4656
  .e-tab {
4829
4657
  --e-bc: var(--e-border-strong);
4830
4658
 
4659
+ /* A selected tab rises: its face is a whole rounded box with an offset copy in the primary colour showing underneath. The margin gives back the room that copy takes, so every tab row is one control height tall. */
4660
+ --e-lift: 0px;
4661
+
4831
4662
  position: relative;
4832
4663
  display: inline-flex;
4833
4664
  align-items: center;
4834
4665
  gap: var(--e-space-2);
4835
4666
  flex: none;
4836
- height: var(--e-control-height);
4667
+ height: calc(var(--e-control-height) - var(--e-lift));
4668
+ margin-block-end: var(--e-lift);
4837
4669
  padding: 0 var(--e-space-4);
4838
4670
  border: var(--e-stroke-edge) solid var(--e-bc);
4839
4671
  border-radius: 0;
4840
- outline: var(--e-stroke-edge) solid var(--e-bc);
4841
- outline-offset: calc(-1 * var(--e-stroke-edge));
4842
4672
  background: transparent;
4843
4673
  color: var(--e-muted);
4844
4674
  font: 500 var(--e-text-md) / 1 var(--e-font-sans);
@@ -4869,10 +4699,11 @@ to {
4869
4699
  }
4870
4700
  .e-tab[aria-selected="true"] {
4871
4701
  --e-bc: var(--e-primary);
4702
+ --e-lift: var(--e-depth);
4872
4703
 
4873
4704
  z-index: var(--e-z-sticky);
4874
- border-bottom-width: calc(var(--e-stroke-edge) + var(--e-depth));
4875
4705
  background-color: color-mix(in srgb, var(--e-surface-tint), var(--e-ink) 3%);
4706
+ box-shadow: 0 var(--e-lift) 0 0 var(--e-primary);
4876
4707
  color: var(--e-ink);
4877
4708
  font-weight: 600;
4878
4709
  }
@@ -4896,8 +4727,6 @@ to {
4896
4727
  border-radius: var(--e-radius-pill);
4897
4728
  background: color-mix(in srgb, var(--e-primary) 12%, var(--e-surface));
4898
4729
  box-shadow: inset 0 0 0 var(--e-stroke-hair) var(--e-primary);
4899
- outline: var(--e-stroke-hair) solid var(--e-primary);
4900
- outline-offset: calc(-1 * var(--e-stroke-hair));
4901
4730
  font: 600 var(--e-text-xs) / 20px var(--e-font-mono);
4902
4731
  text-align: center;
4903
4732
  color: var(--e-ink);