@1337exp/taoui 1.1.1 → 1.3.2

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/styles.css CHANGED
@@ -779,12 +779,40 @@ to {
779
779
  transform: translateY(-50%) translateX(-4px);
780
780
  }
781
781
 
782
- .tao-spoiler[data-v-c9f4d962] {
782
+ .tao-popover__panel {
783
+ z-index: 1050;
784
+ position: fixed;
785
+ min-width: 200px;
786
+ max-width: min(360px, calc(100vw - 16px));
787
+ padding: var(--tao-space-3);
788
+ overflow: auto;
789
+ background: var(--tao-color-surface-raised);
790
+ color: var(--tao-color-text);
791
+ border: 1px solid var(--tao-color-border);
792
+ border-radius: var(--tao-radius-control);
793
+ box-shadow: var(--tao-shadow-overlay);
794
+ }
795
+ .tao-popover__panel:focus {
796
+ outline: none;
797
+ }
798
+ .tao-popover__panel:focus-visible {
799
+ outline: 2px solid var(--tao-color-accent);
800
+ outline-offset: 2px;
801
+ }
802
+
803
+ .tao-popover[data-v-e4ead301] {
804
+ display: inline-block;
805
+ }
806
+ .tao-popover__trigger[data-v-e4ead301] {
807
+ display: inline-block;
808
+ }
809
+
810
+ .tao-spoiler[data-v-ccb052cf] {
783
811
  border: 1px solid var(--tao-color-border);
784
812
  border-radius: var(--tao-radius-panel);
785
813
  overflow: hidden;
786
814
  }
787
- .tao-spoiler__header[data-v-c9f4d962] {
815
+ .tao-spoiler__header[data-v-ccb052cf] {
788
816
  display: flex;
789
817
  align-items: center;
790
818
  gap: var(--tao-space-2);
@@ -796,10 +824,10 @@ to {
796
824
  cursor: pointer;
797
825
  text-align: left;
798
826
  }
799
- .tao-spoiler__header[data-v-c9f4d962]:hover {
827
+ .tao-spoiler__header[data-v-ccb052cf]:hover {
800
828
  background: var(--tao-color-surface-hover);
801
829
  }
802
- .tao-spoiler__icon[data-v-c9f4d962] {
830
+ .tao-spoiler__icon[data-v-ccb052cf] {
803
831
  display: inline-flex;
804
832
  align-items: center;
805
833
  justify-content: center;
@@ -809,49 +837,101 @@ to {
809
837
  color: var(--tao-color-accent);
810
838
  transition: transform var(--tao-duration-base) var(--tao-ease-base);
811
839
  }
812
- .tao-spoiler__icon--open[data-v-c9f4d962] {
840
+ .tao-spoiler__icon--open[data-v-ccb052cf] {
813
841
  transform: rotate(90deg);
814
842
  }
815
- .tao-spoiler__title[data-v-c9f4d962] {
843
+ .tao-spoiler__title[data-v-ccb052cf] {
816
844
  font-weight: 500;
817
845
  color: var(--tao-color-text);
818
846
  }
819
- .tao-spoiler__content[data-v-c9f4d962] {
847
+ .tao-spoiler__content[data-v-ccb052cf] {
820
848
  overflow: hidden;
821
849
  }
822
- .tao-spoiler-slide-enter-active[data-v-c9f4d962],
823
- .tao-spoiler-slide-leave-active[data-v-c9f4d962] {
850
+ .tao-spoiler-slide-enter-active[data-v-ccb052cf],
851
+ .tao-spoiler-slide-leave-active[data-v-ccb052cf] {
824
852
  transition: height var(--tao-duration-slow) var(--tao-ease-base);
825
853
  overflow: hidden;
826
854
  }
827
- .tao-spoiler__content-inner[data-v-c9f4d962] {
855
+ .tao-spoiler__content-inner[data-v-ccb052cf] {
828
856
  padding: var(--tao-space-4);
829
857
  background: var(--tao-color-surface);
830
858
  }
831
859
 
832
- .tao-copy[data-v-73a42ad9] {
833
- display: inline-block;
860
+ .tao-spoiler-group[data-v-6b172e89] {
861
+ overflow: hidden;
862
+ border: 1px solid var(--tao-color-border);
863
+ border-radius: var(--tao-radius-panel);
834
864
  }
835
- .tao-copy__button[data-v-73a42ad9] {
865
+ .tao-spoiler-group[data-v-6b172e89] .tao-spoiler {
866
+ border: none;
867
+ border-radius: 0;
868
+ border-bottom: 1px solid var(--tao-color-border);
869
+ }
870
+ .tao-spoiler-group[data-v-6b172e89] .tao-spoiler:last-child {
871
+ border-bottom: none;
872
+ }
873
+
874
+ .tao-copy__tip {
875
+ z-index: 1060;
876
+ position: fixed;
836
877
  padding: var(--tao-space-2) var(--tao-space-3);
837
- background: var(--tao-color-surface-sunken);
838
- border: 1px solid var(--tao-color-border-strong);
878
+ overflow: visible;
879
+ background: var(--tao-color-surface-raised);
880
+ color: var(--tao-color-text-strong);
881
+ font-size: var(--tao-font-size-xs);
882
+ font-family: var(--tao-font-family);
883
+ line-height: 1.3;
884
+ white-space: nowrap;
839
885
  border-radius: var(--tao-radius-control);
840
- color: var(--tao-color-text);
841
- font-size: var(--tao-font-size-sm);
842
- font-family: inherit;
886
+ box-shadow: var(--tao-shadow-lg);
887
+ pointer-events: none;
888
+ }
889
+ .tao-copy__tip::after {
890
+ content: '';
891
+ position: absolute;
892
+ top: 100%;
893
+ left: 50%;
894
+ width: 8px;
895
+ height: 8px;
896
+ margin-top: -4px;
897
+ margin-left: -4px;
898
+ background: var(--tao-color-surface-raised);
899
+ transform: rotate(45deg);
900
+ }
901
+
902
+ .tao-copy[data-v-1953c07e] {
903
+ display: inline-flex;
904
+ align-items: center;
905
+ vertical-align: middle;
906
+ }
907
+ .tao-copy__button[data-v-1953c07e] {
908
+ display: inline-flex;
909
+ align-items: center;
910
+ justify-content: center;
911
+ width: 32px;
912
+ height: 32px;
913
+ margin: 0;
914
+ padding: 0;
915
+ border: none;
916
+ border-radius: var(--tao-radius-control);
917
+ background: transparent;
918
+ color: var(--tao-color-text-muted);
843
919
  cursor: pointer;
844
920
  transition: var(--tao-transition-base);
845
921
  }
846
- .tao-copy__button[data-v-73a42ad9]:hover {
922
+ .tao-copy__button svg[data-v-1953c07e] {
923
+ display: block;
924
+ }
925
+ .tao-copy__button[data-v-1953c07e]:hover {
926
+ color: var(--tao-color-accent);
847
927
  background: var(--tao-color-surface-hover);
848
- border-color: var(--tao-color-accent);
928
+ }
929
+ .tao-copy__button--copied[data-v-1953c07e] {
849
930
  color: var(--tao-color-accent);
850
931
  }
851
- .tao-copy__button--copied[data-v-73a42ad9] {
852
- background: var(--tao-color-accent);
853
- border-color: var(--tao-color-accent);
854
- color: var(--tao-color-on-accent);
932
+ .tao-copy__button[data-v-1953c07e]:focus-visible {
933
+ outline: 2px solid var(--tao-color-accent);
934
+ outline-offset: 2px;
855
935
  }
856
936
 
857
937
  .tao-container[data-v-4c0deb90] {
@@ -950,7 +1030,7 @@ to {
950
1030
  }
951
1031
  }
952
1032
 
953
- .tao-image[data-v-9da4bb7d] {
1033
+ .tao-image[data-v-522fe4da] {
954
1034
  position: relative;
955
1035
  display: inline-block;
956
1036
  width: 100%;
@@ -958,17 +1038,17 @@ to {
958
1038
  overflow: hidden;
959
1039
  user-select: none;
960
1040
  }
961
- .tao-image img[data-v-9da4bb7d] {
1041
+ .tao-image img[data-v-522fe4da] {
962
1042
  display: block;
963
1043
  width: 100%;
964
1044
  height: 100%;
965
1045
  object-fit: contain;
966
1046
  transition: opacity var(--tao-duration-slow) var(--tao-ease-base);
967
1047
  }
968
- .tao-image__img--hidden[data-v-9da4bb7d] {
1048
+ .tao-image__img--hidden[data-v-522fe4da] {
969
1049
  opacity: 0;
970
1050
  }
971
- .tao-image__img--pixelated[data-v-9da4bb7d] {
1051
+ .tao-image__img--pixelated[data-v-522fe4da] {
972
1052
  image-rendering: optimizeSpeed;
973
1053
  image-rendering: -moz-crisp-edges;
974
1054
  image-rendering: -o-crisp-edges;
@@ -977,7 +1057,7 @@ to {
977
1057
  image-rendering: optimize-contrast;
978
1058
  -ms-interpolation-mode: nearest-neighbor;
979
1059
  }
980
- .tao-image__placeholder[data-v-9da4bb7d] {
1060
+ .tao-image__placeholder[data-v-522fe4da] {
981
1061
  font-size: var(--tao-font-size-sm);
982
1062
  font-family: var(--tao-font-family);
983
1063
  letter-spacing: 0.01rem;
@@ -1152,6 +1232,36 @@ to {
1152
1232
  background-image: linear-gradient(to right, transparent, var(--tao-color-accent), transparent);
1153
1233
  }
1154
1234
 
1235
+ .tao-fieldset[data-v-34440ba5] {
1236
+ margin: 0;
1237
+ min-width: 0;
1238
+ padding: 0 var(--tao-space-4) var(--tao-space-4);
1239
+ border: 1px solid var(--tao-color-border-strong);
1240
+ border-radius: var(--tao-radius-panel);
1241
+ color: var(--tao-color-text);
1242
+ background: transparent;
1243
+ }
1244
+ .tao-fieldset__legend[data-v-34440ba5] {
1245
+ padding: 0 var(--tao-space-2);
1246
+ font-size: var(--tao-font-size-sm);
1247
+ font-weight: 500;
1248
+ color: var(--tao-color-text);
1249
+ background: var(--tao-color-bg);
1250
+ }
1251
+ .tao-fieldset--start .tao-fieldset__legend[data-v-34440ba5] {
1252
+ margin-inline-start: var(--tao-space-2);
1253
+ }
1254
+ .tao-fieldset--center .tao-fieldset__legend[data-v-34440ba5] {
1255
+ margin-inline: auto;
1256
+ }
1257
+ .tao-fieldset--end .tao-fieldset__legend[data-v-34440ba5] {
1258
+ margin-inline-start: auto;
1259
+ margin-inline-end: var(--tao-space-2);
1260
+ }
1261
+ .tao-fieldset__body[data-v-34440ba5] {
1262
+ padding-top: var(--tao-space-3);
1263
+ }
1264
+
1155
1265
  .tao-animated-border[data-v-f1534571] {
1156
1266
  background: var(--tao-color-surface-raised);
1157
1267
  position: relative;
@@ -1497,12 +1607,17 @@ to {
1497
1607
  outline: none;
1498
1608
  }
1499
1609
 
1500
- .tao-file-drop[data-v-3543419a] {
1610
+ .tao-file-drop[data-v-fbd848b0] {
1501
1611
  display: flex;
1502
- gap: var(--tao-space-3);
1612
+ flex-direction: column;
1613
+ gap: var(--tao-space-2);
1503
1614
  user-select: none;
1504
1615
  }
1505
- .tao-file-drop__clear[data-v-3543419a] {
1616
+ .tao-file-drop__row[data-v-fbd848b0] {
1617
+ display: flex;
1618
+ gap: var(--tao-space-3);
1619
+ }
1620
+ .tao-file-drop__clear[data-v-fbd848b0] {
1506
1621
  display: flex;
1507
1622
  align-items: center;
1508
1623
  justify-content: center;
@@ -1516,10 +1631,10 @@ to {
1516
1631
  font-family: inherit;
1517
1632
  transition: var(--tao-transition-base);
1518
1633
  }
1519
- .tao-file-drop__clear[data-v-3543419a]:hover {
1634
+ .tao-file-drop__clear[data-v-fbd848b0]:hover {
1520
1635
  background-color: color-mix(in srgb, var(--tao-color-danger) 22%, transparent);
1521
1636
  }
1522
- .tao-file-drop__zone[data-v-3543419a] {
1637
+ .tao-file-drop__zone[data-v-fbd848b0] {
1523
1638
  flex-grow: 1;
1524
1639
  font-size: var(--tao-font-size-sm);
1525
1640
  font-family: var(--tao-font-family);
@@ -1531,24 +1646,83 @@ to {
1531
1646
  cursor: pointer;
1532
1647
  transition: var(--tao-transition-base);
1533
1648
  }
1534
- .tao-file-drop__zone[data-v-3543419a]:hover,
1535
- .tao-file-drop__zone[data-v-3543419a]:focus-within {
1649
+ .tao-file-drop__zone[data-v-fbd848b0]:hover,
1650
+ .tao-file-drop__zone[data-v-fbd848b0]:focus-within {
1536
1651
  background-color: var(--tao-color-accent-subtle);
1537
1652
  border-color: var(--tao-color-accent);
1538
1653
  }
1539
- .tao-file-drop__zone--dragging[data-v-3543419a] {
1654
+ .tao-file-drop__zone--dragging[data-v-fbd848b0] {
1540
1655
  border-color: var(--tao-color-text-strong);
1541
1656
  background-color: var(--tao-color-surface-sunken);
1542
1657
  }
1543
- .tao-file-drop__zone--small[data-v-3543419a] {
1658
+ .tao-file-drop__zone--small[data-v-fbd848b0] {
1544
1659
  padding: var(--tao-space-5) var(--tao-space-4);
1545
1660
  }
1546
- .tao-file-drop__zone--medium[data-v-3543419a] {
1661
+ .tao-file-drop__zone--medium[data-v-fbd848b0] {
1547
1662
  padding: var(--tao-space-8) var(--tao-space-5);
1548
1663
  }
1549
- .tao-file-drop__zone--large[data-v-3543419a] {
1664
+ .tao-file-drop__zone--large[data-v-fbd848b0] {
1550
1665
  padding: var(--tao-space-10) var(--tao-space-6);
1551
1666
  }
1667
+ .tao-file-drop__list[data-v-fbd848b0] {
1668
+ margin: 0;
1669
+ padding: 0;
1670
+ overflow: hidden;
1671
+ list-style: none;
1672
+ border: 1px solid var(--tao-color-border);
1673
+ border-radius: var(--tao-radius-control);
1674
+ }
1675
+ .tao-file-drop__file[data-v-fbd848b0] {
1676
+ display: flex;
1677
+ align-items: center;
1678
+ gap: var(--tao-space-2);
1679
+ min-width: 0;
1680
+ min-height: 36px;
1681
+ padding: 0 var(--tao-space-2) 0 var(--tao-space-3);
1682
+ border-bottom: 1px solid var(--tao-color-border);
1683
+ background: var(--tao-color-surface-raised);
1684
+ color: var(--tao-color-text);
1685
+ }
1686
+ .tao-file-drop__file[data-v-fbd848b0]:last-child {
1687
+ border-bottom: none;
1688
+ }
1689
+ .tao-file-drop__name[data-v-fbd848b0] {
1690
+ flex: 1 1 auto;
1691
+ min-width: 0;
1692
+ overflow: hidden;
1693
+ font-size: var(--tao-font-size-sm);
1694
+ text-overflow: ellipsis;
1695
+ white-space: nowrap;
1696
+ user-select: text;
1697
+ }
1698
+ .tao-file-drop__meta[data-v-fbd848b0] {
1699
+ flex-shrink: 0;
1700
+ font-size: var(--tao-font-size-xs);
1701
+ color: var(--tao-color-text-muted);
1702
+ }
1703
+ .tao-file-drop__remove[data-v-fbd848b0] {
1704
+ flex-shrink: 0;
1705
+ width: 28px;
1706
+ height: 28px;
1707
+ margin: 0;
1708
+ padding: 0;
1709
+ border: none;
1710
+ border-radius: var(--tao-radius-sm);
1711
+ background: none;
1712
+ color: var(--tao-color-text-muted);
1713
+ font: inherit;
1714
+ font-size: var(--tao-font-size-sm);
1715
+ line-height: 1;
1716
+ cursor: pointer;
1717
+ }
1718
+ .tao-file-drop__remove[data-v-fbd848b0]:hover {
1719
+ color: var(--tao-color-danger);
1720
+ background: var(--tao-color-danger-subtle);
1721
+ }
1722
+ .tao-file-drop__remove[data-v-fbd848b0]:focus-visible {
1723
+ outline: 2px solid var(--tao-color-accent);
1724
+ outline-offset: 2px;
1725
+ }
1552
1726
 
1553
1727
  .tao-dropdown-menu__list {
1554
1728
  z-index: 1050;
@@ -1779,6 +1953,130 @@ to {
1779
1953
  transform: rotate(180deg);
1780
1954
  }
1781
1955
 
1956
+ .tao-combobox__panel {
1957
+ z-index: 1050;
1958
+ position: fixed;
1959
+ overflow: hidden;
1960
+ background: var(--tao-color-surface-raised);
1961
+ color: var(--tao-color-text);
1962
+ border: 1px solid var(--tao-color-border);
1963
+ border-radius: var(--tao-radius-control);
1964
+ box-shadow: var(--tao-shadow-overlay);
1965
+ }
1966
+ .tao-combobox__list {
1967
+ margin: 0;
1968
+ padding: var(--tao-space-1);
1969
+ max-height: 240px;
1970
+ overflow: auto;
1971
+ list-style: none;
1972
+ }
1973
+ .tao-combobox__empty {
1974
+ padding: var(--tao-space-2) var(--tao-space-3);
1975
+ color: var(--tao-color-text-muted);
1976
+ font-size: var(--tao-font-size-sm);
1977
+ }
1978
+ .tao-combobox__clear {
1979
+ display: block;
1980
+ width: 100%;
1981
+ margin: 0;
1982
+ padding: var(--tao-space-2) var(--tao-space-3);
1983
+ border: none;
1984
+ border-top: 1px solid var(--tao-color-border);
1985
+ background: none;
1986
+ color: var(--tao-color-text-muted);
1987
+ font: inherit;
1988
+ font-size: var(--tao-font-size-sm);
1989
+ text-align: left;
1990
+ cursor: pointer;
1991
+ }
1992
+ .tao-combobox__clear:hover {
1993
+ color: var(--tao-color-accent);
1994
+ background: var(--tao-color-surface-hover);
1995
+ }
1996
+ .tao-combobox__option {
1997
+ padding: var(--tao-space-2) var(--tao-space-3);
1998
+ border-radius: var(--tao-radius-sm);
1999
+ font-size: var(--tao-font-size-md);
2000
+ cursor: pointer;
2001
+ user-select: none;
2002
+ }
2003
+ .tao-combobox__option--active,
2004
+ .tao-combobox__option:hover:not(.tao-combobox__option--disabled) {
2005
+ background: var(--tao-color-surface-hover);
2006
+ }
2007
+ .tao-combobox__option--selected {
2008
+ color: var(--tao-color-accent);
2009
+ }
2010
+ .tao-combobox__option--create {
2011
+ color: var(--tao-color-accent);
2012
+ }
2013
+ .tao-combobox__option--disabled {
2014
+ opacity: 0.5;
2015
+ cursor: not-allowed;
2016
+ }
2017
+
2018
+ .tao-combobox[data-v-adeb76a4] {
2019
+ width: 100%;
2020
+ }
2021
+ .tao-combobox__field[data-v-adeb76a4] {
2022
+ display: flex;
2023
+ align-items: center;
2024
+ gap: var(--tao-space-2);
2025
+ width: 100%;
2026
+ min-height: 36px;
2027
+ padding: 0 var(--tao-space-3);
2028
+ border: 1px solid var(--tao-color-border-strong);
2029
+ border-radius: var(--tao-radius-control);
2030
+ background: var(--tao-color-input-bg);
2031
+ color: var(--tao-color-input-text);
2032
+ transition: var(--tao-transition-base);
2033
+ }
2034
+ .tao-combobox__field[data-v-adeb76a4]:focus-within {
2035
+ border-color: var(--tao-color-accent);
2036
+ box-shadow: 0 0 0 2px var(--tao-color-accent-subtle-hover);
2037
+ }
2038
+ .tao-combobox--invalid .tao-combobox__field[data-v-adeb76a4] {
2039
+ border-color: var(--tao-color-danger);
2040
+ }
2041
+ .tao-combobox--invalid .tao-combobox__field[data-v-adeb76a4]:focus-within {
2042
+ box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
2043
+ }
2044
+ .tao-combobox__input[data-v-adeb76a4] {
2045
+ flex: 1;
2046
+ min-width: 0;
2047
+ height: 34px;
2048
+ padding: 0;
2049
+ border: none;
2050
+ background: transparent;
2051
+ color: inherit;
2052
+ font-size: var(--tao-font-size-md);
2053
+ font-family: inherit;
2054
+ outline: none;
2055
+ }
2056
+ .tao-combobox__input[data-v-adeb76a4]::placeholder {
2057
+ color: var(--tao-color-input-placeholder);
2058
+ }
2059
+ .tao-combobox__input[data-v-adeb76a4]:disabled {
2060
+ cursor: not-allowed;
2061
+ }
2062
+ .tao-combobox--disabled .tao-combobox__field[data-v-adeb76a4] {
2063
+ opacity: 0.6;
2064
+ cursor: not-allowed;
2065
+ }
2066
+ .tao-combobox__chevron[data-v-adeb76a4] {
2067
+ flex-shrink: 0;
2068
+ width: 0;
2069
+ height: 0;
2070
+ border-left: 4px solid transparent;
2071
+ border-right: 4px solid transparent;
2072
+ border-top: 5px solid currentColor;
2073
+ opacity: 0.6;
2074
+ pointer-events: none;
2075
+ transition: transform var(--tao-duration-fast) var(--tao-ease-base);
2076
+ }
2077
+ .tao-combobox--open .tao-combobox__chevron[data-v-adeb76a4] {
2078
+ transform: rotate(180deg);
2079
+ }
1782
2080
  .tao-date__panel {
1783
2081
  z-index: 1050;
1784
2082
  position: fixed;
@@ -1791,12 +2089,14 @@ to {
1791
2089
  border-radius: var(--tao-radius-control);
1792
2090
  box-shadow: var(--tao-shadow-overlay);
1793
2091
  }
2092
+
1794
2093
  .tao-date__header {
1795
2094
  display: flex;
1796
2095
  align-items: center;
1797
2096
  gap: var(--tao-space-2);
1798
2097
  margin-bottom: var(--tao-space-3);
1799
2098
  }
2099
+
1800
2100
  .tao-date__month {
1801
2101
  flex: 1;
1802
2102
  margin: 0;
@@ -1805,6 +2105,7 @@ to {
1805
2105
  text-align: center;
1806
2106
  color: var(--tao-color-text-strong);
1807
2107
  }
2108
+
1808
2109
  .tao-date__nav {
1809
2110
  display: inline-flex;
1810
2111
  flex: 0 0 auto;
@@ -1820,25 +2121,31 @@ to {
1820
2121
  color: var(--tao-color-text);
1821
2122
  cursor: pointer;
1822
2123
  }
2124
+
1823
2125
  .tao-date__nav svg {
1824
2126
  display: block;
1825
2127
  }
2128
+
1826
2129
  .tao-date__nav:hover {
1827
2130
  background: var(--tao-color-surface-hover);
1828
2131
  }
2132
+
1829
2133
  .tao-date__nav:focus-visible {
1830
2134
  outline: 2px solid var(--tao-color-accent);
1831
2135
  outline-offset: 2px;
1832
2136
  }
2137
+
1833
2138
  .tao-date__weekdays,
1834
2139
  .tao-date__grid {
1835
2140
  display: grid;
1836
2141
  grid-template-columns: repeat(7, 1fr);
1837
2142
  gap: 2px;
1838
2143
  }
2144
+
1839
2145
  .tao-date__weekdays {
1840
2146
  margin-bottom: var(--tao-space-1);
1841
2147
  }
2148
+
1842
2149
  .tao-date__weekdays span {
1843
2150
  display: flex;
1844
2151
  align-items: center;
@@ -1848,6 +2155,7 @@ to {
1848
2155
  font-size: var(--tao-font-size-xs);
1849
2156
  text-transform: lowercase;
1850
2157
  }
2158
+
1851
2159
  .tao-date__day {
1852
2160
  display: flex;
1853
2161
  align-items: center;
@@ -1864,38 +2172,65 @@ to {
1864
2172
  font-size: var(--tao-font-size-sm);
1865
2173
  cursor: pointer;
1866
2174
  }
2175
+
1867
2176
  .tao-date__day--outside {
1868
2177
  color: var(--tao-color-text-muted);
1869
2178
  opacity: 0.55;
1870
2179
  }
2180
+
1871
2181
  .tao-date__day--today {
1872
2182
  border-color: var(--tao-color-accent);
1873
2183
  }
2184
+
2185
+ .tao-date__day--in-range {
2186
+ background: var(--tao-color-accent-subtle-hover);
2187
+ border-radius: 0;
2188
+ opacity: 1;
2189
+ }
2190
+
2191
+ .tao-date__day--range-start {
2192
+ border-radius: var(--tao-radius-sm) 0 0 var(--tao-radius-sm);
2193
+ }
2194
+
2195
+ .tao-date__day--range-end {
2196
+ border-radius: 0 var(--tao-radius-sm) var(--tao-radius-sm) 0;
2197
+ }
2198
+
2199
+ .tao-date__day--range-start.tao-date__day--range-end {
2200
+ border-radius: var(--tao-radius-sm);
2201
+ }
2202
+
1874
2203
  .tao-date__day--selected {
1875
2204
  background: var(--tao-color-accent);
1876
2205
  color: var(--tao-color-on-accent);
1877
2206
  opacity: 1;
1878
2207
  }
1879
- .tao-date__day--cursor:not(.tao-date__day--selected) {
2208
+
2209
+ .tao-date__day--cursor:not(.tao-date__day--selected):not(.tao-date__day--in-range) {
1880
2210
  background: var(--tao-color-surface-hover);
1881
2211
  }
1882
- .tao-date__day:hover:not(:disabled):not(.tao-date__day--selected) {
2212
+
2213
+ .tao-date__day:hover:not(:disabled):not(.tao-date__day--selected):not(.tao-date__day--in-range) {
1883
2214
  background: var(--tao-color-surface-hover);
1884
2215
  }
2216
+
1885
2217
  .tao-date__day:disabled {
1886
2218
  opacity: 0.35;
1887
2219
  cursor: not-allowed;
1888
2220
  }
2221
+
1889
2222
  .tao-date__day:focus-visible {
1890
2223
  outline: 2px solid var(--tao-color-accent);
1891
2224
  outline-offset: 1px;
1892
2225
  }
2226
+
1893
2227
  .tao-date__footer {
1894
2228
  display: flex;
1895
2229
  justify-content: space-between;
1896
2230
  gap: var(--tao-space-2);
1897
2231
  margin-top: var(--tao-space-3);
1898
2232
  }
2233
+
1899
2234
  .tao-date__link {
1900
2235
  margin: 0;
1901
2236
  padding: 0;
@@ -1906,22 +2241,75 @@ to {
1906
2241
  font-size: var(--tao-font-size-sm);
1907
2242
  cursor: pointer;
1908
2243
  }
2244
+
1909
2245
  .tao-date__link:hover:not(:disabled) {
1910
2246
  color: var(--tao-color-accent-hover);
1911
2247
  }
2248
+
1912
2249
  .tao-date__link:disabled {
1913
2250
  color: var(--tao-color-text-muted);
1914
2251
  cursor: not-allowed;
1915
2252
  }
2253
+
1916
2254
  .tao-date__link:focus-visible {
1917
2255
  outline: 2px solid var(--tao-color-accent);
1918
2256
  outline-offset: 2px;
1919
2257
  }
1920
2258
 
1921
- .tao-date[data-v-4227e5f8] {
2259
+ .tao-date[data-v-f4a9cddd] {
2260
+ width: 100%;
2261
+ }
2262
+ .tao-date__trigger[data-v-f4a9cddd] {
2263
+ display: flex;
2264
+ align-items: center;
2265
+ justify-content: space-between;
2266
+ gap: var(--tao-space-2);
2267
+ width: 100%;
2268
+ min-height: 36px;
2269
+ padding: var(--tao-space-2) var(--tao-space-3);
2270
+ border: 1px solid var(--tao-color-border-strong);
2271
+ border-radius: var(--tao-radius-control);
2272
+ background: var(--tao-color-input-bg);
2273
+ color: var(--tao-color-input-text);
2274
+ font-size: var(--tao-font-size-md);
2275
+ font-family: inherit;
2276
+ text-align: left;
2277
+ cursor: pointer;
2278
+ transition: var(--tao-transition-base);
2279
+ }
2280
+ .tao-date__trigger--placeholder[data-v-f4a9cddd] {
2281
+ color: var(--tao-color-input-placeholder);
2282
+ }
2283
+ .tao-date__trigger[data-v-f4a9cddd]:focus {
2284
+ outline: none;
2285
+ border-color: var(--tao-color-accent);
2286
+ box-shadow: 0 0 0 2px var(--tao-color-accent-subtle-hover);
2287
+ }
2288
+ .tao-date--invalid .tao-date__trigger[data-v-f4a9cddd] {
2289
+ border-color: var(--tao-color-danger);
2290
+ }
2291
+ .tao-date--invalid .tao-date__trigger[data-v-f4a9cddd]:focus {
2292
+ box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
2293
+ }
2294
+ .tao-date__trigger[data-v-f4a9cddd]:disabled {
2295
+ opacity: 0.6;
2296
+ cursor: not-allowed;
2297
+ }
2298
+ .tao-date__value[data-v-f4a9cddd] {
2299
+ min-width: 0;
2300
+ overflow: hidden;
2301
+ text-overflow: ellipsis;
2302
+ white-space: nowrap;
2303
+ }
2304
+ .tao-date__icon[data-v-f4a9cddd] {
2305
+ flex-shrink: 0;
2306
+ opacity: 0.7;
2307
+ }
2308
+
2309
+ .tao-date-range[data-v-4e222262] {
1922
2310
  width: 100%;
1923
2311
  }
1924
- .tao-date__trigger[data-v-4227e5f8] {
2312
+ .tao-date-range__trigger[data-v-4e222262] {
1925
2313
  display: flex;
1926
2314
  align-items: center;
1927
2315
  justify-content: space-between;
@@ -1939,31 +2327,31 @@ to {
1939
2327
  cursor: pointer;
1940
2328
  transition: var(--tao-transition-base);
1941
2329
  }
1942
- .tao-date__trigger--placeholder[data-v-4227e5f8] {
2330
+ .tao-date-range__trigger--placeholder[data-v-4e222262] {
1943
2331
  color: var(--tao-color-input-placeholder);
1944
2332
  }
1945
- .tao-date__trigger[data-v-4227e5f8]:focus {
2333
+ .tao-date-range__trigger[data-v-4e222262]:focus {
1946
2334
  outline: none;
1947
2335
  border-color: var(--tao-color-accent);
1948
2336
  box-shadow: 0 0 0 2px var(--tao-color-accent-subtle-hover);
1949
2337
  }
1950
- .tao-date--invalid .tao-date__trigger[data-v-4227e5f8] {
2338
+ .tao-date-range--invalid .tao-date-range__trigger[data-v-4e222262] {
1951
2339
  border-color: var(--tao-color-danger);
1952
2340
  }
1953
- .tao-date--invalid .tao-date__trigger[data-v-4227e5f8]:focus {
2341
+ .tao-date-range--invalid .tao-date-range__trigger[data-v-4e222262]:focus {
1954
2342
  box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
1955
2343
  }
1956
- .tao-date__trigger[data-v-4227e5f8]:disabled {
2344
+ .tao-date-range__trigger[data-v-4e222262]:disabled {
1957
2345
  opacity: 0.6;
1958
2346
  cursor: not-allowed;
1959
2347
  }
1960
- .tao-date__value[data-v-4227e5f8] {
2348
+ .tao-date-range__value[data-v-4e222262] {
1961
2349
  min-width: 0;
1962
2350
  overflow: hidden;
1963
2351
  text-overflow: ellipsis;
1964
2352
  white-space: nowrap;
1965
2353
  }
1966
- .tao-date__icon[data-v-4227e5f8] {
2354
+ .tao-date-range__icon[data-v-4e222262] {
1967
2355
  flex-shrink: 0;
1968
2356
  opacity: 0.7;
1969
2357
  }
@@ -2749,19 +3137,19 @@ to {
2749
3137
  }
2750
3138
  }
2751
3139
 
2752
- .tao-carousel[data-v-173f4ce0] {
3140
+ .tao-carousel[data-v-81afb8b0] {
2753
3141
  display: flex;
2754
3142
  flex-direction: column;
2755
3143
  gap: var(--tao-space-2);
2756
3144
  width: 100%;
2757
3145
  }
2758
- .tao-carousel__row[data-v-173f4ce0] {
3146
+ .tao-carousel__row[data-v-81afb8b0] {
2759
3147
  display: flex;
2760
3148
  align-items: center;
2761
3149
  gap: var(--tao-space-2);
2762
3150
  width: 100%;
2763
3151
  }
2764
- .tao-carousel__track[data-v-173f4ce0] {
3152
+ .tao-carousel__track[data-v-81afb8b0] {
2765
3153
  display: flex;
2766
3154
  flex: 1 1 auto;
2767
3155
  gap: var(--tao-space-3);
@@ -2775,18 +3163,18 @@ to {
2775
3163
  touch-action: pan-x;
2776
3164
  cursor: grab;
2777
3165
  }
2778
- .tao-carousel__track[data-v-173f4ce0]::-webkit-scrollbar {
3166
+ .tao-carousel__track[data-v-81afb8b0]::-webkit-scrollbar {
2779
3167
  display: none;
2780
3168
  }
2781
- .tao-carousel__track--dragging[data-v-173f4ce0] {
3169
+ .tao-carousel__track--dragging[data-v-81afb8b0] {
2782
3170
  scroll-snap-type: none;
2783
3171
  cursor: grabbing;
2784
3172
  }
2785
- .tao-carousel__track[data-v-173f4ce0]:focus-visible {
3173
+ .tao-carousel__track[data-v-81afb8b0]:focus-visible {
2786
3174
  outline: 2px solid var(--tao-color-accent);
2787
3175
  outline-offset: 2px;
2788
3176
  }
2789
- .tao-carousel__track[data-v-173f4ce0] > * {
3177
+ .tao-carousel__track[data-v-81afb8b0] > * {
2790
3178
  box-sizing: border-box;
2791
3179
  flex: 0 0 auto;
2792
3180
  width: max(
@@ -2799,7 +3187,7 @@ to {
2799
3187
  min-width: 0;
2800
3188
  scroll-snap-align: start;
2801
3189
  }
2802
- .tao-carousel__nav[data-v-173f4ce0] {
3190
+ .tao-carousel__nav[data-v-81afb8b0] {
2803
3191
  display: inline-flex;
2804
3192
  flex: 0 0 auto;
2805
3193
  align-items: center;
@@ -2818,29 +3206,29 @@ to {
2818
3206
  cursor: pointer;
2819
3207
  transition: var(--tao-transition-base);
2820
3208
  }
2821
- .tao-carousel__nav svg[data-v-173f4ce0] {
3209
+ .tao-carousel__nav svg[data-v-81afb8b0] {
2822
3210
  display: block;
2823
3211
  }
2824
- .tao-carousel__nav[data-v-173f4ce0]:hover:not(:disabled) {
3212
+ .tao-carousel__nav[data-v-81afb8b0]:hover:not(:disabled) {
2825
3213
  background: var(--tao-color-surface-hover);
2826
3214
  color: var(--tao-color-text-strong);
2827
3215
  }
2828
- .tao-carousel__nav[data-v-173f4ce0]:focus-visible {
3216
+ .tao-carousel__nav[data-v-81afb8b0]:focus-visible {
2829
3217
  outline: 2px solid var(--tao-color-accent);
2830
3218
  outline-offset: 2px;
2831
3219
  }
2832
- .tao-carousel__nav[data-v-173f4ce0]:disabled {
3220
+ .tao-carousel__nav[data-v-81afb8b0]:disabled {
2833
3221
  opacity: 0.4;
2834
3222
  cursor: not-allowed;
2835
3223
  }
2836
- .tao-carousel__dots[data-v-173f4ce0] {
3224
+ .tao-carousel__dots[data-v-81afb8b0] {
2837
3225
  display: flex;
2838
3226
  flex-wrap: wrap;
2839
3227
  align-items: center;
2840
3228
  justify-content: center;
2841
3229
  gap: 2px;
2842
3230
  }
2843
- .tao-carousel__dot[data-v-173f4ce0] {
3231
+ .tao-carousel__dot[data-v-81afb8b0] {
2844
3232
  display: inline-flex;
2845
3233
  flex: 0 0 auto;
2846
3234
  align-items: center;
@@ -2853,7 +3241,7 @@ to {
2853
3241
  background: transparent;
2854
3242
  cursor: pointer;
2855
3243
  }
2856
- .tao-carousel__pip[data-v-173f4ce0] {
3244
+ .tao-carousel__pip[data-v-81afb8b0] {
2857
3245
  display: block;
2858
3246
  width: 6px;
2859
3247
  height: 6px;
@@ -2861,23 +3249,23 @@ to {
2861
3249
  background: var(--tao-color-border-strong);
2862
3250
  transition: width var(--tao-duration-base) var(--tao-ease-base), background var(--tao-duration-base) var(--tao-ease-base);
2863
3251
  }
2864
- .tao-carousel__dot--active .tao-carousel__pip[data-v-173f4ce0] {
3252
+ .tao-carousel__dot--active .tao-carousel__pip[data-v-81afb8b0] {
2865
3253
  width: 18px;
2866
3254
  background: var(--tao-color-accent);
2867
3255
  }
2868
- .tao-carousel__dot:hover:not(.tao-carousel__dot--active) .tao-carousel__pip[data-v-173f4ce0] {
3256
+ .tao-carousel__dot:hover:not(.tao-carousel__dot--active) .tao-carousel__pip[data-v-81afb8b0] {
2869
3257
  background: var(--tao-color-text-muted);
2870
3258
  }
2871
- .tao-carousel__dot[data-v-173f4ce0]:focus-visible {
3259
+ .tao-carousel__dot[data-v-81afb8b0]:focus-visible {
2872
3260
  outline: 2px solid var(--tao-color-accent);
2873
3261
  outline-offset: 2px;
2874
3262
  border-radius: var(--tao-radius-full);
2875
3263
  }
2876
3264
  @media (prefers-reduced-motion: reduce) {
2877
- .tao-carousel__track[data-v-173f4ce0] {
3265
+ .tao-carousel__track[data-v-81afb8b0] {
2878
3266
  scroll-behavior: auto;
2879
3267
  }
2880
- .tao-carousel__pip[data-v-173f4ce0] {
3268
+ .tao-carousel__pip[data-v-81afb8b0] {
2881
3269
  transition: none;
2882
3270
  }
2883
3271
  }