zenkit-css 1.2.0 → 1.2.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/zenkit.css CHANGED
@@ -26574,6 +26574,1585 @@ li .kbd {
26574
26574
  border-color: var(--gray-700);
26575
26575
  }
26576
26576
 
26577
+ .menubar {
26578
+ display: flex;
26579
+ align-items: center;
26580
+ gap: 0.25rem;
26581
+ padding: 0.25rem;
26582
+ background-color: var(--bg);
26583
+ border: 1px solid var(--border);
26584
+ border-radius: 0.375rem;
26585
+ }
26586
+
26587
+ .menubar-item {
26588
+ position: relative;
26589
+ }
26590
+
26591
+ .menubar-trigger {
26592
+ display: inline-flex;
26593
+ align-items: center;
26594
+ gap: 0.25rem;
26595
+ padding: 0.375rem 0.75rem;
26596
+ font-size: var(--text-sm);
26597
+ font-weight: 500;
26598
+ color: var(--text);
26599
+ background-color: transparent;
26600
+ border: none;
26601
+ border-radius: 0.25rem;
26602
+ cursor: pointer;
26603
+ transition: all 150ms ease-in-out;
26604
+ white-space: nowrap;
26605
+ }
26606
+ .menubar-trigger:hover {
26607
+ background-color: var(--gray-100);
26608
+ }
26609
+ .menubar-trigger:focus {
26610
+ outline: none;
26611
+ background-color: var(--gray-100);
26612
+ }
26613
+ .menubar-trigger[aria-expanded=true] {
26614
+ background-color: var(--gray-100);
26615
+ }
26616
+
26617
+ .menubar-trigger-icon {
26618
+ width: 1rem;
26619
+ height: 1rem;
26620
+ color: var(--text-muted);
26621
+ }
26622
+
26623
+ .menubar-content {
26624
+ position: absolute;
26625
+ top: calc(100% + 4px);
26626
+ left: 0;
26627
+ min-width: 200px;
26628
+ padding: 0.375rem;
26629
+ background-color: var(--bg);
26630
+ border: 1px solid var(--border);
26631
+ border-radius: 0.375rem;
26632
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
26633
+ z-index: 1000;
26634
+ opacity: 0;
26635
+ visibility: hidden;
26636
+ transform: translateY(-4px);
26637
+ transition: opacity 150ms ease-in-out, visibility 150ms ease-in-out, transform 150ms ease-in-out;
26638
+ }
26639
+
26640
+ .menubar-item:hover .menubar-content,
26641
+ .menubar-item:focus-within .menubar-content,
26642
+ .menubar-content.open {
26643
+ opacity: 1;
26644
+ visibility: visible;
26645
+ transform: translateY(0);
26646
+ }
26647
+
26648
+ .menubar-menu-item {
26649
+ display: flex;
26650
+ align-items: center;
26651
+ gap: 0.5rem;
26652
+ padding: 0.5rem 0.75rem;
26653
+ font-size: var(--text-sm);
26654
+ color: var(--text);
26655
+ background: transparent;
26656
+ border: none;
26657
+ border-radius: 0.25rem;
26658
+ cursor: pointer;
26659
+ transition: background-color 150ms ease-in-out;
26660
+ width: 100%;
26661
+ text-align: left;
26662
+ }
26663
+ .menubar-menu-item:hover {
26664
+ background-color: var(--gray-100);
26665
+ }
26666
+ .menubar-menu-item:focus {
26667
+ outline: none;
26668
+ background-color: var(--gray-100);
26669
+ }
26670
+ .menubar-menu-item:disabled {
26671
+ opacity: 0.5;
26672
+ cursor: not-allowed;
26673
+ }
26674
+
26675
+ .menubar-menu-icon {
26676
+ width: 1rem;
26677
+ height: 1rem;
26678
+ color: var(--text-muted);
26679
+ flex-shrink: 0;
26680
+ }
26681
+
26682
+ .menubar-menu-label {
26683
+ flex: 1;
26684
+ }
26685
+
26686
+ .menubar-menu-shortcut {
26687
+ font-size: var(--text-xs);
26688
+ color: var(--text-muted);
26689
+ margin-left: auto;
26690
+ }
26691
+
26692
+ .menubar-submenu {
26693
+ position: relative;
26694
+ }
26695
+
26696
+ .menubar-submenu-trigger {
26697
+ display: flex;
26698
+ align-items: center;
26699
+ width: 100%;
26700
+ }
26701
+ .menubar-submenu-trigger::after {
26702
+ content: "";
26703
+ margin-left: auto;
26704
+ border: solid var(--text-muted);
26705
+ border-width: 0 1.5px 1.5px 0;
26706
+ padding: 2.5px;
26707
+ transform: rotate(-45deg);
26708
+ }
26709
+
26710
+ .menubar-submenu-content {
26711
+ position: absolute;
26712
+ left: calc(100% + 4px);
26713
+ top: -0.375rem;
26714
+ min-width: 180px;
26715
+ padding: 0.375rem;
26716
+ background-color: var(--bg);
26717
+ border: 1px solid var(--border);
26718
+ border-radius: 0.375rem;
26719
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
26720
+ opacity: 0;
26721
+ visibility: hidden;
26722
+ transform: translateX(-4px);
26723
+ transition: opacity 150ms ease-in-out, visibility 150ms ease-in-out, transform 150ms ease-in-out;
26724
+ }
26725
+
26726
+ .menubar-submenu:hover .menubar-submenu-content,
26727
+ .menubar-submenu:focus-within .menubar-submenu-content {
26728
+ opacity: 1;
26729
+ visibility: visible;
26730
+ transform: translateX(0);
26731
+ }
26732
+
26733
+ .menubar-separator {
26734
+ height: 1px;
26735
+ background-color: var(--border);
26736
+ margin: 0.375rem 0;
26737
+ }
26738
+
26739
+ .menubar-group-label {
26740
+ padding: 0.375rem 0.75rem;
26741
+ font-size: var(--text-xs);
26742
+ font-weight: 500;
26743
+ color: var(--text-muted);
26744
+ text-transform: uppercase;
26745
+ letter-spacing: 0.05em;
26746
+ }
26747
+
26748
+ .menubar-checkbox {
26749
+ position: relative;
26750
+ padding-left: 1.75rem;
26751
+ }
26752
+ .menubar-checkbox::before {
26753
+ content: "";
26754
+ position: absolute;
26755
+ left: 0.5rem;
26756
+ top: 50%;
26757
+ transform: translateY(-50%);
26758
+ width: 1rem;
26759
+ height: 1rem;
26760
+ border: 1.5px solid var(--border);
26761
+ border-radius: 3px;
26762
+ transition: all 150ms ease-in-out;
26763
+ }
26764
+ .menubar-checkbox[data-checked=true]::before {
26765
+ background-color: var(--primary);
26766
+ border-color: var(--primary);
26767
+ }
26768
+ .menubar-checkbox[data-checked=true]::after {
26769
+ content: "";
26770
+ position: absolute;
26771
+ left: 0.75rem;
26772
+ top: 50%;
26773
+ transform: translateY(-60%) rotate(45deg);
26774
+ width: 4px;
26775
+ height: 8px;
26776
+ border: solid var(--white);
26777
+ border-width: 0 2px 2px 0;
26778
+ }
26779
+
26780
+ .menubar-radio {
26781
+ position: relative;
26782
+ padding-left: 1.75rem;
26783
+ }
26784
+ .menubar-radio::before {
26785
+ content: "";
26786
+ position: absolute;
26787
+ left: 0.5rem;
26788
+ top: 50%;
26789
+ transform: translateY(-50%);
26790
+ width: 1rem;
26791
+ height: 1rem;
26792
+ border: 1.5px solid var(--border);
26793
+ border-radius: 50%;
26794
+ transition: all 150ms ease-in-out;
26795
+ }
26796
+ .menubar-radio[data-checked=true]::before {
26797
+ border-color: var(--primary);
26798
+ }
26799
+ .menubar-radio[data-checked=true]::after {
26800
+ content: "";
26801
+ position: absolute;
26802
+ left: 0.75rem;
26803
+ top: 50%;
26804
+ transform: translateY(-50%);
26805
+ width: 6px;
26806
+ height: 6px;
26807
+ background-color: var(--primary);
26808
+ border-radius: 50%;
26809
+ }
26810
+
26811
+ .menubar-sm {
26812
+ padding: 0.125rem;
26813
+ }
26814
+ .menubar-sm .menubar-trigger {
26815
+ padding: 0.25rem 0.5rem;
26816
+ font-size: var(--text-xs);
26817
+ }
26818
+ .menubar-sm .menubar-menu-item {
26819
+ padding: 0.375rem 0.5rem;
26820
+ font-size: var(--text-xs);
26821
+ }
26822
+
26823
+ .menubar-lg {
26824
+ padding: 0.375rem;
26825
+ }
26826
+ .menubar-lg .menubar-trigger {
26827
+ padding: 0.5rem 1rem;
26828
+ font-size: var(--text-base);
26829
+ }
26830
+ .menubar-lg .menubar-menu-item {
26831
+ padding: 0.625rem 1rem;
26832
+ font-size: var(--text-base);
26833
+ }
26834
+
26835
+ .menubar-borderless {
26836
+ border: none;
26837
+ background: transparent;
26838
+ padding: 0;
26839
+ }
26840
+
26841
+ .menubar-filled {
26842
+ background-color: var(--gray-50);
26843
+ }
26844
+
26845
+ [data-theme=dark] .menubar {
26846
+ background-color: var(--gray-900);
26847
+ border-color: var(--gray-700);
26848
+ }
26849
+ [data-theme=dark] .menubar-trigger:hover,
26850
+ [data-theme=dark] .menubar-trigger:focus,
26851
+ [data-theme=dark] .menubar-trigger[aria-expanded=true] {
26852
+ background-color: var(--gray-800);
26853
+ }
26854
+ [data-theme=dark] .menubar-content {
26855
+ background-color: var(--gray-900);
26856
+ border-color: var(--gray-700);
26857
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
26858
+ }
26859
+ [data-theme=dark] .menubar-menu-item:hover,
26860
+ [data-theme=dark] .menubar-menu-item:focus {
26861
+ background-color: var(--gray-800);
26862
+ }
26863
+ [data-theme=dark] .menubar-submenu-content {
26864
+ background-color: var(--gray-900);
26865
+ border-color: var(--gray-700);
26866
+ }
26867
+ [data-theme=dark] .menubar-separator {
26868
+ background-color: var(--gray-700);
26869
+ }
26870
+ [data-theme=dark] .menubar-filled {
26871
+ background-color: var(--gray-800);
26872
+ }
26873
+
26874
+ .nav-menu {
26875
+ position: relative;
26876
+ display: flex;
26877
+ align-items: center;
26878
+ }
26879
+
26880
+ .nav-menu-list {
26881
+ display: flex;
26882
+ align-items: center;
26883
+ gap: 0.25rem;
26884
+ list-style: none;
26885
+ margin: 0;
26886
+ padding: 0;
26887
+ }
26888
+
26889
+ .nav-menu-item {
26890
+ position: relative;
26891
+ }
26892
+
26893
+ .nav-menu-trigger {
26894
+ display: inline-flex;
26895
+ align-items: center;
26896
+ gap: 0.25rem;
26897
+ padding: 0.5rem 0.875rem;
26898
+ font-size: var(--text-sm);
26899
+ font-weight: 500;
26900
+ color: var(--text);
26901
+ background: transparent;
26902
+ border: none;
26903
+ border-radius: 0.375rem;
26904
+ cursor: pointer;
26905
+ transition: all 150ms ease-in-out;
26906
+ white-space: nowrap;
26907
+ text-decoration: none;
26908
+ }
26909
+ .nav-menu-trigger:hover {
26910
+ background-color: var(--gray-100);
26911
+ color: var(--text);
26912
+ }
26913
+ .nav-menu-trigger:focus {
26914
+ outline: none;
26915
+ box-shadow: 0 0 0 2px var(--primary-200);
26916
+ }
26917
+ .nav-menu-trigger[data-active=true] {
26918
+ color: var(--primary);
26919
+ }
26920
+
26921
+ .nav-menu-trigger-icon {
26922
+ width: 0.75rem;
26923
+ height: 0.75rem;
26924
+ color: var(--text-muted);
26925
+ transition: transform 150ms ease-in-out;
26926
+ }
26927
+
26928
+ .nav-menu-item:hover .nav-menu-trigger-icon,
26929
+ .nav-menu-trigger[aria-expanded=true] .nav-menu-trigger-icon {
26930
+ transform: rotate(180deg);
26931
+ }
26932
+
26933
+ .nav-menu-content {
26934
+ position: absolute;
26935
+ top: calc(100% + 8px);
26936
+ left: 50%;
26937
+ transform: translateX(-50%);
26938
+ min-width: 400px;
26939
+ padding: 1rem;
26940
+ background-color: var(--bg);
26941
+ border: 1px solid var(--border);
26942
+ border-radius: 0.75rem;
26943
+ box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
26944
+ z-index: 1000;
26945
+ opacity: 0;
26946
+ visibility: hidden;
26947
+ transition: opacity 200ms ease-in-out, visibility 200ms ease-in-out;
26948
+ }
26949
+
26950
+ .nav-menu-item:hover .nav-menu-content,
26951
+ .nav-menu-content.open {
26952
+ opacity: 1;
26953
+ visibility: visible;
26954
+ }
26955
+
26956
+ .nav-menu-viewport {
26957
+ position: relative;
26958
+ overflow: hidden;
26959
+ }
26960
+
26961
+ .nav-menu-grid {
26962
+ display: grid;
26963
+ gap: 0.75rem;
26964
+ }
26965
+
26966
+ .nav-menu-grid-2 {
26967
+ grid-template-columns: repeat(2, 1fr);
26968
+ }
26969
+
26970
+ .nav-menu-grid-3 {
26971
+ grid-template-columns: repeat(3, 1fr);
26972
+ }
26973
+
26974
+ .nav-menu-grid-4 {
26975
+ grid-template-columns: repeat(4, 1fr);
26976
+ }
26977
+
26978
+ .nav-menu-link {
26979
+ display: flex;
26980
+ flex-direction: column;
26981
+ gap: 0.25rem;
26982
+ padding: 0.75rem;
26983
+ border-radius: 0.375rem;
26984
+ text-decoration: none;
26985
+ color: var(--text);
26986
+ transition: background-color 150ms ease-in-out;
26987
+ }
26988
+ .nav-menu-link:hover {
26989
+ background-color: var(--gray-100);
26990
+ }
26991
+ .nav-menu-link:focus {
26992
+ outline: none;
26993
+ box-shadow: 0 0 0 2px var(--primary-200);
26994
+ }
26995
+
26996
+ .nav-menu-link-icon {
26997
+ width: 2rem;
26998
+ height: 2rem;
26999
+ padding: 0.375rem;
27000
+ background-color: var(--primary-100);
27001
+ color: var(--primary);
27002
+ border-radius: 0.375rem;
27003
+ margin-bottom: 0.25rem;
27004
+ }
27005
+ .nav-menu-link-icon svg {
27006
+ width: 100%;
27007
+ height: 100%;
27008
+ }
27009
+
27010
+ .nav-menu-link-title {
27011
+ font-size: var(--text-sm);
27012
+ font-weight: 600;
27013
+ color: var(--text);
27014
+ }
27015
+
27016
+ .nav-menu-link-description {
27017
+ font-size: var(--text-xs);
27018
+ color: var(--text-muted);
27019
+ line-height: 1.4;
27020
+ }
27021
+
27022
+ .nav-menu-featured {
27023
+ display: flex;
27024
+ flex-direction: column;
27025
+ gap: 0.5rem;
27026
+ padding: 1rem;
27027
+ background: linear-gradient(135deg, var(--primary-50), var(--primary-100));
27028
+ border-radius: 0.375rem;
27029
+ text-decoration: none;
27030
+ color: var(--text);
27031
+ }
27032
+ .nav-menu-featured:hover {
27033
+ background: linear-gradient(135deg, var(--primary-100), var(--primary-200));
27034
+ }
27035
+
27036
+ .nav-menu-featured-title {
27037
+ font-size: var(--text-base);
27038
+ font-weight: 600;
27039
+ }
27040
+
27041
+ .nav-menu-featured-description {
27042
+ font-size: var(--text-sm);
27043
+ color: var(--text-muted);
27044
+ }
27045
+
27046
+ .nav-menu-category {
27047
+ margin-bottom: 0.75rem;
27048
+ }
27049
+ .nav-menu-category:last-child {
27050
+ margin-bottom: 0;
27051
+ }
27052
+
27053
+ .nav-menu-category-title {
27054
+ font-size: var(--text-xs);
27055
+ font-weight: 600;
27056
+ color: var(--text-muted);
27057
+ text-transform: uppercase;
27058
+ letter-spacing: 0.05em;
27059
+ margin-bottom: 0.5rem;
27060
+ padding: 0 0.75rem;
27061
+ }
27062
+
27063
+ .nav-menu-category-list {
27064
+ display: flex;
27065
+ flex-direction: column;
27066
+ gap: 0.125rem;
27067
+ }
27068
+
27069
+ .nav-menu-simple-link {
27070
+ display: flex;
27071
+ align-items: center;
27072
+ gap: 0.5rem;
27073
+ padding: 0.5rem 0.75rem;
27074
+ font-size: var(--text-sm);
27075
+ color: var(--text);
27076
+ text-decoration: none;
27077
+ border-radius: 0.25rem;
27078
+ transition: background-color 150ms ease-in-out;
27079
+ }
27080
+ .nav-menu-simple-link:hover {
27081
+ background-color: var(--gray-100);
27082
+ }
27083
+ .nav-menu-simple-link svg {
27084
+ width: 1rem;
27085
+ height: 1rem;
27086
+ color: var(--text-muted);
27087
+ }
27088
+
27089
+ .nav-menu-indicator {
27090
+ position: absolute;
27091
+ bottom: -8px;
27092
+ left: 50%;
27093
+ transform: translateX(-50%);
27094
+ width: 12px;
27095
+ height: 12px;
27096
+ background-color: var(--bg);
27097
+ border: 1px solid var(--border);
27098
+ border-right: none;
27099
+ border-bottom: none;
27100
+ transform: translateX(-50%) rotate(45deg);
27101
+ opacity: 0;
27102
+ transition: opacity 150ms ease-in-out;
27103
+ }
27104
+
27105
+ .nav-menu-item:hover .nav-menu-indicator {
27106
+ opacity: 1;
27107
+ }
27108
+
27109
+ .nav-menu-sm .nav-menu-trigger {
27110
+ padding: 0.375rem 0.625rem;
27111
+ font-size: var(--text-xs);
27112
+ }
27113
+ .nav-menu-sm .nav-menu-content {
27114
+ min-width: 300px;
27115
+ padding: 0.75rem;
27116
+ }
27117
+
27118
+ .nav-menu-lg .nav-menu-trigger {
27119
+ padding: 0.625rem 1rem;
27120
+ font-size: var(--text-base);
27121
+ }
27122
+ .nav-menu-lg .nav-menu-content {
27123
+ min-width: 500px;
27124
+ padding: 1.25rem;
27125
+ }
27126
+
27127
+ .nav-menu-full .nav-menu-content {
27128
+ left: 0;
27129
+ right: 0;
27130
+ transform: none;
27131
+ min-width: auto;
27132
+ border-radius: 0 0 0.75rem 0.75rem;
27133
+ }
27134
+
27135
+ .nav-menu-footer {
27136
+ display: flex;
27137
+ align-items: center;
27138
+ justify-content: space-between;
27139
+ padding-top: 0.75rem;
27140
+ margin-top: 0.75rem;
27141
+ border-top: 1px solid var(--border);
27142
+ }
27143
+
27144
+ .nav-menu-footer-link {
27145
+ display: inline-flex;
27146
+ align-items: center;
27147
+ gap: 0.25rem;
27148
+ font-size: var(--text-sm);
27149
+ color: var(--primary);
27150
+ text-decoration: none;
27151
+ }
27152
+ .nav-menu-footer-link:hover {
27153
+ text-decoration: underline;
27154
+ }
27155
+ .nav-menu-footer-link svg {
27156
+ width: 0.875rem;
27157
+ height: 0.875rem;
27158
+ }
27159
+
27160
+ .nav-menu-vertical {
27161
+ flex-direction: column;
27162
+ align-items: flex-start;
27163
+ }
27164
+ .nav-menu-vertical .nav-menu-list {
27165
+ flex-direction: column;
27166
+ align-items: stretch;
27167
+ width: 100%;
27168
+ }
27169
+ .nav-menu-vertical .nav-menu-trigger {
27170
+ width: 100%;
27171
+ justify-content: space-between;
27172
+ }
27173
+ .nav-menu-vertical .nav-menu-content {
27174
+ position: static;
27175
+ transform: none;
27176
+ box-shadow: none;
27177
+ border: none;
27178
+ padding: 0 0 0 1rem;
27179
+ margin-top: 0.25rem;
27180
+ }
27181
+
27182
+ [data-theme=dark] .nav-menu-trigger:hover {
27183
+ background-color: var(--gray-800);
27184
+ }
27185
+ [data-theme=dark] .nav-menu-content {
27186
+ background-color: var(--gray-900);
27187
+ border-color: var(--gray-700);
27188
+ box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4);
27189
+ }
27190
+ [data-theme=dark] .nav-menu-link:hover,
27191
+ [data-theme=dark] .nav-menu-simple-link:hover {
27192
+ background-color: var(--gray-800);
27193
+ }
27194
+ [data-theme=dark] .nav-menu-link-icon {
27195
+ background-color: rgba(79, 70, 229, 0.2);
27196
+ }
27197
+ [data-theme=dark] .nav-menu-featured {
27198
+ background: linear-gradient(135deg, rgba(79, 70, 229, 0.1), rgba(79, 70, 229, 0.2));
27199
+ }
27200
+ [data-theme=dark] .nav-menu-featured:hover {
27201
+ background: linear-gradient(135deg, rgba(79, 70, 229, 0.15), rgba(79, 70, 229, 0.25));
27202
+ }
27203
+ [data-theme=dark] .nav-menu-indicator {
27204
+ background-color: var(--gray-900);
27205
+ border-color: var(--gray-700);
27206
+ }
27207
+ [data-theme=dark] .nav-menu-footer {
27208
+ border-color: var(--gray-700);
27209
+ }
27210
+
27211
+ .fieldset {
27212
+ border: 1px solid var(--border);
27213
+ border-radius: 0.75rem;
27214
+ padding: 1.25rem;
27215
+ margin: 0;
27216
+ }
27217
+
27218
+ .fieldset-legend {
27219
+ font-size: var(--text-sm);
27220
+ font-weight: 600;
27221
+ color: var(--text);
27222
+ padding: 0 0.5rem;
27223
+ margin-left: -0.5rem;
27224
+ }
27225
+
27226
+ .fieldset-borderless {
27227
+ border: none;
27228
+ padding: 0;
27229
+ }
27230
+ .fieldset-borderless .fieldset-legend {
27231
+ padding: 0;
27232
+ margin-left: 0;
27233
+ margin-bottom: 0.75rem;
27234
+ }
27235
+
27236
+ .fieldset-filled {
27237
+ background-color: var(--gray-50);
27238
+ border-color: transparent;
27239
+ }
27240
+
27241
+ .fieldset-content {
27242
+ display: flex;
27243
+ flex-direction: column;
27244
+ gap: 1rem;
27245
+ }
27246
+
27247
+ .fieldset-content-horizontal {
27248
+ flex-direction: row;
27249
+ flex-wrap: wrap;
27250
+ gap: 1.5rem;
27251
+ }
27252
+
27253
+ .fieldset-description {
27254
+ font-size: var(--text-sm);
27255
+ color: var(--text-muted);
27256
+ margin-top: -0.5rem;
27257
+ margin-bottom: 0.5rem;
27258
+ }
27259
+
27260
+ .fieldset-sm {
27261
+ padding: 0.875rem;
27262
+ }
27263
+ .fieldset-sm .fieldset-legend {
27264
+ font-size: var(--text-xs);
27265
+ }
27266
+ .fieldset-sm .fieldset-content {
27267
+ gap: 0.75rem;
27268
+ }
27269
+
27270
+ .fieldset-lg {
27271
+ padding: 1.5rem;
27272
+ }
27273
+ .fieldset-lg .fieldset-legend {
27274
+ font-size: var(--text-base);
27275
+ }
27276
+ .fieldset-lg .fieldset-content {
27277
+ gap: 1.25rem;
27278
+ }
27279
+
27280
+ .fieldset:disabled,
27281
+ .fieldset-disabled {
27282
+ opacity: 0.6;
27283
+ pointer-events: none;
27284
+ }
27285
+
27286
+ .fieldset-card {
27287
+ background-color: var(--bg);
27288
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
27289
+ }
27290
+ .fieldset-card .fieldset-legend {
27291
+ background-color: var(--bg);
27292
+ }
27293
+
27294
+ .fieldset-header {
27295
+ display: flex;
27296
+ align-items: center;
27297
+ justify-content: space-between;
27298
+ margin-bottom: 1rem;
27299
+ padding-bottom: 0.75rem;
27300
+ border-bottom: 1px solid var(--border);
27301
+ }
27302
+
27303
+ .fieldset-title {
27304
+ font-size: var(--text-base);
27305
+ font-weight: 600;
27306
+ color: var(--text);
27307
+ }
27308
+
27309
+ .fieldset-subtitle {
27310
+ font-size: var(--text-sm);
27311
+ color: var(--text-muted);
27312
+ margin-top: 0.125rem;
27313
+ }
27314
+
27315
+ .fieldset-actions {
27316
+ display: flex;
27317
+ gap: 0.5rem;
27318
+ }
27319
+
27320
+ .fieldset-icon {
27321
+ display: flex;
27322
+ align-items: center;
27323
+ gap: 0.5rem;
27324
+ }
27325
+
27326
+ .fieldset-icon-wrapper {
27327
+ display: flex;
27328
+ align-items: center;
27329
+ justify-content: center;
27330
+ width: 2rem;
27331
+ height: 2rem;
27332
+ background-color: var(--primary-100);
27333
+ color: var(--primary);
27334
+ border-radius: 0.375rem;
27335
+ }
27336
+ .fieldset-icon-wrapper svg {
27337
+ width: 1rem;
27338
+ height: 1rem;
27339
+ }
27340
+
27341
+ .fieldset .fieldset {
27342
+ background-color: var(--bg);
27343
+ border-color: var(--border);
27344
+ }
27345
+
27346
+ .fieldset-footer {
27347
+ display: flex;
27348
+ align-items: center;
27349
+ justify-content: flex-end;
27350
+ gap: 0.75rem;
27351
+ margin-top: 1rem;
27352
+ padding-top: 1rem;
27353
+ border-top: 1px solid var(--border);
27354
+ }
27355
+
27356
+ .fieldset-collapsible .fieldset-legend {
27357
+ cursor: pointer;
27358
+ display: flex;
27359
+ align-items: center;
27360
+ gap: 0.5rem;
27361
+ user-select: none;
27362
+ }
27363
+ .fieldset-collapsible .fieldset-legend::before {
27364
+ content: "";
27365
+ display: inline-block;
27366
+ width: 0;
27367
+ height: 0;
27368
+ border: solid var(--text);
27369
+ border-width: 0 2px 2px 0;
27370
+ padding: 3px;
27371
+ transform: rotate(45deg);
27372
+ transition: transform 150ms ease-in-out;
27373
+ }
27374
+ .fieldset-collapsible.collapsed .fieldset-legend::before {
27375
+ transform: rotate(-45deg);
27376
+ }
27377
+ .fieldset-collapsible.collapsed .fieldset-content {
27378
+ display: none;
27379
+ }
27380
+
27381
+ .fieldset-error {
27382
+ border-color: var(--danger);
27383
+ }
27384
+ .fieldset-error .fieldset-legend {
27385
+ color: var(--danger);
27386
+ }
27387
+
27388
+ .fieldset-error-message {
27389
+ display: flex;
27390
+ align-items: center;
27391
+ gap: 0.375rem;
27392
+ font-size: var(--text-sm);
27393
+ color: var(--danger);
27394
+ margin-top: 0.5rem;
27395
+ }
27396
+ .fieldset-error-message svg {
27397
+ width: 1rem;
27398
+ height: 1rem;
27399
+ flex-shrink: 0;
27400
+ }
27401
+
27402
+ .fieldset-success {
27403
+ border-color: var(--success);
27404
+ }
27405
+ .fieldset-success .fieldset-legend {
27406
+ color: var(--success);
27407
+ }
27408
+
27409
+ .fieldset-primary {
27410
+ border-color: var(--primary-200);
27411
+ background-color: var(--primary-50);
27412
+ }
27413
+ .fieldset-primary .fieldset-legend {
27414
+ color: var(--primary-700);
27415
+ }
27416
+
27417
+ .fieldset-warning {
27418
+ border-color: var(--warning-200);
27419
+ background-color: var(--warning-50);
27420
+ }
27421
+ .fieldset-warning .fieldset-legend {
27422
+ color: var(--warning-700);
27423
+ }
27424
+
27425
+ .fieldset-info {
27426
+ border-color: var(--info-200);
27427
+ background-color: var(--info-50);
27428
+ }
27429
+ .fieldset-info .fieldset-legend {
27430
+ color: var(--info-700);
27431
+ }
27432
+
27433
+ .fieldset-row {
27434
+ display: grid;
27435
+ gap: 1rem;
27436
+ }
27437
+
27438
+ .fieldset-row-2 {
27439
+ grid-template-columns: repeat(2, 1fr);
27440
+ }
27441
+
27442
+ .fieldset-row-3 {
27443
+ grid-template-columns: repeat(3, 1fr);
27444
+ }
27445
+
27446
+ .fieldset-row-4 {
27447
+ grid-template-columns: repeat(4, 1fr);
27448
+ }
27449
+
27450
+ @media (max-width: 767px) {
27451
+ .fieldset-row-2,
27452
+ .fieldset-row-3,
27453
+ .fieldset-row-4 {
27454
+ grid-template-columns: 1fr;
27455
+ }
27456
+ }
27457
+ [data-theme=dark] .fieldset {
27458
+ border-color: var(--gray-700);
27459
+ }
27460
+ [data-theme=dark] .fieldset-filled {
27461
+ background-color: var(--gray-800);
27462
+ }
27463
+ [data-theme=dark] .fieldset-card {
27464
+ background-color: var(--gray-900);
27465
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
27466
+ }
27467
+ [data-theme=dark] .fieldset-card .fieldset-legend {
27468
+ background-color: var(--gray-900);
27469
+ }
27470
+ [data-theme=dark] .fieldset-header {
27471
+ border-color: var(--gray-700);
27472
+ }
27473
+ [data-theme=dark] .fieldset-footer {
27474
+ border-color: var(--gray-700);
27475
+ }
27476
+ [data-theme=dark] .fieldset .fieldset {
27477
+ background-color: var(--gray-800);
27478
+ border-color: var(--gray-700);
27479
+ }
27480
+ [data-theme=dark] .fieldset-icon-wrapper {
27481
+ background-color: rgba(79, 70, 229, 0.2);
27482
+ }
27483
+ [data-theme=dark] .fieldset-primary {
27484
+ border-color: rgba(79, 70, 229, 0.3);
27485
+ background-color: rgba(79, 70, 229, 0.1);
27486
+ }
27487
+ [data-theme=dark] .fieldset-warning {
27488
+ border-color: rgba(245, 158, 11, 0.3);
27489
+ background-color: rgba(245, 158, 11, 0.1);
27490
+ }
27491
+ [data-theme=dark] .fieldset-info {
27492
+ border-color: rgba(6, 182, 212, 0.3);
27493
+ background-color: rgba(6, 182, 212, 0.1);
27494
+ }
27495
+
27496
+ .pin-input {
27497
+ display: inline-flex;
27498
+ gap: 0.5rem;
27499
+ align-items: center;
27500
+ }
27501
+
27502
+ .pin-input-field {
27503
+ width: 3rem;
27504
+ height: 3rem;
27505
+ padding: 0;
27506
+ font-family: var(--font-mono);
27507
+ font-size: 1.5rem;
27508
+ font-weight: 600;
27509
+ text-align: center;
27510
+ color: var(--text);
27511
+ background-color: var(--bg);
27512
+ border: 2px solid var(--border);
27513
+ border-radius: 0.375rem;
27514
+ transition: border-color 150ms ease-in-out, box-shadow 150ms ease-in-out, background-color 150ms ease-in-out;
27515
+ caret-color: var(--primary);
27516
+ }
27517
+ .pin-input-field::placeholder {
27518
+ color: var(--gray-300);
27519
+ }
27520
+ .pin-input-field:focus {
27521
+ outline: none;
27522
+ border-color: var(--primary);
27523
+ box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.15);
27524
+ }
27525
+ .pin-input-field::-webkit-outer-spin-button, .pin-input-field::-webkit-inner-spin-button {
27526
+ -webkit-appearance: none;
27527
+ margin: 0;
27528
+ }
27529
+ .pin-input-field[type=number] {
27530
+ -moz-appearance: textfield;
27531
+ }
27532
+
27533
+ .pin-input-xs {
27534
+ gap: 0.25rem;
27535
+ }
27536
+ .pin-input-xs .pin-input-field {
27537
+ width: 2rem;
27538
+ height: 2rem;
27539
+ font-size: 1rem;
27540
+ }
27541
+
27542
+ .pin-input-sm {
27543
+ gap: 0.375rem;
27544
+ }
27545
+ .pin-input-sm .pin-input-field {
27546
+ width: 2.5rem;
27547
+ height: 2.5rem;
27548
+ font-size: 1.25rem;
27549
+ }
27550
+
27551
+ .pin-input-md {
27552
+ gap: 0.5rem;
27553
+ }
27554
+ .pin-input-md .pin-input-field {
27555
+ width: 3rem;
27556
+ height: 3rem;
27557
+ font-size: 1.5rem;
27558
+ }
27559
+
27560
+ .pin-input-lg {
27561
+ gap: 0.625rem;
27562
+ }
27563
+ .pin-input-lg .pin-input-field {
27564
+ width: 3.5rem;
27565
+ height: 3.5rem;
27566
+ font-size: 1.75rem;
27567
+ }
27568
+
27569
+ .pin-input-xl {
27570
+ gap: 0.75rem;
27571
+ }
27572
+ .pin-input-xl .pin-input-field {
27573
+ width: 4rem;
27574
+ height: 4rem;
27575
+ font-size: 2rem;
27576
+ }
27577
+
27578
+ .pin-input-field:disabled {
27579
+ background-color: var(--bg-muted);
27580
+ cursor: not-allowed;
27581
+ opacity: 0.6;
27582
+ }
27583
+
27584
+ .pin-input-field[readonly] {
27585
+ background-color: var(--bg-muted);
27586
+ cursor: default;
27587
+ }
27588
+
27589
+ .pin-input-error .pin-input-field {
27590
+ border-color: var(--danger);
27591
+ }
27592
+ .pin-input-error .pin-input-field:focus {
27593
+ border-color: var(--danger);
27594
+ box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.15);
27595
+ }
27596
+
27597
+ .pin-input-success .pin-input-field {
27598
+ border-color: var(--success);
27599
+ }
27600
+ .pin-input-success .pin-input-field:focus {
27601
+ border-color: var(--success);
27602
+ box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
27603
+ }
27604
+
27605
+ .pin-input-field.filled,
27606
+ .pin-input-field:not(:placeholder-shown) {
27607
+ border-color: var(--primary-300);
27608
+ background-color: var(--primary-50);
27609
+ }
27610
+
27611
+ .pin-input-underline .pin-input-field {
27612
+ border-width: 0 0 2px 0;
27613
+ border-radius: 0;
27614
+ background: transparent;
27615
+ }
27616
+ .pin-input-underline .pin-input-field:focus {
27617
+ box-shadow: none;
27618
+ border-color: var(--primary);
27619
+ }
27620
+
27621
+ .pin-input-rounded .pin-input-field {
27622
+ border-radius: 9999px;
27623
+ }
27624
+
27625
+ .pin-input-ghost .pin-input-field {
27626
+ border-color: transparent;
27627
+ background-color: var(--gray-100);
27628
+ }
27629
+ .pin-input-ghost .pin-input-field:focus {
27630
+ background-color: var(--bg);
27631
+ border-color: var(--primary);
27632
+ }
27633
+
27634
+ .pin-input-flushed .pin-input-field {
27635
+ border: none;
27636
+ border-bottom: 2px solid var(--border);
27637
+ border-radius: 0;
27638
+ background: transparent;
27639
+ }
27640
+ .pin-input-flushed .pin-input-field:focus {
27641
+ box-shadow: none;
27642
+ border-color: var(--primary);
27643
+ }
27644
+
27645
+ .pin-input-separator {
27646
+ display: flex;
27647
+ align-items: center;
27648
+ justify-content: center;
27649
+ width: 1rem;
27650
+ color: var(--text-muted);
27651
+ font-size: 1.25rem;
27652
+ }
27653
+ .pin-input-separator::before {
27654
+ content: "-";
27655
+ }
27656
+
27657
+ .pin-input-separator-dot::before {
27658
+ content: "•";
27659
+ }
27660
+
27661
+ .pin-input-masked .pin-input-field {
27662
+ -webkit-text-security: disc;
27663
+ text-security: disc;
27664
+ }
27665
+
27666
+ .pin-input-alphanumeric .pin-input-field {
27667
+ text-transform: uppercase;
27668
+ }
27669
+
27670
+ .pin-input-wrapper {
27671
+ display: flex;
27672
+ flex-direction: column;
27673
+ align-items: center;
27674
+ gap: 0.75rem;
27675
+ }
27676
+
27677
+ .pin-input-label {
27678
+ font-size: var(--text-sm);
27679
+ font-weight: 500;
27680
+ color: var(--text);
27681
+ }
27682
+
27683
+ .pin-input-help {
27684
+ font-size: var(--text-xs);
27685
+ color: var(--text-muted);
27686
+ }
27687
+
27688
+ .pin-input-error-text {
27689
+ font-size: var(--text-xs);
27690
+ color: var(--danger);
27691
+ }
27692
+
27693
+ .pin-input-complete .pin-input-field {
27694
+ animation: pin-input-success 0.3s ease-out;
27695
+ border-color: var(--success);
27696
+ background-color: var(--success-50);
27697
+ }
27698
+
27699
+ @keyframes pin-input-success {
27700
+ 0% {
27701
+ transform: scale(1);
27702
+ }
27703
+ 50% {
27704
+ transform: scale(1.1);
27705
+ }
27706
+ 100% {
27707
+ transform: scale(1);
27708
+ }
27709
+ }
27710
+ .pin-input-shake {
27711
+ animation: pin-input-shake 0.4s ease-out;
27712
+ }
27713
+
27714
+ @keyframes pin-input-shake {
27715
+ 0%, 100% {
27716
+ transform: translateX(0);
27717
+ }
27718
+ 20%, 60% {
27719
+ transform: translateX(-4px);
27720
+ }
27721
+ 40%, 80% {
27722
+ transform: translateX(4px);
27723
+ }
27724
+ }
27725
+ .pin-input-loading {
27726
+ position: relative;
27727
+ pointer-events: none;
27728
+ }
27729
+ .pin-input-loading::after {
27730
+ content: "";
27731
+ position: absolute;
27732
+ top: 50%;
27733
+ left: 50%;
27734
+ transform: translate(-50%, -50%);
27735
+ width: 1.5rem;
27736
+ height: 1.5rem;
27737
+ border: 2px solid var(--primary);
27738
+ border-top-color: transparent;
27739
+ border-radius: 50%;
27740
+ animation: spin 0.6s linear infinite;
27741
+ }
27742
+ .pin-input-loading .pin-input-field {
27743
+ opacity: 0.5;
27744
+ }
27745
+
27746
+ .pin-input-otp .pin-input-field {
27747
+ ime-mode: disabled;
27748
+ -webkit-ime-mode: disabled;
27749
+ }
27750
+
27751
+ .pin-input-group {
27752
+ display: inline-flex;
27753
+ align-items: center;
27754
+ gap: 0.25rem;
27755
+ }
27756
+
27757
+ .pin-input-group + .pin-input-separator + .pin-input-group {
27758
+ margin-left: 0;
27759
+ }
27760
+
27761
+ .pin-input-resend {
27762
+ display: flex;
27763
+ flex-direction: column;
27764
+ align-items: center;
27765
+ gap: 0.5rem;
27766
+ margin-top: 1rem;
27767
+ }
27768
+
27769
+ .pin-input-resend-text {
27770
+ font-size: var(--text-sm);
27771
+ color: var(--text-muted);
27772
+ }
27773
+
27774
+ .pin-input-resend-link {
27775
+ font-size: var(--text-sm);
27776
+ color: var(--primary);
27777
+ cursor: pointer;
27778
+ text-decoration: none;
27779
+ }
27780
+ .pin-input-resend-link:hover {
27781
+ text-decoration: underline;
27782
+ }
27783
+ .pin-input-resend-link:disabled, .pin-input-resend-link.disabled {
27784
+ color: var(--text-muted);
27785
+ cursor: not-allowed;
27786
+ }
27787
+
27788
+ .pin-input-timer {
27789
+ font-weight: 500;
27790
+ color: var(--text);
27791
+ }
27792
+
27793
+ [data-theme=dark] .pin-input-field {
27794
+ background-color: var(--gray-800);
27795
+ border-color: var(--gray-600);
27796
+ }
27797
+ [data-theme=dark] .pin-input-field:focus {
27798
+ background-color: var(--gray-900);
27799
+ }
27800
+ [data-theme=dark] .pin-input-ghost .pin-input-field {
27801
+ background-color: var(--gray-700);
27802
+ }
27803
+ [data-theme=dark] .pin-input-ghost .pin-input-field:focus {
27804
+ background-color: var(--gray-800);
27805
+ }
27806
+ [data-theme=dark] .pin-input-field.filled,
27807
+ [data-theme=dark] .pin-input-field:not(:placeholder-shown) {
27808
+ background-color: var(--gray-700);
27809
+ }
27810
+ [data-theme=dark] .pin-input-complete .pin-input-field {
27811
+ background-color: rgba(16, 185, 129, 0.2);
27812
+ }
27813
+
27814
+ .editable {
27815
+ position: relative;
27816
+ display: inline-flex;
27817
+ align-items: center;
27818
+ gap: 0.5rem;
27819
+ }
27820
+
27821
+ .editable-block {
27822
+ display: flex;
27823
+ width: 100%;
27824
+ }
27825
+
27826
+ .editable-preview {
27827
+ display: inline-flex;
27828
+ align-items: center;
27829
+ gap: 0.375rem;
27830
+ padding: 0.25rem 0.5rem;
27831
+ margin: -0.25rem -0.5rem;
27832
+ font-size: inherit;
27833
+ color: var(--text);
27834
+ background-color: transparent;
27835
+ border: 1px solid transparent;
27836
+ border-radius: 0.375rem;
27837
+ cursor: pointer;
27838
+ transition: all 150ms ease-in-out;
27839
+ min-height: 2rem;
27840
+ word-break: break-word;
27841
+ }
27842
+ .editable-preview:hover {
27843
+ background-color: var(--gray-100);
27844
+ border-color: var(--gray-200);
27845
+ }
27846
+ .editable-preview:focus {
27847
+ outline: none;
27848
+ background-color: var(--gray-100);
27849
+ border-color: var(--primary);
27850
+ box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.15);
27851
+ }
27852
+
27853
+ .editable-preview-placeholder {
27854
+ color: var(--text-muted);
27855
+ font-style: italic;
27856
+ }
27857
+
27858
+ .editable-edit-icon {
27859
+ display: inline-flex;
27860
+ align-items: center;
27861
+ justify-content: center;
27862
+ width: 1rem;
27863
+ height: 1rem;
27864
+ color: var(--text-muted);
27865
+ opacity: 0;
27866
+ transition: opacity 150ms ease-in-out;
27867
+ }
27868
+ .editable-edit-icon svg {
27869
+ width: 0.875rem;
27870
+ height: 0.875rem;
27871
+ }
27872
+
27873
+ .editable-preview:hover .editable-edit-icon,
27874
+ .editable-preview:focus .editable-edit-icon {
27875
+ opacity: 1;
27876
+ }
27877
+
27878
+ .editable-input {
27879
+ width: 100%;
27880
+ padding: 0.375rem 0.5rem;
27881
+ font-size: inherit;
27882
+ font-family: inherit;
27883
+ color: var(--text);
27884
+ background-color: var(--bg);
27885
+ border: 1px solid var(--primary);
27886
+ border-radius: 0.375rem;
27887
+ outline: none;
27888
+ box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.15);
27889
+ transition: border-color 150ms ease-in-out, box-shadow 150ms ease-in-out;
27890
+ }
27891
+ .editable-input:focus {
27892
+ border-color: var(--primary);
27893
+ box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.15);
27894
+ }
27895
+
27896
+ .editable-textarea {
27897
+ width: 100%;
27898
+ min-height: 80px;
27899
+ padding: 0.5rem;
27900
+ font-size: inherit;
27901
+ font-family: inherit;
27902
+ color: var(--text);
27903
+ background-color: var(--bg);
27904
+ border: 1px solid var(--primary);
27905
+ border-radius: 0.375rem;
27906
+ outline: none;
27907
+ box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.15);
27908
+ resize: vertical;
27909
+ }
27910
+
27911
+ .editable-controls {
27912
+ display: inline-flex;
27913
+ gap: 0.25rem;
27914
+ margin-left: 0.5rem;
27915
+ }
27916
+
27917
+ .editable-controls-below {
27918
+ display: flex;
27919
+ gap: 0.25rem;
27920
+ margin-top: 0.5rem;
27921
+ }
27922
+
27923
+ .editable-btn {
27924
+ display: inline-flex;
27925
+ align-items: center;
27926
+ justify-content: center;
27927
+ width: 1.75rem;
27928
+ height: 1.75rem;
27929
+ padding: 0;
27930
+ background-color: transparent;
27931
+ border: 1px solid var(--border);
27932
+ border-radius: 0.375rem;
27933
+ cursor: pointer;
27934
+ transition: all 150ms ease-in-out;
27935
+ }
27936
+ .editable-btn svg {
27937
+ width: 0.875rem;
27938
+ height: 0.875rem;
27939
+ }
27940
+
27941
+ .editable-btn-submit {
27942
+ color: var(--success);
27943
+ border-color: var(--success-200);
27944
+ }
27945
+ .editable-btn-submit:hover {
27946
+ background-color: var(--success);
27947
+ border-color: var(--success);
27948
+ color: var(--white);
27949
+ }
27950
+
27951
+ .editable-btn-cancel {
27952
+ color: var(--danger);
27953
+ border-color: var(--danger-200);
27954
+ }
27955
+ .editable-btn-cancel:hover {
27956
+ background-color: var(--danger);
27957
+ border-color: var(--danger);
27958
+ color: var(--white);
27959
+ }
27960
+
27961
+ .editable-sm {
27962
+ font-size: var(--text-sm);
27963
+ }
27964
+ .editable-sm .editable-preview {
27965
+ padding: 0.125rem 0.375rem;
27966
+ min-height: 1.5rem;
27967
+ }
27968
+ .editable-sm .editable-input {
27969
+ padding: 0.25rem 0.375rem;
27970
+ }
27971
+ .editable-sm .editable-btn {
27972
+ width: 1.5rem;
27973
+ height: 1.5rem;
27974
+ }
27975
+
27976
+ .editable-lg {
27977
+ font-size: var(--text-lg);
27978
+ }
27979
+ .editable-lg .editable-preview {
27980
+ padding: 0.375rem 0.625rem;
27981
+ min-height: 2.5rem;
27982
+ }
27983
+ .editable-lg .editable-input {
27984
+ padding: 0.5rem 0.625rem;
27985
+ }
27986
+ .editable-lg .editable-btn {
27987
+ width: 2rem;
27988
+ height: 2rem;
27989
+ }
27990
+
27991
+ .editable-heading {
27992
+ font-weight: 600;
27993
+ }
27994
+ .editable-heading .editable-preview {
27995
+ font-weight: 600;
27996
+ }
27997
+
27998
+ .editable-h1 {
27999
+ font-size: 2rem;
28000
+ }
28001
+
28002
+ .editable-h2 {
28003
+ font-size: 1.5rem;
28004
+ }
28005
+
28006
+ .editable-h3 {
28007
+ font-size: 1.25rem;
28008
+ }
28009
+
28010
+ .editable-underline .editable-preview {
28011
+ padding: 0;
28012
+ margin: 0;
28013
+ border: none;
28014
+ border-bottom: 1px dashed transparent;
28015
+ border-radius: 0;
28016
+ background: transparent;
28017
+ }
28018
+ .editable-underline .editable-preview:hover {
28019
+ border-bottom-color: var(--primary);
28020
+ background: transparent;
28021
+ }
28022
+
28023
+ .editable-always-show-icon .editable-edit-icon {
28024
+ opacity: 0.5;
28025
+ }
28026
+ .editable-always-show-icon .editable-preview:hover .editable-edit-icon {
28027
+ opacity: 1;
28028
+ }
28029
+
28030
+ .editable-double-click .editable-preview {
28031
+ cursor: text;
28032
+ }
28033
+ .editable-double-click .editable-preview:hover {
28034
+ background: transparent;
28035
+ border-color: transparent;
28036
+ }
28037
+
28038
+ .editable-disabled {
28039
+ opacity: 0.6;
28040
+ pointer-events: none;
28041
+ }
28042
+
28043
+ .editable-readonly .editable-preview {
28044
+ cursor: default;
28045
+ }
28046
+ .editable-readonly .editable-preview:hover {
28047
+ background: transparent;
28048
+ border-color: transparent;
28049
+ }
28050
+ .editable-readonly .editable-edit-icon {
28051
+ display: none;
28052
+ }
28053
+
28054
+ .editable-loading {
28055
+ position: relative;
28056
+ pointer-events: none;
28057
+ }
28058
+ .editable-loading::after {
28059
+ content: "";
28060
+ position: absolute;
28061
+ top: 50%;
28062
+ right: 0.5rem;
28063
+ transform: translateY(-50%);
28064
+ width: 1rem;
28065
+ height: 1rem;
28066
+ border: 2px solid var(--primary);
28067
+ border-top-color: transparent;
28068
+ border-radius: 50%;
28069
+ animation: spin 0.6s linear infinite;
28070
+ }
28071
+
28072
+ .editable-error .editable-input,
28073
+ .editable-error .editable-textarea {
28074
+ border-color: var(--danger);
28075
+ box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.15);
28076
+ }
28077
+
28078
+ .editable-error-message {
28079
+ font-size: var(--text-xs);
28080
+ color: var(--danger);
28081
+ margin-top: 0.25rem;
28082
+ }
28083
+
28084
+ .editable-char-count {
28085
+ display: flex;
28086
+ justify-content: flex-end;
28087
+ margin-top: 0.25rem;
28088
+ font-size: var(--text-xs);
28089
+ color: var(--text-muted);
28090
+ }
28091
+
28092
+ .editable-char-count-warning {
28093
+ color: var(--warning);
28094
+ }
28095
+
28096
+ .editable-char-count-error {
28097
+ color: var(--danger);
28098
+ }
28099
+
28100
+ .editable-with-affix {
28101
+ display: flex;
28102
+ align-items: center;
28103
+ }
28104
+
28105
+ .editable-prefix,
28106
+ .editable-suffix {
28107
+ font-size: inherit;
28108
+ color: var(--text-muted);
28109
+ padding: 0 0.25rem;
28110
+ }
28111
+
28112
+ .editable-table-cell .editable-preview {
28113
+ width: 100%;
28114
+ padding: 0.5rem;
28115
+ margin: 0;
28116
+ border-radius: 0;
28117
+ }
28118
+ .editable-table-cell .editable-input {
28119
+ width: 100%;
28120
+ border-radius: 0;
28121
+ }
28122
+
28123
+ .editable-form {
28124
+ display: flex;
28125
+ align-items: center;
28126
+ gap: 0.5rem;
28127
+ width: 100%;
28128
+ }
28129
+
28130
+ .editable-form-input {
28131
+ flex: 1;
28132
+ }
28133
+
28134
+ [data-theme=dark] .editable-preview:hover {
28135
+ background-color: var(--gray-800);
28136
+ border-color: var(--gray-700);
28137
+ }
28138
+ [data-theme=dark] .editable-preview:focus {
28139
+ background-color: var(--gray-800);
28140
+ }
28141
+ [data-theme=dark] .editable-input,
28142
+ [data-theme=dark] .editable-textarea {
28143
+ background-color: var(--gray-900);
28144
+ border-color: var(--primary);
28145
+ }
28146
+ [data-theme=dark] .editable-btn {
28147
+ border-color: var(--gray-600);
28148
+ }
28149
+ [data-theme=dark] .editable-btn-submit {
28150
+ border-color: rgba(16, 185, 129, 0.3);
28151
+ }
28152
+ [data-theme=dark] .editable-btn-cancel {
28153
+ border-color: rgba(239, 68, 68, 0.3);
28154
+ }
28155
+
26577
28156
  .accordion {
26578
28157
  --accordion-color: var(--text);
26579
28158
  --accordion-bg: transparent;