@jjlmoya/utils-creative 1.17.0 → 1.19.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.
@@ -204,555 +204,3 @@ const { ui } = Astro.props;
204
204
  update();
205
205
  </script>
206
206
 
207
- <style>
208
- .zg-section {
209
- max-width: 64rem;
210
- margin: 0 auto;
211
- padding: 3rem 1rem;
212
- position: relative;
213
- }
214
-
215
- .zg-grid {
216
- display: grid;
217
- grid-template-columns: 1fr 2fr;
218
- gap: 2rem;
219
- align-items: start;
220
- }
221
-
222
- @media (max-width: 768px) {
223
- .zg-grid {
224
- grid-template-columns: 1fr;
225
- }
226
- }
227
-
228
- .zg-left {
229
- display: flex;
230
- flex-direction: column;
231
- gap: 1rem;
232
- }
233
-
234
- .zg-config-card {
235
- position: relative;
236
- background: rgba(255, 255, 255, 0.85);
237
- backdrop-filter: blur(12px);
238
- border: 1px solid #e2e8f0;
239
- border-radius: 1.5rem;
240
- padding: 1.5rem;
241
- box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.1);
242
- overflow: hidden;
243
- }
244
-
245
- :global(.theme-dark) .zg-config-card {
246
- background: rgba(24, 24, 27, 0.85);
247
- border-color: #27272a;
248
- }
249
-
250
- .zg-config-hover-bg {
251
- position: absolute;
252
- inset: 0;
253
- background: linear-gradient(135deg, rgba(147, 51, 234, 0.05), transparent);
254
- opacity: 0;
255
- pointer-events: none;
256
- transition: opacity 0.5s;
257
- }
258
-
259
- .zg-config-card:hover .zg-config-hover-bg {
260
- opacity: 1;
261
- }
262
-
263
- .zg-config-title {
264
- font-size: 1.1rem;
265
- font-weight: 700;
266
- color: #0f172a;
267
- display: flex;
268
- align-items: center;
269
- gap: 0.5rem;
270
- margin: 0 0 1.5rem;
271
- }
272
-
273
- :global(.theme-dark) .zg-config-title {
274
- color: #fff;
275
- }
276
-
277
- .zg-config-body {
278
- display: flex;
279
- flex-direction: column;
280
- gap: 2rem;
281
- }
282
-
283
- .zg-field {
284
- display: flex;
285
- flex-direction: column;
286
- gap: 0.75rem;
287
- }
288
-
289
- .zg-field-header {
290
- display: flex;
291
- justify-content: space-between;
292
- align-items: center;
293
- }
294
-
295
- .zg-field-label {
296
- font-size: 0.7rem;
297
- font-weight: 700;
298
- text-transform: uppercase;
299
- letter-spacing: 0.1em;
300
- color: #64748b;
301
- }
302
-
303
- :global(.theme-dark) .zg-field-label {
304
- color: #71717a;
305
- }
306
-
307
- .zg-intensity-val {
308
- font-size: 0.875rem;
309
- font-weight: 700;
310
- color: #9333ea;
311
- }
312
-
313
- .zg-slider {
314
- width: 100%;
315
- height: 0.375rem;
316
- border-radius: 999px;
317
- background: #e2e8f0;
318
- appearance: none;
319
- cursor: pointer;
320
- accent-color: #9333ea;
321
- }
322
-
323
- :global(.theme-dark) .zg-slider {
324
- background: #27272a;
325
- }
326
-
327
- .zg-toggles {
328
- display: flex;
329
- flex-direction: column;
330
- gap: 0.75rem;
331
- }
332
-
333
- .zg-toggle-row {
334
- display: flex;
335
- align-items: center;
336
- justify-content: space-between;
337
- padding: 0.75rem;
338
- background: #f8fafc;
339
- border-radius: 1rem;
340
- cursor: pointer;
341
- border: 1px solid transparent;
342
- transition: background 0.15s, border-color 0.15s;
343
- }
344
-
345
- .zg-toggle-row:hover {
346
- background: #f1f5f9;
347
- border-color: rgba(147, 51, 234, 0.15);
348
- }
349
-
350
- :global(.theme-dark) .zg-toggle-row {
351
- background: rgba(9, 9, 11, 0.5);
352
- }
353
-
354
- :global(.theme-dark) .zg-toggle-row:hover {
355
- background: #27272a;
356
- }
357
-
358
- .zg-toggle-label {
359
- font-size: 0.875rem;
360
- font-weight: 500;
361
- color: #374151;
362
- }
363
-
364
- :global(.theme-dark) .zg-toggle-label {
365
- color: #d4d4d8;
366
- }
367
-
368
- .zg-switch {
369
- position: relative;
370
- display: inline-flex;
371
- align-items: center;
372
- }
373
-
374
- .zg-switch-input {
375
- position: absolute;
376
- opacity: 0;
377
- width: 0;
378
- height: 0;
379
- }
380
-
381
- .zg-switch-track {
382
- width: 2.5rem;
383
- height: 1.25rem;
384
- background: #d1d5db;
385
- border-radius: 999px;
386
- transition: background 0.2s;
387
- position: relative;
388
- }
389
-
390
- .zg-switch-track::after {
391
- content: '';
392
- position: absolute;
393
- top: 2px;
394
- left: 2px;
395
- width: 1rem;
396
- height: 1rem;
397
- background: #fff;
398
- border-radius: 50%;
399
- transition: transform 0.2s;
400
- }
401
-
402
- .zg-switch-input:checked+.zg-switch-track {
403
- background: #9333ea;
404
- }
405
-
406
- .zg-switch-input:checked+.zg-switch-track::after {
407
- transform: translateX(1.25rem);
408
- }
409
-
410
- :global(.theme-dark) .zg-switch-track {
411
- background: #3f3f46;
412
- }
413
-
414
- .zg-reset-btn {
415
- display: flex;
416
- align-items: center;
417
- justify-content: center;
418
- gap: 0.5rem;
419
- width: 100%;
420
- padding: 0.75rem;
421
- background: transparent;
422
- border: none;
423
- cursor: pointer;
424
- font-size: 0.7rem;
425
- font-weight: 700;
426
- text-transform: uppercase;
427
- letter-spacing: 0.1em;
428
- color: #94a3b8;
429
- transition: color 0.15s;
430
- }
431
-
432
- .zg-reset-btn:hover {
433
- color: #9333ea;
434
- }
435
-
436
- :global(.theme-dark) .zg-reset-btn {
437
- color: #52525b;
438
- }
439
-
440
- :global(.theme-dark) .zg-reset-btn:hover {
441
- color: #a855f7;
442
- }
443
-
444
- .zg-warning {
445
- padding: 1rem;
446
- background: rgba(99, 102, 241, 0.05);
447
- border: 1px solid rgba(99, 102, 241, 0.1);
448
- border-radius: 1rem;
449
- }
450
-
451
- .zg-warning p {
452
- font-size: 0.65rem;
453
- line-height: 1.6;
454
- color: #4338ca;
455
- font-weight: 500;
456
- margin: 0;
457
- }
458
-
459
- :global(.theme-dark) .zg-warning p {
460
- color: rgba(165, 180, 252, 0.8);
461
- }
462
-
463
- .zg-right {
464
- display: flex;
465
- flex-direction: column;
466
- gap: 2rem;
467
- }
468
-
469
- .zg-editor-card {
470
- background: #fff;
471
- border: 1px solid #e2e8f0;
472
- border-radius: 1.5rem;
473
- overflow: hidden;
474
- box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
475
- display: flex;
476
- flex-direction: column;
477
- }
478
-
479
- :global(.theme-dark) .zg-editor-card {
480
- background: #09090b;
481
- border-color: #27272a;
482
- }
483
-
484
- .zg-editor-bar {
485
- display: flex;
486
- align-items: center;
487
- justify-content: space-between;
488
- padding: 1rem 1.5rem;
489
- border-bottom: 1px solid #f1f5f9;
490
- background: rgba(248, 250, 252, 0.5);
491
- }
492
-
493
- :global(.theme-dark) .zg-editor-bar {
494
- border-color: #18181b;
495
- background: rgba(24, 24, 27, 0.3);
496
- }
497
-
498
- .zg-editor-bar-left {
499
- display: flex;
500
- align-items: center;
501
- gap: 0.75rem;
502
- }
503
-
504
- .zg-editor-filename {
505
- font-size: 0.7rem;
506
- color: #94a3b8;
507
- text-transform: uppercase;
508
- letter-spacing: 0.05em;
509
- }
510
-
511
- :global(.theme-dark) .zg-editor-filename {
512
- color: #52525b;
513
- }
514
-
515
- .zg-textarea {
516
- width: 100%;
517
- padding: 2rem;
518
- background: transparent;
519
- color: #1e293b;
520
- font-size: 1.125rem;
521
- font-weight: 500;
522
- outline: none;
523
- resize: none;
524
- min-height: 10rem;
525
- border: none;
526
- }
527
-
528
- :global(.theme-dark) .zg-textarea {
529
- color: #e4e4e7;
530
- }
531
-
532
- .zg-textarea::placeholder {
533
- color: #cbd5e1;
534
- }
535
-
536
- :global(.theme-dark) .zg-textarea::placeholder {
537
- color: #3f3f46;
538
- }
539
-
540
- .zg-editor-footer {
541
- display: flex;
542
- align-items: center;
543
- gap: 1rem;
544
- padding: 0 2rem 2rem;
545
- justify-content: flex-end;
546
- }
547
-
548
- .zg-char-count {
549
- font-size: 0.65rem;
550
- color: #94a3b8;
551
- }
552
-
553
- :global(.theme-dark) .zg-char-count {
554
- color: #3f3f46;
555
- }
556
-
557
- .zg-footer-sep {
558
- height: 1rem;
559
- width: 1px;
560
- background: #e2e8f0;
561
- }
562
-
563
- :global(.theme-dark) .zg-footer-sep {
564
- background: #27272a;
565
- }
566
-
567
- .zg-copy-btn {
568
- display: flex;
569
- align-items: center;
570
- gap: 0.5rem;
571
- padding: 0.75rem 1.5rem;
572
- background: #9333ea;
573
- color: #fff;
574
- border: none;
575
- border-radius: 0.75rem;
576
- font-weight: 700;
577
- cursor: pointer;
578
- box-shadow: 0 4px 14px rgba(147, 51, 234, 0.25);
579
- transition: background 0.15s, transform 0.1s;
580
- }
581
-
582
- .zg-copy-btn:hover {
583
- background: #7c3aed;
584
- }
585
-
586
- .zg-copy-btn:active {
587
- transform: scale(0.95);
588
- }
589
-
590
- .zg-clear-btn {
591
- padding: 0.75rem;
592
- background: #f1f5f9;
593
- color: #64748b;
594
- border: none;
595
- border-radius: 0.75rem;
596
- cursor: pointer;
597
- transition: background 0.15s;
598
- }
599
-
600
- .zg-clear-btn:hover {
601
- background: #e2e8f0;
602
- }
603
-
604
- :global(.theme-dark) .zg-clear-btn {
605
- background: #18181b;
606
- color: #71717a;
607
- }
608
-
609
- :global(.theme-dark) .zg-clear-btn:hover {
610
- background: #27272a;
611
- }
612
-
613
- .zg-preview-wrap {
614
- position: relative;
615
- }
616
-
617
- .zg-preview-badge {
618
- position: absolute;
619
- top: -0.75rem;
620
- left: -0.5rem;
621
- z-index: 10;
622
- background: #9333ea;
623
- color: #fff;
624
- font-size: 0.6rem;
625
- font-weight: 900;
626
- padding: 0.2rem 0.5rem;
627
- border-radius: 0.25rem;
628
- letter-spacing: 0.1em;
629
- text-transform: uppercase;
630
- box-shadow: 0 4px 8px rgba(147, 51, 234, 0.3);
631
- }
632
-
633
- .zg-preview-body {
634
- background: #fff;
635
- border: 1px solid #e2e8f0;
636
- border-radius: 1.5rem;
637
- padding: 2rem;
638
- box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.04);
639
- transition: border-color 0.5s, box-shadow 0.5s;
640
- min-height: 15rem;
641
- display: flex;
642
- align-items: center;
643
- justify-content: center;
644
- position: relative;
645
- overflow: visible;
646
- }
647
-
648
- :global(.theme-dark) .zg-preview-body {
649
- background: #18181b;
650
- border-color: #27272a;
651
- }
652
-
653
- .zg-preview-dots {
654
- position: absolute;
655
- inset: 0;
656
- pointer-events: none;
657
- border-radius: 1.5rem;
658
- overflow: hidden;
659
- opacity: 0.03;
660
- background-image: radial-gradient(circle at 2px 2px, currentcolor 1px, transparent 0);
661
- background-size: 24px 24px;
662
- }
663
-
664
- .zg-output {
665
- font-size: 2rem;
666
- font-weight: 700;
667
- text-align: center;
668
- max-width: 100%;
669
- line-height: 1.5;
670
- z-index: 10;
671
- transition: color 0.3s;
672
- overflow-wrap: anywhere;
673
- color: var(--zalgo-color, inherit);
674
- }
675
-
676
- @media (min-width: 768px) {
677
- .zg-output {
678
- font-size: 3rem;
679
- }
680
- }
681
-
682
- .zg-output-empty {
683
- color: #e2e8f0;
684
- font-style: italic;
685
- font-weight: 500;
686
- transition: color 0.5s;
687
- }
688
-
689
- :global(.theme-dark) .zg-output-empty {
690
- color: #27272a;
691
- }
692
-
693
- .zg-glitch-overlay {
694
- position: absolute;
695
- inset: 0;
696
- pointer-events: none;
697
- opacity: 0;
698
- transition: opacity 0.3s;
699
- }
700
-
701
- .zg-glitch-line {
702
- position: absolute;
703
- left: 0;
704
- width: 100%;
705
- height: 1px;
706
- }
707
-
708
- .zg-glitch-line-1 {
709
- top: 25%;
710
- background: rgba(147, 51, 234, 0.2);
711
- animation: zg-pulse 2s infinite;
712
- }
713
-
714
- .zg-glitch-line-2 {
715
- top: 66%;
716
- background: rgba(99, 102, 241, 0.2);
717
- animation: zg-pulse 2s 1s infinite;
718
- }
719
-
720
- @keyframes zg-pulse {
721
- 0%, 100% {
722
- opacity: 0.3
723
- }
724
-
725
- 50% {
726
- opacity: 1
727
- }
728
- }
729
-
730
- .zg-preview-note {
731
- margin-top: 1rem;
732
- text-align: center;
733
- font-size: 0.65rem;
734
- color: #94a3b8;
735
- text-transform: uppercase;
736
- letter-spacing: 0.1em;
737
- }
738
-
739
- :global(.theme-dark) .zg-preview-note {
740
- color: #52525b;
741
- }
742
-
743
- .zg-slider::-webkit-slider-thumb {
744
- -webkit-appearance: none;
745
- appearance: none;
746
- width: 18px;
747
- height: 18px;
748
- background: #9333ea;
749
- border-radius: 50%;
750
- cursor: pointer;
751
- border: 3px solid #fff;
752
- box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
753
- }
754
-
755
- :global(.theme-dark) .zg-slider::-webkit-slider-thumb {
756
- border-color: #18181b;
757
- }
758
- </style>