funuicss 3.7.1 → 3.7.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/css/fun.css CHANGED
@@ -459,7 +459,6 @@
459
459
  --letter-spacing-jumbo: var(--letter-spacing-tighter);
460
460
  }
461
461
 
462
- /* ===== RESPONSIVE BREAKPOINTS ===== */
463
462
 
464
463
  /* Tablet and above */
465
464
  @media (min-width: 768px) {
@@ -2239,67 +2238,208 @@ border-radius: var(--borderRadius);
2239
2238
  }
2240
2239
 
2241
2240
 
2242
- /* dropdown */
2243
- .dropdown,
2244
- .dropup {
2241
+ /* Dropdown Container */
2242
+ .dropdown-container {
2245
2243
  position: relative;
2246
- width:fit-content;
2247
- z-index: 1;
2244
+ width: fit-content;
2248
2245
  }
2249
- .dropdown .drop-menu { top: 105%; }
2250
- .dropup .drop-menu { bottom: 105%; }
2251
- .dropdown.left .drop-menu { left: 0; }
2252
- .dropdown.right .drop-menu { right: 0; }
2253
- .dropup.left .drop-menu { left: 0; }
2254
- .dropup.right .drop-menu { right: 0; }
2255
2246
 
2256
- .drop-menu {
2247
+ /* Dropdown Menu */
2248
+ .dropdown-menu {
2257
2249
  position: absolute;
2258
- box-shadow: var(--card);
2259
- transition: 0.5s;
2260
- z-index: 10; /* Higher to sit above everything */
2261
- width: 100%;
2262
- min-width: max-content !important;
2263
- overflow: visible; /* allow overflow! */
2264
- border-radius: 0.5rem;
2265
- background-color: var(--raiseThemes);
2266
- backdrop-filter: blur(2px) !important;
2250
+ z-index: 9999 !important;
2251
+ background-color: var(--lighter);
2267
2252
  border: var(--border);
2253
+ border-radius: 0.5rem;
2254
+ box-shadow: var(--card);
2255
+ backdrop-filter: blur(2px);
2256
+ overflow: auto;
2257
+ animation: dropdownFadeIn 0.15s ease-out;
2268
2258
  }
2269
2259
 
2260
+ /* Position Variants - Vertical (Top/Bottom) */
2261
+ .dropdown-menu.bottom-left {
2262
+ top: calc(100% + 8px);
2263
+ left: 0;
2264
+ }
2270
2265
 
2266
+ .dropdown-menu.bottom-right {
2267
+ top: calc(100% + 8px);
2268
+ right: 0;
2269
+ }
2271
2270
 
2272
- .dropup:hover .drop-menu {
2273
- display: block;
2274
- z-index: 1;
2271
+ .dropdown-menu.bottom {
2272
+ top: calc(100% + 8px);
2273
+ left: 50%;
2274
+ transform: translateX(-50%);
2275
2275
  }
2276
- .dropdown:hover .drop-menu {
2277
- display: block;
2278
- z-index: 1;
2276
+
2277
+ .dropdown-menu.top-left {
2278
+ bottom: calc(100% + 8px);
2279
+ left: 0;
2279
2280
  }
2280
- .drop-item {
2281
- padding: 0.6rem;
2281
+
2282
+ .dropdown-menu.top-right {
2283
+ bottom: calc(100% + 8px);
2284
+ right: 0;
2285
+ }
2286
+
2287
+ .dropdown-menu.top {
2288
+ bottom: calc(100% + 8px);
2289
+ left: 50%;
2290
+ transform: translateX(-50%);
2291
+ }
2292
+
2293
+ /* Position Variants - Horizontal (Left/Right) */
2294
+ .dropdown-menu.left {
2295
+ right: calc(100% + 8px);
2296
+ top: 0;
2297
+ }
2298
+
2299
+ .dropdown-menu.right {
2300
+ left: calc(100% + 8px);
2301
+ top: 0;
2302
+ }
2303
+
2304
+ /* Dropdown Item */
2305
+ .dropdown-item {
2306
+ padding: 0.6rem 0.8rem;
2282
2307
  cursor: pointer;
2308
+ display: flex;
2309
+ align-items: center;
2310
+ gap: 0.5rem;
2311
+ flex-wrap: nowrap;
2312
+ transition: background-color 0.15s ease;
2283
2313
  }
2284
- .drop-menu.item-hoverable > .drop-item:hover {
2314
+
2315
+ .dropdown-item:hover {
2285
2316
  background-color: var(--dark800);
2286
2317
  }
2287
- .drop-button > .rotate-up {
2288
- transition: 0.3s;
2289
- margin: 0px 5px;
2318
+
2319
+ .dropdown-item.disabled {
2320
+ cursor: not-allowed;
2321
+ opacity: 0.5;
2322
+ pointer-events: none;
2290
2323
  }
2291
- .drop-button:hover .rotate-up {
2292
- transform: rotate(180deg);
2324
+
2325
+ .dropdown-item.no-hover:hover {
2326
+ background-color: transparent;
2293
2327
  }
2294
- .drop-button > .rotate-down {
2295
- transition: 0.3s;
2296
- margin: 0px 5px;
2328
+
2329
+ /* Dropdown Item Icons */
2330
+ .dropdown-item-icon {
2331
+ line-height: 0;
2332
+ display: flex;
2333
+ align-items: center;
2297
2334
  }
2298
- .drop-button:hover .rotate-down {
2299
- transform: rotate(180deg);
2335
+
2336
+ .dropdown-item-label {
2337
+ flex: 1;
2338
+ }
2339
+
2340
+ /* Dropdown Divider */
2341
+ .dropdown-divider {
2342
+ height: 1px;
2343
+ background-color: var(--border);
2344
+ margin: 0.25rem 0;
2345
+ }
2346
+
2347
+ /* Animations */
2348
+ @keyframes dropdownFadeIn {
2349
+ from {
2350
+ opacity: 0;
2351
+ transform: translateY(-4px);
2352
+ }
2353
+ to {
2354
+ opacity: 1;
2355
+ transform: translateY(0);
2356
+ }
2357
+ }
2358
+
2359
+ /* Animation for centered positions */
2360
+ .dropdown-menu.top,
2361
+ .dropdown-menu.bottom {
2362
+ animation: dropdownFadeInCentered 0.15s ease-out;
2363
+ }
2364
+
2365
+ @keyframes dropdownFadeInCentered {
2366
+ from {
2367
+ opacity: 0;
2368
+ transform: translateX(-50%) translateY(-4px);
2369
+ }
2370
+ to {
2371
+ opacity: 1;
2372
+ transform: translateX(-50%) translateY(0);
2373
+ }
2374
+ }
2375
+
2376
+ /* Animation for top positions */
2377
+ .dropdown-menu.top-left,
2378
+ .dropdown-menu.top-right,
2379
+ .dropdown-menu.top {
2380
+ animation: dropdownFadeInTop 0.15s ease-out;
2381
+ }
2382
+
2383
+ @keyframes dropdownFadeInTop {
2384
+ from {
2385
+ opacity: 0;
2386
+ transform: translateY(4px);
2387
+ }
2388
+ to {
2389
+ opacity: 1;
2390
+ transform: translateY(0);
2391
+ }
2392
+ }
2393
+
2394
+ /* Animation for top centered */
2395
+ .dropdown-menu.top {
2396
+ animation: dropdownFadeInTopCentered 0.15s ease-out;
2397
+ }
2398
+
2399
+ @keyframes dropdownFadeInTopCentered {
2400
+ from {
2401
+ opacity: 0;
2402
+ transform: translateX(-50%) translateY(4px);
2403
+ }
2404
+ to {
2405
+ opacity: 1;
2406
+ transform: translateX(-50%) translateY(0);
2407
+ }
2408
+ }
2409
+
2410
+ /* Animation for horizontal positions */
2411
+ .dropdown-menu.left {
2412
+ animation: dropdownFadeInLeft 0.15s ease-out;
2413
+ }
2414
+
2415
+ @keyframes dropdownFadeInLeft {
2416
+ from {
2417
+ opacity: 0;
2418
+ transform: translateX(4px);
2419
+ }
2420
+ to {
2421
+ opacity: 1;
2422
+ transform: translateX(0);
2423
+ }
2424
+ }
2425
+
2426
+ .dropdown-menu.right {
2427
+ animation: dropdownFadeInRight 0.15s ease-out;
2428
+ }
2429
+
2430
+ @keyframes dropdownFadeInRight {
2431
+ from {
2432
+ opacity: 0;
2433
+ transform: translateX(-4px);
2434
+ }
2435
+ to {
2436
+ opacity: 1;
2437
+ transform: translateX(0);
2438
+ }
2300
2439
  }
2301
2440
 
2302
2441
 
2442
+
2303
2443
  /*inputs*/
2304
2444
  /*inputs*/
2305
2445
  .input {
@@ -2787,14 +2927,14 @@ select.input {
2787
2927
  padding-top: 1.3rem;
2788
2928
  padding-bottom: 0.5rem;
2789
2929
  }
2790
- }
2791
-
2792
- .fileInput{
2930
+ }/* Enhanced File Upload Styles */
2931
+ .fileInput {
2793
2932
  position: relative;
2794
2933
  width: fit-content !important;
2795
2934
  cursor: pointer;
2796
2935
  }
2797
- .filedInput{
2936
+
2937
+ .filedInput {
2798
2938
  position: absolute;
2799
2939
  top: 0;
2800
2940
  left: 0;
@@ -2806,39 +2946,103 @@ select.input {
2806
2946
  z-index: 2;
2807
2947
  }
2808
2948
 
2809
-
2810
2949
  ._upload_container {
2811
- border: 0.17rem dashed var(--borderColor);
2950
+ border: 0.17rem dashed var(--borderColor);
2812
2951
  border-radius: 16px;
2813
2952
  padding: var(--space-5);
2814
2953
  text-align: center;
2815
- transition: border-color 0.3s ease;
2954
+ transition: all 0.3s ease;
2816
2955
  cursor: pointer;
2817
2956
  margin: auto;
2818
2957
  color: var(--text-color);
2958
+ position: relative;
2959
+ overflow: hidden;
2819
2960
  }
2820
2961
 
2821
2962
  ._upload_container:hover {
2822
2963
  border-color: var(--primary);
2823
2964
  background-color: var(--lighter);
2824
- /* color: var(--primary800); */
2965
+ }
2966
+
2967
+ ._upload_container.drag-over {
2968
+ border-color: var(--primary);
2969
+ background-color: var(--lighter);
2970
+ transform: scale(1.02);
2971
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
2825
2972
  }
2826
2973
 
2827
2974
  ._upload_label {
2828
2975
  display: block;
2829
2976
  cursor: pointer;
2977
+ position: relative;
2978
+ z-index: 1;
2830
2979
  }
2831
2980
 
2832
2981
  ._upload_icon {
2833
2982
  font-size: 2.4rem;
2834
2983
  color: var(--primary);
2835
2984
  margin-bottom: 0.5rem;
2985
+ transition: all 0.3s ease;
2836
2986
  }
2837
2987
 
2838
2988
  ._upload_input {
2839
2989
  display: none;
2840
2990
  }
2841
2991
 
2992
+ /* Drag and drop overlay */
2993
+ .drag-overlay {
2994
+ position: absolute;
2995
+ top: 0;
2996
+ left: 0;
2997
+ right: 0;
2998
+ bottom: 0;
2999
+ background: var(--primary);
3000
+ opacity: 0.1;
3001
+ border-radius: 14px;
3002
+ pointer-events: none;
3003
+ }
3004
+
3005
+ /* File info display */
3006
+ .file-info {
3007
+ margin-top: var(--space-3);
3008
+ padding: var(--space-3);
3009
+ background-color: var(--light);
3010
+ border-radius: 8px;
3011
+ border: 1px solid var(--borderColor);
3012
+ display: flex;
3013
+ align-items: center;
3014
+ gap: var(--space-3);
3015
+ justify-content: center;
3016
+ animation: fadeIn 0.3s ease;
3017
+ }
3018
+
3019
+ @keyframes fadeIn {
3020
+ from {
3021
+ opacity: 0;
3022
+ transform: translateY(-10px);
3023
+ }
3024
+ to {
3025
+ opacity: 1;
3026
+ transform: translateY(0);
3027
+ }
3028
+ }
3029
+
3030
+ /* Status colors */
3031
+ ._upload_container.success {
3032
+ border-color: var(--success);
3033
+ }
3034
+
3035
+ ._upload_container.warning {
3036
+ border-color: var(--warning);
3037
+ }
3038
+
3039
+ ._upload_container.danger {
3040
+ border-color: var(--danger);
3041
+ }
3042
+
3043
+ ._upload_container.info {
3044
+ border-color: var(--info);
3045
+ }
2842
3046
 
2843
3047
  .custom-select {
2844
3048
  position: relative;
@@ -3719,53 +3923,391 @@ padding-right: 2.5rem;
3719
3923
  }
3720
3924
 
3721
3925
 
3926
+ /* CSS Grid Table System */
3927
+ .table-grid {
3928
+ display: grid;
3929
+ width: 100%;
3930
+ background: var(--page-bg);
3931
+ border-radius: var(--radius);
3932
+ overflow: hidden;
3933
+ position: relative;
3934
+ }
3935
+ .tableHeader{
3936
+ border-radius: var(--radius);
3937
+ }
3938
+
3939
+ /* Table Head Grid */
3940
+ .table-head {
3941
+ display: grid;
3942
+ grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
3943
+ gap: 2px;
3944
+ background-color: var(--lighter);
3945
+ position: sticky;
3946
+ top: 0;
3947
+ margin-bottom: var(--space-2);
3948
+ padding: 0.5rem 1rem;
3949
+ z-index: 10;
3950
+ }
3951
+
3952
+ /* Table Body Grid */
3953
+ .table-body {
3954
+ display: grid;
3955
+ }
3722
3956
 
3723
- /* tables */
3957
+ /* Table Row Grid */
3958
+ .table-row {
3959
+ display: grid;
3960
+ grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
3961
+ gap: 2px;
3962
+ align-items: center;
3963
+ position: relative;
3964
+ background: var(--white);
3965
+ padding: 0 1rem;
3966
+ overflow: visible !important;
3967
+ }
3724
3968
 
3725
- .table , table {
3726
- width: 100%;
3727
- text-align: left;
3728
- padding: 0;
3729
- border-collapse: collapse;
3969
+ /* Header and Cell Styles */
3970
+ .table-header,
3971
+ .table-cell {
3972
+ padding: 0.5rem;
3973
+ display: flex;
3974
+ align-items: center;
3975
+ display: flex;
3976
+ align-items: flex-start; /* Changed from center to flex-start for better text alignment */
3977
+ overflow: visible; /* Changed from hidden to visible */
3978
+ text-overflow: unset; /* Remove ellipsis */
3979
+ white-space: normal; /* Changed from nowrap to normal */
3980
+ word-wrap: break-word; /* Allow breaking long words */
3981
+ word-break: break-word; /* Break words if needed */
3982
+ }
3730
3983
 
3984
+
3985
+ .table-header {
3986
+ background-color: var(--lighter);
3987
+ border: none;
3731
3988
  }
3732
- .table.bordered {
3989
+
3990
+ /* Modifier Classes */
3991
+ /* Bordered */
3992
+ .table-grid.bordered {
3733
3993
  border: var(--border);
3994
+ border-radius: var(--radius);
3734
3995
  }
3735
3996
 
3997
+ .table-grid.bordered .table-header,
3998
+ .table-grid.bordered .table-cell {
3999
+ border-right: var(--border);
4000
+ }
3736
4001
 
3737
- th{font-weight: 400 !important; }
3738
- thead{ background-color: var(--lighter); border-radius: var(--radius) !important;}
4002
+ .table-grid.bordered .table-header:last-child,
4003
+ .table-grid.bordered .table-cell:last-child {
4004
+ border-right: none;
4005
+ }
3739
4006
 
4007
+ /* Stripped */
4008
+ .table-grid.stripped .table-row:nth-child(odd) {
4009
+ background-color: var(--lighter);
4010
+ }
3740
4011
 
3741
- .table.stripped tr:nth-child(odd) {
3742
- background-color: var(--lighter);
4012
+ /* Hoverable */
4013
+ .table-grid.hoverableTr .table-row {
4014
+ transition: all 0.3s ease;
4015
+ cursor: pointer;
3743
4016
  }
3744
- .table tr,
3745
- th,
3746
- td {
3747
- padding: 0.5rem;
3748
- margin: 0;
4017
+
4018
+ .table-grid.hoverableTr .table-row:hover {
4019
+ background-color: var(--hoverable) !important;
4020
+ transform: translateY(-1px);
4021
+ box-shadow: var(--raised);
3749
4022
  }
3750
- .table.hoverableTr tr,
3751
- th {
3752
- transition: 0.3s;
4023
+
4024
+ /* Dark Theme */
4025
+ .table-grid.dark {
4026
+ background-color: var(--dark);
4027
+ color: var(--white);
3753
4028
  }
3754
- .table.hoverableTr tr:hover {
3755
- filter: var(--hoverable);
3756
- background-color: var(--hoverable) !important;
4029
+
4030
+ .table-grid.dark .table-header {
4031
+ background-color: var(--darker);
4032
+ color: var(--white);
3757
4033
  }
3758
4034
 
3759
- .table.dark {
4035
+ .table-grid.dark .table-row {
3760
4036
  background-color: var(--dark);
3761
4037
  color: var(--white);
3762
4038
  }
3763
4039
 
3764
- .pagination{
4040
+ .table-grid.dark.stripped .table-row:nth-child(odd) {
4041
+ background-color: var(--darker);
4042
+ }
4043
+
4044
+
4045
+ /* Skeleton Loading */
4046
+ .table-row.skeleton .table-cell {
4047
+ background: linear-gradient(90deg, var(--lighter) 25%, var(--light) 50%, var(--lighter) 75%);
4048
+ background-size: 200% 100%;
4049
+ animation: loading 1.5s infinite;
4050
+ border-radius: 2px;
4051
+ min-height: 1rem;
4052
+ }
4053
+
4054
+ @keyframes loading {
4055
+ 0% { background-position: 200% 0; }
4056
+ 100% { background-position: -200% 0; }
4057
+ }
4058
+
4059
+ /* Mobile Responsive Styles */
4060
+ @media (max-width: 768px) {
4061
+ .table-grid {
4062
+ grid-template-columns: 1fr;
4063
+ gap: 0.5rem;
4064
+ }
4065
+
4066
+ .table-head {
4067
+ display: none; /* Hide headers on mobile */
4068
+ }
4069
+
4070
+ .table-row {
4071
+ grid-template-columns: 1fr;
4072
+ gap: 0.25rem;
4073
+ padding: 1rem;
4074
+ border: var(--border);
4075
+ border-radius: var(--radius);
4076
+ background: var(--page-bg);
4077
+ margin-bottom: 0.5rem;
4078
+ box-shadow: 0 1px 3px rgba(0,0,0,0.1);
4079
+ }
4080
+
4081
+ .table-cell {
4082
+ display: grid;
4083
+ grid-template-columns: 1fr 2fr;
4084
+ gap: 0.5rem;
4085
+ padding: 0.5rem 0;
4086
+ border-bottom: 1px solid var(--light);
4087
+ }
4088
+
4089
+ .table-cell:last-child {
4090
+ border-bottom: none;
4091
+ }
4092
+
4093
+ .table-cell::before {
4094
+ content: attr(data-label);
4095
+ font-weight: 600;
4096
+ color: var(--secondary);
4097
+ font-size: 0.875rem;
4098
+ }
4099
+
4100
+ /* Mobile specific hover effects */
4101
+ .table-grid.hoverableTr .table-row:hover {
4102
+ transform: scale(1.02);
4103
+ box-shadow: 0 4px 12px rgba(0,0,0,0.15);
4104
+ }
4105
+
4106
+ /* Compact mobile view */
4107
+ .table-grid.compact .table-row {
4108
+ padding: 0.75rem;
4109
+ }
4110
+
4111
+ .table-grid.compact .table-cell {
4112
+ padding: 0.25rem 0;
4113
+ font-size: 0.875rem;
4114
+ }
4115
+ }
4116
+
4117
+ /* Small Mobile Devices */
4118
+ @media (max-width: 480px) {
4119
+ .table-row {
4120
+ padding: 0.75rem;
4121
+ }
4122
+
4123
+ .table-cell {
4124
+ grid-template-columns: 1fr;
4125
+ gap: 0.25rem;
4126
+ }
4127
+
4128
+ .table-cell::before {
4129
+ font-size: 0.8rem;
4130
+ margin-bottom: 0.25rem;
4131
+ }
4132
+ }
4133
+
4134
+ /* Empty State */
4135
+ .table-empty {
4136
+ grid-column: 1 / -1;
4137
+ text-align: center;
4138
+ padding: 3rem 1rem;
4139
+ color: var(--secondary);
4140
+ }
4141
+
4142
+ .table-empty .empty-icon {
4143
+ font-size: 3rem;
4144
+ margin-bottom: 1rem;
4145
+ opacity: 0.5;
4146
+ }
4147
+
4148
+ /* Pagination */
4149
+ .pagination {
4150
+ display: flex;
4151
+ justify-content: center;
4152
+ align-items: center;
4153
+ gap: 0.5rem;
4154
+ padding: 1.5rem;
4155
+ margin-top: 1rem;
4156
+ }
4157
+
4158
+ /* Animation for slide-up effect */
4159
+ .animated.slide-up {
4160
+ animation: slideUp 0.3s ease-out;
4161
+ }
4162
+
4163
+ @keyframes slideUp {
4164
+ from {
4165
+ opacity: 0;
4166
+ transform: translateY(10px);
4167
+ }
4168
+ to {
4169
+ opacity: 1;
4170
+ transform: translateY(0);
4171
+ }
4172
+ }
4173
+
4174
+
4175
+ .first_table_data {
4176
+ border-top-left-radius: var(--radius);
4177
+ }
4178
+
4179
+ .last_table_data {
4180
+ border-top-right-radius: var(--radius);
4181
+ }
4182
+ /* Complete Navigation Pagination */
4183
+ .pagination {
4184
+ display: flex;
4185
+ align-items: center;
4186
+ justify-content: center;
4187
+ gap: 0.5rem;
4188
+ padding: 2rem 1rem;
4189
+ margin-top: 1rem;
4190
+ }
4191
+
4192
+ .pagination-container {
4193
+ display: flex;
4194
+ align-items: center;
4195
+ gap: 0.75rem;
4196
+ }
4197
+
4198
+ /* Navigation Buttons */
4199
+ .pagination-nav {
4200
+ display: flex;
4201
+ align-items: center;
4202
+ justify-content: center;
4203
+ min-width: 2.5rem;
4204
+ height: 2.5rem;
4205
+ border-radius: 50%;
4206
+ background: var(--white);
4207
+ border: 1px solid var(--light);
4208
+ color: var(--dark);
4209
+ transition: all 0.3s ease;
4210
+ cursor: pointer;
4211
+ font-size: 1.1rem;
4212
+ font-weight: 600;
4213
+ }
4214
+
4215
+ .pagination-nav:hover:not(.pagination-nav-disabled) {
4216
+ background: var(--primary);
4217
+ color: var(--white);
4218
+ transform: translateY(-1px);
4219
+ border-color: var(--primary);
4220
+ }
4221
+
4222
+ .pagination-nav-disabled {
4223
+ opacity: 0.3;
4224
+ cursor: not-allowed;
4225
+ background: var(--lighter);
4226
+ }
4227
+
4228
+ /* Page Number Items */
4229
+ .pagination-item {
3765
4230
  display: flex;
3766
- flex-direction: row;
3767
- column-gap:0.2rem;
4231
+ align-items: center;
4232
+ justify-content: center;
4233
+ min-width: 2.5rem;
4234
+ height: 2.5rem;
4235
+ border-radius: 50%;
4236
+ font-weight: 500;
4237
+ font-size: 0.875rem;
4238
+ transition: all 0.3s ease;
4239
+ cursor: pointer;
4240
+ border: 1px solid transparent;
4241
+ background: var(--white);
4242
+ color: var(--dark);
4243
+ }
4244
+
4245
+ .pagination-item:hover:not(.pagination-item-active) {
4246
+ background: var(--hoverable);
4247
+ transform: translateY(-1px);
4248
+ border-color: var(--primary);
4249
+ }
4250
+
4251
+ .pagination-item-active {
4252
+ background: var(--primary);
4253
+ color: var(--white);
4254
+ transform: scale(1.05);
4255
+ box-shadow: 0 4px 16px color-mix(in srgb, var(--primary) 30%, transparent);
4256
+ font-weight: 600;
4257
+ }
4258
+
4259
+ /* Mobile Responsive */
4260
+ @media (max-width: 768px) {
4261
+ .pagination-container {
4262
+ padding: 0.5rem 1rem;
4263
+ gap: 0.5rem;
4264
+ border-radius: 25px;
4265
+ }
4266
+
4267
+ .pagination-nav {
4268
+ min-width: 2rem;
4269
+ height: 2rem;
4270
+ font-size: 1rem;
4271
+ }
4272
+
4273
+ .pagination-item {
4274
+ min-width: 2rem;
4275
+ height: 2rem;
4276
+ font-size: 0.8rem;
4277
+ }
4278
+
4279
+ /* Hide middle page numbers on mobile */
4280
+ .pagination-item-mobile-hidden {
4281
+ display: none;
4282
+ }
4283
+ }
4284
+
4285
+ /* Dark Theme */
4286
+ .dark .pagination-container {
4287
+ background: var(--darker);
4288
+ border-color: var(--dark-border);
4289
+ }
4290
+
4291
+ .dark .pagination-nav {
4292
+ background: var(--dark);
4293
+ border-color: var(--dark-border);
4294
+ color: var(--white);
4295
+ }
4296
+
4297
+ .dark .pagination-item {
4298
+ background: var(--dark);
4299
+ color: var(--white);
4300
+ border-color: var(--dark-border);
4301
+ }
4302
+
4303
+ /* Animation */
4304
+ @keyframes pageChange {
4305
+ 0% { transform: scale(0.8); opacity: 0; }
4306
+ 100% { transform: scale(1); opacity: 1; }
4307
+ }
3768
4308
 
4309
+ .pagination-item-active {
4310
+ animation: pageChange 0.3s ease-out;
3769
4311
  }
3770
4312
 
3771
4313
 
@@ -6029,12 +6571,14 @@ position: absolute;
6029
6571
  top: 50%;
6030
6572
  left: 0;
6031
6573
  transform: translateY(-50%);
6574
+ z-index: 10;
6032
6575
  }
6033
6576
  .carouselRight{
6034
6577
  position: absolute;
6035
6578
  top: 50%;
6036
6579
  right: 0;
6037
6580
  transform: translateY(-50%);
6581
+ z-index: 10;
6038
6582
  }
6039
6583
  .carousel-item {scroll-snap-align: start;flex: 0 0 auto;}
6040
6584