zenkit-css 1.0.6 → 1.0.7

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
@@ -18832,6 +18832,995 @@ hr.divider::before, hr.divider::after,
18832
18832
  min-height: 100vh;
18833
18833
  }
18834
18834
 
18835
+ .link {
18836
+ color: var(--primary);
18837
+ text-decoration: none;
18838
+ cursor: pointer;
18839
+ transition: color 200ms ease-in-out, text-decoration 200ms ease-in-out;
18840
+ }
18841
+ .link:hover {
18842
+ color: var(--primary-600);
18843
+ text-decoration: underline;
18844
+ }
18845
+ .link:focus {
18846
+ outline: 2px solid var(--primary);
18847
+ outline-offset: 2px;
18848
+ }
18849
+ .link:active {
18850
+ color: var(--primary-700);
18851
+ }
18852
+
18853
+ .link-underline {
18854
+ text-decoration: underline;
18855
+ }
18856
+ .link-underline:hover {
18857
+ text-decoration: none;
18858
+ }
18859
+
18860
+ .link-underline-hover {
18861
+ text-decoration: none;
18862
+ }
18863
+ .link-underline-hover:hover {
18864
+ text-decoration: underline;
18865
+ }
18866
+
18867
+ .link-none {
18868
+ text-decoration: none;
18869
+ }
18870
+ .link-none:hover {
18871
+ text-decoration: none;
18872
+ }
18873
+
18874
+ .link-secondary {
18875
+ color: var(--gray-600);
18876
+ }
18877
+ .link-secondary:hover {
18878
+ color: var(--gray-800);
18879
+ }
18880
+
18881
+ .link-success {
18882
+ color: var(--success);
18883
+ }
18884
+ .link-success:hover {
18885
+ color: var(--success-600);
18886
+ }
18887
+
18888
+ .link-danger {
18889
+ color: var(--danger);
18890
+ }
18891
+ .link-danger:hover {
18892
+ color: var(--danger-600);
18893
+ }
18894
+
18895
+ .link-warning {
18896
+ color: var(--warning);
18897
+ }
18898
+ .link-warning:hover {
18899
+ color: var(--warning-600);
18900
+ }
18901
+
18902
+ .link-info {
18903
+ color: var(--info);
18904
+ }
18905
+ .link-info:hover {
18906
+ color: var(--info-600);
18907
+ }
18908
+
18909
+ .link-muted {
18910
+ color: var(--text-muted);
18911
+ }
18912
+ .link-muted:hover {
18913
+ color: var(--text);
18914
+ }
18915
+
18916
+ .link-white {
18917
+ color: var(--white);
18918
+ }
18919
+ .link-white:hover {
18920
+ color: var(--gray-200);
18921
+ }
18922
+
18923
+ .link-icon {
18924
+ display: inline-flex;
18925
+ align-items: center;
18926
+ gap: 0.25rem;
18927
+ }
18928
+ .link-icon svg,
18929
+ .link-icon .icon {
18930
+ width: 1em;
18931
+ height: 1em;
18932
+ flex-shrink: 0;
18933
+ }
18934
+
18935
+ .link-icon-end {
18936
+ flex-direction: row-reverse;
18937
+ }
18938
+
18939
+ .link-external::after {
18940
+ content: "";
18941
+ display: inline-block;
18942
+ width: 0.75em;
18943
+ height: 0.75em;
18944
+ margin-left: 0.25em;
18945
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'%3E%3C/path%3E%3Cpolyline points='15 3 21 3 21 9'%3E%3C/polyline%3E%3Cline x1='10' y1='14' x2='21' y2='3'%3E%3C/line%3E%3C/svg%3E");
18946
+ background-size: contain;
18947
+ background-repeat: no-repeat;
18948
+ vertical-align: middle;
18949
+ opacity: 0.7;
18950
+ }
18951
+
18952
+ .link-sm {
18953
+ font-size: var(--text-sm);
18954
+ }
18955
+
18956
+ .link-lg {
18957
+ font-size: var(--text-lg);
18958
+ }
18959
+
18960
+ .link-disabled,
18961
+ .link[aria-disabled=true] {
18962
+ color: var(--text-muted);
18963
+ pointer-events: none;
18964
+ cursor: not-allowed;
18965
+ opacity: 0.6;
18966
+ }
18967
+ .link-disabled:hover,
18968
+ .link[aria-disabled=true]:hover {
18969
+ text-decoration: none;
18970
+ }
18971
+
18972
+ .link-overlay::after {
18973
+ content: "";
18974
+ position: absolute;
18975
+ top: 0;
18976
+ right: 0;
18977
+ bottom: 0;
18978
+ left: 0;
18979
+ z-index: 1;
18980
+ }
18981
+
18982
+ .skip-link {
18983
+ position: absolute;
18984
+ top: -40px;
18985
+ left: 0;
18986
+ background: var(--primary);
18987
+ color: var(--white);
18988
+ padding: 0.5rem 1rem;
18989
+ z-index: 9999;
18990
+ transition: top 200ms ease-in-out;
18991
+ }
18992
+ .skip-link:focus {
18993
+ top: 0;
18994
+ }
18995
+
18996
+ .stack {
18997
+ display: flex;
18998
+ flex-direction: column;
18999
+ }
19000
+
19001
+ .vstack {
19002
+ display: flex;
19003
+ flex-direction: column;
19004
+ align-self: stretch;
19005
+ }
19006
+
19007
+ .hstack {
19008
+ display: flex;
19009
+ flex-direction: row;
19010
+ align-items: center;
19011
+ }
19012
+
19013
+ .stack-start {
19014
+ align-items: flex-start;
19015
+ }
19016
+
19017
+ .stack-center {
19018
+ align-items: center;
19019
+ }
19020
+
19021
+ .stack-end {
19022
+ align-items: flex-end;
19023
+ }
19024
+
19025
+ .stack-stretch {
19026
+ align-items: stretch;
19027
+ }
19028
+
19029
+ .stack-baseline {
19030
+ align-items: baseline;
19031
+ }
19032
+
19033
+ .stack-justify-start {
19034
+ justify-content: flex-start;
19035
+ }
19036
+
19037
+ .stack-justify-center {
19038
+ justify-content: center;
19039
+ }
19040
+
19041
+ .stack-justify-end {
19042
+ justify-content: flex-end;
19043
+ }
19044
+
19045
+ .stack-justify-between {
19046
+ justify-content: space-between;
19047
+ }
19048
+
19049
+ .stack-justify-around {
19050
+ justify-content: space-around;
19051
+ }
19052
+
19053
+ .stack-justify-evenly {
19054
+ justify-content: space-evenly;
19055
+ }
19056
+
19057
+ .stack-gap-0 {
19058
+ gap: 0;
19059
+ }
19060
+
19061
+ .stack-gap-1 {
19062
+ gap: var(--space-1);
19063
+ }
19064
+
19065
+ .stack-gap-2 {
19066
+ gap: var(--space-2);
19067
+ }
19068
+
19069
+ .stack-gap-3 {
19070
+ gap: var(--space-3);
19071
+ }
19072
+
19073
+ .stack-gap-4 {
19074
+ gap: var(--space-4);
19075
+ }
19076
+
19077
+ .stack-gap-5 {
19078
+ gap: var(--space-5);
19079
+ }
19080
+
19081
+ .stack-gap-6 {
19082
+ gap: var(--space-6);
19083
+ }
19084
+
19085
+ .stack-gap-8 {
19086
+ gap: var(--space-8);
19087
+ }
19088
+
19089
+ .stack-gap-10 {
19090
+ gap: var(--space-10);
19091
+ }
19092
+
19093
+ .stack-gap-12 {
19094
+ gap: var(--space-12);
19095
+ }
19096
+
19097
+ .stack-wrap {
19098
+ flex-wrap: wrap;
19099
+ }
19100
+
19101
+ .stack-nowrap {
19102
+ flex-wrap: nowrap;
19103
+ }
19104
+
19105
+ .stack-wrap-reverse {
19106
+ flex-wrap: wrap-reverse;
19107
+ }
19108
+
19109
+ .stack-divider > *:not(:last-child) {
19110
+ border-bottom: 1px solid var(--border);
19111
+ padding-bottom: var(--space-3);
19112
+ margin-bottom: var(--space-3);
19113
+ }
19114
+
19115
+ .hstack-divider > *:not(:last-child) {
19116
+ border-right: 1px solid var(--border);
19117
+ padding-right: var(--space-3);
19118
+ margin-right: var(--space-3);
19119
+ }
19120
+
19121
+ @media (min-width: 576px) {
19122
+ .stack-sm-row {
19123
+ flex-direction: row;
19124
+ }
19125
+ .stack-sm-col {
19126
+ flex-direction: column;
19127
+ }
19128
+ }
19129
+ @media (min-width: 768px) {
19130
+ .stack-md-row {
19131
+ flex-direction: row;
19132
+ }
19133
+ .stack-md-col {
19134
+ flex-direction: column;
19135
+ }
19136
+ }
19137
+ @media (min-width: 1024px) {
19138
+ .stack-lg-row {
19139
+ flex-direction: row;
19140
+ }
19141
+ .stack-lg-col {
19142
+ flex-direction: column;
19143
+ }
19144
+ }
19145
+ .stack-reverse {
19146
+ flex-direction: column-reverse;
19147
+ }
19148
+
19149
+ .hstack-reverse {
19150
+ flex-direction: row-reverse;
19151
+ }
19152
+
19153
+ .spacer {
19154
+ flex: 1 1 auto;
19155
+ }
19156
+
19157
+ .stack-item-grow {
19158
+ flex-grow: 1;
19159
+ }
19160
+
19161
+ .stack-item-shrink {
19162
+ flex-shrink: 1;
19163
+ }
19164
+
19165
+ .stack-item-noshrink {
19166
+ flex-shrink: 0;
19167
+ }
19168
+
19169
+ .scroll-area {
19170
+ --scrollbar-size: 10px;
19171
+ --scrollbar-thumb: var(--gray-400);
19172
+ --scrollbar-track: var(--gray-100);
19173
+ --scrollbar-radius: 9999px;
19174
+ overflow: auto;
19175
+ scrollbar-width: thin;
19176
+ scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
19177
+ }
19178
+
19179
+ .scroll-area::-webkit-scrollbar {
19180
+ width: var(--scrollbar-size);
19181
+ height: var(--scrollbar-size);
19182
+ }
19183
+
19184
+ .scroll-area::-webkit-scrollbar-track {
19185
+ background: var(--scrollbar-track);
19186
+ border-radius: var(--scrollbar-radius);
19187
+ }
19188
+
19189
+ .scroll-area::-webkit-scrollbar-thumb {
19190
+ background: var(--scrollbar-thumb);
19191
+ border-radius: var(--scrollbar-radius);
19192
+ border: 2px solid var(--scrollbar-track);
19193
+ }
19194
+
19195
+ .scroll-area::-webkit-scrollbar-thumb:hover {
19196
+ background: var(--gray-500);
19197
+ }
19198
+
19199
+ .scroll-area::-webkit-scrollbar-corner {
19200
+ background: var(--scrollbar-track);
19201
+ }
19202
+
19203
+ .scroll-area-thin {
19204
+ --scrollbar-size: 6px;
19205
+ }
19206
+
19207
+ .scroll-area-thick {
19208
+ --scrollbar-size: 14px;
19209
+ }
19210
+
19211
+ .scroll-area-dark {
19212
+ --scrollbar-thumb: var(--gray-600);
19213
+ --scrollbar-track: var(--gray-800);
19214
+ }
19215
+
19216
+ .scroll-area-primary {
19217
+ --scrollbar-thumb: var(--primary);
19218
+ --scrollbar-track: var(--primary-100);
19219
+ }
19220
+
19221
+ .scroll-x {
19222
+ overflow-x: auto;
19223
+ overflow-y: hidden;
19224
+ }
19225
+
19226
+ .scroll-y {
19227
+ overflow-x: hidden;
19228
+ overflow-y: auto;
19229
+ }
19230
+
19231
+ .scroll-both {
19232
+ overflow: auto;
19233
+ }
19234
+
19235
+ .scroll-hidden {
19236
+ -ms-overflow-style: none;
19237
+ scrollbar-width: none;
19238
+ }
19239
+ .scroll-hidden::-webkit-scrollbar {
19240
+ display: none;
19241
+ }
19242
+
19243
+ .scroll-hover {
19244
+ overflow: hidden;
19245
+ }
19246
+ .scroll-hover:hover {
19247
+ overflow: auto;
19248
+ }
19249
+ .scroll-hover::-webkit-scrollbar-thumb {
19250
+ background: transparent;
19251
+ }
19252
+ .scroll-hover:hover::-webkit-scrollbar-thumb {
19253
+ background: var(--scrollbar-thumb);
19254
+ }
19255
+
19256
+ .scroll-snap-x {
19257
+ scroll-snap-type: x mandatory;
19258
+ }
19259
+ .scroll-snap-x > * {
19260
+ scroll-snap-align: start;
19261
+ }
19262
+
19263
+ .scroll-snap-y {
19264
+ scroll-snap-type: y mandatory;
19265
+ }
19266
+ .scroll-snap-y > * {
19267
+ scroll-snap-align: start;
19268
+ }
19269
+
19270
+ .scroll-snap-center > * {
19271
+ scroll-snap-align: center;
19272
+ }
19273
+
19274
+ .scroll-snap-end > * {
19275
+ scroll-snap-align: end;
19276
+ }
19277
+
19278
+ .scroll-smooth {
19279
+ scroll-behavior: smooth;
19280
+ }
19281
+
19282
+ .scroll-max-h-sm {
19283
+ max-height: 200px;
19284
+ }
19285
+
19286
+ .scroll-max-h-md {
19287
+ max-height: 400px;
19288
+ }
19289
+
19290
+ .scroll-max-h-lg {
19291
+ max-height: 600px;
19292
+ }
19293
+
19294
+ .scroll-max-h-screen {
19295
+ max-height: 100vh;
19296
+ }
19297
+
19298
+ .scroll-shadow {
19299
+ position: relative;
19300
+ }
19301
+ .scroll-shadow::before, .scroll-shadow::after {
19302
+ content: "";
19303
+ position: sticky;
19304
+ left: 0;
19305
+ right: 0;
19306
+ height: 20px;
19307
+ pointer-events: none;
19308
+ z-index: 1;
19309
+ }
19310
+ .scroll-shadow::before {
19311
+ top: 0;
19312
+ background: linear-gradient(to bottom, var(--bg), transparent);
19313
+ }
19314
+ .scroll-shadow::after {
19315
+ bottom: 0;
19316
+ background: linear-gradient(to top, var(--bg), transparent);
19317
+ }
19318
+
19319
+ .kbd {
19320
+ display: inline-flex;
19321
+ align-items: center;
19322
+ justify-content: center;
19323
+ min-width: 1.5em;
19324
+ padding: 0.15em 0.4em;
19325
+ font-family: var(--font-mono);
19326
+ font-size: 0.875em;
19327
+ font-weight: 500;
19328
+ line-height: 1.4;
19329
+ color: var(--text);
19330
+ background-color: var(--gray-100);
19331
+ border: 1px solid var(--gray-300);
19332
+ border-radius: 0.25rem;
19333
+ box-shadow: 0 1px 0 1px var(--gray-200), 0 2px 0 0 var(--gray-100), inset 0 -1px 0 0 var(--gray-200);
19334
+ white-space: nowrap;
19335
+ vertical-align: baseline;
19336
+ }
19337
+
19338
+ [data-theme=dark] .kbd,
19339
+ .kbd-dark {
19340
+ background-color: var(--gray-800);
19341
+ border-color: var(--gray-600);
19342
+ color: var(--gray-100);
19343
+ box-shadow: 0 1px 0 1px var(--gray-700), 0 2px 0 0 var(--gray-800), inset 0 -1px 0 0 var(--gray-700);
19344
+ }
19345
+
19346
+ .kbd-sm {
19347
+ font-size: 0.75em;
19348
+ padding: 0.1em 0.3em;
19349
+ min-width: 1.25em;
19350
+ }
19351
+
19352
+ .kbd-lg {
19353
+ font-size: 1em;
19354
+ padding: 0.2em 0.5em;
19355
+ min-width: 1.75em;
19356
+ }
19357
+
19358
+ .kbd-outline {
19359
+ background: transparent;
19360
+ box-shadow: none;
19361
+ }
19362
+
19363
+ .kbd-flat {
19364
+ box-shadow: none;
19365
+ border-bottom-width: 2px;
19366
+ }
19367
+
19368
+ .kbd-group {
19369
+ display: inline-flex;
19370
+ align-items: center;
19371
+ gap: 0.25rem;
19372
+ }
19373
+
19374
+ .kbd-separator {
19375
+ color: var(--text-muted);
19376
+ font-size: 0.75em;
19377
+ margin: 0 0.125rem;
19378
+ }
19379
+ .kbd-separator::before {
19380
+ content: "+";
19381
+ }
19382
+
19383
+ .kbd-then {
19384
+ color: var(--text-muted);
19385
+ font-size: 0.75em;
19386
+ margin: 0 0.25rem;
19387
+ }
19388
+ .kbd-then::before {
19389
+ content: "then";
19390
+ }
19391
+
19392
+ .kbd-icon {
19393
+ display: inline-flex;
19394
+ align-items: center;
19395
+ justify-content: center;
19396
+ }
19397
+ .kbd-icon svg {
19398
+ width: 1em;
19399
+ height: 1em;
19400
+ }
19401
+
19402
+ .kbd-cmd::before {
19403
+ content: "⌘";
19404
+ }
19405
+
19406
+ .kbd-shift::before {
19407
+ content: "⇧";
19408
+ }
19409
+
19410
+ .kbd-option::before {
19411
+ content: "⌥";
19412
+ }
19413
+
19414
+ .kbd-ctrl::before {
19415
+ content: "⌃";
19416
+ }
19417
+
19418
+ .kbd-enter::before {
19419
+ content: "↵";
19420
+ }
19421
+
19422
+ .kbd-tab::before {
19423
+ content: "⇥";
19424
+ }
19425
+
19426
+ .kbd-backspace::before {
19427
+ content: "⌫";
19428
+ }
19429
+
19430
+ .kbd-delete::before {
19431
+ content: "⌦";
19432
+ }
19433
+
19434
+ .kbd-escape::before {
19435
+ content: "⎋";
19436
+ }
19437
+
19438
+ .kbd-up::before {
19439
+ content: "↑";
19440
+ }
19441
+
19442
+ .kbd-down::before {
19443
+ content: "↓";
19444
+ }
19445
+
19446
+ .kbd-left::before {
19447
+ content: "←";
19448
+ }
19449
+
19450
+ .kbd-right::before {
19451
+ content: "→";
19452
+ }
19453
+
19454
+ .kbd-space::before {
19455
+ content: "␣";
19456
+ }
19457
+
19458
+ .kbd-caps::before {
19459
+ content: "⇪";
19460
+ }
19461
+
19462
+ p .kbd,
19463
+ span .kbd,
19464
+ li .kbd {
19465
+ margin: 0 0.125rem;
19466
+ }
19467
+
19468
+ .kbd-tooltip {
19469
+ background-color: var(--gray-900);
19470
+ color: var(--white);
19471
+ border-color: var(--gray-700);
19472
+ box-shadow: none;
19473
+ font-size: 0.7em;
19474
+ }
19475
+
19476
+ .aspect-ratio {
19477
+ position: relative;
19478
+ width: 100%;
19479
+ }
19480
+ .aspect-ratio > * {
19481
+ position: absolute;
19482
+ top: 0;
19483
+ left: 0;
19484
+ width: 100%;
19485
+ height: 100%;
19486
+ object-fit: cover;
19487
+ }
19488
+ .aspect-ratio > img,
19489
+ .aspect-ratio > video,
19490
+ .aspect-ratio > iframe {
19491
+ object-fit: cover;
19492
+ }
19493
+
19494
+ .aspect-square {
19495
+ aspect-ratio: 1/1;
19496
+ }
19497
+
19498
+ .aspect-video {
19499
+ aspect-ratio: 16/9;
19500
+ }
19501
+
19502
+ .aspect-wide {
19503
+ aspect-ratio: 21/9;
19504
+ }
19505
+
19506
+ .aspect-cinema {
19507
+ aspect-ratio: 2.35/1;
19508
+ }
19509
+
19510
+ .aspect-portrait {
19511
+ aspect-ratio: 3/4;
19512
+ }
19513
+
19514
+ .aspect-4-3 {
19515
+ aspect-ratio: 4/3;
19516
+ }
19517
+
19518
+ .aspect-3-2 {
19519
+ aspect-ratio: 3/2;
19520
+ }
19521
+
19522
+ .aspect-golden {
19523
+ aspect-ratio: 1.618/1;
19524
+ }
19525
+
19526
+ .aspect-ratio-box {
19527
+ position: relative;
19528
+ width: 100%;
19529
+ height: 0;
19530
+ }
19531
+ .aspect-ratio-box > * {
19532
+ position: absolute;
19533
+ top: 0;
19534
+ left: 0;
19535
+ width: 100%;
19536
+ height: 100%;
19537
+ }
19538
+
19539
+ .aspect-ratio-box-square {
19540
+ padding-bottom: 100%;
19541
+ }
19542
+
19543
+ .aspect-ratio-box-video {
19544
+ padding-bottom: 56.25%;
19545
+ }
19546
+
19547
+ .aspect-ratio-box-4-3 {
19548
+ padding-bottom: 75%;
19549
+ }
19550
+
19551
+ .aspect-ratio-box-3-2 {
19552
+ padding-bottom: 66.67%;
19553
+ }
19554
+
19555
+ .aspect-ratio-box-21-9 {
19556
+ padding-bottom: 42.86%;
19557
+ }
19558
+
19559
+ .aspect-contain > * {
19560
+ object-fit: contain;
19561
+ }
19562
+
19563
+ .aspect-cover > * {
19564
+ object-fit: cover;
19565
+ }
19566
+
19567
+ .aspect-fill > * {
19568
+ object-fit: fill;
19569
+ }
19570
+
19571
+ .aspect-none > * {
19572
+ object-fit: none;
19573
+ }
19574
+
19575
+ .aspect-scale-down > * {
19576
+ object-fit: scale-down;
19577
+ }
19578
+
19579
+ .aspect-top > * {
19580
+ object-position: top;
19581
+ }
19582
+
19583
+ .aspect-bottom > * {
19584
+ object-position: bottom;
19585
+ }
19586
+
19587
+ .aspect-left > * {
19588
+ object-position: left;
19589
+ }
19590
+
19591
+ .aspect-right > * {
19592
+ object-position: right;
19593
+ }
19594
+
19595
+ .aspect-center > * {
19596
+ object-position: center;
19597
+ }
19598
+
19599
+ .aspect-bg {
19600
+ background-size: cover;
19601
+ background-position: center;
19602
+ background-repeat: no-repeat;
19603
+ }
19604
+
19605
+ @media (min-width: 640px) {
19606
+ .sm\:aspect-square {
19607
+ aspect-ratio: 1/1;
19608
+ }
19609
+ .sm\:aspect-video {
19610
+ aspect-ratio: 16/9;
19611
+ }
19612
+ .sm\:aspect-4-3 {
19613
+ aspect-ratio: 4/3;
19614
+ }
19615
+ }
19616
+ @media (min-width: 768px) {
19617
+ .md\:aspect-square {
19618
+ aspect-ratio: 1/1;
19619
+ }
19620
+ .md\:aspect-video {
19621
+ aspect-ratio: 16/9;
19622
+ }
19623
+ .md\:aspect-4-3 {
19624
+ aspect-ratio: 4/3;
19625
+ }
19626
+ }
19627
+ @media (min-width: 1024px) {
19628
+ .lg\:aspect-square {
19629
+ aspect-ratio: 1/1;
19630
+ }
19631
+ .lg\:aspect-video {
19632
+ aspect-ratio: 16/9;
19633
+ }
19634
+ .lg\:aspect-4-3 {
19635
+ aspect-ratio: 4/3;
19636
+ }
19637
+ }
19638
+ .otp {
19639
+ display: inline-flex;
19640
+ gap: 0.5rem;
19641
+ align-items: center;
19642
+ }
19643
+
19644
+ .otp-group {
19645
+ display: inline-flex;
19646
+ gap: 0.25rem;
19647
+ }
19648
+
19649
+ .otp-input {
19650
+ width: 2.5rem;
19651
+ height: 3rem;
19652
+ padding: 0;
19653
+ font-family: var(--font-mono);
19654
+ font-size: 1.25rem;
19655
+ font-weight: 600;
19656
+ text-align: center;
19657
+ color: var(--text);
19658
+ background-color: var(--bg);
19659
+ border: 2px solid var(--border);
19660
+ border-radius: 0.375rem;
19661
+ transition: border-color 200ms ease-in-out, box-shadow 200ms ease-in-out;
19662
+ caret-color: var(--primary);
19663
+ }
19664
+ .otp-input::placeholder {
19665
+ color: var(--gray-300);
19666
+ }
19667
+ .otp-input:focus {
19668
+ outline: none;
19669
+ border-color: var(--primary);
19670
+ box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.15);
19671
+ }
19672
+ .otp-input::-webkit-outer-spin-button, .otp-input::-webkit-inner-spin-button {
19673
+ -webkit-appearance: none;
19674
+ margin: 0;
19675
+ }
19676
+ .otp-input[type=number] {
19677
+ -moz-appearance: textfield;
19678
+ }
19679
+
19680
+ .otp-sm .otp-input {
19681
+ width: 2rem;
19682
+ height: 2.5rem;
19683
+ font-size: 1rem;
19684
+ }
19685
+
19686
+ .otp-lg .otp-input {
19687
+ width: 3rem;
19688
+ height: 3.5rem;
19689
+ font-size: 1.5rem;
19690
+ }
19691
+
19692
+ .otp-separator {
19693
+ display: flex;
19694
+ align-items: center;
19695
+ justify-content: center;
19696
+ width: 1rem;
19697
+ color: var(--text-muted);
19698
+ font-size: 1.25rem;
19699
+ }
19700
+ .otp-separator::before {
19701
+ content: "-";
19702
+ }
19703
+
19704
+ .otp-separator-dot::before {
19705
+ content: "•";
19706
+ }
19707
+
19708
+ .otp-input:disabled {
19709
+ background-color: var(--bg-muted);
19710
+ cursor: not-allowed;
19711
+ opacity: 0.6;
19712
+ }
19713
+
19714
+ .otp-input[readonly] {
19715
+ background-color: var(--bg-muted);
19716
+ cursor: default;
19717
+ }
19718
+
19719
+ .otp-error .otp-input {
19720
+ border-color: var(--danger);
19721
+ }
19722
+ .otp-error .otp-input:focus {
19723
+ border-color: var(--danger);
19724
+ box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.15);
19725
+ }
19726
+
19727
+ .otp-success .otp-input {
19728
+ border-color: var(--success);
19729
+ }
19730
+ .otp-success .otp-input:focus {
19731
+ border-color: var(--success);
19732
+ box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
19733
+ }
19734
+
19735
+ .otp-input.filled,
19736
+ .otp-input:not(:placeholder-shown) {
19737
+ border-color: var(--primary-300);
19738
+ background-color: var(--primary-50);
19739
+ }
19740
+
19741
+ .otp-underline .otp-input {
19742
+ border-width: 0 0 2px 0;
19743
+ border-radius: 0;
19744
+ background: transparent;
19745
+ }
19746
+ .otp-underline .otp-input:focus {
19747
+ box-shadow: none;
19748
+ border-color: var(--primary);
19749
+ }
19750
+
19751
+ .otp-rounded .otp-input {
19752
+ border-radius: 9999px;
19753
+ }
19754
+
19755
+ .otp-ghost .otp-input {
19756
+ border-color: transparent;
19757
+ background-color: var(--gray-100);
19758
+ }
19759
+ .otp-ghost .otp-input:focus {
19760
+ background-color: var(--bg);
19761
+ border-color: var(--primary);
19762
+ }
19763
+
19764
+ .otp-mask .otp-input {
19765
+ -webkit-text-security: disc;
19766
+ text-security: disc;
19767
+ }
19768
+
19769
+ .otp-help {
19770
+ display: block;
19771
+ margin-top: 0.5rem;
19772
+ font-size: var(--text-sm);
19773
+ color: var(--text-muted);
19774
+ }
19775
+
19776
+ .otp-error .otp-help {
19777
+ color: var(--danger);
19778
+ }
19779
+
19780
+ .otp-resend {
19781
+ display: block;
19782
+ margin-top: 1rem;
19783
+ font-size: var(--text-sm);
19784
+ color: var(--text-muted);
19785
+ text-align: center;
19786
+ }
19787
+
19788
+ .otp-resend-link {
19789
+ color: var(--primary);
19790
+ cursor: pointer;
19791
+ text-decoration: none;
19792
+ }
19793
+ .otp-resend-link:hover {
19794
+ text-decoration: underline;
19795
+ }
19796
+ .otp-resend-link:disabled, .otp-resend-link.disabled {
19797
+ color: var(--text-muted);
19798
+ cursor: not-allowed;
19799
+ }
19800
+
19801
+ .otp-timer {
19802
+ font-weight: 500;
19803
+ color: var(--text);
19804
+ }
19805
+
19806
+ [data-theme=dark] .otp-input {
19807
+ background-color: var(--gray-800);
19808
+ border-color: var(--gray-600);
19809
+ }
19810
+ [data-theme=dark] .otp-input:focus {
19811
+ background-color: var(--gray-900);
19812
+ }
19813
+ [data-theme=dark] .otp-ghost .otp-input {
19814
+ background-color: var(--gray-700);
19815
+ }
19816
+ [data-theme=dark] .otp-ghost .otp-input:focus {
19817
+ background-color: var(--gray-800);
19818
+ }
19819
+ [data-theme=dark] .otp-input.filled,
19820
+ [data-theme=dark] .otp-input:not(:placeholder-shown) {
19821
+ background-color: var(--gray-700);
19822
+ }
19823
+
18835
19824
  .accordion {
18836
19825
  --accordion-color: var(--text);
18837
19826
  --accordion-bg: transparent;