domma-js 0.28.0 → 0.29.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,8 +1,8 @@
1
1
  /*!
2
- * Domma Full CSS Bundle v0.28.0
2
+ * Domma Full CSS Bundle v0.29.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-06-26T22:57:58.033Z
5
+ * Built: 2026-06-29T20:05:15.885Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.28.0
14
+ * Domma Core CSS v0.29.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-06-26T22:57:57.834Z
18
- * Commit: 11c1533
17
+ * Built: 2026-06-29T20:05:15.667Z
18
+ * Commit: de04140
19
19
  */
20
20
 
21
21
  /**
@@ -4829,11 +4829,11 @@ body.dm-cloaked.dm-ready {
4829
4829
  ============================================ */
4830
4830
 
4831
4831
  /*!
4832
- * Domma Grid CSS v0.28.0
4832
+ * Domma Grid CSS v0.29.0
4833
4833
  * Dynamic Object Manipulation & Modeling API
4834
4834
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4835
- * Built: 2026-06-26T22:57:57.838Z
4836
- * Commit: 11c1533
4835
+ * Built: 2026-06-29T20:05:15.672Z
4836
+ * Commit: de04140
4837
4837
  */
4838
4838
 
4839
4839
  /**
@@ -5454,11 +5454,11 @@ body.dm-cloaked.dm-ready {
5454
5454
  ============================================ */
5455
5455
 
5456
5456
  /*!
5457
- * Domma Elements CSS v0.28.0
5457
+ * Domma Elements CSS v0.29.0
5458
5458
  * Dynamic Object Manipulation & Modeling API
5459
5459
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5460
- * Built: 2026-06-26T22:57:57.844Z
5461
- * Commit: 11c1533
5460
+ * Built: 2026-06-29T20:05:15.678Z
5461
+ * Commit: de04140
5462
5462
  */
5463
5463
 
5464
5464
  /**
@@ -13413,11 +13413,11 @@ code {
13413
13413
  ============================================ */
13414
13414
 
13415
13415
  /*!
13416
- * Domma Themes v0.28.0
13416
+ * Domma Themes v0.29.0
13417
13417
  * Dynamic Object Manipulation & Modeling API
13418
13418
  * (c) 2026 Darryl Waterhouse & DCBW-IT
13419
- * Built: 2026-06-26T22:57:57.818Z
13420
- * Commit: 11c1533
13419
+ * Built: 2026-06-29T20:05:15.648Z
13420
+ * Commit: de04140
13421
13421
  */
13422
13422
 
13423
13423
  /**
@@ -19557,5 +19557,833 @@ code {
19557
19557
  --dm-warning-hover-text: #1a1a1a;
19558
19558
  }
19559
19559
 
19560
+ /**
19561
+ * Domma Admin Smooth · Steel Blue
19562
+ * GENERATED by scripts/generate-admin-themes.js — do not edit by hand.
19563
+ */
19564
+
19565
+ .dm-theme-admin-smooth-steel {
19566
+ color-scheme: dark;
19567
+
19568
+ --dm-background: #586170;
19569
+ --dm-background-alt: #4f5764;
19570
+ --dm-surface: #646d7c;
19571
+ --dm-surface-raised: #6c7686;
19572
+ --dm-surface-overlay: #6c7686;
19573
+ --dm-text: #f7f9fb;
19574
+ --dm-text-secondary: #d2d8e0;
19575
+ --dm-text-muted: #b3bcc8;
19576
+ --dm-text-disabled: #8a93a1;
19577
+ --dm-text-inverse: #1f2733;
19578
+ --dm-border: #6f7888;
19579
+ --dm-border-light: #5c6573;
19580
+ --dm-border-dark: #7a8494;
19581
+ --dm-hover-bg: rgba(255, 255, 255, 0.07);
19582
+ --dm-active-bg: rgba(255, 255, 255, 0.10);
19583
+ --dm-disabled-opacity: 0.4;
19584
+ --dm-sidebar-bg: #454d5a;
19585
+ --dm-sidebar-text: #d2d8e0;
19586
+ --dm-sidebar-border: #3b424d;
19587
+ --dm-navbar-bg: #4f5764;
19588
+ --dm-navbar-text: #f7f9fb;
19589
+ --dm-navbar-border: #5c6573;
19590
+ --dm-table-header-bg: #535b69;
19591
+ --dm-table-stripe-bg: rgba(255, 255, 255, 0.03);
19592
+ --dm-table-hover-bg: rgba(255, 255, 255, 0.07);
19593
+ --dm-modal-backdrop: rgba(0, 0, 0, 0.6);
19594
+ --dm-tooltip-bg: #1f2733;
19595
+ --dm-tooltip-text: #ffffff;
19596
+ --dm-scrollbar-track: #4f5764;
19597
+ --dm-scrollbar-thumb: #7a8494;
19598
+ --dm-scrollbar-thumb-hover: #8b95a5;
19599
+ --dm-code-bg: #454d5a;
19600
+ --dm-code-text: #ffd9a8;
19601
+ --dm-progress-bg: #535b69;
19602
+
19603
+ --dm-primary: #3b76bc;
19604
+ --dm-primary-hover: #356bab;
19605
+ --dm-primary-active: #2d5c95;
19606
+ --dm-primary-light: rgba(59, 118, 188, 0.14);
19607
+ --dm-primary-dark: #274e7d;
19608
+ --dm-primary-text: #ffffff;
19609
+ --dm-primary-hover-text: #ffffff;
19610
+ --dm-focus-ring: 0 0 0 3px rgba(59, 118, 188, 0.35);
19611
+ --dm-border-focus: #3b76bc;
19612
+ --dm-secondary: #5f6f7a;
19613
+ --dm-secondary-hover: #52606b;
19614
+ --dm-secondary-active: #46535d;
19615
+ --dm-secondary-light: rgba(255, 255, 255, 0.10);
19616
+ --dm-secondary-dark: #3d4a52;
19617
+ --dm-secondary-text: #ffffff;
19618
+ --dm-secondary-hover-text: #ffffff;
19619
+ --dm-selected-bg: rgba(59, 118, 188, 0.22);
19620
+ --dm-tab-active-border: #3b76bc;
19621
+ --dm-tab-active-text: #7fb0e0;
19622
+ --dm-progress-bar: #3b76bc;
19623
+ --dm-accent-1: #78909c;
19624
+ --dm-accent-2: #607d8b;
19625
+ --dm-accent-3: #455a64;
19626
+ --dm-accent-4: #263238;
19627
+
19628
+ --dm-success: #2e8b50;
19629
+ --dm-success-hover: #287d49;
19630
+ --dm-success-active: #226b3f;
19631
+ --dm-success-light: rgba(46, 139, 80, 0.15);
19632
+ --dm-success-dark: #1c5733;
19633
+ --dm-success-text: #ffffff;
19634
+ --dm-success-hover-text: #ffffff;
19635
+ --dm-danger: #c0432f;
19636
+ --dm-danger-hover: #a93a29;
19637
+ --dm-danger-active: #933223;
19638
+ --dm-danger-light: rgba(192, 67, 47, 0.15);
19639
+ --dm-danger-dark: #742719;
19640
+ --dm-danger-text: #ffffff;
19641
+ --dm-danger-hover-text: #ffffff;
19642
+ --dm-warning: #8a6d1f;
19643
+ --dm-warning-hover: #79601b;
19644
+ --dm-warning-active: #675217;
19645
+ --dm-warning-light: rgba(138, 109, 31, 0.15);
19646
+ --dm-warning-dark: #4e3e11;
19647
+ --dm-warning-text: #ffffff;
19648
+ --dm-warning-hover-text: #ffffff;
19649
+ --dm-info: #2f6fb0;
19650
+ --dm-info-hover: #296199;
19651
+ --dm-info-active: #235485;
19652
+ --dm-info-light: rgba(47, 111, 176, 0.15);
19653
+ --dm-info-dark: #1a3f64;
19654
+ --dm-info-text: #ffffff;
19655
+ --dm-info-hover-text: #ffffff;
19656
+
19657
+ --dm-card-bg: var(--dm-surface);
19658
+ --dm-card-border: var(--dm-border);
19659
+ --dm-card-shadow: var(--dm-shadow-md);
19660
+ --dm-card-header-bg: var(--dm-background-alt);
19661
+ --dm-input-bg: var(--dm-surface);
19662
+ --dm-input-border: var(--dm-border-dark);
19663
+ --dm-input-text: var(--dm-text);
19664
+ --dm-input-placeholder: var(--dm-text-muted);
19665
+ --dm-input-focus-border: var(--dm-primary);
19666
+ --dm-input-disabled-bg: var(--dm-background-alt);
19667
+ --dm-btn-text: var(--dm-text);
19668
+ --dm-btn-bg: var(--dm-surface);
19669
+ --dm-btn-border: var(--dm-border-dark);
19670
+ --dm-table-bg: transparent;
19671
+ --dm-table-border: var(--dm-border);
19672
+ --dm-table-header-text: var(--dm-text);
19673
+ --dm-table-selected-bg: var(--dm-selected-bg);
19674
+ --dm-modal-bg: var(--dm-surface);
19675
+ --dm-modal-border: var(--dm-border);
19676
+ --dm-modal-shadow: var(--dm-shadow-xl);
19677
+ --dm-dropdown-bg: var(--dm-surface-raised);
19678
+ --dm-dropdown-border: var(--dm-border);
19679
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
19680
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
19681
+ --dm-dropdown-item-active: var(--dm-selected-bg);
19682
+ --dm-toast-bg: var(--dm-surface);
19683
+ --dm-toast-border: var(--dm-border);
19684
+ --dm-toast-shadow: var(--dm-shadow-lg);
19685
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
19686
+ --dm-sidebar-item-active: var(--dm-selected-bg);
19687
+ --dm-tab-border: var(--dm-border);
19688
+ --dm-tab-hover-bg: var(--dm-hover-bg);
19689
+ --dm-accordion-bg: var(--dm-surface);
19690
+ --dm-accordion-border: var(--dm-border);
19691
+ --dm-accordion-header-bg: var(--dm-background-alt);
19692
+ --dm-accordion-header-hover: var(--dm-hover-bg);
19693
+ --dm-badge-bg: var(--dm-secondary);
19694
+ --dm-badge-text: var(--dm-text-inverse);
19695
+ --dm-code-border: var(--dm-border);
19696
+ }
19697
+
19698
+ /**
19699
+ * Domma Admin Smooth · Indigo
19700
+ * GENERATED by scripts/generate-admin-themes.js — do not edit by hand.
19701
+ */
19702
+
19703
+ .dm-theme-admin-smooth-indigo {
19704
+ color-scheme: dark;
19705
+
19706
+ --dm-background: #586170;
19707
+ --dm-background-alt: #4f5764;
19708
+ --dm-surface: #646d7c;
19709
+ --dm-surface-raised: #6c7686;
19710
+ --dm-surface-overlay: #6c7686;
19711
+ --dm-text: #f7f9fb;
19712
+ --dm-text-secondary: #d2d8e0;
19713
+ --dm-text-muted: #b3bcc8;
19714
+ --dm-text-disabled: #8a93a1;
19715
+ --dm-text-inverse: #1f2733;
19716
+ --dm-border: #6f7888;
19717
+ --dm-border-light: #5c6573;
19718
+ --dm-border-dark: #7a8494;
19719
+ --dm-hover-bg: rgba(255, 255, 255, 0.07);
19720
+ --dm-active-bg: rgba(255, 255, 255, 0.10);
19721
+ --dm-disabled-opacity: 0.4;
19722
+ --dm-sidebar-bg: #454d5a;
19723
+ --dm-sidebar-text: #d2d8e0;
19724
+ --dm-sidebar-border: #3b424d;
19725
+ --dm-navbar-bg: #4f5764;
19726
+ --dm-navbar-text: #f7f9fb;
19727
+ --dm-navbar-border: #5c6573;
19728
+ --dm-table-header-bg: #535b69;
19729
+ --dm-table-stripe-bg: rgba(255, 255, 255, 0.03);
19730
+ --dm-table-hover-bg: rgba(255, 255, 255, 0.07);
19731
+ --dm-modal-backdrop: rgba(0, 0, 0, 0.6);
19732
+ --dm-tooltip-bg: #1f2733;
19733
+ --dm-tooltip-text: #ffffff;
19734
+ --dm-scrollbar-track: #4f5764;
19735
+ --dm-scrollbar-thumb: #7a8494;
19736
+ --dm-scrollbar-thumb-hover: #8b95a5;
19737
+ --dm-code-bg: #454d5a;
19738
+ --dm-code-text: #ffd9a8;
19739
+ --dm-progress-bg: #535b69;
19740
+
19741
+ --dm-primary: #5b63a8;
19742
+ --dm-primary-hover: #4f5694;
19743
+ --dm-primary-active: #444a80;
19744
+ --dm-primary-light: rgba(91, 99, 168, 0.14);
19745
+ --dm-primary-dark: #3a3f6e;
19746
+ --dm-primary-text: #ffffff;
19747
+ --dm-primary-hover-text: #ffffff;
19748
+ --dm-focus-ring: 0 0 0 3px rgba(91, 99, 168, 0.35);
19749
+ --dm-border-focus: #5b63a8;
19750
+ --dm-secondary: #5f6f7a;
19751
+ --dm-secondary-hover: #52606b;
19752
+ --dm-secondary-active: #46535d;
19753
+ --dm-secondary-light: rgba(255, 255, 255, 0.10);
19754
+ --dm-secondary-dark: #3d4a52;
19755
+ --dm-secondary-text: #ffffff;
19756
+ --dm-secondary-hover-text: #ffffff;
19757
+ --dm-selected-bg: rgba(91, 99, 168, 0.22);
19758
+ --dm-tab-active-border: #5b63a8;
19759
+ --dm-tab-active-text: #9aa0d4;
19760
+ --dm-progress-bar: #5b63a8;
19761
+ --dm-accent-1: #78909c;
19762
+ --dm-accent-2: #607d8b;
19763
+ --dm-accent-3: #455a64;
19764
+ --dm-accent-4: #263238;
19765
+
19766
+ --dm-success: #2e8b50;
19767
+ --dm-success-hover: #287d49;
19768
+ --dm-success-active: #226b3f;
19769
+ --dm-success-light: rgba(46, 139, 80, 0.15);
19770
+ --dm-success-dark: #1c5733;
19771
+ --dm-success-text: #ffffff;
19772
+ --dm-success-hover-text: #ffffff;
19773
+ --dm-danger: #c0432f;
19774
+ --dm-danger-hover: #a93a29;
19775
+ --dm-danger-active: #933223;
19776
+ --dm-danger-light: rgba(192, 67, 47, 0.15);
19777
+ --dm-danger-dark: #742719;
19778
+ --dm-danger-text: #ffffff;
19779
+ --dm-danger-hover-text: #ffffff;
19780
+ --dm-warning: #8a6d1f;
19781
+ --dm-warning-hover: #79601b;
19782
+ --dm-warning-active: #675217;
19783
+ --dm-warning-light: rgba(138, 109, 31, 0.15);
19784
+ --dm-warning-dark: #4e3e11;
19785
+ --dm-warning-text: #ffffff;
19786
+ --dm-warning-hover-text: #ffffff;
19787
+ --dm-info: #2f6fb0;
19788
+ --dm-info-hover: #296199;
19789
+ --dm-info-active: #235485;
19790
+ --dm-info-light: rgba(47, 111, 176, 0.15);
19791
+ --dm-info-dark: #1a3f64;
19792
+ --dm-info-text: #ffffff;
19793
+ --dm-info-hover-text: #ffffff;
19794
+
19795
+ --dm-card-bg: var(--dm-surface);
19796
+ --dm-card-border: var(--dm-border);
19797
+ --dm-card-shadow: var(--dm-shadow-md);
19798
+ --dm-card-header-bg: var(--dm-background-alt);
19799
+ --dm-input-bg: var(--dm-surface);
19800
+ --dm-input-border: var(--dm-border-dark);
19801
+ --dm-input-text: var(--dm-text);
19802
+ --dm-input-placeholder: var(--dm-text-muted);
19803
+ --dm-input-focus-border: var(--dm-primary);
19804
+ --dm-input-disabled-bg: var(--dm-background-alt);
19805
+ --dm-btn-text: var(--dm-text);
19806
+ --dm-btn-bg: var(--dm-surface);
19807
+ --dm-btn-border: var(--dm-border-dark);
19808
+ --dm-table-bg: transparent;
19809
+ --dm-table-border: var(--dm-border);
19810
+ --dm-table-header-text: var(--dm-text);
19811
+ --dm-table-selected-bg: var(--dm-selected-bg);
19812
+ --dm-modal-bg: var(--dm-surface);
19813
+ --dm-modal-border: var(--dm-border);
19814
+ --dm-modal-shadow: var(--dm-shadow-xl);
19815
+ --dm-dropdown-bg: var(--dm-surface-raised);
19816
+ --dm-dropdown-border: var(--dm-border);
19817
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
19818
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
19819
+ --dm-dropdown-item-active: var(--dm-selected-bg);
19820
+ --dm-toast-bg: var(--dm-surface);
19821
+ --dm-toast-border: var(--dm-border);
19822
+ --dm-toast-shadow: var(--dm-shadow-lg);
19823
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
19824
+ --dm-sidebar-item-active: var(--dm-selected-bg);
19825
+ --dm-tab-border: var(--dm-border);
19826
+ --dm-tab-hover-bg: var(--dm-hover-bg);
19827
+ --dm-accordion-bg: var(--dm-surface);
19828
+ --dm-accordion-border: var(--dm-border);
19829
+ --dm-accordion-header-bg: var(--dm-background-alt);
19830
+ --dm-accordion-header-hover: var(--dm-hover-bg);
19831
+ --dm-badge-bg: var(--dm-secondary);
19832
+ --dm-badge-text: var(--dm-text-inverse);
19833
+ --dm-code-border: var(--dm-border);
19834
+ }
19835
+
19836
+ /**
19837
+ * Domma Admin Smooth · Teal
19838
+ * GENERATED by scripts/generate-admin-themes.js — do not edit by hand.
19839
+ */
19840
+
19841
+ .dm-theme-admin-smooth-teal {
19842
+ color-scheme: dark;
19843
+
19844
+ --dm-background: #586170;
19845
+ --dm-background-alt: #4f5764;
19846
+ --dm-surface: #646d7c;
19847
+ --dm-surface-raised: #6c7686;
19848
+ --dm-surface-overlay: #6c7686;
19849
+ --dm-text: #f7f9fb;
19850
+ --dm-text-secondary: #d2d8e0;
19851
+ --dm-text-muted: #b3bcc8;
19852
+ --dm-text-disabled: #8a93a1;
19853
+ --dm-text-inverse: #1f2733;
19854
+ --dm-border: #6f7888;
19855
+ --dm-border-light: #5c6573;
19856
+ --dm-border-dark: #7a8494;
19857
+ --dm-hover-bg: rgba(255, 255, 255, 0.07);
19858
+ --dm-active-bg: rgba(255, 255, 255, 0.10);
19859
+ --dm-disabled-opacity: 0.4;
19860
+ --dm-sidebar-bg: #454d5a;
19861
+ --dm-sidebar-text: #d2d8e0;
19862
+ --dm-sidebar-border: #3b424d;
19863
+ --dm-navbar-bg: #4f5764;
19864
+ --dm-navbar-text: #f7f9fb;
19865
+ --dm-navbar-border: #5c6573;
19866
+ --dm-table-header-bg: #535b69;
19867
+ --dm-table-stripe-bg: rgba(255, 255, 255, 0.03);
19868
+ --dm-table-hover-bg: rgba(255, 255, 255, 0.07);
19869
+ --dm-modal-backdrop: rgba(0, 0, 0, 0.6);
19870
+ --dm-tooltip-bg: #1f2733;
19871
+ --dm-tooltip-text: #ffffff;
19872
+ --dm-scrollbar-track: #4f5764;
19873
+ --dm-scrollbar-thumb: #7a8494;
19874
+ --dm-scrollbar-thumb-hover: #8b95a5;
19875
+ --dm-code-bg: #454d5a;
19876
+ --dm-code-text: #ffd9a8;
19877
+ --dm-progress-bg: #535b69;
19878
+
19879
+ --dm-primary: #2a8178;
19880
+ --dm-primary-hover: #287d75;
19881
+ --dm-primary-active: #226b64;
19882
+ --dm-primary-light: rgba(42, 129, 120, 0.14);
19883
+ --dm-primary-dark: #1d564f;
19884
+ --dm-primary-text: #ffffff;
19885
+ --dm-primary-hover-text: #ffffff;
19886
+ --dm-focus-ring: 0 0 0 3px rgba(42, 129, 120, 0.35);
19887
+ --dm-border-focus: #2a8178;
19888
+ --dm-secondary: #5f6f7a;
19889
+ --dm-secondary-hover: #52606b;
19890
+ --dm-secondary-active: #46535d;
19891
+ --dm-secondary-light: rgba(255, 255, 255, 0.10);
19892
+ --dm-secondary-dark: #3d4a52;
19893
+ --dm-secondary-text: #ffffff;
19894
+ --dm-secondary-hover-text: #ffffff;
19895
+ --dm-selected-bg: rgba(42, 129, 120, 0.22);
19896
+ --dm-tab-active-border: #2a8178;
19897
+ --dm-tab-active-text: #66c2b8;
19898
+ --dm-progress-bar: #2a8178;
19899
+ --dm-accent-1: #78909c;
19900
+ --dm-accent-2: #607d8b;
19901
+ --dm-accent-3: #455a64;
19902
+ --dm-accent-4: #263238;
19903
+
19904
+ --dm-success: #2e8b50;
19905
+ --dm-success-hover: #287d49;
19906
+ --dm-success-active: #226b3f;
19907
+ --dm-success-light: rgba(46, 139, 80, 0.15);
19908
+ --dm-success-dark: #1c5733;
19909
+ --dm-success-text: #ffffff;
19910
+ --dm-success-hover-text: #ffffff;
19911
+ --dm-danger: #c0432f;
19912
+ --dm-danger-hover: #a93a29;
19913
+ --dm-danger-active: #933223;
19914
+ --dm-danger-light: rgba(192, 67, 47, 0.15);
19915
+ --dm-danger-dark: #742719;
19916
+ --dm-danger-text: #ffffff;
19917
+ --dm-danger-hover-text: #ffffff;
19918
+ --dm-warning: #8a6d1f;
19919
+ --dm-warning-hover: #79601b;
19920
+ --dm-warning-active: #675217;
19921
+ --dm-warning-light: rgba(138, 109, 31, 0.15);
19922
+ --dm-warning-dark: #4e3e11;
19923
+ --dm-warning-text: #ffffff;
19924
+ --dm-warning-hover-text: #ffffff;
19925
+ --dm-info: #2f6fb0;
19926
+ --dm-info-hover: #296199;
19927
+ --dm-info-active: #235485;
19928
+ --dm-info-light: rgba(47, 111, 176, 0.15);
19929
+ --dm-info-dark: #1a3f64;
19930
+ --dm-info-text: #ffffff;
19931
+ --dm-info-hover-text: #ffffff;
19932
+
19933
+ --dm-card-bg: var(--dm-surface);
19934
+ --dm-card-border: var(--dm-border);
19935
+ --dm-card-shadow: var(--dm-shadow-md);
19936
+ --dm-card-header-bg: var(--dm-background-alt);
19937
+ --dm-input-bg: var(--dm-surface);
19938
+ --dm-input-border: var(--dm-border-dark);
19939
+ --dm-input-text: var(--dm-text);
19940
+ --dm-input-placeholder: var(--dm-text-muted);
19941
+ --dm-input-focus-border: var(--dm-primary);
19942
+ --dm-input-disabled-bg: var(--dm-background-alt);
19943
+ --dm-btn-text: var(--dm-text);
19944
+ --dm-btn-bg: var(--dm-surface);
19945
+ --dm-btn-border: var(--dm-border-dark);
19946
+ --dm-table-bg: transparent;
19947
+ --dm-table-border: var(--dm-border);
19948
+ --dm-table-header-text: var(--dm-text);
19949
+ --dm-table-selected-bg: var(--dm-selected-bg);
19950
+ --dm-modal-bg: var(--dm-surface);
19951
+ --dm-modal-border: var(--dm-border);
19952
+ --dm-modal-shadow: var(--dm-shadow-xl);
19953
+ --dm-dropdown-bg: var(--dm-surface-raised);
19954
+ --dm-dropdown-border: var(--dm-border);
19955
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
19956
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
19957
+ --dm-dropdown-item-active: var(--dm-selected-bg);
19958
+ --dm-toast-bg: var(--dm-surface);
19959
+ --dm-toast-border: var(--dm-border);
19960
+ --dm-toast-shadow: var(--dm-shadow-lg);
19961
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
19962
+ --dm-sidebar-item-active: var(--dm-selected-bg);
19963
+ --dm-tab-border: var(--dm-border);
19964
+ --dm-tab-hover-bg: var(--dm-hover-bg);
19965
+ --dm-accordion-bg: var(--dm-surface);
19966
+ --dm-accordion-border: var(--dm-border);
19967
+ --dm-accordion-header-bg: var(--dm-background-alt);
19968
+ --dm-accordion-header-hover: var(--dm-hover-bg);
19969
+ --dm-badge-bg: var(--dm-secondary);
19970
+ --dm-badge-text: var(--dm-text-inverse);
19971
+ --dm-code-border: var(--dm-border);
19972
+ }
19973
+
19974
+ /**
19975
+ * Domma Admin Sharp · Steel Blue
19976
+ * GENERATED by scripts/generate-admin-themes.js — do not edit by hand.
19977
+ */
19978
+
19979
+ .dm-theme-admin-sharp-steel {
19980
+ color-scheme: light;
19981
+
19982
+ --dm-background: #eef1f6;
19983
+ --dm-background-alt: #e6ebf3;
19984
+ --dm-surface: #fbfcfe;
19985
+ --dm-surface-raised: #ffffff;
19986
+ --dm-surface-overlay: #ffffff;
19987
+ --dm-text: #1f2733;
19988
+ --dm-text-secondary: #5a6677;
19989
+ --dm-text-muted: #8893a3;
19990
+ --dm-text-disabled: #aab2bd;
19991
+ --dm-text-inverse: #ffffff;
19992
+ --dm-border: #e4e8ef;
19993
+ --dm-border-light: #eef1f6;
19994
+ --dm-border-dark: #d5dbe5;
19995
+ --dm-hover-bg: rgba(15, 23, 42, 0.04);
19996
+ --dm-active-bg: rgba(15, 23, 42, 0.07);
19997
+ --dm-disabled-opacity: 0.5;
19998
+ --dm-sidebar-bg: #283242;
19999
+ --dm-sidebar-text: #c4cdda;
20000
+ --dm-sidebar-border: #1f2733;
20001
+ --dm-navbar-bg: #fbfcfe;
20002
+ --dm-navbar-text: #1f2733;
20003
+ --dm-navbar-border: #dde2ea;
20004
+ --dm-table-header-bg: #f0f3f8;
20005
+ --dm-table-stripe-bg: #f7f9fc;
20006
+ --dm-table-hover-bg: #eef4fb;
20007
+ --dm-modal-backdrop: rgba(15, 23, 42, 0.45);
20008
+ --dm-tooltip-bg: #283242;
20009
+ --dm-tooltip-text: #ffffff;
20010
+ --dm-scrollbar-track: #eef1f6;
20011
+ --dm-scrollbar-thumb: #c4cdda;
20012
+ --dm-scrollbar-thumb-hover: #aab6c6;
20013
+ --dm-code-bg: #f0f3f8;
20014
+ --dm-code-text: #b3325a;
20015
+ --dm-progress-bg: #e4e8ef;
20016
+
20017
+ --dm-primary: #3b76bc;
20018
+ --dm-primary-hover: #356bab;
20019
+ --dm-primary-active: #2d5c95;
20020
+ --dm-primary-light: rgba(59, 118, 188, 0.14);
20021
+ --dm-primary-dark: #274e7d;
20022
+ --dm-primary-text: #ffffff;
20023
+ --dm-primary-hover-text: #ffffff;
20024
+ --dm-focus-ring: 0 0 0 3px rgba(59, 118, 188, 0.35);
20025
+ --dm-border-focus: #3b76bc;
20026
+ --dm-secondary: #5f6f7a;
20027
+ --dm-secondary-hover: #52606b;
20028
+ --dm-secondary-active: #46535d;
20029
+ --dm-secondary-light: #eef1f6;
20030
+ --dm-secondary-dark: #3d4a52;
20031
+ --dm-secondary-text: #ffffff;
20032
+ --dm-secondary-hover-text: #ffffff;
20033
+ --dm-selected-bg: rgba(59, 118, 188, 0.12);
20034
+ --dm-tab-active-border: #3b76bc;
20035
+ --dm-tab-active-text: #3b76bc;
20036
+ --dm-progress-bar: #3b76bc;
20037
+ --dm-accent-1: #78909c;
20038
+ --dm-accent-2: #607d8b;
20039
+ --dm-accent-3: #455a64;
20040
+ --dm-accent-4: #263238;
20041
+
20042
+ --dm-success: #2e8b50;
20043
+ --dm-success-hover: #287d49;
20044
+ --dm-success-active: #226b3f;
20045
+ --dm-success-light: #e3f3e8;
20046
+ --dm-success-dark: #1c5733;
20047
+ --dm-success-text: #ffffff;
20048
+ --dm-success-hover-text: #ffffff;
20049
+ --dm-danger: #c0432f;
20050
+ --dm-danger-hover: #a93a29;
20051
+ --dm-danger-active: #933223;
20052
+ --dm-danger-light: #fbe6e1;
20053
+ --dm-danger-dark: #742719;
20054
+ --dm-danger-text: #ffffff;
20055
+ --dm-danger-hover-text: #ffffff;
20056
+ --dm-warning: #8a6d1f;
20057
+ --dm-warning-hover: #79601b;
20058
+ --dm-warning-active: #675217;
20059
+ --dm-warning-light: #fbf0d6;
20060
+ --dm-warning-dark: #4e3e11;
20061
+ --dm-warning-text: #ffffff;
20062
+ --dm-warning-hover-text: #ffffff;
20063
+ --dm-info: #2f6fb0;
20064
+ --dm-info-hover: #296199;
20065
+ --dm-info-active: #235485;
20066
+ --dm-info-light: #e1ecf7;
20067
+ --dm-info-dark: #1a3f64;
20068
+ --dm-info-text: #ffffff;
20069
+ --dm-info-hover-text: #ffffff;
20070
+
20071
+ --dm-card-bg: var(--dm-surface);
20072
+ --dm-card-border: var(--dm-border);
20073
+ --dm-card-shadow: var(--dm-shadow-md);
20074
+ --dm-card-header-bg: var(--dm-background-alt);
20075
+ --dm-input-bg: var(--dm-surface);
20076
+ --dm-input-border: var(--dm-border-dark);
20077
+ --dm-input-text: var(--dm-text);
20078
+ --dm-input-placeholder: var(--dm-text-muted);
20079
+ --dm-input-focus-border: var(--dm-primary);
20080
+ --dm-input-disabled-bg: var(--dm-background-alt);
20081
+ --dm-btn-text: var(--dm-text);
20082
+ --dm-btn-bg: var(--dm-surface);
20083
+ --dm-btn-border: var(--dm-border-dark);
20084
+ --dm-table-bg: transparent;
20085
+ --dm-table-border: var(--dm-border);
20086
+ --dm-table-header-text: var(--dm-text);
20087
+ --dm-table-selected-bg: var(--dm-selected-bg);
20088
+ --dm-modal-bg: var(--dm-surface);
20089
+ --dm-modal-border: var(--dm-border);
20090
+ --dm-modal-shadow: var(--dm-shadow-xl);
20091
+ --dm-dropdown-bg: var(--dm-surface-raised);
20092
+ --dm-dropdown-border: var(--dm-border);
20093
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
20094
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
20095
+ --dm-dropdown-item-active: var(--dm-selected-bg);
20096
+ --dm-toast-bg: var(--dm-surface);
20097
+ --dm-toast-border: var(--dm-border);
20098
+ --dm-toast-shadow: var(--dm-shadow-lg);
20099
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
20100
+ --dm-sidebar-item-active: var(--dm-selected-bg);
20101
+ --dm-tab-border: var(--dm-border);
20102
+ --dm-tab-hover-bg: var(--dm-hover-bg);
20103
+ --dm-accordion-bg: var(--dm-surface);
20104
+ --dm-accordion-border: var(--dm-border);
20105
+ --dm-accordion-header-bg: var(--dm-background-alt);
20106
+ --dm-accordion-header-hover: var(--dm-hover-bg);
20107
+ --dm-badge-bg: var(--dm-secondary);
20108
+ --dm-badge-text: var(--dm-text-inverse);
20109
+ --dm-code-border: var(--dm-border);
20110
+ }
20111
+
20112
+ /**
20113
+ * Domma Admin Sharp · Indigo
20114
+ * GENERATED by scripts/generate-admin-themes.js — do not edit by hand.
20115
+ */
20116
+
20117
+ .dm-theme-admin-sharp-indigo {
20118
+ color-scheme: light;
20119
+
20120
+ --dm-background: #eef1f6;
20121
+ --dm-background-alt: #e6ebf3;
20122
+ --dm-surface: #fbfcfe;
20123
+ --dm-surface-raised: #ffffff;
20124
+ --dm-surface-overlay: #ffffff;
20125
+ --dm-text: #1f2733;
20126
+ --dm-text-secondary: #5a6677;
20127
+ --dm-text-muted: #8893a3;
20128
+ --dm-text-disabled: #aab2bd;
20129
+ --dm-text-inverse: #ffffff;
20130
+ --dm-border: #e4e8ef;
20131
+ --dm-border-light: #eef1f6;
20132
+ --dm-border-dark: #d5dbe5;
20133
+ --dm-hover-bg: rgba(15, 23, 42, 0.04);
20134
+ --dm-active-bg: rgba(15, 23, 42, 0.07);
20135
+ --dm-disabled-opacity: 0.5;
20136
+ --dm-sidebar-bg: #283242;
20137
+ --dm-sidebar-text: #c4cdda;
20138
+ --dm-sidebar-border: #1f2733;
20139
+ --dm-navbar-bg: #fbfcfe;
20140
+ --dm-navbar-text: #1f2733;
20141
+ --dm-navbar-border: #dde2ea;
20142
+ --dm-table-header-bg: #f0f3f8;
20143
+ --dm-table-stripe-bg: #f7f9fc;
20144
+ --dm-table-hover-bg: #eef4fb;
20145
+ --dm-modal-backdrop: rgba(15, 23, 42, 0.45);
20146
+ --dm-tooltip-bg: #283242;
20147
+ --dm-tooltip-text: #ffffff;
20148
+ --dm-scrollbar-track: #eef1f6;
20149
+ --dm-scrollbar-thumb: #c4cdda;
20150
+ --dm-scrollbar-thumb-hover: #aab6c6;
20151
+ --dm-code-bg: #f0f3f8;
20152
+ --dm-code-text: #b3325a;
20153
+ --dm-progress-bg: #e4e8ef;
20154
+
20155
+ --dm-primary: #5b63a8;
20156
+ --dm-primary-hover: #4f5694;
20157
+ --dm-primary-active: #444a80;
20158
+ --dm-primary-light: rgba(91, 99, 168, 0.14);
20159
+ --dm-primary-dark: #3a3f6e;
20160
+ --dm-primary-text: #ffffff;
20161
+ --dm-primary-hover-text: #ffffff;
20162
+ --dm-focus-ring: 0 0 0 3px rgba(91, 99, 168, 0.35);
20163
+ --dm-border-focus: #5b63a8;
20164
+ --dm-secondary: #5f6f7a;
20165
+ --dm-secondary-hover: #52606b;
20166
+ --dm-secondary-active: #46535d;
20167
+ --dm-secondary-light: #eef1f6;
20168
+ --dm-secondary-dark: #3d4a52;
20169
+ --dm-secondary-text: #ffffff;
20170
+ --dm-secondary-hover-text: #ffffff;
20171
+ --dm-selected-bg: rgba(91, 99, 168, 0.12);
20172
+ --dm-tab-active-border: #5b63a8;
20173
+ --dm-tab-active-text: #5b63a8;
20174
+ --dm-progress-bar: #5b63a8;
20175
+ --dm-accent-1: #78909c;
20176
+ --dm-accent-2: #607d8b;
20177
+ --dm-accent-3: #455a64;
20178
+ --dm-accent-4: #263238;
20179
+
20180
+ --dm-success: #2e8b50;
20181
+ --dm-success-hover: #287d49;
20182
+ --dm-success-active: #226b3f;
20183
+ --dm-success-light: #e3f3e8;
20184
+ --dm-success-dark: #1c5733;
20185
+ --dm-success-text: #ffffff;
20186
+ --dm-success-hover-text: #ffffff;
20187
+ --dm-danger: #c0432f;
20188
+ --dm-danger-hover: #a93a29;
20189
+ --dm-danger-active: #933223;
20190
+ --dm-danger-light: #fbe6e1;
20191
+ --dm-danger-dark: #742719;
20192
+ --dm-danger-text: #ffffff;
20193
+ --dm-danger-hover-text: #ffffff;
20194
+ --dm-warning: #8a6d1f;
20195
+ --dm-warning-hover: #79601b;
20196
+ --dm-warning-active: #675217;
20197
+ --dm-warning-light: #fbf0d6;
20198
+ --dm-warning-dark: #4e3e11;
20199
+ --dm-warning-text: #ffffff;
20200
+ --dm-warning-hover-text: #ffffff;
20201
+ --dm-info: #2f6fb0;
20202
+ --dm-info-hover: #296199;
20203
+ --dm-info-active: #235485;
20204
+ --dm-info-light: #e1ecf7;
20205
+ --dm-info-dark: #1a3f64;
20206
+ --dm-info-text: #ffffff;
20207
+ --dm-info-hover-text: #ffffff;
20208
+
20209
+ --dm-card-bg: var(--dm-surface);
20210
+ --dm-card-border: var(--dm-border);
20211
+ --dm-card-shadow: var(--dm-shadow-md);
20212
+ --dm-card-header-bg: var(--dm-background-alt);
20213
+ --dm-input-bg: var(--dm-surface);
20214
+ --dm-input-border: var(--dm-border-dark);
20215
+ --dm-input-text: var(--dm-text);
20216
+ --dm-input-placeholder: var(--dm-text-muted);
20217
+ --dm-input-focus-border: var(--dm-primary);
20218
+ --dm-input-disabled-bg: var(--dm-background-alt);
20219
+ --dm-btn-text: var(--dm-text);
20220
+ --dm-btn-bg: var(--dm-surface);
20221
+ --dm-btn-border: var(--dm-border-dark);
20222
+ --dm-table-bg: transparent;
20223
+ --dm-table-border: var(--dm-border);
20224
+ --dm-table-header-text: var(--dm-text);
20225
+ --dm-table-selected-bg: var(--dm-selected-bg);
20226
+ --dm-modal-bg: var(--dm-surface);
20227
+ --dm-modal-border: var(--dm-border);
20228
+ --dm-modal-shadow: var(--dm-shadow-xl);
20229
+ --dm-dropdown-bg: var(--dm-surface-raised);
20230
+ --dm-dropdown-border: var(--dm-border);
20231
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
20232
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
20233
+ --dm-dropdown-item-active: var(--dm-selected-bg);
20234
+ --dm-toast-bg: var(--dm-surface);
20235
+ --dm-toast-border: var(--dm-border);
20236
+ --dm-toast-shadow: var(--dm-shadow-lg);
20237
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
20238
+ --dm-sidebar-item-active: var(--dm-selected-bg);
20239
+ --dm-tab-border: var(--dm-border);
20240
+ --dm-tab-hover-bg: var(--dm-hover-bg);
20241
+ --dm-accordion-bg: var(--dm-surface);
20242
+ --dm-accordion-border: var(--dm-border);
20243
+ --dm-accordion-header-bg: var(--dm-background-alt);
20244
+ --dm-accordion-header-hover: var(--dm-hover-bg);
20245
+ --dm-badge-bg: var(--dm-secondary);
20246
+ --dm-badge-text: var(--dm-text-inverse);
20247
+ --dm-code-border: var(--dm-border);
20248
+ }
20249
+
20250
+ /**
20251
+ * Domma Admin Sharp · Teal
20252
+ * GENERATED by scripts/generate-admin-themes.js — do not edit by hand.
20253
+ */
20254
+
20255
+ .dm-theme-admin-sharp-teal {
20256
+ color-scheme: light;
20257
+
20258
+ --dm-background: #eef1f6;
20259
+ --dm-background-alt: #e6ebf3;
20260
+ --dm-surface: #fbfcfe;
20261
+ --dm-surface-raised: #ffffff;
20262
+ --dm-surface-overlay: #ffffff;
20263
+ --dm-text: #1f2733;
20264
+ --dm-text-secondary: #5a6677;
20265
+ --dm-text-muted: #8893a3;
20266
+ --dm-text-disabled: #aab2bd;
20267
+ --dm-text-inverse: #ffffff;
20268
+ --dm-border: #e4e8ef;
20269
+ --dm-border-light: #eef1f6;
20270
+ --dm-border-dark: #d5dbe5;
20271
+ --dm-hover-bg: rgba(15, 23, 42, 0.04);
20272
+ --dm-active-bg: rgba(15, 23, 42, 0.07);
20273
+ --dm-disabled-opacity: 0.5;
20274
+ --dm-sidebar-bg: #283242;
20275
+ --dm-sidebar-text: #c4cdda;
20276
+ --dm-sidebar-border: #1f2733;
20277
+ --dm-navbar-bg: #fbfcfe;
20278
+ --dm-navbar-text: #1f2733;
20279
+ --dm-navbar-border: #dde2ea;
20280
+ --dm-table-header-bg: #f0f3f8;
20281
+ --dm-table-stripe-bg: #f7f9fc;
20282
+ --dm-table-hover-bg: #eef4fb;
20283
+ --dm-modal-backdrop: rgba(15, 23, 42, 0.45);
20284
+ --dm-tooltip-bg: #283242;
20285
+ --dm-tooltip-text: #ffffff;
20286
+ --dm-scrollbar-track: #eef1f6;
20287
+ --dm-scrollbar-thumb: #c4cdda;
20288
+ --dm-scrollbar-thumb-hover: #aab6c6;
20289
+ --dm-code-bg: #f0f3f8;
20290
+ --dm-code-text: #b3325a;
20291
+ --dm-progress-bg: #e4e8ef;
20292
+
20293
+ --dm-primary: #2a8178;
20294
+ --dm-primary-hover: #287d75;
20295
+ --dm-primary-active: #226b64;
20296
+ --dm-primary-light: rgba(42, 129, 120, 0.14);
20297
+ --dm-primary-dark: #1d564f;
20298
+ --dm-primary-text: #ffffff;
20299
+ --dm-primary-hover-text: #ffffff;
20300
+ --dm-focus-ring: 0 0 0 3px rgba(42, 129, 120, 0.35);
20301
+ --dm-border-focus: #2a8178;
20302
+ --dm-secondary: #5f6f7a;
20303
+ --dm-secondary-hover: #52606b;
20304
+ --dm-secondary-active: #46535d;
20305
+ --dm-secondary-light: #eef1f6;
20306
+ --dm-secondary-dark: #3d4a52;
20307
+ --dm-secondary-text: #ffffff;
20308
+ --dm-secondary-hover-text: #ffffff;
20309
+ --dm-selected-bg: rgba(42, 129, 120, 0.12);
20310
+ --dm-tab-active-border: #2a8178;
20311
+ --dm-tab-active-text: #2a8178;
20312
+ --dm-progress-bar: #2a8178;
20313
+ --dm-accent-1: #78909c;
20314
+ --dm-accent-2: #607d8b;
20315
+ --dm-accent-3: #455a64;
20316
+ --dm-accent-4: #263238;
20317
+
20318
+ --dm-success: #2e8b50;
20319
+ --dm-success-hover: #287d49;
20320
+ --dm-success-active: #226b3f;
20321
+ --dm-success-light: #e3f3e8;
20322
+ --dm-success-dark: #1c5733;
20323
+ --dm-success-text: #ffffff;
20324
+ --dm-success-hover-text: #ffffff;
20325
+ --dm-danger: #c0432f;
20326
+ --dm-danger-hover: #a93a29;
20327
+ --dm-danger-active: #933223;
20328
+ --dm-danger-light: #fbe6e1;
20329
+ --dm-danger-dark: #742719;
20330
+ --dm-danger-text: #ffffff;
20331
+ --dm-danger-hover-text: #ffffff;
20332
+ --dm-warning: #8a6d1f;
20333
+ --dm-warning-hover: #79601b;
20334
+ --dm-warning-active: #675217;
20335
+ --dm-warning-light: #fbf0d6;
20336
+ --dm-warning-dark: #4e3e11;
20337
+ --dm-warning-text: #ffffff;
20338
+ --dm-warning-hover-text: #ffffff;
20339
+ --dm-info: #2f6fb0;
20340
+ --dm-info-hover: #296199;
20341
+ --dm-info-active: #235485;
20342
+ --dm-info-light: #e1ecf7;
20343
+ --dm-info-dark: #1a3f64;
20344
+ --dm-info-text: #ffffff;
20345
+ --dm-info-hover-text: #ffffff;
20346
+
20347
+ --dm-card-bg: var(--dm-surface);
20348
+ --dm-card-border: var(--dm-border);
20349
+ --dm-card-shadow: var(--dm-shadow-md);
20350
+ --dm-card-header-bg: var(--dm-background-alt);
20351
+ --dm-input-bg: var(--dm-surface);
20352
+ --dm-input-border: var(--dm-border-dark);
20353
+ --dm-input-text: var(--dm-text);
20354
+ --dm-input-placeholder: var(--dm-text-muted);
20355
+ --dm-input-focus-border: var(--dm-primary);
20356
+ --dm-input-disabled-bg: var(--dm-background-alt);
20357
+ --dm-btn-text: var(--dm-text);
20358
+ --dm-btn-bg: var(--dm-surface);
20359
+ --dm-btn-border: var(--dm-border-dark);
20360
+ --dm-table-bg: transparent;
20361
+ --dm-table-border: var(--dm-border);
20362
+ --dm-table-header-text: var(--dm-text);
20363
+ --dm-table-selected-bg: var(--dm-selected-bg);
20364
+ --dm-modal-bg: var(--dm-surface);
20365
+ --dm-modal-border: var(--dm-border);
20366
+ --dm-modal-shadow: var(--dm-shadow-xl);
20367
+ --dm-dropdown-bg: var(--dm-surface-raised);
20368
+ --dm-dropdown-border: var(--dm-border);
20369
+ --dm-dropdown-shadow: var(--dm-shadow-lg);
20370
+ --dm-dropdown-item-hover: var(--dm-hover-bg);
20371
+ --dm-dropdown-item-active: var(--dm-selected-bg);
20372
+ --dm-toast-bg: var(--dm-surface);
20373
+ --dm-toast-border: var(--dm-border);
20374
+ --dm-toast-shadow: var(--dm-shadow-lg);
20375
+ --dm-sidebar-item-hover: var(--dm-hover-bg);
20376
+ --dm-sidebar-item-active: var(--dm-selected-bg);
20377
+ --dm-tab-border: var(--dm-border);
20378
+ --dm-tab-hover-bg: var(--dm-hover-bg);
20379
+ --dm-accordion-bg: var(--dm-surface);
20380
+ --dm-accordion-border: var(--dm-border);
20381
+ --dm-accordion-header-bg: var(--dm-background-alt);
20382
+ --dm-accordion-header-hover: var(--dm-hover-bg);
20383
+ --dm-badge-bg: var(--dm-secondary);
20384
+ --dm-badge-text: var(--dm-text-inverse);
20385
+ --dm-code-border: var(--dm-border);
20386
+ }
20387
+
19560
20388
 
19561
20389