@howssatoshi/quantumcss 1.0.2 → 1.1.0

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.
@@ -13,6 +13,31 @@
13
13
  gap: var(--space-8);
14
14
  }
15
15
 
16
+ /* Links */
17
+ a {
18
+ color: var(--color-starlight-blue);
19
+ text-decoration: none;
20
+ transition: all var(--transition-base);
21
+ position: relative;
22
+ }
23
+
24
+ a:hover {
25
+ color: var(--color-starlight-peach);
26
+ text-shadow: 0 0 8px rgba(255, 179, 138, 0.4);
27
+ }
28
+
29
+ a:active {
30
+ transform: scale(0.98);
31
+ }
32
+
33
+ body.light-mode a {
34
+ color: #2563eb;
35
+ }
36
+
37
+ body.light-mode a:hover {
38
+ color: #1d4ed8;
39
+ }
40
+
16
41
  /* 1. Starlight Card */
17
42
  .starlight-card {
18
43
  background: var(--glass-bg);
@@ -22,7 +47,6 @@
22
47
  backdrop-filter: var(--glass-blur);
23
48
  -webkit-backdrop-filter: var(--glass-blur);
24
49
  position: relative;
25
- z-index: 1;
26
50
  transition: border-color var(--transition-base), transform var(--transition-base), background-color var(--transition-base);
27
51
  }
28
52
 
@@ -30,10 +54,6 @@
30
54
  border-color: rgba(0, 212, 255, 0.3);
31
55
  }
32
56
 
33
- .starlight-card.has-open-menu {
34
- z-index: 1000;
35
- }
36
-
37
57
  body.light-mode .starlight-card {
38
58
  background: var(--light-card-bg);
39
59
  border-color: var(--light-card-border);
@@ -79,48 +99,37 @@ body.light-mode .starlight-card {
79
99
  border-radius: 50%;
80
100
  }
81
101
 
82
- body.light-mode .checkbox-starlight,
83
- body.light-mode .radio-starlight {
84
- background: #f1f5f9;
85
- border-color: #cbd5e1;
86
- }
87
-
88
102
  /* 3. Tooltips */
89
103
  .has-tooltip {
90
104
  position: relative;
91
105
  }
92
106
 
93
- .has-tooltip:hover {
94
- z-index: 2000;
107
+ .has-tooltip .tooltip {
108
+ position: absolute;
109
+ bottom: 125%;
110
+ left: 50%;
111
+ transform: translateX(-50%) translateY(10px);
112
+ padding: 0.5rem 0.75rem;
113
+ background-color: rgba(10, 10, 30, 0.98);
114
+ backdrop-filter: blur(12px);
115
+ border: 1px solid rgba(0, 212, 255, 0.3);
116
+ border-radius: 0.5rem;
117
+ color: #f1f5f9;
118
+ font-size: 0.75rem;
119
+ white-space: nowrap;
120
+ pointer-events: none;
121
+ opacity: 0;
122
+ transition: all 0.2s ease;
123
+ z-index: 800;
124
+ box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
95
125
  }
96
126
 
97
127
  .has-tooltip:hover .tooltip {
98
128
  opacity: 1;
99
- transform: translateX(-50%) translateY(-10px);
100
- }
101
-
102
- body.light-mode .tooltip {
103
- background-color: #ffffff;
104
- border-color: var(--color-starlight-blue);
105
- color: var(--light-text);
106
- }
107
-
108
- /* 4. Skeletons */
109
- .skeleton {
110
- animation: shimmer 2s infinite;
111
- }
112
-
113
- @keyframes shimmer {
114
- 0% { background-position: -200% 0; }
115
- 100% { background-position: 200% 0; }
116
- }
117
-
118
- body.light-mode .skeleton {
119
- background-color: #cbd5e1;
120
- background-image: linear-gradient(90deg, transparent, #f1f5f9, transparent);
129
+ transform: translateX(-50%) translateY(0);
121
130
  }
122
131
 
123
- /* 5. Twinkling Background */
132
+ /* 4. Skeletons & Twinkle */
124
133
  .stars-container {
125
134
  position: fixed;
126
135
  top: 0; left: 0; width: 100%; height: 100%;
@@ -134,7 +143,7 @@ body.light-mode .skeleton {
134
143
  background: white;
135
144
  border-radius: 50%;
136
145
  opacity: 0.3;
137
- animation: twinkle var(--duration) infinite ease-in-out;
146
+ animation: twinkle var(--duration, 3s) infinite ease-in-out;
138
147
  }
139
148
 
140
149
  @keyframes twinkle {
@@ -142,29 +151,30 @@ body.light-mode .skeleton {
142
151
  50% { opacity: 1; transform: scale(1.2); }
143
152
  }
144
153
 
145
- /* 6. Form Select Overrides */
146
- select option {
147
- background-color: #1a1a2e;
148
- color: var(--text-primary);
149
- }
150
-
151
- body.light-mode select option {
152
- background-color: white;
153
- color: var(--light-text);
154
- }
155
-
156
- body.light-mode .input-starlight {
157
- background-color: #ffffff;
158
- border-color: #cbd5e1;
159
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23475569'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M8 9l4 4 4-4' /%3E%3C/svg%3E");
160
- background-repeat: no-repeat;
154
+ /* 5. Dialog & Overlays */
155
+ .dialog-overlay {
156
+ position: fixed;
157
+ inset: 0;
158
+ background: rgba(0, 0, 0, 0.6);
159
+ backdrop-filter: blur(12px);
160
+ display: flex;
161
+ align-items: center;
162
+ justify-content: center;
163
+ z-index: 400;
161
164
  }
162
165
 
163
- body.light-mode .btn-secondary {
164
- border-color: #cbd5e1;
166
+ .dialog-content {
167
+ background-color: rgba(10, 10, 20, 0.98);
168
+ backdrop-filter: blur(20px);
169
+ border: 1px solid rgba(255, 255, 255, 0.1);
170
+ border-radius: 1.5rem;
171
+ padding: 2rem;
172
+ max-width: 90%;
173
+ width: 600px;
174
+ box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
175
+ position: relative;
165
176
  }
166
177
 
167
- /* 7. Dialog & Menu Theme Support */
168
178
  body.light-mode .dialog-overlay {
169
179
  background: rgba(255, 255, 255, 0.4);
170
180
  }
@@ -172,10 +182,44 @@ body.light-mode .dialog-overlay {
172
182
  body.light-mode .dialog-content {
173
183
  background-color: rgba(255, 255, 255, 0.98);
174
184
  border-color: rgba(0, 0, 0, 0.1);
175
- color: var(--light-text);
185
+ color: #1e293b;
176
186
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
177
187
  }
178
188
 
189
+ /* 6. Dropdown Menu */
190
+ .dropdown-menu {
191
+ position: absolute;
192
+ top: 100%;
193
+ left: 0;
194
+ background-color: rgba(15, 15, 30, 0.98);
195
+ backdrop-filter: blur(20px);
196
+ border: 1px solid rgba(255, 255, 255, 0.1);
197
+ border-radius: 0.75rem;
198
+ padding: 0.5rem;
199
+ margin-top: 0.5rem;
200
+ min-width: 200px;
201
+ z-index: 600;
202
+ box-shadow: 0 20px 40px rgba(0,0,0,0.4);
203
+ }
204
+
205
+ .dropdown-item {
206
+ display: block;
207
+ width: 100%;
208
+ padding: 0.625rem 1rem;
209
+ border-radius: 0.5rem;
210
+ color: rgba(255, 255, 255, 0.7);
211
+ transition: all 0.2s ease;
212
+ text-align: left;
213
+ background: transparent;
214
+ border: none;
215
+ cursor: pointer;
216
+ }
217
+
218
+ .dropdown-item:hover {
219
+ background-color: var(--color-starlight-blue);
220
+ color: black;
221
+ }
222
+
179
223
  body.light-mode .dropdown-menu {
180
224
  background-color: rgba(255, 255, 255, 0.99);
181
225
  border-color: #cbd5e1;
@@ -186,7 +230,155 @@ body.light-mode .dropdown-item {
186
230
  color: #475569;
187
231
  }
188
232
 
189
- .dropdown-item:hover {
190
- background-color: var(--color-starlight-blue) !important;
191
- color: #000000 !important;
233
+ body.light-mode .dropdown-item:hover {
234
+ background-color: #f1f5f9;
235
+ color: #1e293b;
236
+ }
237
+
238
+ /* 7. Textarea Fixes */
239
+ textarea.input-starlight, .textarea-starlight {
240
+ height: auto;
241
+ min-height: 120px;
242
+ padding: 1rem;
243
+ background-color: rgba(255, 255, 255, 0.04);
244
+ border: 1px solid rgba(255, 255, 255, 0.15);
245
+ border-radius: 0.75rem;
246
+ color: inherit;
247
+ width: 100%;
248
+ display: block;
249
+ }
250
+
251
+ body.light-mode textarea.input-starlight,
252
+ body.light-mode .textarea-starlight {
253
+ background-color: #ffffff;
254
+ border-color: #cbd5e1;
255
+ }
256
+
257
+ /* 9. Code Interface Window */
258
+ .code-window {
259
+ background: rgba(0, 0, 0, 0.4);
260
+ backdrop-filter: blur(20px);
261
+ -webkit-backdrop-filter: blur(20px);
262
+ border: 1px solid rgba(255, 255, 255, 0.1);
263
+ border-radius: var(--radius-xl);
264
+ overflow: hidden;
265
+ box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
266
+ }
267
+
268
+ .code-window-header {
269
+ background: rgba(255, 255, 255, 0.05);
270
+ border-bottom: 1px solid rgba(255, 255, 255, 0.05);
271
+ padding: 1rem 1.5rem;
272
+ display: flex;
273
+ align-items: center;
274
+ justify-content: space-between;
275
+ }
276
+
277
+ .code-window-controls {
278
+ display: flex;
279
+ gap: 0.5rem;
280
+ }
281
+
282
+ .code-window-dot {
283
+ width: 0.75rem;
284
+ height: 0.75rem;
285
+ border-radius: 50%;
286
+ opacity: 0.6;
287
+ }
288
+
289
+ .code-window-title {
290
+ font-size: 0.65rem;
291
+ font-weight: 800;
292
+ text-transform: uppercase;
293
+ letter-spacing: 0.15em;
294
+ color: rgba(255, 255, 255, 0.4);
295
+ }
296
+
297
+ body.light-mode .code-window {
298
+ background: #f8fafc;
299
+ border-color: #e2e8f0;
300
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
301
+ }
302
+
303
+ body.light-mode .code-window-header {
304
+ background: #f1f5f9;
305
+ border-color: #e2e8f0;
306
+ }
307
+
308
+ body.light-mode .code-window-title {
309
+ color: #94a3b8;
310
+ }
311
+
312
+ /* 10. Starlight Accordion */
313
+ .accordion-starlight.accordion-item {
314
+ background: rgba(255, 255, 255, 0.02);
315
+ backdrop-filter: blur(12px);
316
+ -webkit-backdrop-filter: blur(12px);
317
+ border: 1px solid rgba(255, 255, 255, 0.08);
318
+ border-radius: var(--radius-xl);
319
+ margin-bottom: var(--space-4);
320
+ transition: all var(--transition-base);
321
+ position: relative;
322
+ }
323
+
324
+ .accordion-starlight.accordion-item:hover {
325
+ border-color: rgba(0, 212, 255, 0.3);
326
+ background: rgba(255, 255, 255, 0.04);
327
+ box-shadow: 0 0 20px rgba(0, 212, 255, 0.05);
328
+ }
329
+
330
+ .accordion-starlight.accordion-item.active {
331
+ border-color: var(--color-starlight-blue);
332
+ background: rgba(0, 212, 255, 0.03);
333
+ box-shadow: 0 0 30px rgba(0, 212, 255, 0.1), inset 0 0 20px rgba(0, 212, 255, 0.05);
334
+ }
335
+
336
+ .accordion-starlight .accordion-header {
337
+ background: transparent !important;
338
+ padding: var(--space-6) var(--space-8);
339
+ color: white;
340
+ font-weight: 700;
341
+ letter-spacing: 0.02em;
342
+ font-size: 1.125rem;
343
+ }
344
+
345
+ .accordion-starlight.active .accordion-header {
346
+ background: linear-gradient(to right, rgba(255, 179, 138, 0.15), rgba(0, 212, 255, 0.15)) !important;
347
+ border-bottom: 1px solid rgba(0, 212, 255, 0.2);
348
+ }
349
+
350
+ .accordion-starlight .accordion-content {
351
+ background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.1)) !important;
352
+ color: rgba(255, 255, 255, 0.6) !important;
353
+ font-size: 1rem;
354
+ line-height: 1.8;
355
+ padding: 0;
356
+ }
357
+
358
+ .accordion-starlight.active .accordion-content {
359
+ padding: var(--space-6) var(--space-8);
360
+ }
361
+
362
+ .accordion-starlight .accordion-icon {
363
+ color: var(--color-starlight-blue);
364
+ filter: drop-shadow(0 0 5px rgba(0, 212, 255, 0.5));
365
+ }
366
+
367
+ body.light-mode .accordion-starlight.accordion-item {
368
+ background: white;
369
+ border-color: #e2e8f0;
370
+ }
371
+
372
+ body.light-mode .accordion-starlight.accordion-item.active {
373
+ border-color: #3b82f6;
374
+ background: #f8fafc;
375
+ }
376
+
377
+ body.light-mode .accordion-starlight .accordion-header {
378
+ color: #1e293b;
379
+ }
380
+
381
+ body.light-mode .accordion-starlight .accordion-content {
382
+ background: #f1f5f9 !important;
383
+ color: #475569 !important;
192
384
  }