domma-js 0.18.2 → 0.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.
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Domma Themes v0.18.1
2
+ * Domma Themes v0.19.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-02-25T21:51:19.692Z
6
- * Commit: 2eb305a
5
+ * Built: 2026-03-04T12:17:54.419Z
6
+ * Commit: ff798af
7
7
  */
8
8
 
9
9
  /**
@@ -3466,6 +3466,860 @@
3466
3466
  --dm-shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
3467
3467
 
3468
3468
  }
3469
+ /**
3470
+ * Domma Unicorn Light Theme
3471
+ * Predominantly pink and purple tones
3472
+ * Light mode variant - light backgrounds with vibrant unicorn palette
3473
+ */
3474
+
3475
+ .dm-theme-unicorn-light {
3476
+ color-scheme: light;
3477
+
3478
+ /* ================================================
3479
+ FOUNDATIONAL COLORS - Light Mode Base
3480
+ ================================================ */
3481
+
3482
+ /* Backgrounds - Light/white backgrounds */
3483
+ --dm-background: #ffffff;
3484
+ --dm-background-alt: #faf5fc;
3485
+ --dm-surface: #ffffff;
3486
+ --dm-surface-raised: #f3e5f5;
3487
+ --dm-surface-overlay: #faf5fc;
3488
+
3489
+ /* Text - Dark colours for readability on light */
3490
+ --dm-text: #2d1b3d;
3491
+ --dm-text-secondary: #5d3a6e;
3492
+ --dm-text-muted: #8e6b9e;
3493
+ --dm-text-disabled: #c4a8d0;
3494
+ --dm-text-inverse: #ffffff;
3495
+
3496
+ /* Borders - Subtle purple tint on light backgrounds */
3497
+ --dm-border: #e1bee7;
3498
+ --dm-border-light: #f3e5f5;
3499
+ --dm-border-dark: #ce93d8;
3500
+
3501
+ /* ================================================
3502
+ UNICORN PRIMARY COLOURS - Amethyst Purple
3503
+ ================================================ */
3504
+ --dm-primary: #9b59b6;
3505
+ --dm-primary-hover: #8e44ad;
3506
+ --dm-primary-active: #7d3c98;
3507
+ --dm-primary-light: #f3e5f5;
3508
+ --dm-primary-dark: #7d3c98;
3509
+
3510
+ /* Focus ring with soft purple colour */
3511
+ --dm-focus-ring: 0 0 0 3px rgba(155, 89, 182, 0.35);
3512
+ --dm-border-focus: #9b59b6;
3513
+
3514
+ /* ================================================
3515
+ SECONDARY COLOURS - Hot Pink
3516
+ ================================================ */
3517
+ --dm-secondary: #e91e90;
3518
+ --dm-secondary-hover: #d81b7f;
3519
+ --dm-secondary-active: #c2176e;
3520
+ --dm-secondary-light: #fce4ec;
3521
+ --dm-secondary-dark: #c2176e;
3522
+
3523
+ /* ================================================
3524
+ STATUS COLOURS
3525
+ ================================================ */
3526
+ --dm-success: #66bb6a;
3527
+ --dm-success-hover: #57a85b;
3528
+ --dm-success-active: #43a047;
3529
+ --dm-success-light: rgba(102, 187, 106, 0.15);
3530
+ --dm-success-dark: #388e3c;
3531
+
3532
+ --dm-info: #42a5f5;
3533
+ --dm-info-hover: #2196f3;
3534
+ --dm-info-active: #1e88e5;
3535
+ --dm-info-light: rgba(66, 165, 245, 0.15);
3536
+ --dm-info-dark: #1976d2;
3537
+
3538
+ --dm-warning: #ffa726;
3539
+ --dm-warning-hover: #fb8c00;
3540
+ --dm-warning-active: #f57c00;
3541
+ --dm-warning-light: rgba(255, 167, 38, 0.15);
3542
+ --dm-warning-dark: #e65100;
3543
+ --dm-warning-text: #e65100;
3544
+
3545
+ --dm-danger: #ef5350;
3546
+ --dm-danger-hover: #e53935;
3547
+ --dm-danger-active: #c62828;
3548
+ --dm-danger-light: rgba(239, 83, 80, 0.15);
3549
+ --dm-danger-dark: #c62828;
3550
+
3551
+ /* ================================================
3552
+ ACCENT COLOURS
3553
+ ================================================ */
3554
+ --dm-accent-1: #f48fb1; /* Soft pink */
3555
+ --dm-accent-2: #ce93d8; /* Light purple */
3556
+ --dm-accent-3: #ab47bc; /* Medium purple */
3557
+ --dm-accent-4: #9b59b6; /* Amethyst */
3558
+
3559
+ /* ================================================
3560
+ INTERACTIVE STATES
3561
+ ================================================ */
3562
+ --dm-hover-bg: rgba(155, 89, 182, 0.06);
3563
+ --dm-active-bg: rgba(155, 89, 182, 0.12);
3564
+ --dm-selected-bg: rgba(155, 89, 182, 0.12);
3565
+ --dm-disabled-opacity: 0.65;
3566
+
3567
+ /* ================================================
3568
+ COMPONENT-SPECIFIC COLORS
3569
+ ================================================ */
3570
+
3571
+ /* Cards */
3572
+ --dm-card-bg: var(--dm-surface);
3573
+ --dm-card-border: var(--dm-border);
3574
+ --dm-card-shadow: var(--dm-shadow-sm);
3575
+
3576
+ /* Inputs */
3577
+ --dm-input-bg: var(--dm-surface);
3578
+ --dm-input-border: var(--dm-border-dark);
3579
+ --dm-input-text: var(--dm-text);
3580
+ --dm-input-placeholder: var(--dm-text-muted);
3581
+ --dm-input-focus-border: var(--dm-primary);
3582
+ --dm-input-focus-shadow: var(--dm-focus-ring);
3583
+ --dm-input-disabled-bg: #f3e5f5;
3584
+
3585
+ /* Buttons */
3586
+ --dm-btn-text: var(--dm-text);
3587
+ --dm-btn-bg: var(--dm-surface);
3588
+ --dm-btn-border: var(--dm-border-dark);
3589
+
3590
+ /* Tables */
3591
+ --dm-table-bg: transparent;
3592
+ --dm-table-border: var(--dm-border);
3593
+ --dm-table-header-bg: var(--dm-background-alt);
3594
+ --dm-table-header-text: var(--dm-text);
3595
+ --dm-table-stripe-bg: rgba(155, 89, 182, 0.03);
3596
+ --dm-table-hover-bg: rgba(155, 89, 182, 0.06);
3597
+ --dm-table-selected-bg: var(--dm-selected-bg);
3598
+
3599
+ /* Modals */
3600
+ --dm-modal-bg: var(--dm-surface);
3601
+ --dm-modal-border: var(--dm-border);
3602
+ --dm-modal-backdrop: rgba(45, 27, 61, 0.5);
3603
+ --dm-modal-shadow: var(--dm-shadow-xl);
3604
+
3605
+ /* Dropdowns */
3606
+ --dm-dropdown-bg: var(--dm-surface);
3607
+ --dm-dropdown-border: var(--dm-border);
3608
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
3609
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
3610
+ --dm-dropdown-item-active: var(--dm-selected-bg);
3611
+
3612
+ /* Tooltips */
3613
+ --dm-tooltip-bg: #2d1b3d;
3614
+ --dm-tooltip-text: #ffffff;
3615
+
3616
+ /* Toasts */
3617
+ --dm-toast-bg: var(--dm-surface);
3618
+ --dm-toast-border: var(--dm-border);
3619
+ --dm-toast-shadow: var(--dm-shadow-lg);
3620
+
3621
+ /* Navbar */
3622
+ --dm-navbar-bg: var(--dm-surface);
3623
+ --dm-navbar-text: var(--dm-text);
3624
+ --dm-navbar-border: var(--dm-border);
3625
+
3626
+ /* Sidebar */
3627
+ --dm-sidebar-bg: var(--dm-surface);
3628
+ --dm-sidebar-text: var(--dm-text);
3629
+ --dm-sidebar-border: var(--dm-border);
3630
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
3631
+ --dm-sidebar-item-active: var(--dm-selected-bg);
3632
+
3633
+ /* Tabs */
3634
+ --dm-tab-border: var(--dm-border);
3635
+ --dm-tab-hover-bg: var(--dm-hover-bg);
3636
+ --dm-tab-active-border: #9b59b6;
3637
+ --dm-tab-active-text: #7d3c98;
3638
+
3639
+ /* Accordion */
3640
+ --dm-accordion-bg: var(--dm-surface);
3641
+ --dm-accordion-border: var(--dm-border);
3642
+ --dm-accordion-header-bg: var(--dm-background-alt);
3643
+ --dm-accordion-header-hover: var(--dm-hover-bg);
3644
+
3645
+ /* Badges */
3646
+ --dm-badge-bg: var(--dm-primary);
3647
+ --dm-badge-text: #ffffff;
3648
+
3649
+ /* Progress */
3650
+ --dm-progress-bg: #f3e5f5;
3651
+ --dm-progress-bar: #9b59b6;
3652
+
3653
+ /* Scrollbar */
3654
+ --dm-scrollbar-track: #f3e5f5;
3655
+ --dm-scrollbar-thumb: #ce93d8;
3656
+ --dm-scrollbar-thumb-hover: #ab47bc;
3657
+
3658
+ /* Code */
3659
+ --dm-code-bg: #faf5fc;
3660
+ --dm-code-text: #e91e90;
3661
+ --dm-code-border: var(--dm-border);
3662
+
3663
+ /* ================================================
3664
+ SHADOWS - Standard for light mode
3665
+ ================================================ */
3666
+ --dm-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
3667
+ --dm-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
3668
+ --dm-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
3669
+ --dm-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
3670
+ --dm-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
3671
+ --dm-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
3672
+ --dm-shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
3673
+
3674
+ /* ================================================
3675
+ ELEVATION / DEPTH
3676
+ ================================================ */
3677
+ --dm-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.06);
3678
+ --dm-elevation-2: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
3679
+ --dm-elevation-3: 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);
3680
+ --dm-elevation-4: 0 20px 25px rgba(0, 0, 0, 0.15), 0 10px 10px rgba(0, 0, 0, 0.04);
3681
+ }
3682
+
3683
+ /**
3684
+ * Domma Unicorn Dark Theme
3685
+ * Predominantly pink and purple tones
3686
+ * Dark mode variant - deep purple-black backgrounds with luminous accents
3687
+ */
3688
+
3689
+ .dm-theme-unicorn-dark {
3690
+ color-scheme: dark;
3691
+
3692
+ /* ================================================
3693
+ FOUNDATIONAL COLORS - Dark Mode Base
3694
+ ================================================ */
3695
+
3696
+ /* Backgrounds - Deep purple-black backgrounds */
3697
+ --dm-background: #1a0e24;
3698
+ --dm-background-alt: #241432;
3699
+ --dm-surface: #241432;
3700
+ --dm-surface-raised: #341a45;
3701
+ --dm-surface-overlay: #341a45;
3702
+
3703
+ /* Text - Light colours for readability on dark */
3704
+ --dm-text: #f3e5f5;
3705
+ --dm-text-secondary: #ce93d8;
3706
+ --dm-text-muted: #ab47bc;
3707
+ --dm-text-disabled: #6a3d7a;
3708
+ --dm-text-inverse: #1a0e24;
3709
+
3710
+ /* Borders - Muted purple on dark backgrounds */
3711
+ --dm-border: #4a2660;
3712
+ --dm-border-light: #341a45;
3713
+ --dm-border-dark: #6a3d7a;
3714
+
3715
+ /* ================================================
3716
+ UNICORN PRIMARY COLOURS - Lighter purple for contrast
3717
+ ================================================ */
3718
+ --dm-primary: #ce93d8;
3719
+ --dm-primary-hover: #ba68c8;
3720
+ --dm-primary-active: #ab47bc;
3721
+ --dm-primary-light: #f3e5f5;
3722
+ --dm-primary-dark: #ab47bc;
3723
+
3724
+ /* Focus ring with soft purple colour */
3725
+ --dm-focus-ring: 0 0 0 3px rgba(206, 147, 216, 0.35);
3726
+ --dm-border-focus: #ce93d8;
3727
+
3728
+ /* ================================================
3729
+ SECONDARY COLOURS - Lighter pink for contrast
3730
+ ================================================ */
3731
+ --dm-secondary: #f48fb1;
3732
+ --dm-secondary-hover: #f06292;
3733
+ --dm-secondary-active: #ec407a;
3734
+ --dm-secondary-light: #fce4ec;
3735
+ --dm-secondary-dark: #ec407a;
3736
+
3737
+ /* ================================================
3738
+ STATUS COLOURS
3739
+ ================================================ */
3740
+ --dm-success: #66bb6a;
3741
+ --dm-success-hover: #81c784;
3742
+ --dm-success-active: #a5d6a7;
3743
+ --dm-success-light: rgba(102, 187, 106, 0.2);
3744
+ --dm-success-dark: #43a047;
3745
+
3746
+ --dm-info: #42a5f5;
3747
+ --dm-info-hover: #64b5f6;
3748
+ --dm-info-active: #90caf9;
3749
+ --dm-info-light: rgba(66, 165, 245, 0.2);
3750
+ --dm-info-dark: #1976d2;
3751
+
3752
+ --dm-warning: #ffa726;
3753
+ --dm-warning-hover: #ffb74d;
3754
+ --dm-warning-active: #ffcc80;
3755
+ --dm-warning-light: rgba(255, 167, 38, 0.2);
3756
+ --dm-warning-dark: #f57c00;
3757
+ --dm-warning-text: #ffb74d;
3758
+
3759
+ --dm-danger: #ef5350;
3760
+ --dm-danger-hover: #e57373;
3761
+ --dm-danger-active: #ef9a9a;
3762
+ --dm-danger-light: rgba(239, 83, 80, 0.2);
3763
+ --dm-danger-dark: #c62828;
3764
+
3765
+ /* ================================================
3766
+ ACCENT COLOURS
3767
+ ================================================ */
3768
+ --dm-accent-1: #ce93d8; /* Light purple */
3769
+ --dm-accent-2: #f48fb1; /* Soft pink */
3770
+ --dm-accent-3: #ba68c8; /* Medium purple */
3771
+ --dm-accent-4: #9b59b6; /* Amethyst */
3772
+
3773
+ /* ================================================
3774
+ INTERACTIVE STATES
3775
+ ================================================ */
3776
+ --dm-hover-bg: rgba(206, 147, 216, 0.1);
3777
+ --dm-active-bg: rgba(206, 147, 216, 0.15);
3778
+ --dm-selected-bg: rgba(206, 147, 216, 0.15);
3779
+ --dm-disabled-opacity: 0.4;
3780
+
3781
+ /* ================================================
3782
+ COMPONENT-SPECIFIC COLORS
3783
+ ================================================ */
3784
+
3785
+ /* Cards */
3786
+ --dm-card-bg: var(--dm-surface);
3787
+ --dm-card-border: var(--dm-border);
3788
+ --dm-card-shadow: var(--dm-shadow-md);
3789
+
3790
+ /* Inputs */
3791
+ --dm-input-bg: var(--dm-surface);
3792
+ --dm-input-border: var(--dm-border-dark);
3793
+ --dm-input-text: var(--dm-text);
3794
+ --dm-input-placeholder: var(--dm-text-muted);
3795
+ --dm-input-focus-border: var(--dm-primary);
3796
+ --dm-input-disabled-bg: #241432;
3797
+
3798
+ /* Buttons */
3799
+ --dm-btn-text: var(--dm-text);
3800
+ --dm-btn-bg: var(--dm-surface);
3801
+ --dm-btn-border: var(--dm-border-dark);
3802
+
3803
+ /* Tables */
3804
+ --dm-table-bg: transparent;
3805
+ --dm-table-border: var(--dm-border);
3806
+ --dm-table-header-bg: var(--dm-background-alt);
3807
+ --dm-table-header-text: var(--dm-text);
3808
+ --dm-table-stripe-bg: rgba(206, 147, 216, 0.04);
3809
+ --dm-table-hover-bg: var(--dm-hover-bg);
3810
+ --dm-table-selected-bg: var(--dm-selected-bg);
3811
+
3812
+ /* Modals */
3813
+ --dm-modal-bg: var(--dm-surface);
3814
+ --dm-modal-border: var(--dm-border);
3815
+ --dm-modal-backdrop: rgba(0, 0, 0, 0.7);
3816
+ --dm-modal-shadow: var(--dm-shadow-xl);
3817
+
3818
+ /* Dropdowns */
3819
+ --dm-dropdown-bg: var(--dm-surface-raised);
3820
+ --dm-dropdown-border: var(--dm-border);
3821
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
3822
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
3823
+ --dm-dropdown-item-active: var(--dm-selected-bg);
3824
+
3825
+ /* Tooltips */
3826
+ --dm-tooltip-bg: #1a0e24;
3827
+ --dm-tooltip-text: #f3e5f5;
3828
+
3829
+ /* Toasts */
3830
+ --dm-toast-bg: var(--dm-surface);
3831
+ --dm-toast-border: var(--dm-border);
3832
+ --dm-toast-shadow: var(--dm-shadow-lg);
3833
+
3834
+ /* Navbar */
3835
+ --dm-navbar-bg: var(--dm-surface);
3836
+ --dm-navbar-text: var(--dm-text);
3837
+ --dm-navbar-border: var(--dm-border);
3838
+
3839
+ /* Sidebar */
3840
+ --dm-sidebar-bg: var(--dm-surface);
3841
+ --dm-sidebar-text: var(--dm-text);
3842
+ --dm-sidebar-border: var(--dm-border);
3843
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
3844
+ --dm-sidebar-item-active: var(--dm-selected-bg);
3845
+
3846
+ /* Tabs */
3847
+ --dm-tab-border: var(--dm-border);
3848
+ --dm-tab-hover-bg: var(--dm-hover-bg);
3849
+ --dm-tab-active-border: #ce93d8;
3850
+ --dm-tab-active-text: #ce93d8;
3851
+
3852
+ /* Accordion */
3853
+ --dm-accordion-bg: var(--dm-surface);
3854
+ --dm-accordion-border: var(--dm-border);
3855
+ --dm-accordion-header-bg: var(--dm-background-alt);
3856
+ --dm-accordion-header-hover: var(--dm-hover-bg);
3857
+
3858
+ /* Badges */
3859
+ --dm-badge-bg: var(--dm-primary);
3860
+ --dm-badge-text: #1a0e24;
3861
+
3862
+ /* Progress */
3863
+ --dm-progress-bg: #341a45;
3864
+ --dm-progress-bar: #ce93d8;
3865
+
3866
+ /* Scrollbar */
3867
+ --dm-scrollbar-track: #241432;
3868
+ --dm-scrollbar-thumb: #4a2660;
3869
+ --dm-scrollbar-thumb-hover: #6a3d7a;
3870
+
3871
+ /* Code */
3872
+ --dm-code-bg: #1e1228;
3873
+ --dm-code-text: #f48fb1;
3874
+ --dm-code-border: var(--dm-border);
3875
+
3876
+ /* ================================================
3877
+ SHADOWS - Subtle for dark mode
3878
+ ================================================ */
3879
+ --dm-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
3880
+ --dm-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
3881
+ --dm-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
3882
+ --dm-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
3883
+ --dm-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
3884
+ --dm-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
3885
+ --dm-shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
3886
+
3887
+ /* ================================================
3888
+ ELEVATION / DEPTH
3889
+ ================================================ */
3890
+ --dm-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.06);
3891
+ --dm-elevation-2: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
3892
+ --dm-elevation-3: 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);
3893
+ --dm-elevation-4: 0 20px 25px rgba(0, 0, 0, 0.15), 0 10px 10px rgba(0, 0, 0, 0.04);
3894
+ }
3895
+
3896
+ /**
3897
+ * Domma Dreamy Light Theme
3898
+ * Predominantly beige and biscuit tones
3899
+ * Light mode variant - warm cream backgrounds with earthy accents
3900
+ */
3901
+
3902
+ .dm-theme-dreamy-light {
3903
+ color-scheme: light;
3904
+
3905
+ /* ================================================
3906
+ FOUNDATIONAL COLORS - Light Mode Base
3907
+ ================================================ */
3908
+
3909
+ /* Backgrounds - Warm white and biscuit surfaces */
3910
+ --dm-background: #fffdf9;
3911
+ --dm-background-alt: #f5f0eb;
3912
+ --dm-surface: #fffdf9;
3913
+ --dm-surface-raised: #f0ebe4;
3914
+ --dm-surface-overlay: #f5f0eb;
3915
+
3916
+ /* Text - Dark chocolate for readability on light */
3917
+ --dm-text: #3e2723;
3918
+ --dm-text-secondary: #5d4037;
3919
+ --dm-text-muted: #8d6e63;
3920
+ --dm-text-disabled: #bcaaa4;
3921
+ --dm-text-inverse: #ffffff;
3922
+
3923
+ /* Borders - Light biscuit on warm backgrounds */
3924
+ --dm-border: #d7ccc8;
3925
+ --dm-border-light: #efebe9;
3926
+ --dm-border-dark: #bcaaa4;
3927
+
3928
+ /* ================================================
3929
+ DREAMY PRIMARY COLOURS - Warm Brown
3930
+ ================================================ */
3931
+ --dm-primary: #8d6e63;
3932
+ --dm-primary-hover: #6d4c41;
3933
+ --dm-primary-active: #5d4037;
3934
+ --dm-primary-light: #efebe9;
3935
+ --dm-primary-dark: #6d4c41;
3936
+
3937
+ /* Focus ring with warm brown colour */
3938
+ --dm-focus-ring: 0 0 0 3px rgba(141, 110, 99, 0.35);
3939
+ --dm-border-focus: #8d6e63;
3940
+
3941
+ /* ================================================
3942
+ SECONDARY COLOURS - Dusty Rose-Brown
3943
+ ================================================ */
3944
+ --dm-secondary: #a1887f;
3945
+ --dm-secondary-hover: #8d6e63;
3946
+ --dm-secondary-active: #795548;
3947
+ --dm-secondary-light: #faf5f0;
3948
+ --dm-secondary-dark: #795548;
3949
+
3950
+ /* ================================================
3951
+ STATUS COLOURS
3952
+ ================================================ */
3953
+ --dm-success: #81c784;
3954
+ --dm-success-hover: #66bb6a;
3955
+ --dm-success-active: #4caf50;
3956
+ --dm-success-light: rgba(129, 199, 132, 0.15);
3957
+ --dm-success-dark: #388e3c;
3958
+
3959
+ --dm-info: #64b5f6;
3960
+ --dm-info-hover: #42a5f5;
3961
+ --dm-info-active: #2196f3;
3962
+ --dm-info-light: rgba(100, 181, 246, 0.15);
3963
+ --dm-info-dark: #1976d2;
3964
+
3965
+ --dm-warning: #ffb74d;
3966
+ --dm-warning-hover: #ffa726;
3967
+ --dm-warning-active: #ff9800;
3968
+ --dm-warning-light: rgba(255, 183, 77, 0.15);
3969
+ --dm-warning-dark: #e65100;
3970
+ --dm-warning-text: #bf360c;
3971
+
3972
+ --dm-danger: #e57373;
3973
+ --dm-danger-hover: #ef5350;
3974
+ --dm-danger-active: #e53935;
3975
+ --dm-danger-light: rgba(229, 115, 115, 0.15);
3976
+ --dm-danger-dark: #c62828;
3977
+
3978
+ /* ================================================
3979
+ ACCENT COLOURS
3980
+ ================================================ */
3981
+ --dm-accent-1: #d7ccc8; /* Light biscuit */
3982
+ --dm-accent-2: #bcaaa4; /* Muted taupe */
3983
+ --dm-accent-3: #a1887f; /* Dusty rose-brown */
3984
+ --dm-accent-4: #8d6e63; /* Warm brown */
3985
+
3986
+ /* ================================================
3987
+ INTERACTIVE STATES
3988
+ ================================================ */
3989
+ --dm-hover-bg: rgba(141, 110, 99, 0.06);
3990
+ --dm-active-bg: rgba(141, 110, 99, 0.12);
3991
+ --dm-selected-bg: rgba(141, 110, 99, 0.12);
3992
+ --dm-disabled-opacity: 0.65;
3993
+
3994
+ /* ================================================
3995
+ COMPONENT-SPECIFIC COLORS
3996
+ ================================================ */
3997
+
3998
+ /* Cards */
3999
+ --dm-card-bg: var(--dm-surface);
4000
+ --dm-card-border: var(--dm-border);
4001
+ --dm-card-shadow: var(--dm-shadow-sm);
4002
+
4003
+ /* Inputs */
4004
+ --dm-input-bg: var(--dm-surface);
4005
+ --dm-input-border: var(--dm-border-dark);
4006
+ --dm-input-text: var(--dm-text);
4007
+ --dm-input-placeholder: var(--dm-text-muted);
4008
+ --dm-input-focus-border: var(--dm-primary);
4009
+ --dm-input-focus-shadow: var(--dm-focus-ring);
4010
+ --dm-input-disabled-bg: #efebe9;
4011
+
4012
+ /* Buttons */
4013
+ --dm-btn-text: var(--dm-text);
4014
+ --dm-btn-bg: var(--dm-surface);
4015
+ --dm-btn-border: var(--dm-border-dark);
4016
+
4017
+ /* Tables */
4018
+ --dm-table-bg: transparent;
4019
+ --dm-table-border: var(--dm-border);
4020
+ --dm-table-header-bg: var(--dm-background-alt);
4021
+ --dm-table-header-text: var(--dm-text);
4022
+ --dm-table-stripe-bg: rgba(141, 110, 99, 0.03);
4023
+ --dm-table-hover-bg: rgba(141, 110, 99, 0.06);
4024
+ --dm-table-selected-bg: var(--dm-selected-bg);
4025
+
4026
+ /* Modals */
4027
+ --dm-modal-bg: var(--dm-surface);
4028
+ --dm-modal-border: var(--dm-border);
4029
+ --dm-modal-backdrop: rgba(62, 39, 35, 0.5);
4030
+ --dm-modal-shadow: var(--dm-shadow-xl);
4031
+
4032
+ /* Dropdowns */
4033
+ --dm-dropdown-bg: var(--dm-surface);
4034
+ --dm-dropdown-border: var(--dm-border);
4035
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
4036
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
4037
+ --dm-dropdown-item-active: var(--dm-selected-bg);
4038
+
4039
+ /* Tooltips */
4040
+ --dm-tooltip-bg: #3e2723;
4041
+ --dm-tooltip-text: #ffffff;
4042
+
4043
+ /* Toasts */
4044
+ --dm-toast-bg: var(--dm-surface);
4045
+ --dm-toast-border: var(--dm-border);
4046
+ --dm-toast-shadow: var(--dm-shadow-lg);
4047
+
4048
+ /* Navbar */
4049
+ --dm-navbar-bg: var(--dm-surface);
4050
+ --dm-navbar-text: var(--dm-text);
4051
+ --dm-navbar-border: var(--dm-border);
4052
+
4053
+ /* Sidebar */
4054
+ --dm-sidebar-bg: var(--dm-surface);
4055
+ --dm-sidebar-text: var(--dm-text);
4056
+ --dm-sidebar-border: var(--dm-border);
4057
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
4058
+ --dm-sidebar-item-active: var(--dm-selected-bg);
4059
+
4060
+ /* Tabs */
4061
+ --dm-tab-border: var(--dm-border);
4062
+ --dm-tab-hover-bg: var(--dm-hover-bg);
4063
+ --dm-tab-active-border: #8d6e63;
4064
+ --dm-tab-active-text: #6d4c41;
4065
+
4066
+ /* Accordion */
4067
+ --dm-accordion-bg: var(--dm-surface);
4068
+ --dm-accordion-border: var(--dm-border);
4069
+ --dm-accordion-header-bg: var(--dm-background-alt);
4070
+ --dm-accordion-header-hover: var(--dm-hover-bg);
4071
+
4072
+ /* Badges */
4073
+ --dm-badge-bg: var(--dm-primary);
4074
+ --dm-badge-text: #ffffff;
4075
+
4076
+ /* Progress */
4077
+ --dm-progress-bg: #efebe9;
4078
+ --dm-progress-bar: #8d6e63;
4079
+
4080
+ /* Scrollbar */
4081
+ --dm-scrollbar-track: #efebe9;
4082
+ --dm-scrollbar-thumb: #d7ccc8;
4083
+ --dm-scrollbar-thumb-hover: #bcaaa4;
4084
+
4085
+ /* Code */
4086
+ --dm-code-bg: #f5f0eb;
4087
+ --dm-code-text: #a1887f;
4088
+ --dm-code-border: var(--dm-border);
4089
+
4090
+ /* ================================================
4091
+ SHADOWS - Standard for light mode
4092
+ ================================================ */
4093
+ --dm-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
4094
+ --dm-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
4095
+ --dm-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
4096
+ --dm-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
4097
+ --dm-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
4098
+ --dm-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
4099
+ --dm-shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
4100
+
4101
+ /* ================================================
4102
+ ELEVATION / DEPTH
4103
+ ================================================ */
4104
+ --dm-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.06);
4105
+ --dm-elevation-2: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
4106
+ --dm-elevation-3: 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);
4107
+ --dm-elevation-4: 0 20px 25px rgba(0, 0, 0, 0.15), 0 10px 10px rgba(0, 0, 0, 0.04);
4108
+ }
4109
+
4110
+ /**
4111
+ * Domma Dreamy Dark Theme
4112
+ * Predominantly beige and biscuit tones
4113
+ * Dark mode variant - dark espresso backgrounds with warm taupe accents
4114
+ */
4115
+
4116
+ .dm-theme-dreamy-dark {
4117
+ color-scheme: dark;
4118
+
4119
+ /* ================================================
4120
+ FOUNDATIONAL COLORS - Dark Mode Base
4121
+ ================================================ */
4122
+
4123
+ /* Backgrounds - Dark espresso and coffee grounds */
4124
+ --dm-background: #1c1410;
4125
+ --dm-background-alt: #2a1f1a;
4126
+ --dm-surface: #2a1f1a;
4127
+ --dm-surface-raised: #3a2c26;
4128
+ --dm-surface-overlay: #3a2c26;
4129
+
4130
+ /* Text - Warm off-white for readability on dark */
4131
+ --dm-text: #efebe9;
4132
+ --dm-text-secondary: #d7ccc8;
4133
+ --dm-text-muted: #bcaaa4;
4134
+ --dm-text-disabled: #6d4c41;
4135
+ --dm-text-inverse: #1c1410;
4136
+
4137
+ /* Borders - Dark brown on dark backgrounds */
4138
+ --dm-border: #4e342e;
4139
+ --dm-border-light: #3a2c26;
4140
+ --dm-border-dark: #6d4c41;
4141
+
4142
+ /* ================================================
4143
+ DREAMY PRIMARY COLOURS - Lighter taupe for contrast
4144
+ ================================================ */
4145
+ --dm-primary: #bcaaa4;
4146
+ --dm-primary-hover: #d7ccc8;
4147
+ --dm-primary-active: #efebe9;
4148
+ --dm-primary-light: #efebe9;
4149
+ --dm-primary-dark: #a1887f;
4150
+
4151
+ /* Focus ring with warm taupe colour */
4152
+ --dm-focus-ring: 0 0 0 3px rgba(188, 170, 164, 0.35);
4153
+ --dm-border-focus: #bcaaa4;
4154
+
4155
+ /* ================================================
4156
+ SECONDARY COLOURS - Lighter biscuit for contrast
4157
+ ================================================ */
4158
+ --dm-secondary: #d7ccc8;
4159
+ --dm-secondary-hover: #efebe9;
4160
+ --dm-secondary-active: #ffffff;
4161
+ --dm-secondary-light: #faf5f0;
4162
+ --dm-secondary-dark: #bcaaa4;
4163
+
4164
+ /* ================================================
4165
+ STATUS COLOURS
4166
+ ================================================ */
4167
+ --dm-success: #81c784;
4168
+ --dm-success-hover: #a5d6a7;
4169
+ --dm-success-active: #c8e6c9;
4170
+ --dm-success-light: rgba(129, 199, 132, 0.2);
4171
+ --dm-success-dark: #4caf50;
4172
+
4173
+ --dm-info: #64b5f6;
4174
+ --dm-info-hover: #90caf9;
4175
+ --dm-info-active: #bbdefb;
4176
+ --dm-info-light: rgba(100, 181, 246, 0.2);
4177
+ --dm-info-dark: #2196f3;
4178
+
4179
+ --dm-warning: #ffb74d;
4180
+ --dm-warning-hover: #ffcc80;
4181
+ --dm-warning-active: #ffe0b2;
4182
+ --dm-warning-light: rgba(255, 183, 77, 0.2);
4183
+ --dm-warning-dark: #ff9800;
4184
+ --dm-warning-text: #ffcc80;
4185
+
4186
+ --dm-danger: #e57373;
4187
+ --dm-danger-hover: #ef9a9a;
4188
+ --dm-danger-active: #ffcdd2;
4189
+ --dm-danger-light: rgba(229, 115, 115, 0.2);
4190
+ --dm-danger-dark: #f44336;
4191
+
4192
+ /* ================================================
4193
+ ACCENT COLOURS
4194
+ ================================================ */
4195
+ --dm-accent-1: #efebe9; /* Warm off-white */
4196
+ --dm-accent-2: #d7ccc8; /* Light biscuit */
4197
+ --dm-accent-3: #bcaaa4; /* Muted taupe */
4198
+ --dm-accent-4: #a1887f; /* Dusty rose-brown */
4199
+
4200
+ /* ================================================
4201
+ INTERACTIVE STATES
4202
+ ================================================ */
4203
+ --dm-hover-bg: rgba(188, 170, 164, 0.1);
4204
+ --dm-active-bg: rgba(188, 170, 164, 0.15);
4205
+ --dm-selected-bg: rgba(188, 170, 164, 0.15);
4206
+ --dm-disabled-opacity: 0.4;
4207
+
4208
+ /* ================================================
4209
+ COMPONENT-SPECIFIC COLORS
4210
+ ================================================ */
4211
+
4212
+ /* Cards */
4213
+ --dm-card-bg: var(--dm-surface);
4214
+ --dm-card-border: var(--dm-border);
4215
+ --dm-card-shadow: var(--dm-shadow-md);
4216
+
4217
+ /* Inputs */
4218
+ --dm-input-bg: var(--dm-surface);
4219
+ --dm-input-border: var(--dm-border-dark);
4220
+ --dm-input-text: var(--dm-text);
4221
+ --dm-input-placeholder: var(--dm-text-muted);
4222
+ --dm-input-focus-border: var(--dm-primary);
4223
+ --dm-input-disabled-bg: #2a1f1a;
4224
+
4225
+ /* Buttons */
4226
+ --dm-btn-text: var(--dm-text);
4227
+ --dm-btn-bg: var(--dm-surface);
4228
+ --dm-btn-border: var(--dm-border-dark);
4229
+
4230
+ /* Tables */
4231
+ --dm-table-bg: transparent;
4232
+ --dm-table-border: var(--dm-border);
4233
+ --dm-table-header-bg: var(--dm-background-alt);
4234
+ --dm-table-header-text: var(--dm-text);
4235
+ --dm-table-stripe-bg: rgba(188, 170, 164, 0.04);
4236
+ --dm-table-hover-bg: var(--dm-hover-bg);
4237
+ --dm-table-selected-bg: var(--dm-selected-bg);
4238
+
4239
+ /* Modals */
4240
+ --dm-modal-bg: var(--dm-surface);
4241
+ --dm-modal-border: var(--dm-border);
4242
+ --dm-modal-backdrop: rgba(0, 0, 0, 0.7);
4243
+ --dm-modal-shadow: var(--dm-shadow-xl);
4244
+
4245
+ /* Dropdowns */
4246
+ --dm-dropdown-bg: var(--dm-surface-raised);
4247
+ --dm-dropdown-border: var(--dm-border);
4248
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
4249
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
4250
+ --dm-dropdown-item-active: var(--dm-selected-bg);
4251
+
4252
+ /* Tooltips */
4253
+ --dm-tooltip-bg: #1c1410;
4254
+ --dm-tooltip-text: #efebe9;
4255
+
4256
+ /* Toasts */
4257
+ --dm-toast-bg: var(--dm-surface);
4258
+ --dm-toast-border: var(--dm-border);
4259
+ --dm-toast-shadow: var(--dm-shadow-lg);
4260
+
4261
+ /* Navbar */
4262
+ --dm-navbar-bg: var(--dm-surface);
4263
+ --dm-navbar-text: var(--dm-text);
4264
+ --dm-navbar-border: var(--dm-border);
4265
+
4266
+ /* Sidebar */
4267
+ --dm-sidebar-bg: var(--dm-surface);
4268
+ --dm-sidebar-text: var(--dm-text);
4269
+ --dm-sidebar-border: var(--dm-border);
4270
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
4271
+ --dm-sidebar-item-active: var(--dm-selected-bg);
4272
+
4273
+ /* Tabs */
4274
+ --dm-tab-border: var(--dm-border);
4275
+ --dm-tab-hover-bg: var(--dm-hover-bg);
4276
+ --dm-tab-active-border: #bcaaa4;
4277
+ --dm-tab-active-text: #bcaaa4;
4278
+
4279
+ /* Accordion */
4280
+ --dm-accordion-bg: var(--dm-surface);
4281
+ --dm-accordion-border: var(--dm-border);
4282
+ --dm-accordion-header-bg: var(--dm-background-alt);
4283
+ --dm-accordion-header-hover: var(--dm-hover-bg);
4284
+
4285
+ /* Badges */
4286
+ --dm-badge-bg: var(--dm-primary);
4287
+ --dm-badge-text: #1c1410;
4288
+
4289
+ /* Progress */
4290
+ --dm-progress-bg: #3a2c26;
4291
+ --dm-progress-bar: #bcaaa4;
4292
+
4293
+ /* Scrollbar */
4294
+ --dm-scrollbar-track: #2a1f1a;
4295
+ --dm-scrollbar-thumb: #4e342e;
4296
+ --dm-scrollbar-thumb-hover: #6d4c41;
4297
+
4298
+ /* Code */
4299
+ --dm-code-bg: #1a1210;
4300
+ --dm-code-text: #d7ccc8;
4301
+ --dm-code-border: var(--dm-border);
4302
+
4303
+ /* ================================================
4304
+ SHADOWS - Subtle for dark mode
4305
+ ================================================ */
4306
+ --dm-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
4307
+ --dm-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
4308
+ --dm-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
4309
+ --dm-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
4310
+ --dm-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
4311
+ --dm-shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
4312
+ --dm-shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
4313
+
4314
+ /* ================================================
4315
+ ELEVATION / DEPTH
4316
+ ================================================ */
4317
+ --dm-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.06);
4318
+ --dm-elevation-2: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
4319
+ --dm-elevation-3: 0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);
4320
+ --dm-elevation-4: 0 20px 25px rgba(0, 0, 0, 0.15), 0 10px 10px rgba(0, 0, 0, 0.04);
4321
+ }
4322
+
3469
4323
  .dm-theme-grayve {
3470
4324
  color-scheme: dark; /* Slate is typically a dark theme */
3471
4325