@duskmoon-dev/core 1.2.0 → 1.4.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.
package/dist/index.css CHANGED
@@ -355,6 +355,47 @@ html {
355
355
  }
356
356
 
357
357
 
358
+ /* Custom utilities */
359
+ /**
360
+ * Custom utility classes
361
+ * Extends Tailwind CSS v4 with additional utilities
362
+ */
363
+
364
+ /* Responsive grid utilities with auto-fill/auto-fit */
365
+ @utility grid-cols-auto-fill-* {
366
+ grid-template-columns: repeat(auto-fill, minmax(min(calc(--value(integer) * 0.25rem), 100%), 1fr));
367
+ }
368
+
369
+ @utility grid-cols-auto-fit-* {
370
+ grid-template-columns: repeat(auto-fit, minmax(min(calc(--value(integer) * 0.25rem), 100%), 1fr));
371
+ }
372
+
373
+ /* Screen reader only utility - visually hidden but accessible */
374
+ .sr-only {
375
+ position: absolute;
376
+ width: 1px;
377
+ height: 1px;
378
+ padding: 0;
379
+ margin: -1px;
380
+ overflow: hidden;
381
+ clip: rect(0, 0, 0, 0);
382
+ white-space: nowrap;
383
+ border: 0;
384
+ }
385
+
386
+ /* Undo sr-only for focus states (useful for skip links) */
387
+ .not-sr-only {
388
+ position: static;
389
+ width: auto;
390
+ height: auto;
391
+ padding: 0;
392
+ margin: 0;
393
+ overflow: visible;
394
+ clip: auto;
395
+ white-space: normal;
396
+ }
397
+
398
+
358
399
 
359
400
  /* Built-in themes */
360
401
  /**
@@ -457,6 +498,42 @@ html {
457
498
 
458
499
  --color-outline: oklch(75% 0.01 260);
459
500
  --color-outline-variant: oklch(85% 0.01 260);
501
+
502
+ /* ============================================
503
+ * ACCENT COLORS
504
+ * ============================================ */
505
+
506
+ --color-accent: oklch(65% 0.20 145);
507
+ --color-accent-content: oklch(100% 0 0);
508
+
509
+ /* ============================================
510
+ * NEUTRAL COLORS
511
+ * ============================================ */
512
+
513
+ --color-neutral: oklch(35% 0.02 260);
514
+ --color-neutral-content: oklch(95% 0.01 260);
515
+ --color-neutral-variant: oklch(50% 0.02 260);
516
+
517
+ /* ============================================
518
+ * SURFACE VARIANT
519
+ * ============================================ */
520
+
521
+ --color-surface-variant: oklch(94% 0.02 85);
522
+
523
+ /* ============================================
524
+ * INVERSE COLORS
525
+ * ============================================ */
526
+
527
+ --color-inverse-surface: oklch(25% 0.02 260);
528
+ --color-inverse-on-surface: oklch(95% 0.01 260);
529
+ --color-inverse-primary: oklch(80% 0.14 55);
530
+
531
+ /* ============================================
532
+ * SHADOW & SCRIM
533
+ * ============================================ */
534
+
535
+ --color-shadow: oklch(0% 0 0);
536
+ --color-scrim: oklch(0% 0 0 / 50%);
460
537
  }
461
538
 
462
539
  /* Default theme - applies sunshine when no data-theme is set */
@@ -527,6 +604,27 @@ html {
527
604
  /* Outline Colors */
528
605
  --color-outline: oklch(75% 0.01 260);
529
606
  --color-outline-variant: oklch(85% 0.01 260);
607
+
608
+ /* Accent Colors */
609
+ --color-accent: oklch(65% 0.20 145);
610
+ --color-accent-content: oklch(100% 0 0);
611
+
612
+ /* Neutral Colors */
613
+ --color-neutral: oklch(35% 0.02 260);
614
+ --color-neutral-content: oklch(95% 0.01 260);
615
+ --color-neutral-variant: oklch(50% 0.02 260);
616
+
617
+ /* Surface Variant */
618
+ --color-surface-variant: oklch(94% 0.02 85);
619
+
620
+ /* Inverse Colors */
621
+ --color-inverse-surface: oklch(25% 0.02 260);
622
+ --color-inverse-on-surface: oklch(95% 0.01 260);
623
+ --color-inverse-primary: oklch(80% 0.14 55);
624
+
625
+ /* Shadow & Scrim */
626
+ --color-shadow: oklch(0% 0 0);
627
+ --color-scrim: oklch(0% 0 0 / 50%);
530
628
  }
531
629
 
532
630
  /**
@@ -624,6 +722,42 @@ html {
624
722
 
625
723
  --color-outline: oklch(44% 0.01 260);
626
724
  --color-outline-variant: oklch(35% 0.01 260);
725
+
726
+ /* ============================================
727
+ * ACCENT COLORS
728
+ * ============================================ */
729
+
730
+ --color-accent: oklch(72% 0.16 175);
731
+ --color-accent-content: oklch(20% 0 0);
732
+
733
+ /* ============================================
734
+ * NEUTRAL COLORS
735
+ * ============================================ */
736
+
737
+ --color-neutral: oklch(75% 0.01 260);
738
+ --color-neutral-content: oklch(20% 0.01 260);
739
+ --color-neutral-variant: oklch(55% 0.01 260);
740
+
741
+ /* ============================================
742
+ * SURFACE VARIANT
743
+ * ============================================ */
744
+
745
+ --color-surface-variant: oklch(30% 0.02 260);
746
+
747
+ /* ============================================
748
+ * INVERSE COLORS
749
+ * ============================================ */
750
+
751
+ --color-inverse-surface: oklch(95% 0.01 260);
752
+ --color-inverse-on-surface: oklch(25% 0.02 260);
753
+ --color-inverse-primary: oklch(55% 0.16 255);
754
+
755
+ /* ============================================
756
+ * SHADOW & SCRIM
757
+ * ============================================ */
758
+
759
+ --color-shadow: oklch(0% 0 0);
760
+ --color-scrim: oklch(0% 0 0 / 60%);
627
761
  }
628
762
 
629
763
  /* System preference: prefers-color-scheme dark */
@@ -695,6 +829,27 @@ html {
695
829
  /* Outline Colors */
696
830
  --color-outline: oklch(44% 0.01 260);
697
831
  --color-outline-variant: oklch(35% 0.01 260);
832
+
833
+ /* Accent Colors */
834
+ --color-accent: oklch(72% 0.16 175);
835
+ --color-accent-content: oklch(20% 0 0);
836
+
837
+ /* Neutral Colors */
838
+ --color-neutral: oklch(75% 0.01 260);
839
+ --color-neutral-content: oklch(20% 0.01 260);
840
+ --color-neutral-variant: oklch(55% 0.01 260);
841
+
842
+ /* Surface Variant */
843
+ --color-surface-variant: oklch(30% 0.02 260);
844
+
845
+ /* Inverse Colors */
846
+ --color-inverse-surface: oklch(95% 0.01 260);
847
+ --color-inverse-on-surface: oklch(25% 0.02 260);
848
+ --color-inverse-primary: oklch(55% 0.16 255);
849
+
850
+ /* Shadow & Scrim */
851
+ --color-shadow: oklch(0% 0 0);
852
+ --color-scrim: oklch(0% 0 0 / 60%);
698
853
  }
699
854
  }
700
855
 
@@ -2250,6 +2405,7 @@ html {
2250
2405
  font-size: 0.875rem;
2251
2406
  }
2252
2407
 
2408
+ /* List-based breadcrumbs (legacy) */
2253
2409
  .breadcrumbs li {
2254
2410
  display: flex;
2255
2411
  align-items: center;
@@ -2280,6 +2436,198 @@ html {
2280
2436
  color: var(--color-on-surface-variant);
2281
2437
  }
2282
2438
 
2439
+ /* Span-based breadcrumbs */
2440
+ .breadcrumb-item {
2441
+ display: inline-flex;
2442
+ align-items: center;
2443
+ gap: 0.375rem;
2444
+ color: var(--color-on-surface-variant);
2445
+ text-decoration: none;
2446
+ transition: color 150ms ease-in-out;
2447
+ }
2448
+
2449
+ .breadcrumb-item:hover {
2450
+ color: var(--color-on-surface);
2451
+ }
2452
+
2453
+ .breadcrumb-item-active {
2454
+ color: var(--color-on-surface);
2455
+ font-weight: 500;
2456
+ pointer-events: none;
2457
+ }
2458
+
2459
+ .breadcrumb-link {
2460
+ display: inline-flex;
2461
+ align-items: center;
2462
+ gap: 0.375rem;
2463
+ color: var(--color-on-surface-variant);
2464
+ text-decoration: none;
2465
+ transition: color 150ms ease-in-out;
2466
+ cursor: pointer;
2467
+ }
2468
+
2469
+ .breadcrumb-link:hover {
2470
+ color: var(--color-primary);
2471
+ text-decoration: underline;
2472
+ }
2473
+
2474
+ .breadcrumb-link:focus-visible {
2475
+ outline: 2px solid var(--color-primary);
2476
+ outline-offset: 2px;
2477
+ border-radius: 0.25rem;
2478
+ }
2479
+
2480
+ /* Separator - Default shows "/" */
2481
+ .breadcrumb-separator {
2482
+ display: inline-flex;
2483
+ align-items: center;
2484
+ color: var(--color-on-surface-variant);
2485
+ font-size: 0.875rem;
2486
+ user-select: none;
2487
+ opacity: 0.6;
2488
+ }
2489
+
2490
+ .breadcrumb-separator::before {
2491
+ content: "/";
2492
+ }
2493
+
2494
+ /* Separator Variants */
2495
+ .breadcrumbs-slash .breadcrumb-separator::before {
2496
+ content: "/";
2497
+ }
2498
+
2499
+ .breadcrumbs-chevron .breadcrumb-separator::before {
2500
+ content: "›";
2501
+ font-size: 1.125rem;
2502
+ }
2503
+
2504
+ .breadcrumbs-dot .breadcrumb-separator::before {
2505
+ content: "•";
2506
+ }
2507
+
2508
+ .breadcrumbs-arrow .breadcrumb-separator::before {
2509
+ content: "→";
2510
+ }
2511
+
2512
+ .breadcrumbs-pipe .breadcrumb-separator::before {
2513
+ content: "|";
2514
+ }
2515
+
2516
+ /* Breadcrumb Icon */
2517
+ .breadcrumb-icon {
2518
+ display: inline-flex;
2519
+ align-items: center;
2520
+ justify-content: center;
2521
+ width: 1rem;
2522
+ height: 1rem;
2523
+ flex-shrink: 0;
2524
+ }
2525
+
2526
+ .breadcrumb-icon svg {
2527
+ width: 100%;
2528
+ height: 100%;
2529
+ }
2530
+
2531
+ /* Home Icon Link */
2532
+ .breadcrumb-home {
2533
+ display: inline-flex;
2534
+ align-items: center;
2535
+ justify-content: center;
2536
+ color: var(--color-on-surface-variant);
2537
+ text-decoration: none;
2538
+ transition: color 150ms ease-in-out;
2539
+ }
2540
+
2541
+ .breadcrumb-home:hover {
2542
+ color: var(--color-primary);
2543
+ }
2544
+
2545
+ .breadcrumb-home-icon {
2546
+ width: 1.125rem;
2547
+ height: 1.125rem;
2548
+ }
2549
+
2550
+ /* Collapsed Breadcrumbs (with ellipsis) */
2551
+ .breadcrumb-ellipsis {
2552
+ display: inline-flex;
2553
+ align-items: center;
2554
+ justify-content: center;
2555
+ padding: 0.25rem 0.5rem;
2556
+ color: var(--color-on-surface-variant);
2557
+ background-color: transparent;
2558
+ border: none;
2559
+ border-radius: 0.25rem;
2560
+ cursor: pointer;
2561
+ transition: background-color 150ms ease-in-out;
2562
+ }
2563
+
2564
+ .breadcrumb-ellipsis::before {
2565
+ content: "...";
2566
+ }
2567
+
2568
+ .breadcrumb-ellipsis:hover {
2569
+ background-color: color-mix(in oklch, var(--color-on-surface) 8%, transparent);
2570
+ }
2571
+
2572
+ /* Color Variants */
2573
+ .breadcrumbs-primary .breadcrumb-link:hover,
2574
+ .breadcrumbs-primary .breadcrumb-item-active {
2575
+ color: var(--color-primary);
2576
+ }
2577
+
2578
+ .breadcrumbs-secondary .breadcrumb-link:hover,
2579
+ .breadcrumbs-secondary .breadcrumb-item-active {
2580
+ color: var(--color-secondary);
2581
+ }
2582
+
2583
+ .breadcrumbs-tertiary .breadcrumb-link:hover,
2584
+ .breadcrumbs-tertiary .breadcrumb-item-active {
2585
+ color: var(--color-tertiary);
2586
+ }
2587
+
2588
+ /* Size Variants */
2589
+ .breadcrumbs-sm {
2590
+ font-size: 0.75rem;
2591
+ gap: 0.375rem;
2592
+ }
2593
+
2594
+ .breadcrumbs-sm .breadcrumb-icon,
2595
+ .breadcrumbs-sm .breadcrumb-home-icon {
2596
+ width: 0.875rem;
2597
+ height: 0.875rem;
2598
+ }
2599
+
2600
+ .breadcrumbs-lg {
2601
+ font-size: 1rem;
2602
+ gap: 0.625rem;
2603
+ }
2604
+
2605
+ .breadcrumbs-lg .breadcrumb-icon,
2606
+ .breadcrumbs-lg .breadcrumb-home-icon {
2607
+ width: 1.25rem;
2608
+ height: 1.25rem;
2609
+ }
2610
+
2611
+ /* Contained Variant (with background) */
2612
+ .breadcrumbs-contained {
2613
+ padding: 0.75rem 1rem;
2614
+ background-color: var(--color-surface-container);
2615
+ border-radius: 0.5rem;
2616
+ }
2617
+
2618
+ /* No Wrap Variant */
2619
+ .breadcrumbs-nowrap {
2620
+ flex-wrap: nowrap;
2621
+ overflow-x: auto;
2622
+ }
2623
+
2624
+ /* Disabled Breadcrumb Item */
2625
+ .breadcrumb-item-disabled {
2626
+ opacity: 0.38;
2627
+ pointer-events: none;
2628
+ cursor: not-allowed;
2629
+ }
2630
+
2283
2631
  /* Tabs */
2284
2632
  .tabs {
2285
2633
  display: flex;
@@ -12741,18 +13089,93 @@ html {
12741
13089
  @layer components {
12742
13090
  /* Base Collapse */
12743
13091
  .collapse {
13092
+ display: flex;
13093
+ flex-direction: column;
13094
+ border-radius: 0.5rem;
13095
+ background-color: var(--color-surface);
13096
+ /* Override Tailwind's visibility: collapse utility */
13097
+ visibility: visible !important;
13098
+ }
13099
+
13100
+ /* Collapse Trigger */
13101
+ .collapse-trigger {
13102
+ display: flex;
13103
+ align-items: center;
13104
+ justify-content: space-between;
13105
+ width: 100%;
13106
+ padding: 0.75rem 1rem;
13107
+ font-size: 1rem;
13108
+ font-weight: 500;
13109
+ color: var(--color-on-surface);
13110
+ background-color: transparent;
13111
+ border: none;
13112
+ cursor: pointer;
13113
+ transition: background-color 150ms ease-in-out;
13114
+ text-align: left;
13115
+ }
13116
+
13117
+ .collapse-trigger:hover {
13118
+ background-color: var(--color-surface-container);
13119
+ }
13120
+
13121
+ .collapse-trigger:focus-visible {
13122
+ outline: 2px solid var(--color-primary);
13123
+ outline-offset: -2px;
13124
+ }
13125
+
13126
+ /* Collapse Icon */
13127
+ .collapse-icon {
13128
+ display: flex;
13129
+ align-items: center;
13130
+ justify-content: center;
13131
+ width: 1.5rem;
13132
+ height: 1.5rem;
13133
+ transition: transform 300ms ease-in-out;
13134
+ flex-shrink: 0;
13135
+ }
13136
+
13137
+ /* Collapse Content - hidden by default */
13138
+ .collapse-content {
12744
13139
  display: grid;
12745
13140
  grid-template-rows: 0fr;
12746
13141
  transition: grid-template-rows 300ms ease-in-out;
13142
+ overflow: hidden;
13143
+ }
13144
+
13145
+ .collapse-content > * {
13146
+ overflow: hidden;
13147
+ padding: 0 1rem;
12747
13148
  }
12748
13149
 
12749
- .collapse.show {
13150
+ /* Open State */
13151
+ .collapse-open .collapse-content {
12750
13152
  grid-template-rows: 1fr;
12751
13153
  }
12752
13154
 
12753
- /* Collapse Content */
12754
- .collapse-content {
12755
- overflow: hidden;
13155
+ .collapse-open .collapse-content > * {
13156
+ padding: 0 1rem 1rem;
13157
+ }
13158
+
13159
+ .collapse-open .collapse-icon {
13160
+ transform: rotate(180deg);
13161
+ }
13162
+
13163
+ /* Closed State (explicit) */
13164
+ .collapse-closed .collapse-content {
13165
+ grid-template-rows: 0fr;
13166
+ }
13167
+
13168
+ /* Legacy show class for backwards compatibility */
13169
+ .collapse.show .collapse-content {
13170
+ grid-template-rows: 1fr;
13171
+ }
13172
+
13173
+ .collapse.show .collapse-content > * {
13174
+ padding: 0 1rem 1rem;
13175
+ }
13176
+
13177
+ .collapse.show .collapse-icon {
13178
+ transform: rotate(180deg);
12756
13179
  }
12757
13180
 
12758
13181
  /* Collapse Inner (for padding) */
@@ -12816,9 +13239,11 @@ html {
12816
13239
  border: 1px solid var(--color-outline-variant);
12817
13240
  border-radius: 0.75rem;
12818
13241
  overflow: hidden;
13242
+ box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1);
12819
13243
  }
12820
13244
 
12821
- .collapse-card .collapse-toggle {
13245
+ .collapse-card .collapse-toggle,
13246
+ .collapse-card .collapse-trigger {
12822
13247
  width: 100%;
12823
13248
  justify-content: space-between;
12824
13249
  padding: 1rem;
@@ -12826,15 +13251,132 @@ html {
12826
13251
  color: var(--color-on-surface);
12827
13252
  }
12828
13253
 
12829
- .collapse-card .collapse-toggle:hover {
13254
+ .collapse-card .collapse-toggle:hover,
13255
+ .collapse-card .collapse-trigger:hover {
12830
13256
  background-color: var(--color-surface-container);
12831
13257
  }
12832
13258
 
12833
- .collapse-card .collapse-inner {
13259
+ .collapse-card .collapse-inner,
13260
+ .collapse-card .collapse-content > * {
12834
13261
  padding: 0 1rem 1rem;
12835
13262
  color: var(--color-on-surface-variant);
12836
13263
  }
12837
13264
 
13265
+ /* Bordered Variant */
13266
+ .collapse-bordered {
13267
+ border: 1px solid var(--color-outline-variant);
13268
+ border-radius: 0.5rem;
13269
+ }
13270
+
13271
+ /* Ghost Variant */
13272
+ .collapse-ghost {
13273
+ background-color: transparent;
13274
+ }
13275
+
13276
+ .collapse-ghost .collapse-trigger:hover {
13277
+ background-color: color-mix(in oklch, var(--color-on-surface) 5%, transparent);
13278
+ }
13279
+
13280
+ /* Color Variants */
13281
+ .collapse-primary .collapse-trigger {
13282
+ color: var(--color-primary);
13283
+ }
13284
+
13285
+ .collapse-primary .collapse-trigger:hover {
13286
+ background-color: var(--color-primary-container);
13287
+ }
13288
+
13289
+ .collapse-secondary .collapse-trigger {
13290
+ color: var(--color-secondary);
13291
+ }
13292
+
13293
+ .collapse-secondary .collapse-trigger:hover {
13294
+ background-color: var(--color-secondary-container);
13295
+ }
13296
+
13297
+ .collapse-tertiary .collapse-trigger {
13298
+ color: var(--color-tertiary);
13299
+ }
13300
+
13301
+ .collapse-tertiary .collapse-trigger:hover {
13302
+ background-color: var(--color-tertiary-container);
13303
+ }
13304
+
13305
+ /* Size Variants */
13306
+ .collapse-sm .collapse-trigger {
13307
+ padding: 0.5rem 0.75rem;
13308
+ font-size: 0.875rem;
13309
+ }
13310
+
13311
+ .collapse-sm .collapse-content > * {
13312
+ padding: 0 0.75rem;
13313
+ }
13314
+
13315
+ .collapse-sm.collapse-open .collapse-content > * {
13316
+ padding: 0 0.75rem 0.75rem;
13317
+ }
13318
+
13319
+ .collapse-lg .collapse-trigger {
13320
+ padding: 1rem 1.25rem;
13321
+ font-size: 1.125rem;
13322
+ }
13323
+
13324
+ .collapse-lg .collapse-content > * {
13325
+ padding: 0 1.25rem;
13326
+ }
13327
+
13328
+ .collapse-lg.collapse-open .collapse-content > * {
13329
+ padding: 0 1.25rem 1.25rem;
13330
+ }
13331
+
13332
+ /* Divider Variant */
13333
+ .collapse-divider .collapse-trigger {
13334
+ border-bottom: 1px solid var(--color-outline-variant);
13335
+ }
13336
+
13337
+ .collapse-divider.collapse-open .collapse-trigger {
13338
+ border-bottom-color: var(--color-outline-variant);
13339
+ }
13340
+
13341
+ /* Disabled State */
13342
+ .collapse-disabled {
13343
+ opacity: 0.5;
13344
+ pointer-events: none;
13345
+ }
13346
+
13347
+ .collapse-disabled .collapse-trigger {
13348
+ cursor: not-allowed;
13349
+ }
13350
+
13351
+ /* Loading State */
13352
+ .collapse-loading .collapse-trigger::after {
13353
+ content: '';
13354
+ display: inline-block;
13355
+ width: 1rem;
13356
+ height: 1rem;
13357
+ margin-left: 0.5rem;
13358
+ border: 2px solid var(--color-outline);
13359
+ border-top-color: var(--color-primary);
13360
+ border-radius: 50%;
13361
+ animation: collapse-spin 0.8s linear infinite;
13362
+ }
13363
+
13364
+ @keyframes collapse-spin {
13365
+ to { transform: rotate(360deg); }
13366
+ }
13367
+
13368
+ /* Slide Animation */
13369
+ .collapse-slide .collapse-content > * {
13370
+ transform: translateY(-0.5rem);
13371
+ opacity: 0;
13372
+ transition: transform 300ms ease-in-out, opacity 200ms ease-in-out;
13373
+ }
13374
+
13375
+ .collapse-slide.collapse-open .collapse-content > * {
13376
+ transform: translateY(0);
13377
+ opacity: 1;
13378
+ }
13379
+
12838
13380
  /* Horizontal Collapse */
12839
13381
  .collapse-horizontal {
12840
13382
  display: grid;
@@ -12977,14 +13519,20 @@ html {
12977
13519
  /* Reduce Motion */
12978
13520
  @media (prefers-reduced-motion: reduce) {
12979
13521
  .collapse,
13522
+ .collapse-content,
13523
+ .collapse-icon,
12980
13524
  .collapse-fade,
12981
13525
  .collapse-horizontal,
12982
13526
  .collapse-horizontal-fixed,
12983
13527
  .collapse-toggle-icon,
12984
13528
  .collapse-maxheight,
12985
- .collapse-animating {
13529
+ .collapse-animating,
13530
+ .collapse-slide .collapse-content > * {
12986
13531
  transition: none;
12987
13532
  }
13533
+ .collapse-loading .collapse-trigger::after {
13534
+ animation: none;
13535
+ }
12988
13536
  }
12989
13537
  }
12990
13538
 
@@ -93,6 +93,42 @@
93
93
 
94
94
  --color-outline: oklch(44% 0.01 260);
95
95
  --color-outline-variant: oklch(35% 0.01 260);
96
+
97
+ /* ============================================
98
+ * ACCENT COLORS
99
+ * ============================================ */
100
+
101
+ --color-accent: oklch(72% 0.16 175);
102
+ --color-accent-content: oklch(20% 0 0);
103
+
104
+ /* ============================================
105
+ * NEUTRAL COLORS
106
+ * ============================================ */
107
+
108
+ --color-neutral: oklch(75% 0.01 260);
109
+ --color-neutral-content: oklch(20% 0.01 260);
110
+ --color-neutral-variant: oklch(55% 0.01 260);
111
+
112
+ /* ============================================
113
+ * SURFACE VARIANT
114
+ * ============================================ */
115
+
116
+ --color-surface-variant: oklch(30% 0.02 260);
117
+
118
+ /* ============================================
119
+ * INVERSE COLORS
120
+ * ============================================ */
121
+
122
+ --color-inverse-surface: oklch(95% 0.01 260);
123
+ --color-inverse-on-surface: oklch(25% 0.02 260);
124
+ --color-inverse-primary: oklch(55% 0.16 255);
125
+
126
+ /* ============================================
127
+ * SHADOW & SCRIM
128
+ * ============================================ */
129
+
130
+ --color-shadow: oklch(0% 0 0);
131
+ --color-scrim: oklch(0% 0 0 / 60%);
96
132
  }
97
133
 
98
134
  /* System preference: prefers-color-scheme dark */
@@ -164,5 +200,26 @@
164
200
  /* Outline Colors */
165
201
  --color-outline: oklch(44% 0.01 260);
166
202
  --color-outline-variant: oklch(35% 0.01 260);
203
+
204
+ /* Accent Colors */
205
+ --color-accent: oklch(72% 0.16 175);
206
+ --color-accent-content: oklch(20% 0 0);
207
+
208
+ /* Neutral Colors */
209
+ --color-neutral: oklch(75% 0.01 260);
210
+ --color-neutral-content: oklch(20% 0.01 260);
211
+ --color-neutral-variant: oklch(55% 0.01 260);
212
+
213
+ /* Surface Variant */
214
+ --color-surface-variant: oklch(30% 0.02 260);
215
+
216
+ /* Inverse Colors */
217
+ --color-inverse-surface: oklch(95% 0.01 260);
218
+ --color-inverse-on-surface: oklch(25% 0.02 260);
219
+ --color-inverse-primary: oklch(55% 0.16 255);
220
+
221
+ /* Shadow & Scrim */
222
+ --color-shadow: oklch(0% 0 0);
223
+ --color-scrim: oklch(0% 0 0 / 60%);
167
224
  }
168
225
  }