@1337exp/taoui 1.1.0 → 1.1.1

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
@@ -95,33 +95,33 @@ to {
95
95
  }
96
96
  }
97
97
 
98
- .tao-block[data-v-4d014dd0] {
98
+ .tao-block[data-v-feb87e36] {
99
99
  background: var(--tao-color-surface);
100
100
  color: var(--tao-color-text);
101
101
  transition: var(--tao-transition-base);
102
102
  }
103
- .tao-block--shadow[data-v-4d014dd0] {
103
+ .tao-block--shadow[data-v-feb87e36] {
104
104
  box-shadow: var(--tao-shadow-panel);
105
105
  }
106
- .tao-block--hover[data-v-4d014dd0] {
106
+ .tao-block--hover[data-v-feb87e36] {
107
107
  cursor: pointer;
108
108
  }
109
- .tao-block--hover[data-v-4d014dd0]:hover {
109
+ .tao-block--hover[data-v-feb87e36]:hover {
110
110
  box-shadow: var(--tao-shadow-md);
111
111
  }
112
112
 
113
- .tao-input-wrapper[data-v-49211edd] {
113
+ .tao-input-wrapper[data-v-b522e041] {
114
114
  display: flex;
115
115
  flex-direction: column;
116
116
  gap: var(--tao-space-1);
117
117
  width: 100%;
118
118
  }
119
- .tao-input__label[data-v-49211edd] {
119
+ .tao-input__label[data-v-b522e041] {
120
120
  font-size: var(--tao-font-size-sm);
121
121
  color: var(--tao-color-text);
122
122
  font-weight: 500;
123
123
  }
124
- .tao-input-shell[data-v-49211edd] {
124
+ .tao-input-shell[data-v-b522e041] {
125
125
  display: flex;
126
126
  align-items: center;
127
127
  width: 100%;
@@ -132,7 +132,7 @@ to {
132
132
  color: var(--tao-color-input-text);
133
133
  transition: var(--tao-transition-base);
134
134
  }
135
- .tao-input[data-v-49211edd] {
135
+ .tao-input[data-v-b522e041] {
136
136
  flex: 1 1 auto;
137
137
  min-width: 0;
138
138
  width: 100%;
@@ -146,38 +146,38 @@ to {
146
146
  font-family: inherit;
147
147
  line-height: 1.25;
148
148
  }
149
- .tao-input-shell--prefix .tao-input[data-v-49211edd] {
149
+ .tao-input-shell--prefix .tao-input[data-v-b522e041] {
150
150
  padding-left: 0;
151
151
  }
152
- .tao-input-shell--suffix .tao-input[data-v-49211edd] {
152
+ .tao-input-shell--suffix .tao-input[data-v-b522e041] {
153
153
  padding-right: 0;
154
154
  }
155
- .tao-input[data-v-49211edd]::placeholder {
155
+ .tao-input[data-v-b522e041]::placeholder {
156
156
  color: var(--tao-color-input-placeholder);
157
157
  }
158
- .tao-input[data-v-49211edd]:focus {
158
+ .tao-input[data-v-b522e041]:focus {
159
159
  outline: none;
160
160
  }
161
- .tao-input-shell--focused[data-v-49211edd] {
161
+ .tao-input-shell--focused[data-v-b522e041] {
162
162
  border-color: var(--tao-color-accent);
163
163
  box-shadow: 0 0 0 2px var(--tao-color-accent-subtle-hover);
164
164
  }
165
- .tao-input-shell--disabled[data-v-49211edd] {
165
+ .tao-input-shell--disabled[data-v-b522e041] {
166
166
  opacity: 0.6;
167
167
  cursor: not-allowed;
168
168
  color: var(--tao-color-input-disabled-text);
169
169
  background: var(--tao-color-input-disabled-bg);
170
170
  }
171
- .tao-input[data-v-49211edd]:disabled {
171
+ .tao-input[data-v-b522e041]:disabled {
172
172
  cursor: not-allowed;
173
173
  }
174
- .tao-input-shell--invalid[data-v-49211edd] {
174
+ .tao-input-shell--invalid[data-v-b522e041] {
175
175
  border-color: var(--tao-color-danger);
176
176
  }
177
- .tao-input-shell--invalid.tao-input-shell--focused[data-v-49211edd] {
177
+ .tao-input-shell--invalid.tao-input-shell--focused[data-v-b522e041] {
178
178
  box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
179
179
  }
180
- .tao-input__affix[data-v-49211edd] {
180
+ .tao-input__affix[data-v-b522e041] {
181
181
  display: inline-flex;
182
182
  flex: 0 0 auto;
183
183
  align-items: center;
@@ -188,20 +188,20 @@ to {
188
188
  line-height: 1;
189
189
  white-space: nowrap;
190
190
  }
191
- .tao-input__affix--prefix[data-v-49211edd] {
191
+ .tao-input__affix--prefix[data-v-b522e041] {
192
192
  padding-left: var(--tao-space-3);
193
193
  padding-right: var(--tao-space-2);
194
194
  }
195
- .tao-input__affix--suffix[data-v-49211edd] {
195
+ .tao-input__affix--suffix[data-v-b522e041] {
196
196
  padding-right: var(--tao-space-3);
197
197
  padding-left: var(--tao-space-2);
198
198
  }
199
- .tao-input__affix[data-v-49211edd] svg {
199
+ .tao-input__affix[data-v-b522e041] svg {
200
200
  display: block;
201
201
  width: 16px;
202
202
  height: 16px;
203
203
  }
204
- .tao-input__affix[data-v-49211edd] button {
204
+ .tao-input__affix[data-v-b522e041] button {
205
205
  display: inline-flex;
206
206
  align-items: center;
207
207
  justify-content: center;
@@ -214,14 +214,14 @@ to {
214
214
  line-height: 1;
215
215
  cursor: pointer;
216
216
  }
217
- .tao-input__affix[data-v-49211edd] button:hover {
217
+ .tao-input__affix[data-v-b522e041] button:hover {
218
218
  color: var(--tao-color-text-strong);
219
219
  }
220
- .tao-input__affix[data-v-49211edd] button:focus-visible {
220
+ .tao-input__affix[data-v-b522e041] button:focus-visible {
221
221
  outline: 2px solid var(--tao-color-accent);
222
222
  outline-offset: 2px;
223
223
  }
224
- .tao-input__error[data-v-49211edd] {
224
+ .tao-input__error[data-v-b522e041] {
225
225
  font-size: var(--tao-font-size-xs);
226
226
  color: var(--tao-color-danger);
227
227
  }
@@ -493,68 +493,68 @@ to {
493
493
  box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
494
494
  }
495
495
 
496
- .tao-card[data-v-b752c7cb] {
496
+ .tao-card[data-v-2ff3d055] {
497
497
  width: 100%;
498
498
  background: var(--tao-color-surface-raised);
499
499
  color: var(--tao-color-text);
500
500
  transition: var(--tao-transition-base);
501
501
  }
502
- .tao-card--overflow[data-v-b752c7cb] {
502
+ .tao-card--overflow[data-v-2ff3d055] {
503
503
  overflow: visible;
504
504
  }
505
- .tao-card[data-v-b752c7cb]:not(.tao-card--overflow) {
505
+ .tao-card[data-v-2ff3d055]:not(.tao-card--overflow) {
506
506
  overflow: hidden;
507
507
  }
508
- .tao-card--shadow[data-v-b752c7cb] {
508
+ .tao-card--shadow[data-v-2ff3d055] {
509
509
  box-shadow: var(--tao-shadow-panel);
510
510
  }
511
- .tao-card--shadow-bottom[data-v-b752c7cb] {
511
+ .tao-card--shadow-bottom[data-v-2ff3d055] {
512
512
  box-shadow: 0 1px 0 0 var(--tao-color-border-strong);
513
513
  }
514
- .tao-card--hover[data-v-b752c7cb] {
514
+ .tao-card--hover[data-v-2ff3d055] {
515
515
  cursor: pointer;
516
516
  }
517
- .tao-card--hover[data-v-b752c7cb]:hover,
518
- .tao-card--hover.tao-card--active[data-v-b752c7cb] {
517
+ .tao-card--hover[data-v-2ff3d055]:hover,
518
+ .tao-card--hover.tao-card--active[data-v-2ff3d055] {
519
519
  box-shadow: 0 0 0 1px var(--tao-color-accent), var(--tao-shadow-lg);
520
520
  }
521
- .tao-card__cover[data-v-b752c7cb] {
521
+ .tao-card__cover[data-v-2ff3d055] {
522
522
  overflow: hidden;
523
523
  }
524
- .tao-card__content[data-v-b752c7cb] {
524
+ .tao-card__content[data-v-2ff3d055] {
525
525
  display: flex;
526
526
  flex-direction: column;
527
527
  gap: var(--tao-space-3);
528
528
  }
529
- .tao-card__header-title[data-v-b752c7cb] {
529
+ .tao-card__header-title[data-v-2ff3d055] {
530
530
  margin: 0 0 var(--tao-space-5);
531
531
  font-weight: 500;
532
532
  text-align: center;
533
533
  color: var(--tao-color-text-strong);
534
534
  }
535
- .tao-card__header[data-v-b752c7cb] {
535
+ .tao-card__header[data-v-2ff3d055] {
536
536
  margin-top: -6px;
537
537
  padding: 2px 0 var(--tao-space-2);
538
538
  font-size: var(--tao-font-size-sm);
539
539
  font-weight: 700;
540
540
  }
541
- .tao-card__header--between[data-v-b752c7cb] {
541
+ .tao-card__header--between[data-v-2ff3d055] {
542
542
  display: flex;
543
543
  justify-content: space-between;
544
544
  }
545
- .tao-card__title[data-v-b752c7cb] {
545
+ .tao-card__title[data-v-2ff3d055] {
546
546
  margin: 0 0 2px;
547
547
  color: var(--tao-color-text-strong);
548
548
  }
549
- .tao-card__sub[data-v-b752c7cb] {
549
+ .tao-card__sub[data-v-2ff3d055] {
550
550
  font-size: var(--tao-font-size-xs);
551
551
  color: var(--tao-color-text-muted);
552
552
  }
553
- .tao-card__body[data-v-b752c7cb] {
553
+ .tao-card__body[data-v-2ff3d055] {
554
554
  font-size: var(--tao-font-size-md);
555
555
  }
556
556
 
557
- .tao-modal-overlay[data-v-399d4fdf] {
557
+ .tao-modal-overlay[data-v-0cffe849] {
558
558
  position: fixed;
559
559
  inset: 0;
560
560
  background: var(--tao-color-overlay);
@@ -564,7 +564,7 @@ to {
564
564
  z-index: 1000;
565
565
  padding: var(--tao-space-5);
566
566
  }
567
- .tao-modal[data-v-399d4fdf] {
567
+ .tao-modal[data-v-0cffe849] {
568
568
  background: var(--tao-color-surface-raised);
569
569
  border-radius: var(--tao-radius-panel);
570
570
  max-width: 500px;
@@ -573,27 +573,27 @@ to {
573
573
  overflow-y: auto;
574
574
  box-shadow: var(--tao-shadow-overlay);
575
575
  }
576
- .tao-modal[data-v-399d4fdf]:focus {
576
+ .tao-modal[data-v-0cffe849]:focus {
577
577
  outline: none;
578
578
  }
579
- .tao-modal[data-v-399d4fdf]:focus-visible {
579
+ .tao-modal[data-v-0cffe849]:focus-visible {
580
580
  outline: 2px solid var(--tao-color-accent);
581
581
  outline-offset: 2px;
582
582
  }
583
- .tao-modal__header[data-v-399d4fdf] {
583
+ .tao-modal__header[data-v-0cffe849] {
584
584
  display: flex;
585
585
  align-items: center;
586
586
  justify-content: space-between;
587
587
  padding: var(--tao-space-4) var(--tao-space-5);
588
588
  border-bottom: 1px solid var(--tao-color-border);
589
589
  }
590
- .tao-modal__title[data-v-399d4fdf] {
590
+ .tao-modal__title[data-v-0cffe849] {
591
591
  margin: 0;
592
592
  font-size: var(--tao-font-size-xl);
593
593
  font-weight: 600;
594
594
  color: var(--tao-color-text-strong);
595
595
  }
596
- .tao-modal__close[data-v-399d4fdf] {
596
+ .tao-modal__close[data-v-0cffe849] {
597
597
  background: none;
598
598
  border: none;
599
599
  font-size: 24px;
@@ -602,30 +602,30 @@ to {
602
602
  padding: 0;
603
603
  line-height: 1;
604
604
  }
605
- .tao-modal__close[data-v-399d4fdf]:hover {
605
+ .tao-modal__close[data-v-0cffe849]:hover {
606
606
  color: var(--tao-color-text-strong);
607
607
  }
608
- .tao-modal__close[data-v-399d4fdf]:focus-visible {
608
+ .tao-modal__close[data-v-0cffe849]:focus-visible {
609
609
  outline: 2px solid var(--tao-color-accent);
610
610
  outline-offset: 2px;
611
611
  border-radius: var(--tao-radius-control);
612
612
  }
613
- .tao-modal__content[data-v-399d4fdf] {
613
+ .tao-modal__content[data-v-0cffe849] {
614
614
  padding: var(--tao-space-5);
615
615
  }
616
- .tao-modal__footer[data-v-399d4fdf] {
616
+ .tao-modal__footer[data-v-0cffe849] {
617
617
  padding: var(--tao-space-4) var(--tao-space-5);
618
618
  border-top: 1px solid var(--tao-color-border);
619
619
  display: flex;
620
620
  gap: var(--tao-space-3);
621
621
  justify-content: flex-end;
622
622
  }
623
- .tao-modal-fade-enter-active[data-v-399d4fdf],
624
- .tao-modal-fade-leave-active[data-v-399d4fdf] {
623
+ .tao-modal-fade-enter-active[data-v-0cffe849],
624
+ .tao-modal-fade-leave-active[data-v-0cffe849] {
625
625
  transition: opacity var(--tao-duration-base) var(--tao-ease-base);
626
626
  }
627
- .tao-modal-fade-enter-from[data-v-399d4fdf],
628
- .tao-modal-fade-leave-to[data-v-399d4fdf] {
627
+ .tao-modal-fade-enter-from[data-v-0cffe849],
628
+ .tao-modal-fade-leave-to[data-v-0cffe849] {
629
629
  opacity: 0;
630
630
  }
631
631
 
@@ -673,11 +673,11 @@ to {
673
673
  color: var(--tao-color-text);
674
674
  }
675
675
 
676
- .tao-tooltip-wrapper[data-v-0f7a5b9b] {
676
+ .tao-tooltip-wrapper[data-v-6f3b3c11] {
677
677
  position: relative;
678
678
  display: inline-block;
679
679
  }
680
- .tao-tooltip[data-v-0f7a5b9b] {
680
+ .tao-tooltip[data-v-6f3b3c11] {
681
681
  position: absolute;
682
682
  padding: var(--tao-space-2) var(--tao-space-3);
683
683
  background: var(--tao-color-surface-raised);
@@ -692,7 +692,7 @@ to {
692
692
  на сам тултип он "залипает" и не скрывается). */
693
693
  pointer-events: none;
694
694
  }
695
- .tao-tooltip[data-v-0f7a5b9b]::after {
695
+ .tao-tooltip[data-v-6f3b3c11]::after {
696
696
  content: '';
697
697
  position: absolute;
698
698
  width: 8px;
@@ -700,56 +700,56 @@ to {
700
700
  background: var(--tao-color-surface-raised);
701
701
  transform: rotate(45deg);
702
702
  }
703
- .tao-tooltip--top[data-v-0f7a5b9b] {
703
+ .tao-tooltip--top[data-v-6f3b3c11] {
704
704
  bottom: 100%;
705
705
  left: 50%;
706
706
  transform: translateX(-50%);
707
707
  margin-bottom: var(--tao-space-2);
708
708
  }
709
- .tao-tooltip--top[data-v-0f7a5b9b]::after {
709
+ .tao-tooltip--top[data-v-6f3b3c11]::after {
710
710
  top: 100%;
711
711
  left: 50%;
712
712
  margin-top: -4px;
713
713
  margin-left: -4px;
714
714
  }
715
- .tao-tooltip--bottom[data-v-0f7a5b9b] {
715
+ .tao-tooltip--bottom[data-v-6f3b3c11] {
716
716
  top: 100%;
717
717
  left: 50%;
718
718
  transform: translateX(-50%);
719
719
  margin-top: var(--tao-space-2);
720
720
  }
721
- .tao-tooltip--bottom[data-v-0f7a5b9b]::after {
721
+ .tao-tooltip--bottom[data-v-6f3b3c11]::after {
722
722
  bottom: 100%;
723
723
  left: 50%;
724
724
  margin-bottom: -4px;
725
725
  margin-left: -4px;
726
726
  }
727
- .tao-tooltip--left[data-v-0f7a5b9b] {
727
+ .tao-tooltip--left[data-v-6f3b3c11] {
728
728
  right: 100%;
729
729
  top: 50%;
730
730
  transform: translateY(-50%);
731
731
  margin-right: var(--tao-space-2);
732
732
  }
733
- .tao-tooltip--left[data-v-0f7a5b9b]::after {
733
+ .tao-tooltip--left[data-v-6f3b3c11]::after {
734
734
  right: 0;
735
735
  top: 50%;
736
736
  margin-top: -4px;
737
737
  margin-right: -4px;
738
738
  }
739
- .tao-tooltip--right[data-v-0f7a5b9b] {
739
+ .tao-tooltip--right[data-v-6f3b3c11] {
740
740
  left: 100%;
741
741
  top: 50%;
742
742
  transform: translateY(-50%);
743
743
  margin-left: var(--tao-space-2);
744
744
  }
745
- .tao-tooltip--right[data-v-0f7a5b9b]::after {
745
+ .tao-tooltip--right[data-v-6f3b3c11]::after {
746
746
  left: 0;
747
747
  top: 50%;
748
748
  margin-top: -4px;
749
749
  margin-left: -4px;
750
750
  }
751
- .tao-tooltip-fade-enter-active[data-v-0f7a5b9b],
752
- .tao-tooltip-fade-leave-active[data-v-0f7a5b9b] {
751
+ .tao-tooltip-fade-enter-active[data-v-6f3b3c11],
752
+ .tao-tooltip-fade-leave-active[data-v-6f3b3c11] {
753
753
  transition: opacity var(--tao-duration-base) var(--tao-ease-base),
754
754
  transform var(--tao-duration-base) var(--tao-ease-base);
755
755
  }
@@ -758,33 +758,33 @@ to {
758
758
  поверх базового центрирующего transform каждой позиции — иначе
759
759
  общий translateX(-50%) конфликтует с left/right, где центрирование
760
760
  идёт по вертикали (translateY(-50%)), и блок "убегает" в сторону. */
761
- .tao-tooltip--top.tao-tooltip-fade-enter-from[data-v-0f7a5b9b],
762
- .tao-tooltip--top.tao-tooltip-fade-leave-to[data-v-0f7a5b9b] {
761
+ .tao-tooltip--top.tao-tooltip-fade-enter-from[data-v-6f3b3c11],
762
+ .tao-tooltip--top.tao-tooltip-fade-leave-to[data-v-6f3b3c11] {
763
763
  opacity: 0;
764
764
  transform: translateX(-50%) translateY(4px);
765
765
  }
766
- .tao-tooltip--bottom.tao-tooltip-fade-enter-from[data-v-0f7a5b9b],
767
- .tao-tooltip--bottom.tao-tooltip-fade-leave-to[data-v-0f7a5b9b] {
766
+ .tao-tooltip--bottom.tao-tooltip-fade-enter-from[data-v-6f3b3c11],
767
+ .tao-tooltip--bottom.tao-tooltip-fade-leave-to[data-v-6f3b3c11] {
768
768
  opacity: 0;
769
769
  transform: translateX(-50%) translateY(-4px);
770
770
  }
771
- .tao-tooltip--left.tao-tooltip-fade-enter-from[data-v-0f7a5b9b],
772
- .tao-tooltip--left.tao-tooltip-fade-leave-to[data-v-0f7a5b9b] {
771
+ .tao-tooltip--left.tao-tooltip-fade-enter-from[data-v-6f3b3c11],
772
+ .tao-tooltip--left.tao-tooltip-fade-leave-to[data-v-6f3b3c11] {
773
773
  opacity: 0;
774
774
  transform: translateY(-50%) translateX(4px);
775
775
  }
776
- .tao-tooltip--right.tao-tooltip-fade-enter-from[data-v-0f7a5b9b],
777
- .tao-tooltip--right.tao-tooltip-fade-leave-to[data-v-0f7a5b9b] {
776
+ .tao-tooltip--right.tao-tooltip-fade-enter-from[data-v-6f3b3c11],
777
+ .tao-tooltip--right.tao-tooltip-fade-leave-to[data-v-6f3b3c11] {
778
778
  opacity: 0;
779
779
  transform: translateY(-50%) translateX(-4px);
780
780
  }
781
781
 
782
- .tao-spoiler[data-v-061480fb] {
782
+ .tao-spoiler[data-v-c9f4d962] {
783
783
  border: 1px solid var(--tao-color-border);
784
784
  border-radius: var(--tao-radius-panel);
785
785
  overflow: hidden;
786
786
  }
787
- .tao-spoiler__header[data-v-061480fb] {
787
+ .tao-spoiler__header[data-v-c9f4d962] {
788
788
  display: flex;
789
789
  align-items: center;
790
790
  gap: var(--tao-space-2);
@@ -796,10 +796,10 @@ to {
796
796
  cursor: pointer;
797
797
  text-align: left;
798
798
  }
799
- .tao-spoiler__header[data-v-061480fb]:hover {
799
+ .tao-spoiler__header[data-v-c9f4d962]:hover {
800
800
  background: var(--tao-color-surface-hover);
801
801
  }
802
- .tao-spoiler__icon[data-v-061480fb] {
802
+ .tao-spoiler__icon[data-v-c9f4d962] {
803
803
  display: inline-flex;
804
804
  align-items: center;
805
805
  justify-content: center;
@@ -809,30 +809,30 @@ to {
809
809
  color: var(--tao-color-accent);
810
810
  transition: transform var(--tao-duration-base) var(--tao-ease-base);
811
811
  }
812
- .tao-spoiler__icon--open[data-v-061480fb] {
812
+ .tao-spoiler__icon--open[data-v-c9f4d962] {
813
813
  transform: rotate(90deg);
814
814
  }
815
- .tao-spoiler__title[data-v-061480fb] {
815
+ .tao-spoiler__title[data-v-c9f4d962] {
816
816
  font-weight: 500;
817
817
  color: var(--tao-color-text);
818
818
  }
819
- .tao-spoiler__content[data-v-061480fb] {
819
+ .tao-spoiler__content[data-v-c9f4d962] {
820
820
  overflow: hidden;
821
821
  }
822
- .tao-spoiler-slide-enter-active[data-v-061480fb],
823
- .tao-spoiler-slide-leave-active[data-v-061480fb] {
822
+ .tao-spoiler-slide-enter-active[data-v-c9f4d962],
823
+ .tao-spoiler-slide-leave-active[data-v-c9f4d962] {
824
824
  transition: height var(--tao-duration-slow) var(--tao-ease-base);
825
825
  overflow: hidden;
826
826
  }
827
- .tao-spoiler__content-inner[data-v-061480fb] {
827
+ .tao-spoiler__content-inner[data-v-c9f4d962] {
828
828
  padding: var(--tao-space-4);
829
829
  background: var(--tao-color-surface);
830
830
  }
831
831
 
832
- .tao-copy[data-v-810f1bc7] {
832
+ .tao-copy[data-v-73a42ad9] {
833
833
  display: inline-block;
834
834
  }
835
- .tao-copy__button[data-v-810f1bc7] {
835
+ .tao-copy__button[data-v-73a42ad9] {
836
836
  padding: var(--tao-space-2) var(--tao-space-3);
837
837
  background: var(--tao-color-surface-sunken);
838
838
  border: 1px solid var(--tao-color-border-strong);
@@ -843,40 +843,40 @@ to {
843
843
  cursor: pointer;
844
844
  transition: var(--tao-transition-base);
845
845
  }
846
- .tao-copy__button[data-v-810f1bc7]:hover {
846
+ .tao-copy__button[data-v-73a42ad9]:hover {
847
847
  background: var(--tao-color-surface-hover);
848
848
  border-color: var(--tao-color-accent);
849
849
  color: var(--tao-color-accent);
850
850
  }
851
- .tao-copy__button--copied[data-v-810f1bc7] {
851
+ .tao-copy__button--copied[data-v-73a42ad9] {
852
852
  background: var(--tao-color-accent);
853
853
  border-color: var(--tao-color-accent);
854
854
  color: var(--tao-color-on-accent);
855
855
  }
856
856
 
857
- .tao-container[data-v-81987648] {
857
+ .tao-container[data-v-4c0deb90] {
858
858
  width: 100%;
859
859
  }
860
- .tao-container--center[data-v-81987648] {
860
+ .tao-container--center[data-v-4c0deb90] {
861
861
  margin: 0 auto;
862
862
  }
863
- .tao-container--wide[data-v-81987648] {
863
+ .tao-container--wide[data-v-4c0deb90] {
864
864
  max-width: 1120px;
865
865
  }
866
- .tao-container--slim[data-v-81987648] {
866
+ .tao-container--slim[data-v-4c0deb90] {
867
867
  max-width: 500px;
868
868
  }
869
- .tao-container--ultra-slim[data-v-81987648] {
869
+ .tao-container--ultra-slim[data-v-4c0deb90] {
870
870
  max-width: 400px;
871
871
  }
872
872
 
873
- .tao-space[data-v-4190f6ba] {
873
+ .tao-space[data-v-698ca712] {
874
874
  display: inline-flex;
875
875
  flex-wrap: wrap;
876
876
  column-gap: var(--tao-space-2);
877
877
  row-gap: var(--tao-space-2);
878
878
  }
879
- .tao-space--vertical[data-v-4190f6ba] {
879
+ .tao-space--vertical[data-v-698ca712] {
880
880
  flex-direction: column;
881
881
  }
882
882
 
@@ -885,72 +885,72 @@ to {
885
885
  * который нужно подключить в проекте самостоятельно — библиотека Tao
886
886
  * его не поставляет. Это осознанное соглашение (см. README).
887
887
  */
888
- .tao-icon[data-v-b561364f] {
888
+ .tao-icon[data-v-145b2cfc] {
889
889
  display: inline-flex;
890
890
  }
891
- .tao-icon__value[data-v-b561364f] {
892
- margin: var(--v2b130076);
891
+ .tao-icon__value[data-v-145b2cfc] {
892
+ margin: var(--a2e86200);
893
893
  }
894
- .tao-icon__value--invert[data-v-b561364f] {
894
+ .tao-icon__value--invert[data-v-145b2cfc] {
895
895
  filter: invert();
896
896
  }
897
897
 
898
- .tao-loader[data-v-3a29f095] {
898
+ .tao-loader[data-v-75a40018] {
899
899
  display: flex;
900
900
  align-items: center;
901
901
  justify-content: center;
902
902
  text-align: center;
903
903
  }
904
- .tao-loader--inline[data-v-3a29f095] {
904
+ .tao-loader--inline[data-v-75a40018] {
905
905
  display: inline-block;
906
906
  width: 30px;
907
907
  }
908
- .tao-loader__ellipsis[data-v-3a29f095] {
908
+ .tao-loader__ellipsis[data-v-75a40018] {
909
909
  display: block;
910
910
  position: relative;
911
911
  }
912
- .tao-loader__ellipsis div[data-v-3a29f095] {
912
+ .tao-loader__ellipsis div[data-v-75a40018] {
913
913
  position: absolute;
914
914
  top: 0;
915
915
  border-radius: var(--tao-radius-full);
916
916
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
917
917
  }
918
- .tao-loader__ellipsis div[data-v-3a29f095]:nth-child(1) {
919
- left: var(--v052ed61b);
920
- animation: tao-loader-grow-3a29f095 0.6s infinite;
918
+ .tao-loader__ellipsis div[data-v-75a40018]:nth-child(1) {
919
+ left: var(--d349d504);
920
+ animation: tao-loader-grow-75a40018 0.6s infinite;
921
921
  }
922
- .tao-loader__ellipsis div[data-v-3a29f095]:nth-child(2) {
923
- left: var(--v052ed61b);
924
- animation: tao-loader-move-3a29f095 0.6s infinite;
922
+ .tao-loader__ellipsis div[data-v-75a40018]:nth-child(2) {
923
+ left: var(--d349d504);
924
+ animation: tao-loader-move-75a40018 0.6s infinite;
925
925
  }
926
- .tao-loader__ellipsis div[data-v-3a29f095]:nth-child(3) {
927
- left: var(--v05f388d2);
928
- animation: tao-loader-move-3a29f095 0.6s infinite;
926
+ .tao-loader__ellipsis div[data-v-75a40018]:nth-child(3) {
927
+ left: var(--d1c06f96);
928
+ animation: tao-loader-move-75a40018 0.6s infinite;
929
929
  }
930
- .tao-loader__ellipsis div[data-v-3a29f095]:nth-child(4) {
931
- left: var(--bdfc57e2);
932
- animation: tao-loader-shrink-3a29f095 0.6s infinite;
930
+ .tao-loader__ellipsis div[data-v-75a40018]:nth-child(4) {
931
+ left: var(--v355d810c);
932
+ animation: tao-loader-shrink-75a40018 0.6s infinite;
933
933
  }
934
- @keyframes tao-loader-grow-3a29f095 {
934
+ @keyframes tao-loader-grow-75a40018 {
935
935
  0% { transform: scale(0);
936
936
  }
937
937
  100% { transform: scale(1);
938
938
  }
939
939
  }
940
- @keyframes tao-loader-shrink-3a29f095 {
940
+ @keyframes tao-loader-shrink-75a40018 {
941
941
  0% { transform: scale(1);
942
942
  }
943
943
  100% { transform: scale(0);
944
944
  }
945
945
  }
946
- @keyframes tao-loader-move-3a29f095 {
946
+ @keyframes tao-loader-move-75a40018 {
947
947
  0% { transform: translate(0, 0);
948
948
  }
949
- 100% { transform: translate(var(--v50ec8284), 0);
949
+ 100% { transform: translate(var(--v09447532), 0);
950
950
  }
951
951
  }
952
952
 
953
- .tao-image[data-v-8272e203] {
953
+ .tao-image[data-v-9da4bb7d] {
954
954
  position: relative;
955
955
  display: inline-block;
956
956
  width: 100%;
@@ -958,17 +958,17 @@ to {
958
958
  overflow: hidden;
959
959
  user-select: none;
960
960
  }
961
- .tao-image img[data-v-8272e203] {
961
+ .tao-image img[data-v-9da4bb7d] {
962
962
  display: block;
963
963
  width: 100%;
964
964
  height: 100%;
965
965
  object-fit: contain;
966
966
  transition: opacity var(--tao-duration-slow) var(--tao-ease-base);
967
967
  }
968
- .tao-image__img--hidden[data-v-8272e203] {
968
+ .tao-image__img--hidden[data-v-9da4bb7d] {
969
969
  opacity: 0;
970
970
  }
971
- .tao-image__img--pixelated[data-v-8272e203] {
971
+ .tao-image__img--pixelated[data-v-9da4bb7d] {
972
972
  image-rendering: optimizeSpeed;
973
973
  image-rendering: -moz-crisp-edges;
974
974
  image-rendering: -o-crisp-edges;
@@ -977,7 +977,7 @@ to {
977
977
  image-rendering: optimize-contrast;
978
978
  -ms-interpolation-mode: nearest-neighbor;
979
979
  }
980
- .tao-image__placeholder[data-v-8272e203] {
980
+ .tao-image__placeholder[data-v-9da4bb7d] {
981
981
  font-size: var(--tao-font-size-sm);
982
982
  font-family: var(--tao-font-family);
983
983
  letter-spacing: 0.01rem;
@@ -985,7 +985,7 @@ to {
985
985
  color: var(--tao-color-text-muted);
986
986
  }
987
987
 
988
- .tao-checkbox[data-v-0bb22ce9] {
988
+ .tao-checkbox[data-v-f6b0e565] {
989
989
  display: flex;
990
990
  align-items: center;
991
991
  gap: var(--tao-space-2);
@@ -994,7 +994,7 @@ to {
994
994
  font-size: var(--tao-font-size-lg);
995
995
  color: var(--tao-color-text);
996
996
  }
997
- .tao-checkbox__box[data-v-0bb22ce9] {
997
+ .tao-checkbox__box[data-v-f6b0e565] {
998
998
  position: relative;
999
999
  display: flex;
1000
1000
  align-items: center;
@@ -1007,7 +1007,7 @@ to {
1007
1007
  border-radius: var(--tao-radius-sm);
1008
1008
  transition: var(--tao-transition-base);
1009
1009
  }
1010
- .tao-checkbox__box[data-v-0bb22ce9]::after {
1010
+ .tao-checkbox__box[data-v-f6b0e565]::after {
1011
1011
  content: '';
1012
1012
  display: block;
1013
1013
  width: 12px;
@@ -1017,29 +1017,40 @@ to {
1017
1017
  transform: scale(0);
1018
1018
  transition: var(--tao-transition-base);
1019
1019
  }
1020
- .tao-checkbox__label[data-v-0bb22ce9] {
1020
+ .tao-checkbox__label[data-v-f6b0e565] {
1021
1021
  font-size: var(--tao-font-size-sm);
1022
1022
  white-space: nowrap;
1023
1023
  color: var(--tao-color-text-muted);
1024
1024
  }
1025
- .tao-checkbox--disabled[data-v-0bb22ce9] {
1025
+ .tao-checkbox--disabled[data-v-f6b0e565] {
1026
1026
  cursor: not-allowed;
1027
1027
  opacity: 0.6;
1028
1028
  }
1029
- .tao-checkbox__input:checked + .tao-checkbox__box[data-v-0bb22ce9] {
1029
+ .tao-checkbox__input:checked + .tao-checkbox__box[data-v-f6b0e565],
1030
+ .tao-checkbox__input:indeterminate + .tao-checkbox__box[data-v-f6b0e565] {
1030
1031
  border-color: var(--tao-color-accent);
1031
1032
  background-color: var(--tao-color-accent);
1032
1033
  }
1033
- .tao-checkbox__input:checked + .tao-checkbox__box[data-v-0bb22ce9]::after {
1034
+ .tao-checkbox__input:checked + .tao-checkbox__box[data-v-f6b0e565]::after {
1034
1035
  background-color: var(--tao-color-on-accent);
1035
1036
  transform: scale(1);
1036
1037
  }
1037
- .tao-checkbox__input:focus-visible + .tao-checkbox__box[data-v-0bb22ce9] {
1038
+ .tao-checkbox__input:indeterminate + .tao-checkbox__box[data-v-f6b0e565]::after {
1039
+ width: 10px;
1040
+ height: 2px;
1041
+ border-radius: 1px;
1042
+ background-color: var(--tao-color-on-accent);
1043
+ transform: scale(1);
1044
+ }
1045
+ .tao-checkbox__input:focus-visible + .tao-checkbox__box[data-v-f6b0e565] {
1038
1046
  outline: 2px solid var(--tao-color-accent);
1039
1047
  outline-offset: 1px;
1040
1048
  }
1049
+ .tao-checkbox__input[aria-invalid='true'] + .tao-checkbox__box[data-v-f6b0e565] {
1050
+ border-color: var(--tao-color-danger);
1051
+ }
1041
1052
 
1042
- .tao-tag[data-v-3f6b9f30] {
1053
+ .tao-tag[data-v-290c0f6a] {
1043
1054
  box-sizing: border-box;
1044
1055
  display: inline-block;
1045
1056
  height: auto;
@@ -1053,67 +1064,69 @@ to {
1053
1064
  border-radius: var(--tao-radius-sm);
1054
1065
  transition: var(--tao-transition-base);
1055
1066
  }
1056
- .tao-tag--pointer[data-v-3f6b9f30] {
1067
+ .tao-tag--pointer[data-v-290c0f6a] {
1057
1068
  cursor: pointer;
1058
1069
  user-select: none;
1059
1070
  }
1060
- .tao-tag--neutral[data-v-3f6b9f30] {
1071
+ .tao-tag--neutral[data-v-290c0f6a] {
1061
1072
  color: var(--tao-color-text);
1062
1073
  background: var(--tao-color-surface-sunken);
1063
1074
  border-color: var(--tao-color-border-strong);
1064
1075
  }
1065
- .tao-tag--success[data-v-3f6b9f30] {
1076
+ .tao-tag--success[data-v-290c0f6a] {
1066
1077
  color: var(--tao-color-success);
1067
1078
  background: color-mix(in srgb, var(--tao-color-success) 12%, transparent);
1068
1079
  border-color: color-mix(in srgb, var(--tao-color-success) 30%, transparent);
1069
1080
  }
1070
- .tao-tag--danger[data-v-3f6b9f30] {
1081
+ .tao-tag--danger[data-v-290c0f6a],
1082
+ .tao-tag--error[data-v-290c0f6a] {
1071
1083
  color: var(--tao-color-danger);
1072
1084
  background: var(--tao-color-danger-subtle);
1073
1085
  border-color: color-mix(in srgb, var(--tao-color-danger) 30%, transparent);
1074
1086
  }
1075
- .tao-tag--warning[data-v-3f6b9f30] {
1087
+ .tao-tag--warning[data-v-290c0f6a] {
1076
1088
  color: var(--tao-color-warning);
1077
1089
  background: var(--tao-color-warning-subtle);
1078
1090
  border-color: color-mix(in srgb, var(--tao-color-warning) 30%, transparent);
1079
1091
  }
1080
- .tao-tag--info[data-v-3f6b9f30] {
1092
+ .tao-tag--info[data-v-290c0f6a] {
1081
1093
  color: var(--tao-color-info);
1082
1094
  background: var(--tao-color-info-subtle);
1083
1095
  border-color: color-mix(in srgb, var(--tao-color-info) 30%, transparent);
1084
1096
  }
1085
1097
 
1086
1098
  /* variant="gap" — пустой отступ заданной высоты, без линии */
1087
- .tao-divider-gap[data-v-9db02640] {
1099
+ .tao-divider-gap[data-v-8187a15d] {
1088
1100
  height: 40px;
1089
1101
  }
1090
- .tao-divider-gap--small[data-v-9db02640] {
1102
+ .tao-divider-gap--small[data-v-8187a15d] {
1091
1103
  height: 20px;
1092
1104
  }
1093
- .tao-divider-gap--big[data-v-9db02640] {
1105
+ .tao-divider-gap--large[data-v-8187a15d],
1106
+ .tao-divider-gap--big[data-v-8187a15d] {
1094
1107
  height: 60px;
1095
1108
  }
1096
1109
 
1097
1110
  /* variant="text" — линия с текстом посередине, затухающая по краям */
1098
- .tao-divider-text[data-v-9db02640] {
1111
+ .tao-divider-text[data-v-8187a15d] {
1099
1112
  display: flex;
1100
1113
  align-items: center;
1101
1114
  margin: var(--tao-space-5) 0;
1102
1115
  padding: 0 var(--tao-space-4);
1103
1116
  opacity: 0.3;
1104
1117
  }
1105
- .tao-divider-text__line[data-v-9db02640] {
1118
+ .tao-divider-text__line[data-v-8187a15d] {
1106
1119
  flex: 1;
1107
1120
  height: 1px;
1108
1121
  border-top: 1px dashed var(--tao-color-border-strong);
1109
1122
  }
1110
- .tao-divider-text__line--left[data-v-9db02640] {
1123
+ .tao-divider-text__line--left[data-v-8187a15d] {
1111
1124
  mask: linear-gradient(90deg, transparent 0%, black 30%);
1112
1125
  }
1113
- .tao-divider-text__line--right[data-v-9db02640] {
1126
+ .tao-divider-text__line--right[data-v-8187a15d] {
1114
1127
  mask: linear-gradient(90deg, black 70%, transparent 100%);
1115
1128
  }
1116
- .tao-divider-text__value[data-v-9db02640] {
1129
+ .tao-divider-text__value[data-v-8187a15d] {
1117
1130
  padding: 0 var(--tao-space-4);
1118
1131
  font-size: var(--tao-font-size-xs);
1119
1132
  font-weight: 500;
@@ -1122,13 +1135,13 @@ to {
1122
1135
  }
1123
1136
 
1124
1137
  /* variant="line" (по умолчанию) — тонкая линия с акцентным свечением по центру */
1125
- .tao-divider-line[data-v-9db02640] {
1138
+ .tao-divider-line[data-v-8187a15d] {
1126
1139
  position: relative;
1127
1140
  width: 100%;
1128
1141
  height: 1px;
1129
1142
  margin: var(--tao-space-5) auto;
1130
1143
  }
1131
- .tao-divider-line[data-v-9db02640]::before {
1144
+ .tao-divider-line[data-v-8187a15d]::before {
1132
1145
  content: '';
1133
1146
  position: absolute;
1134
1147
  top: 0;
@@ -1139,7 +1152,7 @@ to {
1139
1152
  background-image: linear-gradient(to right, transparent, var(--tao-color-accent), transparent);
1140
1153
  }
1141
1154
 
1142
- .tao-animated-border[data-v-4ca22c09] {
1155
+ .tao-animated-border[data-v-f1534571] {
1143
1156
  background: var(--tao-color-surface-raised);
1144
1157
  position: relative;
1145
1158
  z-index: 0;
@@ -1149,7 +1162,7 @@ to {
1149
1162
  /* Размытая копия рамки позади — даёт эффект свечения (glow).
1150
1163
  Рендерится только при light: по умолчанию компонент — просто
1151
1164
  переливающийся контур, без сияния, выходящего за его пределы. */
1152
- .tao-animated-border--light[data-v-4ca22c09]::before {
1165
+ .tao-animated-border--light[data-v-f1534571]::before {
1153
1166
  content: '';
1154
1167
  position: absolute;
1155
1168
  inset: calc(-1 * var(--tao-animated-border-width));
@@ -1159,13 +1172,13 @@ to {
1159
1172
  filter: blur(var(--tao-animated-border-glow));
1160
1173
  opacity: 0.65;
1161
1174
  z-index: -2;
1162
- animation: tao-animated-border-gradient-4ca22c09 var(--tao-animated-border-speed) ease alternate infinite;
1175
+ animation: tao-animated-border-gradient-f1534571 var(--tao-animated-border-speed) ease alternate infinite;
1163
1176
  }
1164
1177
 
1165
1178
  /* Сама рамка: заливка на всю область, но CSS mask вырезает внутреннюю
1166
1179
  часть — остаётся только полоса шириной borderWidth по периметру,
1167
1180
  поэтому получается контур, а не закрашенный прямоугольник. */
1168
- .tao-animated-border[data-v-4ca22c09]::after {
1181
+ .tao-animated-border[data-v-f1534571]::after {
1169
1182
  content: '';
1170
1183
  position: absolute;
1171
1184
  inset: calc(-1 * var(--tao-animated-border-width));
@@ -1182,9 +1195,9 @@ to {
1182
1195
  linear-gradient(#000 0 0);
1183
1196
  mask-composite: exclude;
1184
1197
  z-index: -1;
1185
- animation: tao-animated-border-gradient-4ca22c09 var(--tao-animated-border-speed) ease alternate infinite;
1198
+ animation: tao-animated-border-gradient-f1534571 var(--tao-animated-border-speed) ease alternate infinite;
1186
1199
  }
1187
- @keyframes tao-animated-border-gradient-4ca22c09 {
1200
+ @keyframes tao-animated-border-gradient-f1534571 {
1188
1201
  0% {
1189
1202
  background-position: 0% 50%;
1190
1203
  }
@@ -1196,7 +1209,13 @@ to {
1196
1209
  }
1197
1210
  }
1198
1211
 
1199
- .tao-textarea[data-v-a56ad167] {
1212
+ .tao-textarea-wrap[data-v-2534c0c4] {
1213
+ display: flex;
1214
+ flex-direction: column;
1215
+ gap: var(--tao-space-1);
1216
+ width: 100%;
1217
+ }
1218
+ .tao-textarea[data-v-2534c0c4] {
1200
1219
  width: 100%;
1201
1220
  min-height: 31px;
1202
1221
  height: auto;
@@ -1214,29 +1233,32 @@ to {
1214
1233
  resize: vertical;
1215
1234
  transition: var(--tao-transition-base);
1216
1235
  }
1217
- .tao-textarea[data-v-a56ad167]::placeholder {
1236
+ .tao-textarea[data-v-2534c0c4]::placeholder {
1218
1237
  color: var(--tao-color-input-placeholder);
1219
1238
  }
1220
- .tao-textarea[data-v-a56ad167]:focus {
1239
+ .tao-textarea[data-v-2534c0c4]:focus {
1221
1240
  border-color: var(--tao-color-accent);
1222
1241
  }
1223
- .tao-textarea--inverse[data-v-a56ad167] {
1242
+ .tao-textarea--invalid[data-v-2534c0c4] {
1243
+ border-color: var(--tao-color-danger);
1244
+ }
1245
+ .tao-textarea--inverse[data-v-2534c0c4] {
1224
1246
  border-left: none;
1225
1247
  border-right: 4px solid var(--tao-color-border-strong);
1226
1248
  }
1227
- .tao-textarea--center[data-v-a56ad167] {
1249
+ .tao-textarea--center[data-v-2534c0c4] {
1228
1250
  text-align: center;
1229
1251
  }
1230
- .tao-textarea--no-border[data-v-a56ad167] {
1252
+ .tao-textarea--no-border[data-v-2534c0c4] {
1231
1253
  border: none;
1232
1254
  }
1233
- .tao-textarea--no-background[data-v-a56ad167] {
1255
+ .tao-textarea--no-background[data-v-2534c0c4] {
1234
1256
  background-color: transparent;
1235
1257
  }
1236
- .tao-textarea--no-resize[data-v-a56ad167] {
1258
+ .tao-textarea--no-resize[data-v-2534c0c4] {
1237
1259
  resize: none;
1238
1260
  }
1239
- .tao-textarea--dummy[data-v-a56ad167] {
1261
+ .tao-textarea--dummy[data-v-2534c0c4] {
1240
1262
  display: block;
1241
1263
  min-height: 31px;
1242
1264
  height: auto;
@@ -1244,8 +1266,19 @@ to {
1244
1266
  white-space: pre-wrap;
1245
1267
  overflow-wrap: anywhere;
1246
1268
  }
1269
+ .tao-textarea__count[data-v-2534c0c4] {
1270
+ align-self: flex-end;
1271
+ font-size: var(--tao-font-size-xs);
1272
+ line-height: 1;
1273
+ color: var(--tao-color-text-muted);
1274
+ font-variant-numeric: tabular-nums;
1275
+ user-select: none;
1276
+ }
1277
+ .tao-textarea__count--limit[data-v-2534c0c4] {
1278
+ color: var(--tao-color-danger);
1279
+ }
1247
1280
 
1248
- .tao-scroll-top[data-v-a6b96e61] {
1281
+ .tao-scroll-top[data-v-ce902f42] {
1249
1282
  overflow: hidden;
1250
1283
  position: fixed;
1251
1284
  display: flex;
@@ -1260,13 +1293,13 @@ to {
1260
1293
  box-shadow: var(--tao-shadow-md);
1261
1294
  user-select: none;
1262
1295
  }
1263
- .tao-scroll-top[data-v-a6b96e61]:hover {
1296
+ .tao-scroll-top[data-v-ce902f42]:hover {
1264
1297
  background-color: var(--tao-color-accent-hover);
1265
1298
  }
1266
- .tao-scroll-top--no-outline[data-v-a6b96e61] {
1299
+ .tao-scroll-top--no-outline[data-v-ce902f42] {
1267
1300
  outline: none;
1268
1301
  }
1269
- .tao-scroll-top__content[data-v-a6b96e61] {
1302
+ .tao-scroll-top__content[data-v-ce902f42] {
1270
1303
  position: relative;
1271
1304
  width: 100%;
1272
1305
  height: 100%;
@@ -1274,11 +1307,11 @@ to {
1274
1307
  align-items: center;
1275
1308
  justify-content: center;
1276
1309
  }
1277
- .tao-scroll-top__icon[data-v-a6b96e61] {
1310
+ .tao-scroll-top__icon[data-v-ce902f42] {
1278
1311
  position: relative;
1279
1312
  z-index: 1;
1280
1313
  }
1281
- .tao-scroll-top__ripple[data-v-a6b96e61] {
1314
+ .tao-scroll-top__ripple[data-v-ce902f42] {
1282
1315
  position: absolute;
1283
1316
  border-radius: var(--tao-radius-full);
1284
1317
  background-color: var(--tao-color-accent-subtle-hover);
@@ -1286,20 +1319,20 @@ to {
1286
1319
  opacity: 0;
1287
1320
  pointer-events: none;
1288
1321
  }
1289
- .tao-scroll-top__ripple--active[data-v-a6b96e61] {
1290
- animation: tao-scroll-top-ripple-a6b96e61 0.75s ease-out;
1322
+ .tao-scroll-top__ripple--active[data-v-ce902f42] {
1323
+ animation: tao-scroll-top-ripple-ce902f42 0.75s ease-out;
1291
1324
  }
1292
- .tao-scroll-top-fade-enter-active[data-v-a6b96e61],
1293
- .tao-scroll-top-fade-leave-active[data-v-a6b96e61] {
1325
+ .tao-scroll-top-fade-enter-active[data-v-ce902f42],
1326
+ .tao-scroll-top-fade-leave-active[data-v-ce902f42] {
1294
1327
  transition: opacity var(--tao-duration-base) var(--tao-ease-base),
1295
1328
  transform var(--tao-duration-base) var(--tao-ease-base);
1296
1329
  }
1297
- .tao-scroll-top-fade-enter-from[data-v-a6b96e61],
1298
- .tao-scroll-top-fade-leave-to[data-v-a6b96e61] {
1330
+ .tao-scroll-top-fade-enter-from[data-v-ce902f42],
1331
+ .tao-scroll-top-fade-leave-to[data-v-ce902f42] {
1299
1332
  opacity: 0;
1300
1333
  transform: translateY(40px);
1301
1334
  }
1302
- @keyframes tao-scroll-top-ripple-a6b96e61 {
1335
+ @keyframes tao-scroll-top-ripple-ce902f42 {
1303
1336
  from {
1304
1337
  opacity: 1;
1305
1338
  }
@@ -1309,49 +1342,62 @@ to {
1309
1342
  }
1310
1343
  }
1311
1344
 
1312
- .tao-progress[data-v-3780642d] {
1313
- display: flex;
1314
- justify-content: center;
1315
- align-items: center;
1345
+ .tao-progress[data-v-54c13718] {
1316
1346
  width: 100%;
1317
1347
  }
1318
- .tao-progress__container[data-v-3780642d] {
1319
- position: relative;
1348
+ .tao-progress__container[data-v-54c13718] {
1320
1349
  display: flex;
1321
1350
  align-items: center;
1322
1351
  gap: var(--tao-space-3);
1323
1352
  width: 100%;
1324
1353
  }
1325
- .tao-progress__track[data-v-3780642d] {
1354
+ .tao-progress__container--over[data-v-54c13718] {
1355
+ align-items: flex-end;
1356
+ }
1357
+ .tao-progress__main[data-v-54c13718] {
1326
1358
  flex: 1;
1359
+ min-width: 0;
1360
+ display: flex;
1361
+ flex-direction: column;
1362
+ gap: var(--tao-space-1);
1363
+ }
1364
+ .tao-progress__track[data-v-54c13718] {
1365
+ width: 100%;
1327
1366
  border: 1px solid var(--tao-color-border);
1328
1367
  border-radius: var(--tao-radius-sm);
1329
1368
  background-color: var(--tao-color-surface-sunken);
1330
1369
  overflow: hidden;
1331
1370
  position: relative;
1332
1371
  }
1333
- .tao-progress__fill[data-v-3780642d] {
1372
+ .tao-progress__fill[data-v-54c13718] {
1334
1373
  height: 100%;
1335
1374
  border-radius: var(--tao-radius-sm);
1336
1375
  transition: width var(--tao-duration-slow) var(--tao-ease-base);
1337
1376
  background: var(--tao-color-accent);
1338
1377
  }
1339
- .tao-progress__side[data-v-3780642d] {
1340
- min-width: 40px;
1341
- font-family: 'Monaco', 'Consolas', monospace;
1378
+ .tao-progress__side[data-v-54c13718] {
1379
+ display: inline-flex;
1380
+ flex-shrink: 0;
1381
+ align-items: baseline;
1382
+ gap: var(--tao-space-1);
1342
1383
  font-size: var(--tao-font-size-xs);
1343
- font-weight: bold;
1344
- text-align: center;
1345
- color: var(--tao-color-text);
1384
+ font-variant-numeric: tabular-nums;
1385
+ line-height: 1;
1386
+ white-space: nowrap;
1387
+ color: var(--tao-color-text-muted);
1346
1388
  }
1347
- .tao-progress__percentage[data-v-3780642d] {
1348
- position: absolute;
1349
- top: -12px;
1350
- left: 50%;
1351
- transform: translateX(-50%);
1389
+ .tao-progress__percentage[data-v-54c13718] {
1390
+ font-weight: 600;
1391
+ font-variant-numeric: tabular-nums;
1392
+ font-size: var(--tao-font-size-xs);
1393
+ line-height: 1;
1352
1394
  color: var(--tao-color-text-muted);
1353
1395
  }
1354
- .tao-progress__fill--animated[data-v-3780642d] {
1396
+ .tao-progress__main > .tao-progress__percentage[data-v-54c13718] {
1397
+ width: 100%;
1398
+ text-align: center;
1399
+ }
1400
+ .tao-progress__fill--animated[data-v-54c13718] {
1355
1401
  background: linear-gradient(
1356
1402
  90deg,
1357
1403
  var(--tao-color-accent) 0%,
@@ -1359,26 +1405,41 @@ to {
1359
1405
  var(--tao-color-accent) 100%
1360
1406
  );
1361
1407
  background-size: 200% 100%;
1362
- animation: tao-progress-shimmer-3780642d 2s infinite;
1408
+ animation: tao-progress-shimmer-54c13718 2s infinite;
1363
1409
  }
1364
- @keyframes tao-progress-shimmer-3780642d {
1410
+ @keyframes tao-progress-shimmer-54c13718 {
1365
1411
  0% { background-position: -200% 0;
1366
1412
  }
1367
1413
  100% { background-position: 200% 0;
1368
1414
  }
1369
1415
  }
1370
1416
 
1371
- .tao-slider[data-v-9f531a81] {
1417
+ .tao-slider[data-v-241d1042] {
1372
1418
  position: relative;
1373
1419
  width: 100%;
1374
1420
  height: 14px;
1375
1421
  cursor: pointer;
1376
1422
  user-select: none;
1377
1423
  }
1378
- .tao-slider--show-value[data-v-9f531a81] {
1424
+ .tao-slider[data-v-241d1042]:focus {
1425
+ outline: none;
1426
+ }
1427
+ .tao-slider[data-v-241d1042]:focus-visible {
1428
+ outline: 2px solid var(--tao-color-accent);
1429
+ outline-offset: 4px;
1430
+ border-radius: var(--tao-radius-sm);
1431
+ }
1432
+ .tao-slider--show-value[data-v-241d1042] {
1379
1433
  height: 20px;
1380
1434
  }
1381
- .tao-slider__track[data-v-9f531a81] {
1435
+ .tao-slider--disabled[data-v-241d1042] {
1436
+ cursor: not-allowed;
1437
+ opacity: 0.6;
1438
+ }
1439
+ .tao-slider--disabled .tao-slider__thumb[data-v-241d1042] {
1440
+ cursor: not-allowed;
1441
+ }
1442
+ .tao-slider__track[data-v-241d1042] {
1382
1443
  position: absolute;
1383
1444
  top: 0;
1384
1445
  left: 0;
@@ -1387,7 +1448,7 @@ to {
1387
1448
  border-radius: var(--tao-radius-sm);
1388
1449
  background-color: var(--tao-color-surface-sunken);
1389
1450
  }
1390
- .tao-slider__fill[data-v-9f531a81] {
1451
+ .tao-slider__fill[data-v-241d1042] {
1391
1452
  position: absolute;
1392
1453
  top: 0;
1393
1454
  left: 0;
@@ -1395,7 +1456,7 @@ to {
1395
1456
  background-color: var(--tao-color-accent);
1396
1457
  border-radius: var(--tao-radius-sm);
1397
1458
  }
1398
- .tao-slider__thumb[data-v-9f531a81] {
1459
+ .tao-slider__thumb[data-v-241d1042] {
1399
1460
  position: absolute;
1400
1461
  top: 50%;
1401
1462
  width: 20px;
@@ -1406,11 +1467,11 @@ to {
1406
1467
  transform: translate(-50%, -50%);
1407
1468
  cursor: grab;
1408
1469
  }
1409
- .tao-slider__thumb[data-v-9f531a81]:active {
1470
+ .tao-slider__thumb[data-v-241d1042]:active {
1410
1471
  cursor: grabbing;
1411
1472
  }
1412
- .tao-slider__value[data-v-9f531a81],
1413
- .tao-slider__shadow-input[data-v-9f531a81] {
1473
+ .tao-slider__value[data-v-241d1042],
1474
+ .tao-slider__shadow-input[data-v-241d1042] {
1414
1475
  position: absolute;
1415
1476
  inset: 0;
1416
1477
  display: flex;
@@ -1422,12 +1483,12 @@ to {
1422
1483
  font-weight: 900;
1423
1484
  letter-spacing: 0.05em;
1424
1485
  }
1425
- .tao-slider__value[data-v-9f531a81] {
1486
+ .tao-slider__value[data-v-241d1042] {
1426
1487
  color: var(--tao-color-text-strong);
1427
1488
  text-shadow: -1px -1px 0 var(--tao-color-bg), 1px -1px 0 var(--tao-color-bg),
1428
1489
  -1px 1px 0 var(--tao-color-bg), 1px 1px 0 var(--tao-color-bg);
1429
1490
  }
1430
- .tao-slider__shadow-input[data-v-9f531a81] {
1491
+ .tao-slider__shadow-input[data-v-241d1042] {
1431
1492
  text-align: center;
1432
1493
  border: none;
1433
1494
  background: transparent;
@@ -1436,12 +1497,12 @@ to {
1436
1497
  outline: none;
1437
1498
  }
1438
1499
 
1439
- .tao-file-drop[data-v-547ed4de] {
1500
+ .tao-file-drop[data-v-3543419a] {
1440
1501
  display: flex;
1441
1502
  gap: var(--tao-space-3);
1442
1503
  user-select: none;
1443
1504
  }
1444
- .tao-file-drop__clear[data-v-547ed4de] {
1505
+ .tao-file-drop__clear[data-v-3543419a] {
1445
1506
  display: flex;
1446
1507
  align-items: center;
1447
1508
  justify-content: center;
@@ -1455,10 +1516,10 @@ to {
1455
1516
  font-family: inherit;
1456
1517
  transition: var(--tao-transition-base);
1457
1518
  }
1458
- .tao-file-drop__clear[data-v-547ed4de]:hover {
1519
+ .tao-file-drop__clear[data-v-3543419a]:hover {
1459
1520
  background-color: color-mix(in srgb, var(--tao-color-danger) 22%, transparent);
1460
1521
  }
1461
- .tao-file-drop__zone[data-v-547ed4de] {
1522
+ .tao-file-drop__zone[data-v-3543419a] {
1462
1523
  flex-grow: 1;
1463
1524
  font-size: var(--tao-font-size-sm);
1464
1525
  font-family: var(--tao-font-family);
@@ -1470,21 +1531,22 @@ to {
1470
1531
  cursor: pointer;
1471
1532
  transition: var(--tao-transition-base);
1472
1533
  }
1473
- .tao-file-drop__zone[data-v-547ed4de]:hover {
1534
+ .tao-file-drop__zone[data-v-3543419a]:hover,
1535
+ .tao-file-drop__zone[data-v-3543419a]:focus-within {
1474
1536
  background-color: var(--tao-color-accent-subtle);
1475
1537
  border-color: var(--tao-color-accent);
1476
1538
  }
1477
- .tao-file-drop__zone--dragging[data-v-547ed4de] {
1539
+ .tao-file-drop__zone--dragging[data-v-3543419a] {
1478
1540
  border-color: var(--tao-color-text-strong);
1479
1541
  background-color: var(--tao-color-surface-sunken);
1480
1542
  }
1481
- .tao-file-drop__zone--small[data-v-547ed4de] {
1543
+ .tao-file-drop__zone--small[data-v-3543419a] {
1482
1544
  padding: var(--tao-space-5) var(--tao-space-4);
1483
1545
  }
1484
- .tao-file-drop__zone--medium[data-v-547ed4de] {
1546
+ .tao-file-drop__zone--medium[data-v-3543419a] {
1485
1547
  padding: var(--tao-space-8) var(--tao-space-5);
1486
1548
  }
1487
- .tao-file-drop__zone--large[data-v-547ed4de] {
1549
+ .tao-file-drop__zone--large[data-v-3543419a] {
1488
1550
  padding: var(--tao-space-10) var(--tao-space-6);
1489
1551
  }
1490
1552
 
@@ -1526,11 +1588,11 @@ to {
1526
1588
  background-color: var(--tao-color-surface-hover);
1527
1589
  }
1528
1590
 
1529
- .tao-dropdown-menu[data-v-3f30c1d7] {
1591
+ .tao-dropdown-menu[data-v-420a7e63] {
1530
1592
  position: relative;
1531
1593
  display: inline-block;
1532
1594
  }
1533
- .tao-dropdown-menu__button[data-v-3f30c1d7] {
1595
+ .tao-dropdown-menu__button[data-v-420a7e63] {
1534
1596
  padding: var(--tao-space-2);
1535
1597
  color: var(--tao-color-text);
1536
1598
  border: none;
@@ -1542,19 +1604,19 @@ to {
1542
1604
  line-height: 1;
1543
1605
  transition: var(--tao-transition-base);
1544
1606
  }
1545
- .tao-dropdown-menu__button[data-v-3f30c1d7]:hover {
1607
+ .tao-dropdown-menu__button[data-v-420a7e63]:hover {
1546
1608
  background: var(--tao-color-surface-hover);
1547
1609
  }
1548
- .tao-dropdown-menu__button[data-v-3f30c1d7]:focus-visible {
1610
+ .tao-dropdown-menu__button[data-v-420a7e63]:focus-visible {
1549
1611
  outline: 2px solid var(--tao-color-accent);
1550
1612
  outline-offset: 2px;
1551
1613
  }
1552
1614
 
1553
- .tao-pin-code[data-v-b8c7bf2c] {
1615
+ .tao-pin-code[data-v-c3182673] {
1554
1616
  display: inline-flex;
1555
1617
  user-select: none;
1556
1618
  }
1557
- .tao-pin-code__value[data-v-b8c7bf2c] {
1619
+ .tao-pin-code__value[data-v-c3182673] {
1558
1620
  width: 50px;
1559
1621
  height: 56px;
1560
1622
  margin: 2px;
@@ -1571,9 +1633,13 @@ to {
1571
1633
  cursor: text;
1572
1634
  outline: none;
1573
1635
  }
1574
- .tao-pin-code__value--active[data-v-b8c7bf2c] {
1636
+ .tao-pin-code__value--active[data-v-c3182673],
1637
+ .tao-pin-code__value[data-v-c3182673]:focus {
1575
1638
  border-color: var(--tao-color-accent);
1576
1639
  }
1640
+ .tao-pin-code__value--invalid[data-v-c3182673] {
1641
+ border-color: var(--tao-color-danger);
1642
+ }
1577
1643
 
1578
1644
  .tao-form-field[data-v-11324f0c] {
1579
1645
  display: flex;
@@ -1597,20 +1663,44 @@ to {
1597
1663
  color: var(--tao-color-danger);
1598
1664
  }
1599
1665
 
1600
- .tao-select__list {
1666
+ .tao-select__panel {
1601
1667
  z-index: 1050;
1602
1668
  position: fixed;
1603
- margin: 0;
1604
- padding: var(--tao-space-1);
1605
- max-height: 240px;
1606
- overflow: auto;
1607
- list-style: none;
1669
+ overflow: hidden;
1608
1670
  background: var(--tao-color-surface-raised);
1609
1671
  color: var(--tao-color-text);
1610
1672
  border: 1px solid var(--tao-color-border);
1611
1673
  border-radius: var(--tao-radius-control);
1612
1674
  box-shadow: var(--tao-shadow-overlay);
1613
1675
  }
1676
+ .tao-select__list {
1677
+ margin: 0;
1678
+ padding: var(--tao-space-1);
1679
+ max-height: 240px;
1680
+ overflow: auto;
1681
+ list-style: none;
1682
+ }
1683
+ .tao-select__list:focus {
1684
+ outline: none;
1685
+ }
1686
+ .tao-select__clear {
1687
+ display: block;
1688
+ width: 100%;
1689
+ margin: 0;
1690
+ padding: var(--tao-space-2) var(--tao-space-3);
1691
+ border: none;
1692
+ border-top: 1px solid var(--tao-color-border);
1693
+ background: none;
1694
+ color: var(--tao-color-text-muted);
1695
+ font: inherit;
1696
+ font-size: var(--tao-font-size-sm);
1697
+ text-align: left;
1698
+ cursor: pointer;
1699
+ }
1700
+ .tao-select__clear:hover {
1701
+ color: var(--tao-color-accent);
1702
+ background: var(--tao-color-surface-hover);
1703
+ }
1614
1704
  .tao-select__option {
1615
1705
  padding: var(--tao-space-2) var(--tao-space-3);
1616
1706
  border-radius: var(--tao-radius-sm);
@@ -1630,10 +1720,10 @@ to {
1630
1720
  cursor: not-allowed;
1631
1721
  }
1632
1722
 
1633
- .tao-select[data-v-fbdc9884] {
1723
+ .tao-select[data-v-42551757] {
1634
1724
  width: 100%;
1635
1725
  }
1636
- .tao-select__trigger[data-v-fbdc9884] {
1726
+ .tao-select__trigger[data-v-42551757] {
1637
1727
  display: flex;
1638
1728
  align-items: center;
1639
1729
  justify-content: space-between;
@@ -1651,31 +1741,31 @@ to {
1651
1741
  cursor: pointer;
1652
1742
  transition: var(--tao-transition-base);
1653
1743
  }
1654
- .tao-select__trigger--placeholder[data-v-fbdc9884] {
1744
+ .tao-select__trigger--placeholder[data-v-42551757] {
1655
1745
  color: var(--tao-color-input-placeholder);
1656
1746
  }
1657
- .tao-select__trigger[data-v-fbdc9884]:focus {
1747
+ .tao-select__trigger[data-v-42551757]:focus {
1658
1748
  outline: none;
1659
1749
  border-color: var(--tao-color-accent);
1660
1750
  box-shadow: 0 0 0 2px var(--tao-color-accent-subtle-hover);
1661
1751
  }
1662
- .tao-select--invalid .tao-select__trigger[data-v-fbdc9884] {
1752
+ .tao-select--invalid .tao-select__trigger[data-v-42551757] {
1663
1753
  border-color: var(--tao-color-danger);
1664
1754
  }
1665
- .tao-select--invalid .tao-select__trigger[data-v-fbdc9884]:focus {
1755
+ .tao-select--invalid .tao-select__trigger[data-v-42551757]:focus {
1666
1756
  box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
1667
1757
  }
1668
- .tao-select__trigger[data-v-fbdc9884]:disabled {
1758
+ .tao-select__trigger[data-v-42551757]:disabled {
1669
1759
  opacity: 0.6;
1670
1760
  cursor: not-allowed;
1671
1761
  }
1672
- .tao-select__value[data-v-fbdc9884] {
1762
+ .tao-select__value[data-v-42551757] {
1673
1763
  min-width: 0;
1674
1764
  overflow: hidden;
1675
1765
  text-overflow: ellipsis;
1676
1766
  white-space: nowrap;
1677
1767
  }
1678
- .tao-select__chevron[data-v-fbdc9884] {
1768
+ .tao-select__chevron[data-v-42551757] {
1679
1769
  flex-shrink: 0;
1680
1770
  width: 0;
1681
1771
  height: 0;
@@ -1685,7 +1775,7 @@ to {
1685
1775
  opacity: 0.6;
1686
1776
  transition: transform var(--tao-duration-fast) var(--tao-ease-base);
1687
1777
  }
1688
- .tao-select--open .tao-select__chevron[data-v-fbdc9884] {
1778
+ .tao-select--open .tao-select__chevron[data-v-42551757] {
1689
1779
  transform: rotate(180deg);
1690
1780
  }
1691
1781
 
@@ -1783,7 +1873,7 @@ to {
1783
1873
  }
1784
1874
  .tao-date__day--selected {
1785
1875
  background: var(--tao-color-accent);
1786
- color: var(--tao-color-text-on-accent);
1876
+ color: var(--tao-color-on-accent);
1787
1877
  opacity: 1;
1788
1878
  }
1789
1879
  .tao-date__day--cursor:not(.tao-date__day--selected) {
@@ -1828,10 +1918,10 @@ to {
1828
1918
  outline-offset: 2px;
1829
1919
  }
1830
1920
 
1831
- .tao-date[data-v-15d8ee2a] {
1921
+ .tao-date[data-v-4227e5f8] {
1832
1922
  width: 100%;
1833
1923
  }
1834
- .tao-date__trigger[data-v-15d8ee2a] {
1924
+ .tao-date__trigger[data-v-4227e5f8] {
1835
1925
  display: flex;
1836
1926
  align-items: center;
1837
1927
  justify-content: space-between;
@@ -1849,31 +1939,31 @@ to {
1849
1939
  cursor: pointer;
1850
1940
  transition: var(--tao-transition-base);
1851
1941
  }
1852
- .tao-date__trigger--placeholder[data-v-15d8ee2a] {
1942
+ .tao-date__trigger--placeholder[data-v-4227e5f8] {
1853
1943
  color: var(--tao-color-input-placeholder);
1854
1944
  }
1855
- .tao-date__trigger[data-v-15d8ee2a]:focus {
1945
+ .tao-date__trigger[data-v-4227e5f8]:focus {
1856
1946
  outline: none;
1857
1947
  border-color: var(--tao-color-accent);
1858
1948
  box-shadow: 0 0 0 2px var(--tao-color-accent-subtle-hover);
1859
1949
  }
1860
- .tao-date--invalid .tao-date__trigger[data-v-15d8ee2a] {
1950
+ .tao-date--invalid .tao-date__trigger[data-v-4227e5f8] {
1861
1951
  border-color: var(--tao-color-danger);
1862
1952
  }
1863
- .tao-date--invalid .tao-date__trigger[data-v-15d8ee2a]:focus {
1953
+ .tao-date--invalid .tao-date__trigger[data-v-4227e5f8]:focus {
1864
1954
  box-shadow: 0 0 0 2px var(--tao-color-danger-subtle);
1865
1955
  }
1866
- .tao-date__trigger[data-v-15d8ee2a]:disabled {
1956
+ .tao-date__trigger[data-v-4227e5f8]:disabled {
1867
1957
  opacity: 0.6;
1868
1958
  cursor: not-allowed;
1869
1959
  }
1870
- .tao-date__value[data-v-15d8ee2a] {
1960
+ .tao-date__value[data-v-4227e5f8] {
1871
1961
  min-width: 0;
1872
1962
  overflow: hidden;
1873
1963
  text-overflow: ellipsis;
1874
1964
  white-space: nowrap;
1875
1965
  }
1876
- .tao-date__icon[data-v-15d8ee2a] {
1966
+ .tao-date__icon[data-v-4227e5f8] {
1877
1967
  flex-shrink: 0;
1878
1968
  opacity: 0.7;
1879
1969
  }
@@ -2023,7 +2113,7 @@ to {
2023
2113
  color: var(--tao-color-text);
2024
2114
  }
2025
2115
 
2026
- .tao-alert[data-v-21abd6e5] {
2116
+ .tao-alert[data-v-4c89fa1f] {
2027
2117
  --tao-alert-tone: var(--tao-color-info);
2028
2118
 
2029
2119
  display: flex;
@@ -2036,40 +2126,41 @@ to {
2036
2126
  border: 1px solid color-mix(in srgb, var(--tao-alert-tone) 35%, var(--tao-color-border));
2037
2127
  border-radius: var(--tao-radius-panel);
2038
2128
  }
2039
- .tao-alert--success[data-v-21abd6e5] {
2129
+ .tao-alert--success[data-v-4c89fa1f] {
2040
2130
  --tao-alert-tone: var(--tao-color-success);
2041
2131
  }
2042
- .tao-alert--error[data-v-21abd6e5] {
2132
+ .tao-alert--error[data-v-4c89fa1f],
2133
+ .tao-alert--danger[data-v-4c89fa1f] {
2043
2134
  --tao-alert-tone: var(--tao-color-danger);
2044
2135
  }
2045
- .tao-alert--warning[data-v-21abd6e5] {
2136
+ .tao-alert--warning[data-v-4c89fa1f] {
2046
2137
  --tao-alert-tone: var(--tao-color-warning);
2047
2138
  }
2048
- .tao-alert--info[data-v-21abd6e5] {
2139
+ .tao-alert--info[data-v-4c89fa1f] {
2049
2140
  --tao-alert-tone: var(--tao-color-info);
2050
2141
  }
2051
- .tao-alert--neutral[data-v-21abd6e5] {
2142
+ .tao-alert--neutral[data-v-4c89fa1f] {
2052
2143
  --tao-alert-tone: var(--tao-color-text-muted);
2053
2144
  }
2054
- .tao-alert__body[data-v-21abd6e5] {
2145
+ .tao-alert__body[data-v-4c89fa1f] {
2055
2146
  display: flex;
2056
2147
  flex-direction: column;
2057
2148
  gap: var(--tao-space-1);
2058
2149
  min-width: 0;
2059
2150
  flex: 1;
2060
2151
  }
2061
- .tao-alert__title[data-v-21abd6e5] {
2152
+ .tao-alert__title[data-v-4c89fa1f] {
2062
2153
  font-size: var(--tao-font-size-md);
2063
2154
  font-weight: 600;
2064
2155
  color: var(--tao-color-text-strong);
2065
2156
  }
2066
- .tao-alert__message[data-v-21abd6e5] {
2157
+ .tao-alert__message[data-v-4c89fa1f] {
2067
2158
  margin: 0;
2068
2159
  font-size: var(--tao-font-size-sm);
2069
2160
  line-height: 1.45;
2070
2161
  color: var(--tao-color-text);
2071
2162
  }
2072
- .tao-alert__close[data-v-21abd6e5] {
2163
+ .tao-alert__close[data-v-4c89fa1f] {
2073
2164
  flex-shrink: 0;
2074
2165
  margin: calc(-1 * var(--tao-space-1)) calc(-1 * var(--tao-space-2)) 0 0;
2075
2166
  padding: 0;
@@ -2080,7 +2171,7 @@ to {
2080
2171
  line-height: 1;
2081
2172
  cursor: pointer;
2082
2173
  }
2083
- .tao-alert__close[data-v-21abd6e5]:hover {
2174
+ .tao-alert__close[data-v-4c89fa1f]:hover {
2084
2175
  color: var(--tao-color-text-strong);
2085
2176
  }
2086
2177
 
@@ -2457,46 +2548,122 @@ to {
2457
2548
  transform: translateX(-100%);
2458
2549
  }
2459
2550
 
2460
- .tao-avatar[data-v-b03b36f2] {
2551
+ .tao-avatar[data-v-cb4ec893] {
2552
+ position: relative;
2461
2553
  display: inline-flex;
2554
+ flex-shrink: 0;
2555
+ user-select: none;
2556
+ }
2557
+ .tao-avatar__face[data-v-cb4ec893] {
2558
+ display: flex;
2462
2559
  align-items: center;
2463
2560
  justify-content: center;
2464
2561
  overflow: hidden;
2465
- flex-shrink: 0;
2562
+ width: 100%;
2563
+ height: 100%;
2466
2564
  background: var(--tao-color-accent-subtle);
2467
2565
  color: var(--tao-color-accent);
2468
2566
  border-radius: var(--tao-radius-full);
2469
2567
  font-weight: 600;
2470
2568
  line-height: 1;
2471
- user-select: none;
2472
2569
  }
2473
- .tao-avatar--s[data-v-b03b36f2] {
2570
+ .tao-avatar--s[data-v-cb4ec893] {
2474
2571
  width: 24px;
2475
2572
  height: 24px;
2476
2573
  font-size: 10px;
2477
2574
  }
2478
- .tao-avatar--m[data-v-b03b36f2] {
2575
+ .tao-avatar--m[data-v-cb4ec893] {
2479
2576
  width: 32px;
2480
2577
  height: 32px;
2481
2578
  font-size: var(--tao-font-size-xs);
2482
2579
  }
2483
- .tao-avatar--l[data-v-b03b36f2] {
2580
+ .tao-avatar--l[data-v-cb4ec893] {
2484
2581
  width: 48px;
2485
2582
  height: 48px;
2486
2583
  font-size: var(--tao-font-size-md);
2487
2584
  }
2488
- .tao-avatar__img[data-v-b03b36f2] {
2585
+ .tao-avatar__img[data-v-cb4ec893] {
2489
2586
  width: 100%;
2490
2587
  height: 100%;
2491
2588
  object-fit: cover;
2492
2589
  }
2493
- .tao-avatar__fallback[data-v-b03b36f2] {
2590
+ .tao-avatar__fallback[data-v-cb4ec893] {
2494
2591
  display: flex;
2495
2592
  align-items: center;
2496
2593
  justify-content: center;
2497
2594
  width: 100%;
2498
2595
  height: 100%;
2499
2596
  }
2597
+ .tao-avatar__dot[data-v-cb4ec893] {
2598
+ position: absolute;
2599
+ right: -1px;
2600
+ bottom: -1px;
2601
+ box-sizing: border-box;
2602
+ border: 2px solid var(--tao-color-bg);
2603
+ border-radius: var(--tao-radius-full);
2604
+ background: var(--tao-color-success);
2605
+ }
2606
+ .tao-avatar--s .tao-avatar__dot[data-v-cb4ec893] {
2607
+ width: 8px;
2608
+ height: 8px;
2609
+ border-width: 1px;
2610
+ }
2611
+ .tao-avatar--m .tao-avatar__dot[data-v-cb4ec893] {
2612
+ width: 10px;
2613
+ height: 10px;
2614
+ }
2615
+ .tao-avatar--l .tao-avatar__dot[data-v-cb4ec893] {
2616
+ width: 12px;
2617
+ height: 12px;
2618
+ }
2619
+ .tao-avatar__dot--success[data-v-cb4ec893] {
2620
+ background: var(--tao-color-success);
2621
+ }
2622
+ .tao-avatar__dot--danger[data-v-cb4ec893] {
2623
+ background: var(--tao-color-danger);
2624
+ }
2625
+ .tao-avatar__dot--warning[data-v-cb4ec893] {
2626
+ background: var(--tao-color-warning);
2627
+ }
2628
+ .tao-avatar__dot--info[data-v-cb4ec893] {
2629
+ background: var(--tao-color-info);
2630
+ }
2631
+ .tao-avatar__dot--neutral[data-v-cb4ec893] {
2632
+ background: var(--tao-color-text-muted);
2633
+ }
2634
+ .tao-avatar__badge[data-v-cb4ec893] {
2635
+ position: absolute;
2636
+ top: -6px;
2637
+ right: -6px;
2638
+ z-index: 1;
2639
+ box-sizing: border-box;
2640
+ min-width: 16px;
2641
+ height: 16px;
2642
+ padding: 0 4px;
2643
+ display: inline-flex;
2644
+ align-items: center;
2645
+ justify-content: center;
2646
+ border: 2px solid var(--tao-color-bg);
2647
+ border-radius: var(--tao-radius-full);
2648
+ background: var(--tao-color-danger);
2649
+ color: var(--tao-color-text-strong);
2650
+ font-size: 10px;
2651
+ font-weight: 700;
2652
+ line-height: 1;
2653
+ }
2654
+ .tao-avatar--s .tao-avatar__badge[data-v-cb4ec893] {
2655
+ top: -5px;
2656
+ right: -5px;
2657
+ min-width: 14px;
2658
+ height: 14px;
2659
+ padding: 0 3px;
2660
+ font-size: 9px;
2661
+ }
2662
+ .tao-avatar--l .tao-avatar__badge[data-v-cb4ec893] {
2663
+ min-width: 18px;
2664
+ height: 18px;
2665
+ font-size: 11px;
2666
+ }
2500
2667
 
2501
2668
  .tao-breadcrumb__list[data-v-48cf9bb5] {
2502
2669
  display: flex;
@@ -2715,7 +2882,7 @@ to {
2715
2882
  }
2716
2883
  }
2717
2884
 
2718
- .tao-stages[data-v-fc11408a] {
2885
+ .tao-stages[data-v-fefa5c65] {
2719
2886
  display: flex;
2720
2887
  flex-direction: column;
2721
2888
  gap: var(--tao-space-2);
@@ -2725,55 +2892,55 @@ to {
2725
2892
  font-size: var(--tao-font-size-xs);
2726
2893
  color: var(--tao-color-text);
2727
2894
  }
2728
- .tao-stages--horizontal[data-v-fc11408a] {
2895
+ .tao-stages--horizontal[data-v-fefa5c65] {
2729
2896
  flex-direction: row;
2730
2897
  flex-wrap: wrap;
2731
2898
  column-gap: var(--tao-space-4);
2732
2899
  }
2733
- .tao-stages__item[data-v-fc11408a] {
2900
+ .tao-stages__item[data-v-fefa5c65] {
2734
2901
  display: flex;
2735
2902
  align-items: center;
2736
2903
  gap: var(--tao-space-2);
2737
2904
  min-width: 0;
2738
2905
  }
2739
- .tao-stages__ico[data-v-fc11408a] {
2906
+ .tao-stages__ico[data-v-fefa5c65] {
2740
2907
  display: inline-flex;
2741
2908
  flex: 0 0 auto;
2742
2909
  color: inherit;
2743
2910
  }
2744
- .tao-stages__mark[data-v-fc11408a] {
2911
+ .tao-stages__mark[data-v-fefa5c65] {
2745
2912
  display: block;
2746
2913
  }
2747
- .tao-stages__label[data-v-fc11408a] {
2914
+ .tao-stages__label[data-v-fefa5c65] {
2748
2915
  min-width: 0;
2749
2916
  }
2750
- .tao-stages__item--wait[data-v-fc11408a] {
2917
+ .tao-stages__item--wait[data-v-fefa5c65] {
2751
2918
  color: var(--tao-color-text-muted);
2752
2919
  }
2753
- .tao-stages__item--work .tao-stages__ico[data-v-fc11408a] {
2920
+ .tao-stages__item--work .tao-stages__ico[data-v-fefa5c65] {
2754
2921
  color: var(--tao-color-accent);
2755
2922
  }
2756
- .tao-stages__item--ok .tao-stages__ico[data-v-fc11408a] {
2923
+ .tao-stages__item--ok .tao-stages__ico[data-v-fefa5c65] {
2757
2924
  color: var(--tao-color-success);
2758
2925
  }
2759
- .tao-stages__item--bad .tao-stages__ico[data-v-fc11408a] {
2926
+ .tao-stages__item--bad .tao-stages__ico[data-v-fefa5c65] {
2760
2927
  color: var(--tao-color-danger);
2761
2928
  }
2762
- .tao-stages__item--work .tao-stages__mark[data-v-fc11408a] {
2763
- animation: tao-stages-spin-fc11408a 1.1s linear infinite;
2929
+ .tao-stages__item--work .tao-stages__mark[data-v-fefa5c65] {
2930
+ animation: tao-stages-spin-fefa5c65 1.1s linear infinite;
2764
2931
  }
2765
- @keyframes tao-stages-spin-fc11408a {
2932
+ @keyframes tao-stages-spin-fefa5c65 {
2766
2933
  to {
2767
2934
  transform: rotate(360deg);
2768
2935
  }
2769
2936
  }
2770
2937
  @media (prefers-reduced-motion: reduce) {
2771
- .tao-stages__item--work .tao-stages__mark[data-v-fc11408a] {
2938
+ .tao-stages__item--work .tao-stages__mark[data-v-fefa5c65] {
2772
2939
  animation: none;
2773
2940
  }
2774
2941
  }
2775
2942
 
2776
- .tao-toast[data-v-04783988] {
2943
+ .tao-toast[data-v-c8a329f5] {
2777
2944
  --tao-toast-tone: var(--tao-color-accent);
2778
2945
 
2779
2946
  position: relative;
@@ -2790,31 +2957,32 @@ to {
2790
2957
  box-shadow: var(--tao-shadow-overlay);
2791
2958
  pointer-events: auto;
2792
2959
  }
2793
- .tao-toast--success[data-v-04783988] {
2960
+ .tao-toast--success[data-v-c8a329f5] {
2794
2961
  --tao-toast-tone: var(--tao-color-success);
2795
2962
  }
2796
- .tao-toast--error[data-v-04783988] {
2963
+ .tao-toast--error[data-v-c8a329f5],
2964
+ .tao-toast--danger[data-v-c8a329f5] {
2797
2965
  --tao-toast-tone: var(--tao-color-danger);
2798
2966
  }
2799
- .tao-toast--warning[data-v-04783988] {
2967
+ .tao-toast--warning[data-v-c8a329f5] {
2800
2968
  --tao-toast-tone: var(--tao-color-warning);
2801
2969
  }
2802
- .tao-toast--info[data-v-04783988] {
2970
+ .tao-toast--info[data-v-c8a329f5] {
2803
2971
  --tao-toast-tone: var(--tao-color-info);
2804
2972
  }
2805
- .tao-toast__accent[data-v-04783988] {
2973
+ .tao-toast__accent[data-v-c8a329f5] {
2806
2974
  position: absolute;
2807
2975
  inset: 0 auto 0 0;
2808
2976
  width: 3px;
2809
2977
  background: var(--tao-toast-tone);
2810
2978
  }
2811
- .tao-toast__icon[data-v-04783988] {
2979
+ .tao-toast__icon[data-v-c8a329f5] {
2812
2980
  display: inline-flex;
2813
2981
  flex-shrink: 0;
2814
2982
  margin-top: 1px;
2815
2983
  color: var(--tao-toast-tone);
2816
2984
  }
2817
- .tao-toast__body[data-v-04783988] {
2985
+ .tao-toast__body[data-v-c8a329f5] {
2818
2986
  display: flex;
2819
2987
  flex-direction: column;
2820
2988
  gap: var(--tao-space-1);
@@ -2822,25 +2990,25 @@ to {
2822
2990
  flex: 1;
2823
2991
  padding-right: var(--tao-space-4);
2824
2992
  }
2825
- .tao-toast__title[data-v-04783988] {
2993
+ .tao-toast__title[data-v-c8a329f5] {
2826
2994
  font-size: var(--tao-font-size-md);
2827
2995
  font-weight: 600;
2828
2996
  color: var(--tao-color-text-strong);
2829
2997
  line-height: 1.3;
2830
2998
  }
2831
- .tao-toast__message[data-v-04783988] {
2999
+ .tao-toast__message[data-v-c8a329f5] {
2832
3000
  margin: 0;
2833
3001
  font-size: var(--tao-font-size-sm);
2834
3002
  line-height: 1.45;
2835
3003
  color: var(--tao-color-text);
2836
3004
  }
2837
- .tao-toast__actions[data-v-04783988] {
3005
+ .tao-toast__actions[data-v-c8a329f5] {
2838
3006
  display: flex;
2839
3007
  flex-wrap: wrap;
2840
3008
  gap: var(--tao-space-2);
2841
3009
  margin-top: var(--tao-space-1);
2842
3010
  }
2843
- .tao-toast__close[data-v-04783988] {
3011
+ .tao-toast__close[data-v-c8a329f5] {
2844
3012
  position: absolute;
2845
3013
  top: var(--tao-space-1);
2846
3014
  right: var(--tao-space-2);
@@ -2852,10 +3020,10 @@ to {
2852
3020
  line-height: 1;
2853
3021
  cursor: pointer;
2854
3022
  }
2855
- .tao-toast__close[data-v-04783988]:hover {
3023
+ .tao-toast__close[data-v-c8a329f5]:hover {
2856
3024
  color: var(--tao-color-text-strong);
2857
3025
  }
2858
- .tao-toast__progress[data-v-04783988] {
3026
+ .tao-toast__progress[data-v-c8a329f5] {
2859
3027
  position: absolute;
2860
3028
  left: 0;
2861
3029
  right: 0;
@@ -2863,14 +3031,14 @@ to {
2863
3031
  height: 2px;
2864
3032
  transform-origin: left center;
2865
3033
  background: var(--tao-toast-tone);
2866
- animation-name: tao-toast-progress-04783988;
3034
+ animation-name: tao-toast-progress-c8a329f5;
2867
3035
  animation-timing-function: linear;
2868
3036
  animation-fill-mode: forwards;
2869
3037
  }
2870
- .tao-toast--paused .tao-toast__progress[data-v-04783988] {
3038
+ .tao-toast--paused .tao-toast__progress[data-v-c8a329f5] {
2871
3039
  animation-play-state: paused;
2872
3040
  }
2873
- @keyframes tao-toast-progress-04783988 {
3041
+ @keyframes tao-toast-progress-c8a329f5 {
2874
3042
  from {
2875
3043
  transform: scaleX(1);
2876
3044
  }
@@ -3210,6 +3378,9 @@ to {
3210
3378
  --tao-color-accent-subtle: color-mix(in srgb, var(--tao-color-accent) 8%, transparent);
3211
3379
  --tao-color-accent-subtle-hover: color-mix(in srgb, var(--tao-color-accent) 14%, transparent);
3212
3380
  --tao-color-on-accent: var(--tao-gray-950); /* текст поверх accent-фона */
3381
+ --tao-color-text-on-accent: var(--tao-color-on-accent);
3382
+ --tao-color-selection: var(--tao-color-accent);
3383
+ --tao-color-selection-text: var(--tao-color-on-accent);
3213
3384
 
3214
3385
  /* ---------- Surfaces ---------- */
3215
3386
  --tao-color-bg: var(--tao-gray-900);
@@ -3226,7 +3397,6 @@ to {
3226
3397
  --tao-color-text: var(--tao-gray-200);
3227
3398
  --tao-color-text-strong: var(--tao-gray-0);
3228
3399
  --tao-color-text-muted: var(--tao-gray-400);
3229
- --tao-color-text-on-accent: var(--tao-gray-950);
3230
3400
  --tao-color-text-disabled: var(--tao-gray-300);
3231
3401
 
3232
3402
  /* ---------- Links ---------- */
@@ -3287,6 +3457,8 @@ to {
3287
3457
  --tao-color-accent-subtle: color-mix(in srgb, var(--tao-color-accent) 10%, transparent);
3288
3458
  --tao-color-accent-subtle-hover: color-mix(in srgb, var(--tao-color-accent) 16%, transparent);
3289
3459
  --tao-color-on-accent: var(--tao-gray-0);
3460
+ --tao-color-selection: var(--tao-color-accent);
3461
+ --tao-color-selection-text: var(--tao-color-on-accent);
3290
3462
 
3291
3463
  --tao-color-bg: var(--tao-gray-0);
3292
3464
  --tao-color-surface: var(--tao-gray-0);
@@ -3300,7 +3472,7 @@ to {
3300
3472
  --tao-color-text: var(--tao-gray-700);
3301
3473
  --tao-color-text-strong: var(--tao-gray-950);
3302
3474
  --tao-color-text-muted: var(--tao-gray-400);
3303
- --tao-color-text-on-accent: var(--tao-gray-0);
3475
+ --tao-color-text-on-accent: var(--tao-color-on-accent);
3304
3476
  --tao-color-text-disabled: var(--tao-gray-300);
3305
3477
 
3306
3478
  --tao-color-link: var(--tao-orange-600);
@@ -3350,6 +3522,16 @@ body {
3350
3522
  color: var(--tao-color-text);
3351
3523
  }
3352
3524
 
3525
+ ::selection {
3526
+ color: var(--tao-color-selection-text);
3527
+ background-color: var(--tao-color-selection);
3528
+ }
3529
+
3530
+ ::-moz-selection {
3531
+ color: var(--tao-color-selection-text);
3532
+ background-color: var(--tao-color-selection);
3533
+ }
3534
+
3353
3535
  /* Scrollbar */
3354
3536
  ::-webkit-scrollbar {
3355
3537
  max-width: 5px;