dolphincss 1.0.5 → 1.0.6

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.
@@ -1,7 +1,8 @@
1
1
  /* ============================
2
- 🌊 DolphinCSS Admin Side Navigation - UPDATED
2
+ 🌊 DolphinCSS Admin Side Navigation - MOBILE FIXED
3
3
  ✅ Fixed Text Colors
4
4
  ✅ Enhanced Mobile Responsive
5
+ ✅ Fixed Mobile Collapse Behavior
5
6
  ============================ */
6
7
 
7
8
  .admin-nav {
@@ -47,7 +48,7 @@
47
48
  .admin-nav-title {
48
49
  font-size: var(--text-lg);
49
50
  font-weight: var(--font-weight-bold);
50
- color: var(--color-text); /* FIXED: Text color variable */
51
+ color: var(--color-text);
51
52
  white-space: nowrap;
52
53
  overflow: hidden;
53
54
  }
@@ -67,7 +68,7 @@
67
68
  align-items: center;
68
69
  gap: calc(var(--spacing) * 3);
69
70
  padding: calc(var(--spacing) * 3) calc(var(--spacing) * 4);
70
- color: var(--color-text-muted); /* FIXED: Text color variable */
71
+ color: var(--color-text-muted);
71
72
  text-decoration: none;
72
73
  transition: all var(--motion-speed) var(--motion-ease);
73
74
  position: relative;
@@ -78,13 +79,13 @@
78
79
 
79
80
  .admin-nav-item:hover {
80
81
  background-color: var(--color-primary);
81
- color: var(--color-text); /* FIXED: Text color variable */
82
+ color: var(--color-text);
82
83
  transform: translateX(calc(var(--spacing) * 1));
83
84
  }
84
85
 
85
86
  .admin-nav-item.active {
86
87
  background-color: var(--color-primary);
87
- color: var(--color-text); /* FIXED: Text color variable */
88
+ color: var(--color-text);
88
89
  font-weight: var(--font-weight-semibold);
89
90
  }
90
91
 
@@ -115,7 +116,7 @@
115
116
  overflow: hidden;
116
117
  font-size: var(--text-sm);
117
118
  transition: all var(--motion-speed) var(--motion-ease);
118
- color: inherit; /* FIXED: Inherit parent color */
119
+ color: inherit;
119
120
  }
120
121
 
121
122
  /* User Section - TEXT COLOR FIXED */
@@ -135,7 +136,7 @@
135
136
  display: flex;
136
137
  align-items: center;
137
138
  justify-content: center;
138
- color: var(--color-text); /* FIXED: Text color variable */
139
+ color: var(--color-text);
139
140
  font-weight: var(--font-weight-bold);
140
141
  flex-shrink: 0;
141
142
  }
@@ -148,7 +149,7 @@
148
149
  .admin-nav-user-name {
149
150
  font-size: var(--text-sm);
150
151
  font-weight: var(--font-weight-semibold);
151
- color: var(--color-text); /* FIXED: Text color variable */
152
+ color: var(--color-text);
152
153
  white-space: nowrap;
153
154
  overflow: hidden;
154
155
  text-overflow: ellipsis;
@@ -156,15 +157,15 @@
156
157
 
157
158
  .admin-nav-user-role {
158
159
  font-size: var(--text-xs);
159
- color: var(--color-text-muted); /* FIXED: Text color variable */
160
+ color: var(--color-text-muted);
160
161
  white-space: nowrap;
161
162
  overflow: hidden;
162
163
  text-overflow: ellipsis;
163
164
  }
164
165
 
165
- /* Collapse State */
166
+ /* ===== DESKTOP COLLAPSE STATE ===== */
166
167
  .admin-nav.collapsed {
167
- width: calc(var(--spacing) * 16);
168
+ width: 80px; /* Icons only */
168
169
  }
169
170
 
170
171
  .admin-nav.collapsed .admin-nav-title,
@@ -198,7 +199,7 @@
198
199
  padding: calc(var(--spacing) * 2) calc(var(--spacing) * 3);
199
200
  border-radius: var(--radius-md);
200
201
  font-size: var(--text-sm);
201
- color: var(--color-text); /* FIXED: Text color variable */
202
+ color: var(--color-text);
202
203
  white-space: nowrap;
203
204
  z-index: 1000;
204
205
  box-shadow: var(--tw-shadow);
@@ -220,7 +221,7 @@
220
221
  justify-content: center;
221
222
  cursor: pointer;
222
223
  transition: all var(--motion-speed) var(--motion-ease);
223
- color: var(--color-text); /* FIXED: Text color variable */
224
+ color: var(--color-text);
224
225
  z-index: 1001;
225
226
  }
226
227
 
@@ -230,46 +231,53 @@
230
231
  transform: scale(1.1);
231
232
  }
232
233
 
233
- /* ===== MOBILE RESPONSIVE ENHANCEMENTS ===== */
234
+ /* ===== MOBILE RESPONSIVE - FIXED ===== */
234
235
  @media (max-width: 768px) {
236
+ /* Mobile nav - always icons only and hidden by default */
235
237
  .admin-nav {
236
238
  position: fixed;
237
239
  top: 0;
238
240
  left: 0;
239
241
  height: 100vh;
240
- transform: translateX(-100%);
242
+ width: 80px; /* Mobile ma always icons only */
243
+ transform: translateX(-100%); /* Start ma hidden */
241
244
  transition: transform 0.3s var(--motion-ease);
242
- width: 280px;
243
245
  box-shadow: 0 0 20px var(--color-shadow);
246
+ z-index: 1000;
244
247
  }
245
248
 
249
+ /* Mobile open state */
246
250
  .admin-nav.mobile-open {
247
- transform: translateX(0);
251
+ transform: translateX(0); /* Slide in */
248
252
  }
249
-
250
- .admin-nav-overlay {
251
- display: none;
252
- position: fixed;
253
- top: 0;
254
- left: 0;
255
- right: 0;
256
- bottom: 0;
257
- background-color: var(--color-shadow);
258
- z-index: 999;
259
- backdrop-filter: blur(4px);
253
+
254
+ /* Mobile ma always collapsed style - force icons only */
255
+ .admin-nav .admin-nav-title,
256
+ .admin-nav .admin-nav-text,
257
+ .admin-nav .admin-nav-user-info {
258
+ display: none !important; /* Force hide text on mobile */
260
259
  }
261
-
262
- .admin-nav-overlay.mobile-open {
263
- display: block;
260
+
261
+ .admin-nav .admin-nav-item {
262
+ justify-content: center;
263
+ padding: calc(var(--spacing) * 3) !important;
264
+ margin: 0 calc(var(--spacing) * 1) !important;
265
+ }
266
+
267
+ .admin-nav .admin-nav-brand {
268
+ justify-content: center;
269
+ gap: 0;
270
+ }
271
+
272
+ .admin-nav .admin-nav-user {
273
+ justify-content: center;
274
+ padding: calc(var(--spacing) * 2);
264
275
  }
265
276
 
266
277
  /* Mobile Header */
267
278
  .admin-nav-header {
268
279
  padding: calc(var(--spacing) * 3);
269
- }
270
-
271
- .admin-nav-title {
272
- font-size: var(--text-base);
280
+ justify-content: center;
273
281
  }
274
282
 
275
283
  /* Mobile Menu Items */
@@ -277,64 +285,113 @@
277
285
  padding: calc(var(--spacing) * 1) 0;
278
286
  }
279
287
 
280
- .admin-nav-item {
281
- padding: calc(var(--spacing) * 2.5) calc(var(--spacing) * 3);
282
- margin: 0 calc(var(--spacing) * 1.5);
283
- }
284
-
285
- /* Mobile User Section */
288
+ /* Mobile User Section - Center avatar only */
286
289
  .admin-nav-user {
287
- padding: calc(var(--spacing) * 3);
290
+ padding: calc(var(--spacing) * 2);
288
291
  flex-direction: column;
289
- text-align: center;
290
- gap: calc(var(--spacing) * 2);
292
+ align-items: center;
293
+ gap: calc(var(--spacing) * 1);
291
294
  }
292
295
 
293
296
  .admin-nav-avatar {
294
- width: calc(var(--spacing) * 8);
295
- height: calc(var(--spacing) * 8);
297
+ width: calc(var(--spacing) * 6);
298
+ height: calc(var(--spacing) * 6);
299
+ font-size: var(--text-xs);
296
300
  }
297
301
 
298
- /* Mobile Toggle Button */
302
+ /* Hide desktop toggle on mobile */
299
303
  .admin-nav-toggle {
300
- display: none; /* Hide desktop toggle on mobile */
304
+ display: none;
305
+ }
306
+
307
+ /* Mobile Menu Trigger Button (Add in main content) */
308
+ .mobile-menu-trigger {
309
+ display: block;
310
+ position: fixed;
311
+ top: calc(var(--spacing) * 2);
312
+ left: calc(var(--spacing) * 2);
313
+ width: calc(var(--spacing) * 8);
314
+ height: calc(var(--spacing) * 8);
315
+ border-radius: 50%;
316
+ background: var(--color-primary);
317
+ color: white;
318
+ border: none;
319
+ display: flex;
320
+ align-items: center;
321
+ justify-content: center;
322
+ cursor: pointer;
323
+ z-index: 999;
324
+ box-shadow: 0 4px 12px rgba(0,0,0,0.15);
325
+ font-size: var(--text-lg);
301
326
  }
302
327
 
303
- /* Mobile Close Button */
328
+ /* Mobile Close Button inside nav */
304
329
  .admin-nav-close {
305
330
  position: absolute;
306
- top: calc(var(--spacing) * 3);
307
- right: calc(var(--spacing) * 3);
331
+ top: calc(var(--spacing) * 2);
332
+ right: calc(var(--spacing) * 2);
308
333
  width: calc(var(--spacing) * 6);
309
334
  height: calc(var(--spacing) * 6);
310
- border-radius: 3.40282e38px;
311
- background-color: var(--color-surface);
312
- border: 1px solid var(--color-border);
335
+ border-radius: 50%;
336
+ background: var(--color-danger);
337
+ color: white;
338
+ border: none;
313
339
  display: flex;
314
340
  align-items: center;
315
341
  justify-content: center;
316
342
  cursor: pointer;
317
- color: var(--color-text);
318
343
  z-index: 1002;
344
+ font-size: var(--text-sm);
319
345
  }
320
346
 
321
- .admin-nav-close:hover {
322
- background-color: var(--color-danger);
323
- color: var(--color-text);
347
+ /* Overlay for mobile */
348
+ .admin-nav-overlay {
349
+ display: none;
350
+ position: fixed;
351
+ top: 0;
352
+ left: 0;
353
+ right: 0;
354
+ bottom: 0;
355
+ background: rgba(0,0,0,0.5);
356
+ backdrop-filter: blur(4px);
357
+ z-index: 998;
358
+ }
359
+
360
+ .admin-nav-overlay.mobile-open {
361
+ display: block;
362
+ }
363
+
364
+ /* Adjust main content for mobile */
365
+ .admin-main-content {
366
+ margin-left: 0 !important;
367
+ padding-left: calc(var(--spacing) * 2);
368
+ padding-right: calc(var(--spacing) * 2);
324
369
  }
325
370
  }
326
371
 
327
- /* Desktop specific */
372
+ /* Desktop specific - Hide mobile elements */
328
373
  @media (min-width: 769px) {
329
- .admin-nav-close {
374
+ .mobile-menu-trigger,
375
+ .admin-nav-close,
376
+ .admin-nav-overlay {
330
377
  display: none;
331
378
  }
379
+
380
+ /* Desktop ma proper spacing */
381
+ .admin-main-content {
382
+ margin-left: 280px;
383
+ transition: margin-left var(--motion-speed) var(--motion-ease);
384
+ }
385
+
386
+ .admin-nav.collapsed ~ .admin-main-content {
387
+ margin-left: 80px;
388
+ }
332
389
  }
333
390
 
334
391
  /* Small mobile devices */
335
392
  @media (max-width: 480px) {
336
393
  .admin-nav {
337
- width: 100vw;
394
+ width: 70px; /* Even more compact on very small screens */
338
395
  }
339
396
 
340
397
  .admin-nav-header {
@@ -342,6 +399,19 @@
342
399
  }
343
400
 
344
401
  .admin-nav-item {
345
- padding: calc(var(--spacing) * 2) calc(var(--spacing) * 2);
402
+ padding: calc(var(--spacing) * 2) !important;
403
+ }
404
+
405
+ .mobile-menu-trigger {
406
+ width: calc(var(--spacing) * 7);
407
+ height: calc(var(--spacing) * 7);
408
+ top: calc(var(--spacing) * 1);
409
+ left: calc(var(--spacing) * 1);
346
410
  }
347
411
  }
412
+
413
+ /* Ensure smooth transitions */
414
+ .admin-nav,
415
+ .admin-nav * {
416
+ transition: all var(--motion-speed) var(--motion-ease);
417
+ }
package/MainCss/table.css CHANGED
@@ -1,29 +1,154 @@
1
- /*===== Table System ===== */
2
- @layer components {
1
+ /* ===== Table System - ACTUAL Tailwind Compatible ===== */
2
+ @layer components {
3
3
  .table {
4
- @apply w-full border-collapse transition-all duration-200 text-(--color-text);
4
+ @apply w-full border-collapse transition-all duration-200 bg-(--color-surface) rounded-xl shadow-md my-4;
5
5
  }
6
+
6
7
  .table th, .table td {
7
- @apply px-4 py-2 border border-(--color-border) text-left font-medium transition-all duration-200;
8
- }
9
- .table.filled th, .table.filled td { background-color: var(--color-surface); color: var(--color-text); }
10
- .table.outlined th, .table.outlined td {
11
- @apply border-2 border-(--color-border) bg-transparent text-(--color-text);
12
- }
13
- .table.primary.filled th, .table.primary.filled td { background-color: var(--color-primary); color: var(--color-text); border-color: var(--color-primary); }
14
- .table.secondary.filled th, .table.secondary.filled td { background-color: var(--color-secondary); color: var(--color-text); border-color: var(--color-secondary); }
15
- .table.success.filled th, .table.success.filled td { background-color: var(--color-success); color: var(--color-text); border-color: var(--color-success); }
16
- .table.warning.filled th, .table.warning.filled td { background-color: var(--color-warning); color: var(--color-text); border-color: var(--color-warning); }
17
- .table.danger.filled th, .table.danger.filled td { background-color: var(--color-danger); color: var(--color-text); border-color: var(--color-danger); }
18
- .table.info.filled th, .table.info.filled td { background-color: var(--color-info); color: var(--color-text); border-color: var(--color-info); }
19
- .table.striped tbody tr:nth-child(even) { background-color: color-mix(in oklch, var(--color-surface), 10% oklch(0% 0 0)); }
20
- .table tbody tr:hover { opacity: 0.95; }
21
- .table.filled.primary tbody tr:hover { background-color: color-mix(in oklch, var(--color-primary), 10% oklch(0% 0 0)); }
22
- .table.filled.success tbody tr:hover { background-color: color-mix(in oklch, var(--color-success), 10% oklch(0% 0 0)); }
23
- .table.filled.warning tbody tr:hover { background-color: color-mix(in oklch, var(--color-warning), 10% oklch(0% 0 0)); }
24
- .table.filled.danger tbody tr:hover { background-color: color-mix(in oklch, var(--color-danger), 10% oklch(0% 0 0)); }
25
- .table.filled.info tbody tr:hover { background-color: color-mix(in oklch, var(--color-info), 10% oklch(0% 0 0)); }
26
- [data-theme="dark"] .table th, [data-theme="dark"] .table td { border-color: var(--color-border); color: var(--color-text); }
27
- [data-theme="dark"] .table.filled th, [data-theme="dark"] .table.filled td { background-color: var(--color-surface); color: var(--color-text); }
28
- .table-responsive { @apply overflow-x-auto w-full; }
29
- }
8
+ @apply px-4 py-3 text-left border-b border-(--color-border) transition-all duration-200;
9
+ }
10
+
11
+ .table th {
12
+ @apply bg-(--color-primary) text-white font-semibold text-sm uppercase tracking-wide;
13
+ }
14
+
15
+ .table td {
16
+ @apply bg-(--color-surface) text-(--color-text);
17
+ }
18
+
19
+ /* 🌊 Glass Wave Variant */
20
+ .table.glass-wave {
21
+ @apply bg-[color-mix(in_oklch,var(--color-surface),transparent_40%)] backdrop-blur-xl border border-[color-mix(in_oklch,var(--color-border),transparent_60%)];
22
+ }
23
+
24
+ .table.glass-wave th {
25
+ @apply bg-[color-mix(in_oklch,var(--color-primary),transparent_20%)] backdrop-blur-lg;
26
+ }
27
+
28
+ .table.glass-wave td {
29
+ @apply bg-[color-mix(in_oklch,var(--color-surface),transparent_30%)] border-b border-[color-mix(in_oklch,var(--color-border),transparent_50%)];
30
+ }
31
+
32
+ /* ✨ Neon Flow Variant */
33
+ .table.neon-flow {
34
+ @apply bg-[color-mix(in_oklch,var(--color-surface),black_10%)] border border-[color-mix(in_oklch,var(--color-primary),transparent_50%)] shadow-[0_0_20px_color-mix(in_oklch,var(--color-primary),transparent_80%)];
35
+ }
36
+
37
+ .table.neon-flow th {
38
+ @apply bg-gradient-to-br from-[color-mix(in_oklch,var(--color-primary),transparent_30%)] to-[color-mix(in_oklch,var(--color-info),transparent_40%)] text-white;
39
+ }
40
+
41
+ /* 🌌 Holo Matrix Variant */
42
+ .table.holo-matrix {
43
+ background: radial-gradient(circle at 0% 0%, color-mix(in oklch, var(--color-primary), transparent 90%) 0%, transparent 50%), radial-gradient(circle at 100% 100%, color-mix(in oklch, var(--color-info), transparent 90%) 0%, transparent 50%), var(--color-surface);
44
+ }
45
+
46
+ .table.holo-matrix th {
47
+ @apply bg-[color-mix(in_oklch,var(--color-surface),transparent_50%)] backdrop-blur-lg text-(--color-primary) border-b border-[color-mix(in_oklch,var(--color-primary),transparent_70%)];
48
+ }
49
+
50
+ .table.holo-matrix td {
51
+ @apply bg-[color-mix(in_oklch,var(--color-surface),transparent_30%)] backdrop-blur-sm;
52
+ }
53
+
54
+ /* 🚀 Quantum Float Variant */
55
+ .table.quantum-float {
56
+ @apply shadow-[0_25px_50px_-12px_rgba(0,0,0,0.25)] border border-[color-mix(in_oklch,var(--color-border),transparent_50%)] transition-all duration-300;
57
+ }
58
+
59
+ .table.quantum-float:hover {
60
+ @apply -translate-y-1 shadow-[0_35px_60px_-12px_rgba(0,0,0,0.3)] border-[color-mix(in_oklch,var(--color-primary),transparent_70%)];
61
+ }
62
+
63
+ .table.quantum-float th {
64
+ @apply bg-gradient-to-br from-(--color-primary) to-[color-mix(in_oklch,var(--color-primary),var(--color-info)_30%)] text-white;
65
+ }
66
+
67
+ /* 🌊 Aqua Depth Variant */
68
+ .table.aqua-depth {
69
+ background: linear-gradient(160deg, color-mix(in oklch, var(--color-surface), transparent 10%), color-mix(in oklch, var(--color-info), transparent 95%), color-mix(in oklch, var(--color-surface), transparent 10%));
70
+ @apply border border-[color-mix(in_oklch,var(--color-info),transparent_60%)];
71
+ }
72
+
73
+ .table.aqua-depth th {
74
+ @apply bg-[color-mix(in_oklch,var(--color-info),transparent_30%)] text-white border-b-2 border-[color-mix(in_oklch,var(--color-info),transparent_50%)];
75
+ }
76
+
77
+ .table.aqua-depth td {
78
+ @apply bg-[color-mix(in_oklch,var(--color-surface),transparent_70%)] border-b border-[color-mix(in_oklch,var(--color-info),transparent_80%)];
79
+ }
80
+
81
+ /* 📱 Mobile Card Layout */
82
+ @media (max-width: 768px) {
83
+ .table.mobile-cards {
84
+ @apply block bg-transparent shadow-none border-none rounded-none;
85
+ }
86
+
87
+ .table.mobile-cards thead {
88
+ @apply hidden;
89
+ }
90
+
91
+ .table.mobile-cards tbody {
92
+ @apply flex flex-col gap-4;
93
+ }
94
+
95
+ .table.mobile-cards tr {
96
+ @apply flex flex-col bg-(--color-surface) rounded-xl p-4 shadow-md border border-(--color-border);
97
+ }
98
+
99
+ .table.mobile-cards td {
100
+ @apply flex justify-between items-center p-3 border-none border-b border-(--color-border) bg-transparent;
101
+ }
102
+
103
+ .table.mobile-cards td:last-child {
104
+ @apply border-b-0;
105
+ }
106
+
107
+ .table.mobile-cards td::before {
108
+ content: attr(data-label);
109
+ @apply font-semibold text-(--color-primary) text-sm uppercase tracking-wide min-w-20 mr-4;
110
+ }
111
+ }
112
+
113
+ /* 🎯 Responsive Container */
114
+ .table-responsive {
115
+ @apply overflow-x-auto w-full rounded-xl my-4;
116
+ }
117
+
118
+ /* ✨ Animations */
119
+ .motion-smooth {
120
+ animation: tableAppear 0.6s ease-out;
121
+ }
122
+
123
+ @keyframes tableAppear {
124
+ 0% {
125
+ opacity: 0;
126
+ transform: translateY(20px);
127
+ }
128
+ 100% {
129
+ opacity: 1;
130
+ transform: translateY(0);
131
+ }
132
+ }
133
+
134
+ /* 🎨 Color Variants */
135
+ .table.primary th { @apply bg-(--color-primary); }
136
+ .table.success th { @apply bg-(--color-success); }
137
+ .table.warning th { @apply bg-(--color-warning); }
138
+ .table.danger th { @apply bg-(--color-danger); }
139
+ .table.info th { @apply bg-(--color-info); }
140
+
141
+ /* 📏 Size Variants */
142
+ .table.sm th, .table.sm td { @apply px-3 py-2 text-xs; }
143
+ .table.md th, .table.md td { @apply px-4 py-3 text-sm; }
144
+ .table.lg th, .table.lg td { @apply px-5 py-4 text-base; }
145
+
146
+ /* 🎭 Interactive States */
147
+ .table tbody tr {
148
+ @apply transition-all duration-200;
149
+ }
150
+
151
+ .table tbody tr:hover td {
152
+ @apply bg-[color-mix(in_oklch,var(--color-primary),transparent_95%)];
153
+ }
154
+ }