funuicss 3.7.16 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/css/fun.css CHANGED
@@ -3775,73 +3775,86 @@ padding-right: 2.5rem;
3775
3775
  right: 90px !important;
3776
3776
  }
3777
3777
 
3778
-
3779
- /* CSS Grid Table System */
3778
+ /* Base Table Grid */
3780
3779
  .table-grid {
3781
- display: grid;
3782
3780
  width: 100%;
3783
3781
  background: var(--page-bg);
3784
3782
  border-radius: var(--radius);
3785
3783
  overflow: hidden;
3786
3784
  position: relative;
3787
3785
  }
3788
- .tableHeader{
3789
- border-radius: var(--radius);
3790
- }
3791
3786
 
3792
- /* Table Head Grid */
3787
+ /* Table Head */
3793
3788
  .table-head {
3794
3789
  display: grid;
3795
- grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
3796
- gap: 2px;
3790
+ gap: 1px;
3797
3791
  background-color: var(--lighter);
3798
3792
  position: sticky;
3799
3793
  top: 0;
3800
3794
  margin-bottom: var(--space-2);
3801
- padding: 0.5rem 1rem;
3795
+ padding: 0;
3802
3796
  z-index: 10;
3803
3797
  }
3804
3798
 
3805
- /* Table Body Grid */
3799
+ /* Table Body */
3806
3800
  .table-body {
3807
- display: grid;
3801
+ display: flex;
3802
+ flex-direction: column;
3803
+ gap: 1px;
3808
3804
  }
3809
3805
 
3810
- /* Table Row Grid */
3806
+ /* Table Row */
3811
3807
  .table-row {
3812
3808
  display: grid;
3813
- grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
3814
- gap: 2px;
3815
- align-items: center;
3809
+ gap: 1px;
3810
+ align-items: stretch;
3816
3811
  position: relative;
3817
3812
  background: var(--white);
3818
- padding: 0 1rem;
3813
+ padding: 0;
3819
3814
  overflow: visible !important;
3820
3815
  }
3821
3816
 
3822
3817
  /* Header and Cell Styles */
3823
3818
  .table-header,
3824
3819
  .table-cell {
3825
- padding: 0.5rem;
3820
+ padding: 0.75rem 1rem;
3826
3821
  display: flex;
3827
3822
  align-items: center;
3828
- display: flex;
3829
- align-items: flex-start; /* Changed from center to flex-start for better text alignment */
3830
- overflow: visible; /* Changed from hidden to visible */
3831
- text-overflow: unset; /* Remove ellipsis */
3832
- white-space: normal; /* Changed from nowrap to normal */
3833
- word-wrap: break-word; /* Allow breaking long words */
3834
- word-break: break-word; /* Break words if needed */
3823
+ min-height: 3rem;
3824
+ box-sizing: border-box;
3835
3825
  }
3836
3826
 
3837
-
3827
+ /* Header specific */
3838
3828
  .table-header {
3839
3829
  background-color: var(--lighter);
3840
3830
  border: none;
3831
+ font-weight: 500;
3832
+ font-size: 0.875rem;
3833
+ letter-spacing: 0.05em;
3834
+ overflow: hidden;
3835
+ }
3836
+
3837
+ /* Cell specific */
3838
+ .table-cell {
3839
+ background: var(--white);
3840
+ border-bottom: 1px solid var(--light);
3841
+ }
3842
+
3843
+ /* Text handling classes */
3844
+ .table-cell.truncate {
3845
+ white-space: nowrap;
3846
+ overflow: hidden;
3847
+ text-overflow: ellipsis;
3848
+ }
3849
+
3850
+ .table-cell.wrap {
3851
+ white-space: normal;
3852
+ overflow-wrap: break-word;
3853
+ word-break: break-word;
3854
+ hyphens: auto;
3841
3855
  }
3842
3856
 
3843
3857
  /* Modifier Classes */
3844
- /* Bordered */
3845
3858
  .table-grid.bordered {
3846
3859
  border: var(--border);
3847
3860
  border-radius: var(--radius);
@@ -3857,44 +3870,40 @@ padding-right: 2.5rem;
3857
3870
  border-right: none;
3858
3871
  }
3859
3872
 
3860
- /* Stripped */
3861
- .table-grid.stripped .table-row:nth-child(odd) {
3873
+ .table-grid.stripped .table-row:nth-child(odd) .table-cell {
3862
3874
  background-color: var(--lighter);
3863
3875
  }
3864
3876
 
3865
- /* Hoverable */
3866
3877
  .table-grid.hoverableTr .table-row {
3867
3878
  transition: all 0.3s ease;
3868
3879
  cursor: pointer;
3869
3880
  }
3870
3881
 
3871
- .table-grid.hoverableTr .table-row:hover {
3882
+ .table-grid.hoverableTr .table-row:hover .table-cell {
3872
3883
  background-color: var(--hoverable) !important;
3884
+ }
3885
+
3886
+ .table-grid.hoverableTr .table-row:hover {
3873
3887
  transform: translateY(-1px);
3874
3888
  box-shadow: var(--raised);
3875
3889
  }
3876
3890
 
3877
3891
  /* Dark Theme */
3878
- .table-grid.dark {
3879
- background-color: var(--dark);
3880
- color: var(--white);
3881
- }
3882
-
3883
3892
  .table-grid.dark .table-header {
3884
3893
  background-color: var(--darker);
3885
3894
  color: var(--white);
3886
3895
  }
3887
3896
 
3888
- .table-grid.dark .table-row {
3897
+ .table-grid.dark .table-cell {
3889
3898
  background-color: var(--dark);
3890
3899
  color: var(--white);
3900
+ border-bottom-color: var(--dark-border);
3891
3901
  }
3892
3902
 
3893
- .table-grid.dark.stripped .table-row:nth-child(odd) {
3903
+ .table-grid.dark.stripped .table-row:nth-child(odd) .table-cell {
3894
3904
  background-color: var(--darker);
3895
3905
  }
3896
3906
 
3897
-
3898
3907
  /* Skeleton Loading */
3899
3908
  .table-row.skeleton .table-cell {
3900
3909
  background: linear-gradient(90deg, var(--lighter) 25%, var(--light) 50%, var(--lighter) 75%);
@@ -3909,19 +3918,19 @@ padding-right: 2.5rem;
3909
3918
  100% { background-position: -200% 0; }
3910
3919
  }
3911
3920
 
3912
- /* Mobile Responsive Styles */
3921
+ /* Mobile Responsive */
3913
3922
  @media (max-width: 768px) {
3914
- .table-grid {
3915
- grid-template-columns: 1fr;
3916
- gap: 0.5rem;
3923
+ .table-head {
3924
+ display: none !important;
3917
3925
  }
3918
3926
 
3919
- .table-head {
3920
- display: none; /* Hide headers on mobile */
3927
+ .table-body {
3928
+ gap: 0.5rem;
3921
3929
  }
3922
3930
 
3923
3931
  .table-row {
3924
- grid-template-columns: 1fr;
3932
+ display: flex !important;
3933
+ flex-direction: column;
3925
3934
  gap: 0.25rem;
3926
3935
  padding: 1rem;
3927
3936
  border: var(--border);
@@ -3932,11 +3941,14 @@ padding-right: 2.5rem;
3932
3941
  }
3933
3942
 
3934
3943
  .table-cell {
3935
- display: grid;
3944
+ display: grid !important;
3936
3945
  grid-template-columns: 1fr 2fr;
3937
3946
  gap: 0.5rem;
3938
3947
  padding: 0.5rem 0;
3939
3948
  border-bottom: 1px solid var(--light);
3949
+ width: 100% !important;
3950
+ min-width: 100% !important;
3951
+ max-width: 100% !important;
3940
3952
  }
3941
3953
 
3942
3954
  .table-cell:last-child {
@@ -3948,26 +3960,23 @@ padding-right: 2.5rem;
3948
3960
  font-weight: 600;
3949
3961
  color: var(--secondary);
3950
3962
  font-size: 0.875rem;
3963
+ display: flex;
3964
+ align-items: center;
3965
+ }
3966
+
3967
+ .table-cell.truncate,
3968
+ .table-cell.wrap {
3969
+ white-space: normal;
3970
+ overflow: visible;
3971
+ text-overflow: clip;
3951
3972
  }
3952
3973
 
3953
- /* Mobile specific hover effects */
3954
3974
  .table-grid.hoverableTr .table-row:hover {
3955
3975
  transform: scale(1.02);
3956
3976
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
3957
3977
  }
3958
-
3959
- /* Compact mobile view */
3960
- .table-grid.compact .table-row {
3961
- padding: 0.75rem;
3962
- }
3963
-
3964
- .table-grid.compact .table-cell {
3965
- padding: 0.25rem 0;
3966
- font-size: 0.875rem;
3967
- }
3968
3978
  }
3969
3979
 
3970
- /* Small Mobile Devices */
3971
3980
  @media (max-width: 480px) {
3972
3981
  .table-row {
3973
3982
  padding: 0.75rem;
@@ -3986,10 +3995,14 @@ padding-right: 2.5rem;
3986
3995
 
3987
3996
  /* Empty State */
3988
3997
  .table-empty {
3989
- grid-column: 1 / -1;
3998
+ display: flex;
3999
+ flex-direction: column;
4000
+ align-items: center;
4001
+ justify-content: center;
3990
4002
  text-align: center;
3991
4003
  padding: 3rem 1rem;
3992
4004
  color: var(--secondary);
4005
+ width: 100%;
3993
4006
  }
3994
4007
 
3995
4008
  .table-empty .empty-icon {
@@ -3998,17 +4011,7 @@ padding-right: 2.5rem;
3998
4011
  opacity: 0.5;
3999
4012
  }
4000
4013
 
4001
- /* Pagination */
4002
- .pagination {
4003
- display: flex;
4004
- justify-content: center;
4005
- align-items: center;
4006
- gap: 0.5rem;
4007
- padding: 1.5rem;
4008
- margin-top: 1rem;
4009
- }
4010
-
4011
- /* Animation for slide-up effect */
4014
+ /* Animations */
4012
4015
  .animated.slide-up {
4013
4016
  animation: slideUp 0.3s ease-out;
4014
4017
  }
@@ -4024,7 +4027,6 @@ padding-right: 2.5rem;
4024
4027
  }
4025
4028
  }
4026
4029
 
4027
-
4028
4030
  .first_table_data {
4029
4031
  border-top-left-radius: var(--radius);
4030
4032
  }
@@ -4032,136 +4034,6 @@ padding-right: 2.5rem;
4032
4034
  .last_table_data {
4033
4035
  border-top-right-radius: var(--radius);
4034
4036
  }
4035
- /* Complete Navigation Pagination */
4036
- .pagination {
4037
- display: flex;
4038
- align-items: center;
4039
- justify-content: center;
4040
- gap: 0.5rem;
4041
- padding: 2rem 1rem;
4042
- margin-top: 1rem;
4043
- }
4044
-
4045
- .pagination-container {
4046
- display: flex;
4047
- align-items: center;
4048
- gap: 0.75rem;
4049
- }
4050
-
4051
- /* Navigation Buttons */
4052
- .pagination-nav {
4053
- display: flex;
4054
- align-items: center;
4055
- justify-content: center;
4056
- min-width: 2.5rem;
4057
- height: 2.5rem;
4058
- border-radius: 50%;
4059
- background: var(--white);
4060
- border: 1px solid var(--light);
4061
- color: var(--dark);
4062
- transition: all 0.3s ease;
4063
- cursor: pointer;
4064
- font-size: 1.1rem;
4065
- font-weight: 600;
4066
- }
4067
-
4068
- .pagination-nav:hover:not(.pagination-nav-disabled) {
4069
- background: var(--primary);
4070
- color: var(--white);
4071
- transform: translateY(-1px);
4072
- border-color: var(--primary);
4073
- }
4074
-
4075
- .pagination-nav-disabled {
4076
- opacity: 0.3;
4077
- cursor: not-allowed;
4078
- background: var(--lighter);
4079
- }
4080
-
4081
- /* Page Number Items */
4082
- .pagination-item {
4083
- display: flex;
4084
- align-items: center;
4085
- justify-content: center;
4086
- min-width: 2.5rem;
4087
- height: 2.5rem;
4088
- border-radius: 50%;
4089
- font-weight: 500;
4090
- font-size: 0.875rem;
4091
- transition: all 0.3s ease;
4092
- cursor: pointer;
4093
- border: 1px solid transparent;
4094
- background: var(--white);
4095
- color: var(--dark);
4096
- }
4097
-
4098
- .pagination-item:hover:not(.pagination-item-active) {
4099
- background: var(--hoverable);
4100
- transform: translateY(-1px);
4101
- border-color: var(--primary);
4102
- }
4103
-
4104
- .pagination-item-active {
4105
- background: var(--primary);
4106
- color: var(--white);
4107
- transform: scale(1.05);
4108
- box-shadow: 0 4px 16px color-mix(in srgb, var(--primary) 30%, transparent);
4109
- font-weight: 600;
4110
- }
4111
-
4112
- /* Mobile Responsive */
4113
- @media (max-width: 768px) {
4114
- .pagination-container {
4115
- padding: 0.5rem 1rem;
4116
- gap: 0.5rem;
4117
- border-radius: 25px;
4118
- }
4119
-
4120
- .pagination-nav {
4121
- min-width: 2rem;
4122
- height: 2rem;
4123
- font-size: 1rem;
4124
- }
4125
-
4126
- .pagination-item {
4127
- min-width: 2rem;
4128
- height: 2rem;
4129
- font-size: 0.8rem;
4130
- }
4131
-
4132
- /* Hide middle page numbers on mobile */
4133
- .pagination-item-mobile-hidden {
4134
- display: none;
4135
- }
4136
- }
4137
-
4138
- /* Dark Theme */
4139
- .dark .pagination-container {
4140
- background: var(--darker);
4141
- border-color: var(--dark-border);
4142
- }
4143
-
4144
- .dark .pagination-nav {
4145
- background: var(--dark);
4146
- border-color: var(--dark-border);
4147
- color: var(--white);
4148
- }
4149
-
4150
- .dark .pagination-item {
4151
- background: var(--dark);
4152
- color: var(--white);
4153
- border-color: var(--dark-border);
4154
- }
4155
-
4156
- /* Animation */
4157
- @keyframes pageChange {
4158
- 0% { transform: scale(0.8); opacity: 0; }
4159
- 100% { transform: scale(1); opacity: 1; }
4160
- }
4161
-
4162
- .pagination-item-active {
4163
- animation: pageChange 0.3s ease-out;
4164
- }
4165
4037
 
4166
4038
 
4167
4039
  /*list*/
@@ -5687,6 +5559,255 @@ background-color: rgba(0, 0, 0, 0.2);
5687
5559
 
5688
5560
 
5689
5561
 
5562
+ /* store */
5563
+
5564
+ .funui_products_classname {
5565
+ max-width: 1200px;
5566
+ margin: 0 auto;
5567
+ }
5568
+
5569
+ /* Grid system */
5570
+ .funui_products_grid {
5571
+ display: grid;
5572
+ grid-gap: 2rem;
5573
+ padding: 3rem 0rem;
5574
+ }
5575
+
5576
+ /* For devices smaller than 640px */
5577
+ .grid-cols-1 {
5578
+ grid-template-columns: repeat(1, 1fr);
5579
+ }
5580
+
5581
+ /* Small devices (640px and up) */
5582
+ @media (min-width: 640px) {
5583
+ .sm\:grid-cols-2 {
5584
+ grid-template-columns: repeat(2, 1fr);
5585
+ }
5586
+ }
5587
+
5588
+ /* Medium devices (768px and up) */
5589
+ @media (min-width: 768px) {
5590
+ .md\:grid-cols-3 {
5591
+ grid-template-columns: repeat(3, 1fr);
5592
+ }
5593
+ }
5594
+
5595
+ /* Large devices (1024px and up) */
5596
+ @media (min-width: 1024px) {
5597
+ .lg\:grid-cols-4 {
5598
+ grid-template-columns: repeat(4, 1fr);
5599
+ }
5600
+ }
5601
+
5602
+ /* Product card */
5603
+ .funui_products_product_card {
5604
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
5605
+ }
5606
+
5607
+ .funui_products_product_card:hover {
5608
+ transform: translateY(-4px);
5609
+ }
5610
+
5611
+
5612
+ /* Product Card Container */
5613
+ .funui_store_product-card {
5614
+ overflow: hidden;
5615
+ transition: all 0.3s ease;
5616
+ height: 100%;
5617
+ display: flex;
5618
+ flex-direction: column;
5619
+ }
5620
+
5621
+
5622
+ /* Image Container - Perfect for all image heights */
5623
+ .funui_store_image-container {
5624
+ position: relative;
5625
+ width: 100%;
5626
+ padding-top: 100%; /* Creates 1:1 aspect ratio square */
5627
+ overflow: hidden;
5628
+ background-color: var(lighter);
5629
+ }
5630
+
5631
+ .funui_store_image-container img {
5632
+ position: absolute;
5633
+ top: 0;
5634
+ left: 0;
5635
+ width: 100%;
5636
+ height: 100%;
5637
+ object-fit: cover;
5638
+ transition: transform 0.5s ease;
5639
+ }
5640
+
5641
+ .funui_store_product-card:hover .funui_store_image-container img {
5642
+ transform: scale(1.05);
5643
+ }
5644
+
5645
+ /* Fallback for no image */
5646
+ .funui_store_no-image {
5647
+ position: absolute;
5648
+ top: 0;
5649
+ left: 0;
5650
+ width: 100%;
5651
+ height: 100%;
5652
+ display: flex;
5653
+ align-items: center;
5654
+ justify-content: center;
5655
+ background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
5656
+ }
5657
+
5658
+ /* Badges */
5659
+ .funui_store_product-badges {
5660
+ position: absolute;
5661
+ top: 12px;
5662
+ left: 12px;
5663
+ display: flex;
5664
+ flex-direction: column;
5665
+ gap: 6px;
5666
+ z-index: 2;
5667
+ }
5668
+
5669
+ .funui_store_badge {
5670
+ padding: 4px 10px;
5671
+ border-radius: 12px;
5672
+ font-size: var(--font-size-smaller);
5673
+ text-transform: uppercase;
5674
+ letter-spacing: 0.5px;
5675
+ color: white;
5676
+ display: inline-block;
5677
+ white-space: nowrap;
5678
+ }
5679
+
5680
+ .funui_store_badge.new {
5681
+ background-color: var(--success); /* Green */
5682
+ }
5683
+
5684
+ .funui_store_badge.sale {
5685
+ background-color: #ef4444; /* Red */
5686
+ }
5687
+
5688
+ .funui_store_badge.discount {
5689
+ background-color: #3b82f6; /* Blue */
5690
+ }
5691
+
5692
+ /* Product Info */
5693
+ .funui_store_product-info {
5694
+ flex: 1;
5695
+ display: flex;
5696
+ flex-direction: column;
5697
+ }
5698
+
5699
+ .funui_store_product-category {
5700
+ font-size: 12px;
5701
+ text-transform: uppercase;
5702
+ letter-spacing: 0.5px;
5703
+ opacity: 0.8;
5704
+ }
5705
+
5706
+ .funui_store_product-name {
5707
+ display: -webkit-box;
5708
+ -webkit-line-clamp: 2;
5709
+ -webkit-box-orient: vertical;
5710
+ overflow: hidden;
5711
+ }
5712
+
5713
+ /* Prices */
5714
+ .funui_store_price-container {
5715
+ display: flex;
5716
+ align-items: center;
5717
+ gap: 8px;
5718
+ margin-bottom: 8px;
5719
+ }
5720
+
5721
+ .funui_store_stock-info.out {
5722
+ color: #ef4444;
5723
+ }
5724
+
5725
+ .funui_store_stock-info.low {
5726
+ color: #f59e0b;
5727
+ }
5728
+
5729
+ .funui_store_stock-info.in {
5730
+ color: #10b981;
5731
+ }
5732
+
5733
+
5734
+
5735
+
5736
+ /* Cart container */
5737
+ .cart-icon {
5738
+ position: relative;
5739
+ background: none;
5740
+ border: none;
5741
+ cursor: pointer;
5742
+ padding: 8px;
5743
+ display: flex;
5744
+ align-items: center;
5745
+ justify-content: center;
5746
+ }
5747
+
5748
+ /* Little red absolute div on top */
5749
+ .cart-badge {
5750
+ position: absolute;
5751
+ top: 0;
5752
+ right: 0;
5753
+ min-width: 28px;
5754
+ height: 28px;
5755
+ background-color: #dc2626; /* Red color */
5756
+ color: white;
5757
+ border-radius: 9px;
5758
+ font-size: 10px;
5759
+ display: flex;
5760
+ align-items: center;
5761
+ justify-content: center;
5762
+ transform: translate(30%, -30%);
5763
+ }
5764
+
5765
+ /* Product Card Styles */
5766
+ .funui_products_main_image_container {
5767
+ aspect-ratio: 1/1;
5768
+ overflow: hidden;
5769
+ position: relative;
5770
+ }
5771
+
5772
+ .funui_products_main_image {
5773
+ width: 100%;
5774
+ height: 100%;
5775
+ object-fit: cover;
5776
+ transition: transform 0.3s ease;
5777
+ }
5778
+
5779
+ .funui_store_product-card:hover .funui_store_product-image {
5780
+ transform: scale(1.05);
5781
+ }
5782
+
5783
+ .funui_store_no-image {
5784
+ width: 100%;
5785
+ height: 100%;
5786
+ display: flex;
5787
+ align-items: center;
5788
+ justify-content: center;
5789
+ background-color: var(--lighter);
5790
+ }
5791
+
5792
+
5793
+
5794
+ /* components */
5795
+ .image-scaler-container {
5796
+ position: relative;
5797
+ overflow: hidden;
5798
+ }
5799
+
5800
+ .image-scaler-img {
5801
+ width: 100%;
5802
+ height: 100%;
5803
+ transition: transform 0.3s ease-in-out;
5804
+ display: block;
5805
+ object-fit: cover;
5806
+ }
5807
+
5808
+ .image-scaler-container:hover .image-scaler-img {
5809
+ transform: scale(1.1);
5810
+ }
5690
5811
 
5691
5812
  /* width */
5692
5813
  .w-vw{ width: 100vw !important; }
@@ -11416,3 +11537,4 @@ z-index: 10;
11416
11537
  }
11417
11538
 
11418
11539
 
11540
+