@dragunio/fe-libs 0.1.1 → 0.1.3

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
@@ -42,7 +42,7 @@
42
42
  .fe-button--32 {
43
43
  min-height: 32px;
44
44
  padding: 6px 14px;
45
- border-radius: 18px;
45
+ border-radius: 999px;
46
46
  font-size: 14px;
47
47
  }
48
48
  .fe-button--40 {
@@ -182,16 +182,18 @@
182
182
  color: #a36200;
183
183
  }
184
184
  .fe-button--icon-only {
185
- width: 24px;
186
- min-width: 0;
185
+ min-width: 24px;
186
+ min-height: 24px;
187
187
  padding: 4px;
188
188
  }
189
189
  .fe-button--icon-only.fe-button--32 {
190
- width: 32px;
190
+ min-width: 32px;
191
+ min-height: 32px;
191
192
  padding: 6px;
192
193
  }
193
194
  .fe-button--icon-only.fe-button--40 {
194
- width: 40px;
195
+ min-width: 40px;
196
+ min-height: 40px;
195
197
  padding: 10px;
196
198
  }
197
199
  .fe-button--align-center {
@@ -220,6 +222,22 @@
220
222
  border-radius: var(--fe-table-radius, 10px);
221
223
  background: var(--fe-table-background, #fff);
222
224
  }
225
+ .fe-table__pagination {
226
+ display: flex;
227
+ padding: 14px 16px;
228
+ border-bottom: 1px solid var(--fe-table-border, #e3e7ee);
229
+ }
230
+ .fe-table__pagination--top-right,
231
+ .fe-table__pagination--bottom-right {
232
+ justify-content: flex-end;
233
+ }
234
+ .fe-table__pagination--bottom-center {
235
+ justify-content: center;
236
+ }
237
+ .fe-table > .fe-table__table + .fe-table__pagination {
238
+ border-top: 1px solid var(--fe-table-border, #e3e7ee);
239
+ border-bottom: 0;
240
+ }
223
241
  .fe-table__table,
224
242
  table[data-fe-table] {
225
243
  width: max-content;
@@ -296,4 +314,1418 @@ table[data-fe-table] tbody tr:hover {
296
314
  box-shadow: 0 0 0 2px var(--fe-table-focus-ring, #2563eb);
297
315
  }
298
316
 
317
+ /* packages/toggle/src/styles.css */
318
+ .fe-toggle {
319
+ --fe-toggle-color: #16a34a;
320
+ --fe-toggle-off: #98a2b3;
321
+ position: relative;
322
+ display: inline-flex;
323
+ align-items: center;
324
+ gap: 8px;
325
+ color: #20242c;
326
+ cursor: pointer;
327
+ font: inherit;
328
+ line-height: 1.25;
329
+ }
330
+ .fe-toggle__input {
331
+ position: absolute;
332
+ width: 1px;
333
+ height: 1px;
334
+ margin: -1px;
335
+ overflow: hidden;
336
+ clip: rect(0 0 0 0);
337
+ white-space: nowrap;
338
+ border: 0;
339
+ }
340
+ .fe-toggle__control {
341
+ display: inline-flex;
342
+ width: 40px;
343
+ height: 24px;
344
+ flex: 0 0 auto;
345
+ align-items: center;
346
+ padding: 3px;
347
+ border-radius: 999px;
348
+ background: var(--fe-toggle-off);
349
+ box-shadow: inset 0 0 0 1px rgb(16 24 40 / 8%);
350
+ transition: background-color .18s ease;
351
+ }
352
+ .fe-toggle__control::after {
353
+ width: 18px;
354
+ height: 18px;
355
+ border-radius: 50%;
356
+ background: #fff;
357
+ box-shadow: 0 1px 2px rgb(16 24 40 / 22%);
358
+ content: "";
359
+ transition: transform .18s ease;
360
+ }
361
+ .fe-toggle__input:checked + .fe-toggle__control {
362
+ background: var(--fe-toggle-color);
363
+ }
364
+ .fe-toggle__input:checked + .fe-toggle__control::after {
365
+ transform: translateX(16px);
366
+ }
367
+ .fe-toggle__input:focus-visible + .fe-toggle__control {
368
+ outline: 3px solid color-mix(in srgb, var(--fe-toggle-color), transparent 65%);
369
+ outline-offset: 2px;
370
+ }
371
+ .fe-toggle__input:disabled + .fe-toggle__control {
372
+ opacity: .52;
373
+ }
374
+ .fe-toggle:has(.fe-toggle__input:disabled) {
375
+ cursor: not-allowed;
376
+ }
377
+ .fe-toggle__label {
378
+ user-select: none;
379
+ }
380
+
381
+ /* packages/drawer/src/styles.css */
382
+ .fe-drawer-backdrop {
383
+ position: fixed;
384
+ z-index: 1000;
385
+ inset: 0;
386
+ display: flex;
387
+ background: rgba(15, 18, 25, 0.45);
388
+ animation: fe-drawer-fade 0.18s ease;
389
+ }
390
+ .fe-drawer {
391
+ display: flex;
392
+ flex-direction: column;
393
+ height: 100vh;
394
+ max-width: calc(100vw - 32px);
395
+ overflow: hidden;
396
+ background: #fff;
397
+ color: #20242c;
398
+ box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
399
+ }
400
+ .fe-drawer--right {
401
+ width: min(420px, 100%);
402
+ height: 100%;
403
+ margin-left: auto;
404
+ animation: fe-drawer-in-right 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
405
+ }
406
+ .fe-drawer--left {
407
+ width: min(420px, 100%);
408
+ height: 100%;
409
+ animation: fe-drawer-in-left 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
410
+ }
411
+ .fe-drawer--top {
412
+ width: 100%;
413
+ animation: fe-drawer-in-top 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
414
+ }
415
+ .fe-drawer--bottom {
416
+ width: 100%;
417
+ margin-top: auto;
418
+ animation: fe-drawer-in-bottom 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
419
+ }
420
+ .fe-drawer--full-screen {
421
+ width: 100vw;
422
+ height: 100vh;
423
+ max-width: none;
424
+ max-height: none;
425
+ margin: 0;
426
+ border-radius: 0;
427
+ }
428
+ .fe-drawer__header,
429
+ .fe-drawer__footer {
430
+ display: flex;
431
+ flex: 0 0 auto;
432
+ align-items: center;
433
+ justify-content: space-between;
434
+ gap: 12px;
435
+ min-height: 62px;
436
+ padding: 0 24px;
437
+ }
438
+ .fe-drawer__header {
439
+ border-bottom: 1px solid #e8eaee;
440
+ }
441
+ .fe-drawer__footer {
442
+ min-height: 72px;
443
+ border-top: 1px solid #e8eaee;
444
+ }
445
+ .fe-drawer__header h2 {
446
+ margin: 0;
447
+ font-size: 18px;
448
+ }
449
+ .fe-drawer__header button {
450
+ width: 32px;
451
+ height: 32px;
452
+ border: 0;
453
+ border-radius: 50%;
454
+ background: transparent;
455
+ color: #535b6a;
456
+ font-size: 26px;
457
+ line-height: 1;
458
+ cursor: pointer;
459
+ }
460
+ .fe-drawer__header button:hover {
461
+ background: #f1f3f6;
462
+ }
463
+ .fe-drawer__body {
464
+ flex: 1 1 auto;
465
+ min-height: 0;
466
+ overflow: auto;
467
+ padding: 24px;
468
+ }
469
+ @keyframes fe-drawer-fade {
470
+ from {
471
+ opacity: 0;
472
+ }
473
+ to {
474
+ opacity: 1;
475
+ }
476
+ }
477
+ @keyframes fe-drawer-in-right {
478
+ from {
479
+ transform: translateX(100%);
480
+ }
481
+ to {
482
+ transform: translateX(0);
483
+ }
484
+ }
485
+ @keyframes fe-drawer-in-left {
486
+ from {
487
+ transform: translateX(-100%);
488
+ }
489
+ to {
490
+ transform: translateX(0);
491
+ }
492
+ }
493
+ @keyframes fe-drawer-in-top {
494
+ from {
495
+ transform: translateY(-100%);
496
+ }
497
+ to {
498
+ transform: translateY(0);
499
+ }
500
+ }
501
+ @keyframes fe-drawer-in-bottom {
502
+ from {
503
+ transform: translateY(100%);
504
+ }
505
+ to {
506
+ transform: translateY(0);
507
+ }
508
+ }
509
+
510
+ /* packages/form-controls/src/styles.css */
511
+ .fe-selection,
512
+ .fe-number-input,
513
+ .fe-datetime-picker,
514
+ .fe-text-input,
515
+ .fe-text-area {
516
+ display: grid;
517
+ min-width: 0;
518
+ gap: 6px;
519
+ font: inherit;
520
+ color: #20242c;
521
+ }
522
+ .fe-selection__label,
523
+ .fe-number-input__label,
524
+ .fe-datetime-picker__label,
525
+ .fe-text-input__label,
526
+ .fe-text-area__label {
527
+ font-size: 13px;
528
+ font-weight: 600;
529
+ }
530
+ .fe-selection__control {
531
+ position: relative;
532
+ width: 100%;
533
+ min-width: 0;
534
+ }
535
+ .fe-selection__trigger,
536
+ .fe-number-input input,
537
+ .fe-text-input input,
538
+ .fe-text-area textarea {
539
+ width: 100%;
540
+ min-height: 42px;
541
+ padding: 0 13px;
542
+ border: 1px solid #d4d8e0;
543
+ border-radius: 12px;
544
+ background: #fff;
545
+ color: #20242c;
546
+ font: inherit;
547
+ outline: 0;
548
+ transition:
549
+ border-color 0.15s,
550
+ box-shadow 0.15s,
551
+ background 0.15s;
552
+ }
553
+ .fe-selection__trigger {
554
+ display: flex;
555
+ align-items: center;
556
+ text-align: left;
557
+ cursor: pointer;
558
+ }
559
+ .fe-selection--clearable .fe-selection__trigger {
560
+ padding-right: 64px;
561
+ }
562
+ .fe-selection--small .fe-selection__trigger {
563
+ min-height: 34px;
564
+ border-radius: 10px;
565
+ font-size: 13px;
566
+ }
567
+ .fe-selection__trigger:hover {
568
+ border-color: #aab0bb;
569
+ background: #fcfdff;
570
+ }
571
+ .fe-selection__trigger:focus-visible,
572
+ .fe-number-input input:focus,
573
+ .fe-datetime-picker__trigger:focus-visible,
574
+ .fe-text-input input:focus,
575
+ .fe-text-area textarea:focus {
576
+ border-color: #2878f0;
577
+ box-shadow: 0 0 0 3px rgba(40, 120, 240, 0.16);
578
+ }
579
+ .fe-selection--open .fe-selection__trigger {
580
+ border-color: #2878f0;
581
+ box-shadow: 0 0 0 3px rgba(40, 120, 240, 0.12);
582
+ }
583
+ .fe-selection__value {
584
+ display: flex;
585
+ width: 100%;
586
+ min-width: 0;
587
+ flex: 1 1 auto;
588
+ align-items: center;
589
+ overflow: hidden;
590
+ text-overflow: ellipsis;
591
+ white-space: nowrap;
592
+ }
593
+ .fe-selection__value.is-placeholder {
594
+ color: #8b94a4;
595
+ }
596
+ .fe-selection__value.is-tags {
597
+ flex-wrap: wrap;
598
+ align-content: center;
599
+ gap: 5px;
600
+ white-space: normal;
601
+ }
602
+ .fe-selection__tag {
603
+ display: inline-flex;
604
+ min-width: 0;
605
+ flex: 0 1 auto;
606
+ align-items: center;
607
+ gap: 4px;
608
+ max-width: 100%;
609
+ padding: 3px 7px;
610
+ border-radius: 7px;
611
+ background: #e7f1ff;
612
+ color: #1e60cc;
613
+ font-size: 12px;
614
+ font-weight: 600;
615
+ overflow: hidden;
616
+ text-overflow: ellipsis;
617
+ white-space: nowrap;
618
+ }
619
+ .fe-selection__tag span {
620
+ font-size: 15px;
621
+ line-height: 0.7;
622
+ }
623
+ .fe-selection__actions {
624
+ position: absolute;
625
+ top: 50%;
626
+ right: 14px;
627
+ width: 16px;
628
+ height: 16px;
629
+ transform: translateY(-50%);
630
+ pointer-events: none;
631
+ }
632
+ .fe-selection__clear {
633
+ position: absolute;
634
+ z-index: 1;
635
+ top: 50%;
636
+ right: 40px;
637
+ display: grid;
638
+ place-items: center;
639
+ width: 16px;
640
+ height: 16px;
641
+ margin: 0;
642
+ padding: 0;
643
+ border: 0;
644
+ border-radius: 50%;
645
+ background: transparent;
646
+ color: #697386;
647
+ cursor: pointer;
648
+ transform: translateY(-50%);
649
+ }
650
+ .fe-selection__clear::before,
651
+ .fe-selection__clear::after {
652
+ position: absolute;
653
+ top: 7px;
654
+ left: 2px;
655
+ width: 12px;
656
+ height: 2px;
657
+ border-radius: 999px;
658
+ background: currentColor;
659
+ content: "";
660
+ }
661
+ .fe-selection__clear::before {
662
+ transform: rotate(45deg);
663
+ }
664
+ .fe-selection__clear::after {
665
+ transform: rotate(-45deg);
666
+ }
667
+ .fe-selection__clear:hover {
668
+ background: #e8eaee;
669
+ color: #20242c;
670
+ }
671
+ .fe-selection__clear:focus-visible {
672
+ outline: 2px solid #2878f0;
673
+ outline-offset: 1px;
674
+ }
675
+ .fe-selection__chevron {
676
+ position: absolute;
677
+ top: 2px;
678
+ left: 3px;
679
+ width: 10px;
680
+ height: 10px;
681
+ border-right: 2px solid #303640;
682
+ border-bottom: 2px solid #303640;
683
+ transform: rotate(45deg);
684
+ transform-origin: center;
685
+ transition: transform 0.16s;
686
+ }
687
+ .fe-selection--open .fe-selection__chevron {
688
+ transform: rotate(225deg);
689
+ }
690
+ .fe-selection__menu {
691
+ position: absolute;
692
+ z-index: 1000;
693
+ top: calc(100% + 7px);
694
+ left: 0;
695
+ width: 100%;
696
+ min-width: 220px;
697
+ overflow: hidden;
698
+ border: 1px solid #dce1e9;
699
+ border-radius: 12px;
700
+ background: #fff;
701
+ box-shadow: 0 12px 30px rgba(30, 42, 62, 0.17);
702
+ animation: fe-selection-in 0.14s ease;
703
+ }
704
+ .fe-selection__search {
705
+ display: flex;
706
+ align-items: center;
707
+ gap: 7px;
708
+ margin: 9px 9px 5px;
709
+ padding: 0 9px;
710
+ border: 1px solid #dce1e9;
711
+ border-radius: 8px;
712
+ color: #7a8393;
713
+ }
714
+ .fe-selection__search:focus-within {
715
+ border-color: #5b9cff;
716
+ box-shadow: 0 0 0 2px rgba(40, 120, 240, 0.11);
717
+ }
718
+ .fe-selection__search input {
719
+ width: 100%;
720
+ height: 32px;
721
+ border: 0;
722
+ outline: 0;
723
+ font: inherit;
724
+ font-size: 13px;
725
+ }
726
+ .fe-selection__options {
727
+ max-height: 232px;
728
+ overflow: auto;
729
+ padding: 5px;
730
+ }
731
+ .fe-selection__options button {
732
+ display: flex;
733
+ align-items: center;
734
+ justify-content: space-between;
735
+ width: 100%;
736
+ min-height: 37px;
737
+ padding: 8px 10px;
738
+ border: 0;
739
+ border-radius: 8px;
740
+ background: transparent;
741
+ color: #303640;
742
+ font: inherit;
743
+ font-size: 13px;
744
+ text-align: left;
745
+ cursor: pointer;
746
+ }
747
+ .fe-selection__options button:hover,
748
+ .fe-selection__options button.is-active {
749
+ background: #f2f6fc;
750
+ }
751
+ .fe-selection__options button.is-selected {
752
+ background: #e7f1ff;
753
+ color: #1e60cc;
754
+ font-weight: 600;
755
+ }
756
+ .fe-selection__options button:disabled {
757
+ opacity: 0.45;
758
+ cursor: not-allowed;
759
+ }
760
+ .fe-selection__check {
761
+ font-weight: 800;
762
+ }
763
+ .fe-selection__empty {
764
+ margin: 0;
765
+ padding: 18px 10px;
766
+ color: #8b94a4;
767
+ font-size: 13px;
768
+ text-align: center;
769
+ }
770
+ .fe-selection__helper,
771
+ .fe-number-input__helper {
772
+ color: #687183;
773
+ font-size: 12px;
774
+ }
775
+ .fe-selection--error .fe-selection__trigger,
776
+ .fe-number-input--error input,
777
+ .fe-text-input--error input,
778
+ .fe-text-area--error textarea {
779
+ border-color: #d83d55;
780
+ }
781
+ .fe-selection--error .fe-selection__helper,
782
+ .fe-number-input--error .fe-number-input__helper,
783
+ .fe-number-input__error,
784
+ .fe-text-input__error,
785
+ .fe-text-area__error {
786
+ color: #b92c43;
787
+ }
788
+ .fe-selection--disabled {
789
+ opacity: 0.58;
790
+ }
791
+ .fe-selection--disabled .fe-selection__trigger {
792
+ cursor: not-allowed;
793
+ }
794
+ .fe-number-input input {
795
+ padding-right: 13px;
796
+ }
797
+ .fe-text-input__control,
798
+ .fe-text-area__control {
799
+ position: relative;
800
+ display: block;
801
+ }
802
+ .fe-text-input input,
803
+ .fe-text-area textarea {
804
+ display: block;
805
+ box-sizing: border-box;
806
+ }
807
+ .fe-text-area textarea {
808
+ min-height: 96px;
809
+ padding-top: 10px;
810
+ padding-bottom: 10px;
811
+ resize: vertical;
812
+ }
813
+ .fe-text-input__clear.fe-button,
814
+ .fe-text-area__clear.fe-button {
815
+ position: absolute;
816
+ top: 50%;
817
+ right: 8px;
818
+ min-width: 24px;
819
+ min-height: 24px;
820
+ padding: 4px;
821
+ border-radius: 50%;
822
+ transform: translateY(-50%);
823
+ }
824
+ .fe-text-input:has(.fe-text-input__clear) input {
825
+ padding-right: 42px;
826
+ }
827
+ .fe-text-area:has(.fe-text-area__clear) textarea {
828
+ padding-right: 42px;
829
+ }
830
+ .fe-text-input__helper,
831
+ .fe-text-area__helper {
832
+ color: #687183;
833
+ font-size: 12px;
834
+ }
835
+ .fe-text-input__error,
836
+ .fe-text-area__error,
837
+ .fe-number-input__error {
838
+ font-size: 12px;
839
+ }
840
+ .fe-currency-input {
841
+ position: relative;
842
+ display: flex;
843
+ align-items: start;
844
+ }
845
+ .fe-currency-input__number {
846
+ width: 100%;
847
+ }
848
+ .fe-currency-input__number input {
849
+ padding-right: 78px;
850
+ }
851
+ .fe-currency-input__suffix,
852
+ .fe-currency-input__currency {
853
+ position: absolute;
854
+ right: 11px;
855
+ top: 8px;
856
+ color: #535b6a;
857
+ font: inherit;
858
+ font-size: 13px;
859
+ font-weight: 700;
860
+ }
861
+ .fe-currency-input__currency {
862
+ top: 7px;
863
+ max-width: 90px;
864
+ border: 0;
865
+ border-left: 1px solid #d4d8e0;
866
+ background: #fff;
867
+ padding: 4px 0 4px 8px;
868
+ outline: 0;
869
+ }
870
+ .fe-currency-input:has(.fe-number-input__label) .fe-currency-input__suffix,
871
+ .fe-currency-input:has(.fe-number-input__label) .fe-currency-input__currency {
872
+ top: 31px;
873
+ }
874
+ .fe-datetime-picker {
875
+ position: relative;
876
+ }
877
+ .fe-datetime-picker__trigger {
878
+ display: flex;
879
+ align-items: center;
880
+ gap: 9px;
881
+ width: 100%;
882
+ height: 40px;
883
+ padding: 0 13px;
884
+ border: 1px solid #b8bec9;
885
+ border-radius: 12px;
886
+ background: #fff;
887
+ color: #20242c;
888
+ font: inherit;
889
+ text-align: left;
890
+ cursor: pointer;
891
+ }
892
+ .fe-datetime-picker__trigger:disabled {
893
+ opacity: 0.55;
894
+ cursor: not-allowed;
895
+ }
896
+ .fe-datetime-picker__popper {
897
+ position: absolute;
898
+ z-index: 30;
899
+ top: calc(100% + 8px);
900
+ width: 300px;
901
+ padding: 14px;
902
+ border: 1px solid #d4d8e0;
903
+ border-radius: 14px;
904
+ background: #fff;
905
+ box-shadow: 0 14px 34px rgba(22, 29, 42, 0.18);
906
+ }
907
+ .fe-datetime-picker__month {
908
+ display: flex;
909
+ align-items: center;
910
+ justify-content: space-between;
911
+ margin-bottom: 12px;
912
+ }
913
+ .fe-datetime-picker__month button,
914
+ .fe-datetime-picker__days button,
915
+ .fe-datetime-picker__range-tabs button {
916
+ border: 0;
917
+ background: transparent;
918
+ color: #252a33;
919
+ font: inherit;
920
+ cursor: pointer;
921
+ }
922
+ .fe-datetime-picker__month button {
923
+ width: 28px;
924
+ height: 28px;
925
+ border-radius: 8px;
926
+ font-size: 23px;
927
+ line-height: 1;
928
+ }
929
+ .fe-datetime-picker__month button:hover,
930
+ .fe-datetime-picker__range-tabs button:hover {
931
+ background: #f0f5ff;
932
+ }
933
+ .fe-datetime-picker__weekdays,
934
+ .fe-datetime-picker__days {
935
+ display: grid;
936
+ grid-template-columns: repeat(7, 1fr);
937
+ gap: 3px;
938
+ text-align: center;
939
+ }
940
+ .fe-datetime-picker__weekdays {
941
+ margin-bottom: 4px;
942
+ color: #7a8393;
943
+ font-size: 11px;
944
+ font-weight: 700;
945
+ }
946
+ .fe-datetime-picker__days button {
947
+ height: 32px;
948
+ border-radius: 50%;
949
+ font-size: 13px;
950
+ }
951
+ .fe-datetime-picker__days button:hover,
952
+ .fe-datetime-picker__days button.is-in-range {
953
+ background: #e7f1ff;
954
+ }
955
+ .fe-datetime-picker__days button.is-selected {
956
+ background: #2878f0;
957
+ color: #fff;
958
+ }
959
+ .fe-datetime-picker__days button.is-other-month {
960
+ color: #aab0bb;
961
+ }
962
+ .fe-datetime-picker__range-tabs {
963
+ display: flex;
964
+ gap: 4px;
965
+ margin-top: 12px;
966
+ padding: 3px;
967
+ border-radius: 9px;
968
+ background: #f5f6f8;
969
+ }
970
+ .fe-datetime-picker__range-tabs button {
971
+ flex: 1;
972
+ padding: 6px;
973
+ border-radius: 7px;
974
+ font-size: 12px;
975
+ font-weight: 700;
976
+ }
977
+ .fe-datetime-picker__range-tabs button.is-active {
978
+ background: #fff;
979
+ color: #1e60cc;
980
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
981
+ }
982
+ .fe-datetime-picker__time {
983
+ display: flex;
984
+ align-items: center;
985
+ justify-content: space-between;
986
+ margin-top: 12px;
987
+ padding-top: 12px;
988
+ border-top: 1px solid #e8eaee;
989
+ font-size: 13px;
990
+ font-weight: 600;
991
+ }
992
+ .fe-datetime-picker__time input {
993
+ border: 1px solid #d4d8e0;
994
+ border-radius: 8px;
995
+ padding: 5px;
996
+ font: inherit;
997
+ }
998
+ @keyframes fe-selection-in {
999
+ from {
1000
+ opacity: 0;
1001
+ transform: translateY(-4px);
1002
+ }
1003
+ to {
1004
+ opacity: 1;
1005
+ transform: translateY(0);
1006
+ }
1007
+ }
1008
+
1009
+ /* packages/tooltip/src/styles.css */
1010
+ .fe-tooltip {
1011
+ position: relative;
1012
+ display: inline-flex;
1013
+ }
1014
+ .fe-tooltip__content {
1015
+ position: absolute;
1016
+ z-index: 50;
1017
+ min-width: max-content;
1018
+ max-width: 260px;
1019
+ padding: 7px 9px;
1020
+ border-radius: 7px;
1021
+ background: #20242c;
1022
+ color: #fff;
1023
+ font:
1024
+ 500 12px/1.35 Inter,
1025
+ ui-sans-serif,
1026
+ system-ui,
1027
+ sans-serif;
1028
+ box-shadow: 0 5px 18px rgba(0, 0, 0, .22);
1029
+ pointer-events: none;
1030
+ }
1031
+ .fe-tooltip--top .fe-tooltip__content {
1032
+ bottom: calc(100% + 8px);
1033
+ left: 50%;
1034
+ transform: translateX(-50%);
1035
+ }
1036
+ .fe-tooltip--bottom .fe-tooltip__content {
1037
+ top: calc(100% + 8px);
1038
+ left: 50%;
1039
+ transform: translateX(-50%);
1040
+ }
1041
+ .fe-tooltip--left .fe-tooltip__content {
1042
+ right: calc(100% + 8px);
1043
+ top: 50%;
1044
+ transform: translateY(-50%);
1045
+ }
1046
+ .fe-tooltip--right .fe-tooltip__content {
1047
+ left: calc(100% + 8px);
1048
+ top: 50%;
1049
+ transform: translateY(-50%);
1050
+ }
1051
+
1052
+ /* packages/expandable-section/src/styles.css */
1053
+ .fe-expandable-section {
1054
+ overflow: hidden;
1055
+ border: 1px solid #d4d8e0;
1056
+ border-radius: 14px;
1057
+ background: #fff;
1058
+ color: #20242c;
1059
+ }
1060
+ .fe-expandable-section__trigger {
1061
+ display: flex;
1062
+ align-items: center;
1063
+ justify-content: space-between;
1064
+ width: 100%;
1065
+ min-height: 48px;
1066
+ padding: 12px 15px;
1067
+ border: 0;
1068
+ background: transparent;
1069
+ color: inherit;
1070
+ font:
1071
+ 600 14px/1.4 Inter,
1072
+ ui-sans-serif,
1073
+ system-ui,
1074
+ sans-serif;
1075
+ text-align: left;
1076
+ cursor: pointer;
1077
+ }
1078
+ .fe-expandable-section__trigger:hover {
1079
+ background: #f7f9fc;
1080
+ }
1081
+ .fe-expandable-section__trigger:focus-visible {
1082
+ outline: 3px solid rgba(40, 120, 240, 0.25);
1083
+ outline-offset: -3px;
1084
+ }
1085
+ .fe-expandable-section__chevron {
1086
+ position: relative;
1087
+ display: block;
1088
+ width: 16px;
1089
+ height: 16px;
1090
+ flex: 0 0 16px;
1091
+ }
1092
+ .fe-expandable-section__chevron::after {
1093
+ position: absolute;
1094
+ top: 2px;
1095
+ left: 3px;
1096
+ width: 10px;
1097
+ height: 10px;
1098
+ border-right: 2px solid currentColor;
1099
+ border-bottom: 2px solid currentColor;
1100
+ content: "";
1101
+ transform: rotate(45deg);
1102
+ transform-origin: center;
1103
+ transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1);
1104
+ }
1105
+ .fe-expandable-section--expanded .fe-expandable-section__chevron::after {
1106
+ transform: rotate(225deg);
1107
+ }
1108
+ .fe-expandable-section__content {
1109
+ display: grid;
1110
+ grid-template-rows: 0fr;
1111
+ visibility: hidden;
1112
+ border-top: 1px solid transparent;
1113
+ line-height: 1.55;
1114
+ transition:
1115
+ grid-template-rows 0.22s cubic-bezier(0.2, 0.8, 0.2, 1),
1116
+ border-color 0.2s ease,
1117
+ visibility 0s linear 0.22s;
1118
+ }
1119
+ .fe-expandable-section__content-inner {
1120
+ min-height: 0;
1121
+ overflow: hidden;
1122
+ padding: 0 15px;
1123
+ opacity: 0;
1124
+ transform: translateY(-5px);
1125
+ transition:
1126
+ padding 0.22s cubic-bezier(0.2, 0.8, 0.2, 1),
1127
+ opacity 0.16s ease,
1128
+ transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1);
1129
+ }
1130
+ .fe-expandable-section--expanded .fe-expandable-section__content {
1131
+ grid-template-rows: 1fr;
1132
+ visibility: visible;
1133
+ border-top-color: #e8eaee;
1134
+ transition-delay: 0s;
1135
+ }
1136
+ .fe-expandable-section--expanded .fe-expandable-section__content-inner {
1137
+ padding: 0 15px 16px;
1138
+ opacity: 1;
1139
+ transform: translateY(0);
1140
+ }
1141
+ .fe-expandable-section--disabled {
1142
+ opacity: 0.55;
1143
+ }
1144
+ .fe-expandable-section--disabled .fe-expandable-section__trigger {
1145
+ cursor: not-allowed;
1146
+ }
1147
+
1148
+ /* packages/loading/src/styles.css */
1149
+ .fe-loading {
1150
+ display: inline-flex;
1151
+ align-items: center;
1152
+ gap: 8px;
1153
+ color: #535b6a;
1154
+ font: inherit;
1155
+ }
1156
+ .fe-loading__spinner {
1157
+ display: block;
1158
+ width: var(--fe-loading-size);
1159
+ height: var(--fe-loading-size);
1160
+ box-sizing: border-box;
1161
+ flex: 0 0 auto;
1162
+ border: max(2px, calc(var(--fe-loading-size) / 9)) solid color-mix(in srgb, var(--fe-loading-color) 22%, transparent);
1163
+ border-top-color: var(--fe-loading-color);
1164
+ border-radius: 50%;
1165
+ animation: fe-loading-spin .72s linear infinite;
1166
+ }
1167
+ .fe-loading__label {
1168
+ line-height: 1.2;
1169
+ }
1170
+ .fe-loading__sr-only {
1171
+ position: absolute;
1172
+ width: 1px;
1173
+ height: 1px;
1174
+ padding: 0;
1175
+ margin: -1px;
1176
+ overflow: hidden;
1177
+ clip: rect(0, 0, 0, 0);
1178
+ white-space: nowrap;
1179
+ border: 0;
1180
+ }
1181
+ @keyframes fe-loading-spin {
1182
+ to {
1183
+ transform: rotate(360deg);
1184
+ }
1185
+ }
1186
+ @media (prefers-reduced-motion: reduce) {
1187
+ .fe-loading__spinner {
1188
+ animation-duration: 1.6s;
1189
+ }
1190
+ }
1191
+
1192
+ /* packages/skeleton/src/styles.css */
1193
+ .fe-skeleton {
1194
+ width: var(--fe-skeleton-width);
1195
+ height: var(--fe-skeleton-height);
1196
+ max-width: 100%;
1197
+ border-radius: 10px;
1198
+ background: #e8eaee;
1199
+ }
1200
+ .fe-skeleton--line {
1201
+ border-radius: 999px;
1202
+ }
1203
+ .fe-skeleton--circle {
1204
+ border-radius: 50%;
1205
+ }
1206
+ .fe-skeleton--animated {
1207
+ background:
1208
+ linear-gradient(
1209
+ 90deg,
1210
+ #e8eaee 20%,
1211
+ #f6f7f9 45%,
1212
+ #e8eaee 70%);
1213
+ background-size: 200% 100%;
1214
+ animation: fe-skeleton-shimmer 1.35s ease-in-out infinite;
1215
+ }
1216
+ @keyframes fe-skeleton-shimmer {
1217
+ to {
1218
+ background-position: -200% 0;
1219
+ }
1220
+ }
1221
+ @media (prefers-reduced-motion: reduce) {
1222
+ .fe-skeleton--animated {
1223
+ animation: none;
1224
+ }
1225
+ }
1226
+
1227
+ /* packages/modal/src/styles.css */
1228
+ .fe-modal-backdrop {
1229
+ position: fixed;
1230
+ z-index: 1100;
1231
+ inset: 0;
1232
+ display: grid;
1233
+ place-items: center;
1234
+ padding: 24px;
1235
+ background: rgba(15, 18, 25, .5);
1236
+ animation: fe-modal-fade .16s ease;
1237
+ }
1238
+ .fe-modal {
1239
+ display: flex;
1240
+ width: min(100%, 560px);
1241
+ max-height: min(720px, calc(100vh - 48px));
1242
+ flex-direction: column;
1243
+ overflow: hidden;
1244
+ border-radius: 16px;
1245
+ background: #fff;
1246
+ color: #20242c;
1247
+ box-shadow: 0 24px 64px rgba(15, 18, 25, .28);
1248
+ outline: 0;
1249
+ animation: fe-modal-in .18s cubic-bezier(.2, .8, .2, 1);
1250
+ }
1251
+ .fe-modal--small {
1252
+ max-width: 400px;
1253
+ }
1254
+ .fe-modal--medium {
1255
+ max-width: 560px;
1256
+ }
1257
+ .fe-modal--large {
1258
+ max-width: 760px;
1259
+ }
1260
+ .fe-modal--xlarge {
1261
+ max-width: 1024px;
1262
+ }
1263
+ .fe-modal--full {
1264
+ width: calc(100vw - 48px);
1265
+ max-width: none;
1266
+ max-height: calc(100vh - 48px);
1267
+ }
1268
+ .fe-modal__header {
1269
+ display: flex;
1270
+ flex: 0 0 auto;
1271
+ align-items: flex-start;
1272
+ justify-content: space-between;
1273
+ gap: 16px;
1274
+ padding: 20px 24px 16px;
1275
+ border-bottom: 1px solid #e8eaee;
1276
+ }
1277
+ .fe-modal__heading {
1278
+ min-width: 0;
1279
+ }
1280
+ .fe-modal__heading h2 {
1281
+ margin: 0;
1282
+ font-size: 18px;
1283
+ line-height: 1.35;
1284
+ }
1285
+ .fe-modal__heading p {
1286
+ margin: 5px 0 0;
1287
+ color: #687183;
1288
+ font-size: 14px;
1289
+ line-height: 1.45;
1290
+ }
1291
+ .fe-modal__header .fe-button {
1292
+ flex: 0 0 auto;
1293
+ margin: -4px -6px 0 0;
1294
+ }
1295
+ .fe-modal__body {
1296
+ min-height: 0;
1297
+ flex: 1 1 auto;
1298
+ overflow: auto;
1299
+ padding: 24px;
1300
+ }
1301
+ .fe-modal__footer {
1302
+ display: flex;
1303
+ flex: 0 0 auto;
1304
+ align-items: center;
1305
+ justify-content: space-between;
1306
+ gap: 16px;
1307
+ min-height: 72px;
1308
+ padding: 12px 24px;
1309
+ border-top: 1px solid #e8eaee;
1310
+ }
1311
+ .fe-modal__footer-content {
1312
+ min-width: 0;
1313
+ }
1314
+ .fe-modal__actions {
1315
+ display: flex;
1316
+ flex: 0 0 auto;
1317
+ flex-wrap: wrap;
1318
+ justify-content: flex-end;
1319
+ gap: 8px;
1320
+ margin-left: auto;
1321
+ }
1322
+ @keyframes fe-modal-fade {
1323
+ from {
1324
+ opacity: 0;
1325
+ }
1326
+ to {
1327
+ opacity: 1;
1328
+ }
1329
+ }
1330
+ @keyframes fe-modal-in {
1331
+ from {
1332
+ opacity: 0;
1333
+ transform: translateY(10px) scale(.985);
1334
+ }
1335
+ to {
1336
+ opacity: 1;
1337
+ transform: translateY(0) scale(1);
1338
+ }
1339
+ }
1340
+ @media (max-width: 560px) {
1341
+ .fe-modal-backdrop {
1342
+ padding: 16px;
1343
+ }
1344
+ .fe-modal,
1345
+ .fe-modal--full {
1346
+ width: 100%;
1347
+ max-height: calc(100vh - 32px);
1348
+ }
1349
+ .fe-modal__header,
1350
+ .fe-modal__body,
1351
+ .fe-modal__footer {
1352
+ padding-right: 16px;
1353
+ padding-left: 16px;
1354
+ }
1355
+ .fe-modal__footer {
1356
+ align-items: stretch;
1357
+ flex-direction: column;
1358
+ }
1359
+ .fe-modal__actions {
1360
+ width: 100%;
1361
+ margin-left: 0;
1362
+ }
1363
+ .fe-modal__actions .fe-button {
1364
+ flex: 1;
1365
+ }
1366
+ }
1367
+
1368
+ /* packages/progress/src/styles.css */
1369
+ .fe-progress {
1370
+ display: grid;
1371
+ gap: 7px;
1372
+ width: 100%;
1373
+ color: #303640;
1374
+ font: inherit;
1375
+ }
1376
+ .fe-progress__meta {
1377
+ display: flex;
1378
+ align-items: center;
1379
+ justify-content: space-between;
1380
+ gap: 12px;
1381
+ font-size: 13px;
1382
+ font-weight: 600;
1383
+ }
1384
+ .fe-progress__value {
1385
+ color: #687183;
1386
+ font-variant-numeric: tabular-nums;
1387
+ }
1388
+ .fe-progress__track {
1389
+ position: relative;
1390
+ height: 8px;
1391
+ overflow: hidden;
1392
+ border-radius: 999px;
1393
+ background: #e8eaee;
1394
+ }
1395
+ .fe-progress--small .fe-progress__track {
1396
+ height: 4px;
1397
+ }
1398
+ .fe-progress--large .fe-progress__track {
1399
+ height: 12px;
1400
+ }
1401
+ .fe-progress__indicator {
1402
+ display: block;
1403
+ width: var(--fe-progress-value);
1404
+ height: 100%;
1405
+ border-radius: inherit;
1406
+ background: var(--fe-progress-color);
1407
+ transition: width .22s ease;
1408
+ }
1409
+ .fe-progress--indeterminate .fe-progress__indicator {
1410
+ width: 42%;
1411
+ animation: fe-progress-bounce 1.2s ease-in-out infinite alternate;
1412
+ }
1413
+ @keyframes fe-progress-bounce {
1414
+ from {
1415
+ transform: translateX(-100%);
1416
+ }
1417
+ to {
1418
+ transform: translateX(238%);
1419
+ }
1420
+ }
1421
+ @media (prefers-reduced-motion: reduce) {
1422
+ .fe-progress--indeterminate .fe-progress__indicator {
1423
+ animation-duration: 2.5s;
1424
+ }
1425
+ }
1426
+
1427
+ /* packages/chip/src/styles.css */
1428
+ .fe-chip {
1429
+ --fe-chip-bg: #eef0f3;
1430
+ --fe-chip-fg: #535b6a;
1431
+ --fe-chip-border: #d4d8e0;
1432
+ display: inline-flex;
1433
+ max-width: 100%;
1434
+ align-items: center;
1435
+ gap: 6px;
1436
+ min-height: 24px;
1437
+ box-sizing: border-box;
1438
+ padding: 3px 8px;
1439
+ border: 1px solid transparent;
1440
+ border-radius: 999px;
1441
+ color: var(--fe-chip-fg);
1442
+ font: inherit;
1443
+ font-size: 12px;
1444
+ font-weight: 600;
1445
+ line-height: 1.25;
1446
+ }
1447
+ .fe-chip--default,
1448
+ .fe-chip--neutral {
1449
+ --fe-chip-bg: #eef0f3;
1450
+ --fe-chip-fg: #535b6a;
1451
+ --fe-chip-border: #d4d8e0;
1452
+ }
1453
+ .fe-chip--info {
1454
+ --fe-chip-bg: #e7f1ff;
1455
+ --fe-chip-fg: #1e60cc;
1456
+ --fe-chip-border: #94c4ff;
1457
+ }
1458
+ .fe-chip--success {
1459
+ --fe-chip-bg: #e4f8ee;
1460
+ --fe-chip-fg: #0f6c46;
1461
+ --fe-chip-border: #7fd5a7;
1462
+ }
1463
+ .fe-chip--warning {
1464
+ --fe-chip-bg: #fff3dd;
1465
+ --fe-chip-fg: #a36200;
1466
+ --fe-chip-border: #ffd493;
1467
+ }
1468
+ .fe-chip--error {
1469
+ --fe-chip-bg: #ffeaed;
1470
+ --fe-chip-fg: #b92c43;
1471
+ --fe-chip-border: #f3909d;
1472
+ }
1473
+ .fe-chip--pending {
1474
+ --fe-chip-bg: #f2eafe;
1475
+ --fe-chip-fg: #7447af;
1476
+ --fe-chip-border: #d6bafa;
1477
+ }
1478
+ .fe-chip--processing {
1479
+ --fe-chip-bg: #e2f4f7;
1480
+ --fe-chip-fg: #16718a;
1481
+ --fe-chip-border: #a8dce7;
1482
+ }
1483
+ .fe-chip--custom {
1484
+ --fe-chip-bg: color-mix(in srgb, var(--fe-chip-custom-color) 13%, #fff);
1485
+ --fe-chip-fg: var(--fe-chip-custom-color);
1486
+ --fe-chip-border: color-mix(in srgb, var(--fe-chip-custom-color) 35%, #fff);
1487
+ }
1488
+ .fe-chip--subtle {
1489
+ background: var(--fe-chip-bg);
1490
+ }
1491
+ .fe-chip--outline {
1492
+ border-color: var(--fe-chip-border);
1493
+ background: #fff;
1494
+ }
1495
+ .fe-chip--solid {
1496
+ border-color: var(--fe-chip-fg);
1497
+ background: var(--fe-chip-fg);
1498
+ color: #fff;
1499
+ }
1500
+ .fe-chip__dot {
1501
+ width: 7px;
1502
+ height: 7px;
1503
+ flex: 0 0 auto;
1504
+ border-radius: 50%;
1505
+ background: currentColor;
1506
+ }
1507
+ .fe-chip__content {
1508
+ min-width: 0;
1509
+ overflow: hidden;
1510
+ text-overflow: ellipsis;
1511
+ white-space: nowrap;
1512
+ }
1513
+ .fe-chip__remove.fe-button {
1514
+ min-width: 18px;
1515
+ min-height: 18px;
1516
+ margin: 0 -3px 0 0;
1517
+ padding: 2px;
1518
+ border-radius: 50%;
1519
+ color: inherit;
1520
+ }
1521
+ .fe-chip__remove.fe-button:hover {
1522
+ background: color-mix(in srgb, currentColor 12%, transparent);
1523
+ }
1524
+ .fe-chip--solid .fe-chip__remove.fe-button {
1525
+ color: inherit;
1526
+ }
1527
+
1528
+ /* packages/pagination/src/styles.css */
1529
+ .fe-pagination {
1530
+ display: inline-flex;
1531
+ align-items: center;
1532
+ gap: 6px;
1533
+ }
1534
+ .fe-pagination__button.fe-button {
1535
+ min-width: 40px;
1536
+ padding: 0 10px;
1537
+ justify-content: center;
1538
+ }
1539
+ .fe-pagination__button--control.fe-button {
1540
+ padding: 0;
1541
+ font-size: 24px;
1542
+ line-height: 1;
1543
+ }
1544
+ .fe-pagination__ellipsis {
1545
+ width: 28px;
1546
+ color: #667085;
1547
+ text-align: center;
1548
+ font-size: 18px;
1549
+ line-height: 40px;
1550
+ }
1551
+
1552
+ /* packages/message/src/styles.css */
1553
+ .fe-message-viewport {
1554
+ position: fixed;
1555
+ z-index: 1300;
1556
+ top: 20px;
1557
+ right: 20px;
1558
+ display: grid;
1559
+ gap: 10px;
1560
+ width: min(100% - 32px, 400px);
1561
+ pointer-events: none;
1562
+ }
1563
+ .fe-message {
1564
+ display: flex;
1565
+ align-items: flex-start;
1566
+ gap: 10px;
1567
+ padding: 12px;
1568
+ border: 1px solid;
1569
+ border-radius: 8px;
1570
+ box-shadow: 0 12px 24px rgb(16 24 40 / 16%);
1571
+ pointer-events: auto;
1572
+ animation: fe-message-enter 180ms ease-out;
1573
+ }
1574
+ .fe-message--success {
1575
+ color: #05603a;
1576
+ border-color: #a6f4c5;
1577
+ background: #ecfdf3;
1578
+ }
1579
+ .fe-message--info {
1580
+ color: #175cd3;
1581
+ border-color: #b2ddff;
1582
+ background: #eff8ff;
1583
+ }
1584
+ .fe-message--warning {
1585
+ color: #b54708;
1586
+ border-color: #fedf89;
1587
+ background: #fffaeb;
1588
+ }
1589
+ .fe-message--error {
1590
+ color: #b42318;
1591
+ border-color: #fecdca;
1592
+ background: #fef3f2;
1593
+ }
1594
+ .fe-message__icon {
1595
+ display: grid;
1596
+ flex: 0 0 auto;
1597
+ place-items: center;
1598
+ width: 20px;
1599
+ height: 20px;
1600
+ border: 1.5px solid currentColor;
1601
+ border-radius: 50%;
1602
+ font-weight: 700;
1603
+ font-size: 13px;
1604
+ line-height: 1;
1605
+ }
1606
+ .fe-message__body {
1607
+ flex: 1;
1608
+ min-width: 0;
1609
+ }
1610
+ .fe-message__title {
1611
+ display: block;
1612
+ margin-bottom: 2px;
1613
+ font-size: 14px;
1614
+ line-height: 20px;
1615
+ }
1616
+ .fe-message__content {
1617
+ font-size: 14px;
1618
+ line-height: 20px;
1619
+ }
1620
+ .fe-message__action {
1621
+ display: inline-flex;
1622
+ flex: 0 0 auto;
1623
+ }
1624
+ .fe-message__action .fe-button {
1625
+ color: inherit;
1626
+ }
1627
+ .fe-message__close.fe-button {
1628
+ flex: 0 0 auto;
1629
+ color: currentColor;
1630
+ border-color: transparent;
1631
+ }
1632
+ @keyframes fe-message-enter {
1633
+ from {
1634
+ opacity: 0;
1635
+ transform: translateX(10px);
1636
+ }
1637
+ to {
1638
+ opacity: 1;
1639
+ transform: translateX(0);
1640
+ }
1641
+ }
1642
+ @media (max-width: 520px) {
1643
+ .fe-message-viewport {
1644
+ top: 16px;
1645
+ right: 16px;
1646
+ }
1647
+ }
1648
+
1649
+ /* packages/snackbar/src/styles.css */
1650
+ .fe-snackbar {
1651
+ position: fixed;
1652
+ z-index: 1300;
1653
+ display: flex;
1654
+ width: min(100% - 32px, 480px);
1655
+ pointer-events: none;
1656
+ }
1657
+ .fe-snackbar--top {
1658
+ top: 20px;
1659
+ }
1660
+ .fe-snackbar--bottom {
1661
+ bottom: 20px;
1662
+ }
1663
+ .fe-snackbar--left {
1664
+ left: 20px;
1665
+ justify-content: flex-start;
1666
+ }
1667
+ .fe-snackbar--right {
1668
+ right: 20px;
1669
+ justify-content: flex-end;
1670
+ }
1671
+ .fe-snackbar--center {
1672
+ left: 50%;
1673
+ transform: translateX(-50%);
1674
+ justify-content: center;
1675
+ }
1676
+ .fe-snackbar__content {
1677
+ display: flex;
1678
+ align-items: center;
1679
+ gap: 12px;
1680
+ width: 100%;
1681
+ min-height: 48px;
1682
+ padding: 10px 12px 10px 16px;
1683
+ border-radius: 8px;
1684
+ background: #1d2939;
1685
+ color: #fff;
1686
+ box-shadow: 0 12px 24px rgb(16 24 40 / 22%);
1687
+ pointer-events: auto;
1688
+ animation: fe-snackbar-enter 180ms ease-out;
1689
+ }
1690
+ .fe-snackbar__message {
1691
+ flex: 1;
1692
+ font-size: 14px;
1693
+ line-height: 20px;
1694
+ }
1695
+ .fe-snackbar__action {
1696
+ display: inline-flex;
1697
+ flex: 0 0 auto;
1698
+ }
1699
+ .fe-snackbar__action .fe-button {
1700
+ color: #9cc5ff;
1701
+ }
1702
+ .fe-snackbar__close.fe-button {
1703
+ flex: 0 0 auto;
1704
+ color: #fff;
1705
+ border-color: transparent;
1706
+ }
1707
+ @keyframes fe-snackbar-enter {
1708
+ from {
1709
+ opacity: 0;
1710
+ transform: translateY(8px);
1711
+ }
1712
+ to {
1713
+ opacity: 1;
1714
+ transform: translateY(0);
1715
+ }
1716
+ }
1717
+ @media (max-width: 520px) {
1718
+ .fe-snackbar--left,
1719
+ .fe-snackbar--right {
1720
+ left: 16px;
1721
+ right: 16px;
1722
+ }
1723
+ .fe-snackbar--top {
1724
+ top: 16px;
1725
+ }
1726
+ .fe-snackbar--bottom {
1727
+ bottom: 16px;
1728
+ }
1729
+ }
1730
+
299
1731
  /* src/styles.css */