@howssatoshi/quantumcss 1.2.0 → 1.3.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@howssatoshi/quantumcss",
3
- "version": "1.2.0",
3
+ "version": "1.3.1",
4
4
  "description": "Advanced utility-first CSS framework with JIT generation and modern components",
5
5
  "main": "dist/quantum.min.css",
6
6
  "bin": {
package/src/cli.js CHANGED
@@ -29,8 +29,7 @@ function scaffold(template, targetPath) {
29
29
  shopping: 'shopping/index.html',
30
30
  starlight: 'starlight.html',
31
31
  news: 'news-template.html',
32
- docs: 'kitchen-sink.html',
33
- demo: 'demo.html'
32
+ docs: 'kitchen-sink.html'
34
33
  };
35
34
 
36
35
  const templateFile = templateMap[template];
@@ -404,6 +404,284 @@ body.light-mode .accordion-starlight .accordion-content {
404
404
  color: #475569 !important;
405
405
  }
406
406
 
407
+ /* 11. Search Input with Icon */
408
+ .search-container {
409
+ position: relative;
410
+ width: 100%;
411
+ max-width: 400px;
412
+ }
413
+
414
+ .search-input {
415
+ padding-left: 3rem !important;
416
+ }
417
+
418
+ .search-icon {
419
+ position: absolute;
420
+ left: 1rem;
421
+ top: 50%;
422
+ transform: translateY(-50%);
423
+ color: var(--text-muted);
424
+ pointer-events: none;
425
+ width: 1.25rem;
426
+ height: 1.25rem;
427
+ }
428
+
429
+ /* 12. Gallery Widget */
430
+ .starlight-gallery {
431
+ display: grid;
432
+ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
433
+ gap: var(--space-4);
434
+ }
435
+
436
+ .gallery-item {
437
+ position: relative;
438
+ aspect-ratio: 1;
439
+ border-radius: var(--radius-xl);
440
+ overflow: hidden;
441
+ background: var(--glass-bg);
442
+ border: 1px solid var(--glass-border);
443
+ cursor: pointer;
444
+ transition: all var(--transition-base);
445
+ }
446
+
447
+ .gallery-item img {
448
+ width: 100%;
449
+ height: 100%;
450
+ object-fit: cover;
451
+ transition: transform var(--transition-slow);
452
+ }
453
+
454
+ .gallery-item:hover img {
455
+ transform: scale(1.1);
456
+ }
457
+
458
+ .gallery-item:hover {
459
+ border-color: var(--color-starlight-blue);
460
+ box-shadow: 0 0 20px var(--color-starlight-glow);
461
+ }
462
+
463
+ .gallery-overlay {
464
+ position: absolute;
465
+ inset: 0;
466
+ background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
467
+ display: flex;
468
+ align-items: flex-end;
469
+ padding: 1rem;
470
+ opacity: 0;
471
+ transition: opacity 0.3s ease;
472
+ }
473
+
474
+ .gallery-item:hover .gallery-overlay {
475
+ opacity: 1;
476
+ }
477
+
478
+ /* 13. Dashboard Widget */
479
+ .dashboard-grid {
480
+ display: grid;
481
+ grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
482
+ gap: var(--space-6);
483
+ }
484
+
485
+ .stat-card {
486
+ padding: var(--space-6);
487
+ display: flex;
488
+ flex-direction: column;
489
+ gap: var(--space-2);
490
+ }
491
+
492
+ .stat-value {
493
+ font-size: 2.5rem;
494
+ font-weight: 800;
495
+ background: linear-gradient(135deg, #fff 0%, var(--color-starlight-blue) 100%);
496
+ -webkit-background-clip: text;
497
+ -webkit-text-fill-color: transparent;
498
+ }
499
+
500
+ body.light-mode .stat-value {
501
+ background: linear-gradient(135deg, #1e293b 0%, var(--color-primary-600) 100%);
502
+ -webkit-background-clip: text;
503
+ -webkit-text-fill-color: transparent;
504
+ }
505
+
506
+ .stat-label {
507
+ text-transform: uppercase;
508
+ letter-spacing: 0.1em;
509
+ font-size: 0.75rem;
510
+ color: var(--text-muted);
511
+ }
512
+
513
+ .stat-trend {
514
+ font-size: 0.875rem;
515
+ display: flex;
516
+ align-items: center;
517
+ gap: 0.25rem;
518
+ }
519
+
520
+ .stat-trend.up { color: var(--color-success); }
521
+ .stat-trend.down { color: var(--color-error); }
522
+
523
+ /* 14. Hamburger Menu Glass */
524
+ .nav-glass {
525
+ background: rgba(255, 255, 255, 0.03);
526
+ backdrop-filter: blur(20px);
527
+ -webkit-backdrop-filter: blur(20px);
528
+ border-bottom: 1px solid rgba(255, 255, 255, 0.05);
529
+ padding: 1rem 2rem;
530
+ display: flex;
531
+ justify-content: space-between;
532
+ align-items: center;
533
+ position: sticky;
534
+ top: 0;
535
+ z-index: 1000;
536
+ }
537
+
538
+ body.light-mode .nav-glass {
539
+ background: rgba(255, 255, 255, 0.8);
540
+ border-bottom-color: rgba(0, 0, 0, 0.1);
541
+ }
542
+
543
+ .hamburger {
544
+ width: 2.5rem;
545
+ height: 2.5rem;
546
+ display: flex;
547
+ flex-direction: column;
548
+ justify-content: center;
549
+ gap: 0.4rem;
550
+ cursor: pointer;
551
+ background: rgba(255,255,255,0.05);
552
+ border: 1px solid rgba(255,255,255,0.1);
553
+ border-radius: 0.5rem;
554
+ padding: 0.5rem;
555
+ transition: all 0.3s;
556
+ }
557
+
558
+ body.light-mode .hamburger {
559
+ background: rgba(0,0,0,0.05);
560
+ border-color: rgba(0,0,0,0.1);
561
+ }
562
+
563
+ .hamburger:hover {
564
+ background: rgba(255,255,255,0.1);
565
+ border-color: var(--color-starlight-blue);
566
+ }
567
+
568
+ body.light-mode .hamburger:hover {
569
+ background: rgba(0,0,0,0.1);
570
+ }
571
+
572
+ .hamburger span {
573
+ width: 100%;
574
+ height: 2px;
575
+ background: white;
576
+ border-radius: 2px;
577
+ transition: all 0.3s;
578
+ }
579
+
580
+ body.light-mode .hamburger span {
581
+ background: #1e293b;
582
+ }
583
+
584
+ .nav-menu-mobile {
585
+ position: absolute;
586
+ top: 100%;
587
+ right: 2rem;
588
+ width: 250px;
589
+ background: rgba(10, 10, 25, 0.98);
590
+ backdrop-filter: blur(25px);
591
+ border: 1px solid rgba(255, 255, 255, 0.1);
592
+ border-radius: 1rem;
593
+ padding: 1rem;
594
+ margin-top: 0.5rem;
595
+ box-shadow: 0 20px 40px rgba(0,0,0,0.5);
596
+ display: none;
597
+ animation: slideInDown 0.3s ease forwards;
598
+ }
599
+
600
+ body.light-mode .nav-menu-mobile {
601
+ background: rgba(255, 255, 255, 0.98);
602
+ border-color: rgba(0, 0, 0, 0.1);
603
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
604
+ }
605
+
606
+ .nav-menu-mobile.active {
607
+ display: block;
608
+ }
609
+
610
+ @keyframes slideInDown {
611
+ from { opacity: 0; transform: translateY(-10px); }
612
+ to { opacity: 1; transform: translateY(0); }
613
+ }
614
+
615
+ /* 15. More Form Controls */
616
+ .select-starlight {
617
+ appearance: none;
618
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
619
+ background-repeat: no-repeat;
620
+ background-position: right 1rem center;
621
+ background-size: 1.25rem;
622
+ padding-right: 3rem !important;
623
+ }
624
+
625
+ body.light-mode .select-starlight {
626
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%231e293b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
627
+ }
628
+
629
+ .range-starlight {
630
+ appearance: none;
631
+ width: 100%;
632
+ height: 6px;
633
+ background: rgba(255,255,255,0.1);
634
+ border-radius: 3px;
635
+ outline: none;
636
+ }
637
+
638
+ body.light-mode .range-starlight {
639
+ background: rgba(0,0,0,0.1);
640
+ }
641
+
642
+ .range-starlight::-webkit-slider-thumb {
643
+ appearance: none;
644
+ width: 18px;
645
+ height: 18px;
646
+ background: var(--color-starlight-blue);
647
+ border-radius: 50%;
648
+ cursor: pointer;
649
+ box-shadow: 0 0 10px var(--color-starlight-glow);
650
+ transition: all 0.2s;
651
+ }
652
+
653
+ .range-starlight::-webkit-slider-thumb:hover {
654
+ transform: scale(1.2);
655
+ box-shadow: 0 0 20px var(--color-starlight-blue);
656
+ }
657
+
658
+ .toggle-starlight {
659
+ width: 3.5rem;
660
+ height: 1.75rem;
661
+ }
662
+
663
+ .toggle-starlight .toggle-slider {
664
+ background: rgba(255,255,255,0.1);
665
+ border: 1px solid rgba(255,255,255,0.1);
666
+ }
667
+
668
+ body.light-mode .toggle-starlight .toggle-slider {
669
+ background: rgba(0,0,0,0.1);
670
+ border-color: rgba(0,0,0,0.1);
671
+ }
672
+
673
+ .toggle-starlight .toggle-input:checked + .toggle-slider {
674
+ background: var(--color-starlight-blue);
675
+ }
676
+
677
+ body.light-mode .text-success { color: #059669; }
678
+ body.light-mode .text-warning { color: #d97706; }
679
+
680
+ body.light-mode .dialog-content .bg-black\/40 {
681
+ background-color: rgba(0, 0, 0, 0.05);
682
+ border-color: rgba(0, 0, 0, 0.1);
683
+ }
684
+
407
685
  @media (forced-colors: active) {
408
686
  button:focus, input:focus, select:focus, textarea:focus {
409
687
  outline: 2px solid SelectedItem !important;