domma-js 0.7.6-alpha → 0.8.0-alpha

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 Essentials CSS Bundle v0.7.5-alpha
2
+ * Domma Essentials CSS Bundle v0.8.0-alpha
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-01-08T18:40:14.138Z
5
+ * Built: 2026-01-09T18:35:07.802Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -230,11 +230,11 @@
230
230
  ============================================ */
231
231
 
232
232
  /*!
233
- * Domma Core CSS v0.7.5-alpha
233
+ * Domma Core CSS v0.8.0-alpha
234
234
  * Dynamic Object Manipulation & Modeling API
235
235
  * (c) 2026 Darryl Waterhouse & DCBW-IT
236
- * Built: 2026-01-08T18:40:13.837Z
237
- * Commit: 61aa8b6
236
+ * Built: 2026-01-09T18:35:07.456Z
237
+ * Commit: 1a13022
238
238
  */
239
239
 
240
240
  /**
@@ -4235,11 +4235,11 @@ body.dm-cloaked.dm-ready {
4235
4235
  ============================================ */
4236
4236
 
4237
4237
  /*!
4238
- * Domma Grid CSS v0.7.5-alpha
4238
+ * Domma Grid CSS v0.8.0-alpha
4239
4239
  * Dynamic Object Manipulation & Modeling API
4240
4240
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4241
- * Built: 2026-01-08T18:40:13.844Z
4242
- * Commit: 61aa8b6
4241
+ * Built: 2026-01-09T18:35:07.464Z
4242
+ * Commit: 1a13022
4243
4243
  */
4244
4244
 
4245
4245
  /**
@@ -4636,6 +4636,62 @@ body.dm-cloaked.dm-ready {
4636
4636
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
4637
4637
  }
4638
4638
 
4639
+ /* ============================================
4640
+ COLUMN SPAN UTILITIES (for .grid children)
4641
+ ============================================ */
4642
+
4643
+ .col-span-1 {
4644
+ grid-column: span 1 / span 1;
4645
+ }
4646
+
4647
+ .col-span-2 {
4648
+ grid-column: span 2 / span 2;
4649
+ }
4650
+
4651
+ .col-span-3 {
4652
+ grid-column: span 3 / span 3;
4653
+ }
4654
+
4655
+ .col-span-4 {
4656
+ grid-column: span 4 / span 4;
4657
+ }
4658
+
4659
+ .col-span-5 {
4660
+ grid-column: span 5 / span 5;
4661
+ }
4662
+
4663
+ .col-span-6 {
4664
+ grid-column: span 6 / span 6;
4665
+ }
4666
+
4667
+ .col-span-7 {
4668
+ grid-column: span 7 / span 7;
4669
+ }
4670
+
4671
+ .col-span-8 {
4672
+ grid-column: span 8 / span 8;
4673
+ }
4674
+
4675
+ .col-span-9 {
4676
+ grid-column: span 9 / span 9;
4677
+ }
4678
+
4679
+ .col-span-10 {
4680
+ grid-column: span 10 / span 10;
4681
+ }
4682
+
4683
+ .col-span-11 {
4684
+ grid-column: span 11 / span 11;
4685
+ }
4686
+
4687
+ .col-span-12 {
4688
+ grid-column: span 12 / span 12;
4689
+ }
4690
+
4691
+ .col-span-full {
4692
+ grid-column: 1 / -1;
4693
+ }
4694
+
4639
4695
  /* Standalone gap utilities (work with .grid and .row) */
4640
4696
  .gap-0 {
4641
4697
  gap: 0;
@@ -4780,11 +4836,11 @@ body.dm-cloaked.dm-ready {
4780
4836
  ============================================ */
4781
4837
 
4782
4838
  /*!
4783
- * Domma Elements CSS v0.7.5-alpha
4839
+ * Domma Elements CSS v0.8.0-alpha
4784
4840
  * Dynamic Object Manipulation & Modeling API
4785
4841
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4786
- * Built: 2026-01-08T18:40:13.850Z
4787
- * Commit: 61aa8b6
4842
+ * Built: 2026-01-09T18:35:07.473Z
4843
+ * Commit: 1a13022
4788
4844
  */
4789
4845
 
4790
4846
  /**
@@ -6596,6 +6652,13 @@ code {
6596
6652
  background: var(--dm-hover-bg, rgba(0, 0, 0, 0.05));
6597
6653
  }
6598
6654
 
6655
+ .navbar-dropdown-divider {
6656
+ height: 1px;
6657
+ margin: 0.5rem 0;
6658
+ background: var(--dm-border-color, rgba(0, 0, 0, 0.1));
6659
+ list-style: none;
6660
+ }
6661
+
6599
6662
  /* Dark navbar dropdown styles */
6600
6663
  .navbar-dark .navbar-dropdown-menu {
6601
6664
  background: var(--dm-gray-800);
@@ -6611,6 +6674,10 @@ code {
6611
6674
  color: var(--dm-white);
6612
6675
  }
6613
6676
 
6677
+ .navbar-dark .navbar-dropdown-divider {
6678
+ background: var(--dm-gray-700);
6679
+ }
6680
+
6614
6681
  /* Pill button styles (for Download button) */
6615
6682
  .pill {
6616
6683
  display: inline-block;
@@ -7857,47 +7924,120 @@ code {
7857
7924
  SIDEBAR
7858
7925
  ============================================ */
7859
7926
 
7927
+ /* Base Sidebar */
7860
7928
  .sidebar {
7861
- position: fixed;
7862
- bottom: 4px;
7863
- left: 2px;
7864
- width: 220px;
7865
- max-height: 50vh;
7866
- overflow-y: auto;
7929
+ position: relative;
7930
+ width: 250px;
7867
7931
  background: var(--dm-surface, #fff);
7868
- border: 1px solid var(--dm-border, #dee2e6);
7869
- border-radius: var(--dm-radius-lg);
7870
- box-shadow: var(--dm-shadow-lg);
7932
+ border-right: 1px solid var(--dm-border, #dee2e6);
7933
+ overflow-y: auto;
7934
+ overflow-x: hidden;
7935
+ transition: transform 0.3s ease;
7871
7936
  z-index: 100;
7872
7937
  }
7873
7938
 
7939
+ /* Fixed positioning */
7940
+ .sidebar-fixed {
7941
+ position: fixed;
7942
+ top: 0;
7943
+ left: 0;
7944
+ height: 100vh;
7945
+ }
7946
+
7947
+ .sidebar-fixed.sidebar-right {
7948
+ left: auto;
7949
+ right: 0;
7950
+ border-right: none;
7951
+ border-left: 1px solid var(--dm-border, #dee2e6);
7952
+ }
7953
+
7954
+ /* Position variants */
7955
+ .sidebar-left {
7956
+ left: 0;
7957
+ }
7958
+
7959
+ .sidebar-right {
7960
+ right: 0;
7961
+ left: auto;
7962
+ border-right: none;
7963
+ border-left: 1px solid var(--dm-border, #dee2e6);
7964
+ }
7965
+
7966
+ /* Header */
7874
7967
  .sidebar-header {
7875
- padding: var(--dm-space-3) var(--dm-space-3) var(--dm-space-2);
7876
- font-size: var(--dm-font-size-xs);
7877
- font-weight: 600;
7878
- text-transform: uppercase;
7879
- letter-spacing: 0.05em;
7880
- color: var(--dm-gray-500);
7968
+ display: flex;
7969
+ align-items: center;
7970
+ gap: var(--dm-space-3, 0.75rem);
7971
+ padding: var(--dm-space-4, 1rem) var(--dm-space-3, 0.75rem);
7881
7972
  border-bottom: 1px solid var(--dm-border, #dee2e6);
7973
+ background: var(--dm-surface-raised, #f8f9fa);
7974
+ }
7975
+
7976
+ .sidebar-header-icon {
7977
+ flex-shrink: 0;
7978
+ display: inline-flex;
7979
+ align-items: center;
7980
+ justify-content: center;
7981
+ }
7982
+
7983
+ .sidebar-header-title {
7984
+ flex: 1;
7985
+ margin: 0;
7986
+ font-size: var(--dm-font-size-lg, 1.125rem);
7987
+ font-weight: 600;
7988
+ color: var(--dm-text, #212529);
7882
7989
  }
7883
7990
 
7991
+ .sidebar-toggle-btn {
7992
+ display: none; /* Shown on mobile */
7993
+ flex-shrink: 0;
7994
+ width: 32px;
7995
+ height: 32px;
7996
+ padding: 0;
7997
+ border: none;
7998
+ background: transparent;
7999
+ color: var(--dm-text-muted, #6c757d);
8000
+ border-radius: var(--dm-radius-md, 0.375rem);
8001
+ cursor: pointer;
8002
+ transition: all 0.2s ease;
8003
+ }
8004
+
8005
+ .sidebar-toggle-btn:hover {
8006
+ background: var(--dm-gray-200, #e9ecef);
8007
+ color: var(--dm-text, #212529);
8008
+ }
8009
+
8010
+ /* Navigation */
7884
8011
  .sidebar-nav {
8012
+ padding: var(--dm-space-2, 0.5rem) 0;
8013
+ }
8014
+
8015
+ .sidebar-menu {
7885
8016
  list-style: none;
7886
8017
  margin: 0;
7887
- padding: var(--dm-space-2);
8018
+ padding: 0;
8019
+ }
8020
+
8021
+ .sidebar-item {
8022
+ position: relative;
7888
8023
  }
7889
8024
 
8025
+ /* Navigation Links */
7890
8026
  .sidebar-link {
7891
- display: block;
7892
- padding: var(--dm-space-2) var(--dm-space-3);
8027
+ display: flex;
8028
+ align-items: center;
8029
+ gap: var(--dm-space-3, 0.75rem);
8030
+ padding: var(--dm-space-2, 0.5rem) var(--dm-space-4, 1rem);
7893
8031
  color: var(--dm-text-muted, #6c757d);
7894
8032
  text-decoration: none;
7895
- font-size: var(--dm-font-size-sm);
7896
- border-radius: var(--dm-radius-md);
7897
- transition: all 0.15s ease;
7898
- white-space: nowrap;
7899
- overflow: hidden;
7900
- text-overflow: ellipsis;
8033
+ font-size: var(--dm-font-size-sm, 0.875rem);
8034
+ transition: all 0.2s ease;
8035
+ cursor: pointer;
8036
+ border: none;
8037
+ background: transparent;
8038
+ width: 100%;
8039
+ text-align: left;
8040
+ border-left: 3px solid transparent;
7901
8041
  }
7902
8042
 
7903
8043
  .sidebar-link:hover {
@@ -7907,154 +8047,308 @@ code {
7907
8047
  }
7908
8048
 
7909
8049
  .sidebar-link.active {
7910
- color: var(--dm-primary);
7911
- background: var(--dm-primary-bg, rgba(100, 149, 237, 0.1));
8050
+ color: var(--dm-primary, #007bff);
8051
+ background: var(--dm-primary-bg, rgba(0, 123, 255, 0.1));
7912
8052
  font-weight: 500;
8053
+ border-left-color: var(--dm-primary, #007bff);
7913
8054
  }
7914
8055
 
7915
- .showcase-content {
7916
- width: 100%;
8056
+ /* Link elements */
8057
+ .sidebar-icon {
8058
+ flex-shrink: 0;
8059
+ display: inline-flex;
8060
+ align-items: center;
8061
+ justify-content: center;
7917
8062
  }
7918
8063
 
7919
- /* Add left margin on desktop to account for fixed sidebar */
7920
- @media (min-width: 1025px) {
7921
- .showcase-content {
7922
- margin-left: 240px;
7923
- width: calc(100% - 240px);
7924
- }
8064
+ .sidebar-text {
8065
+ flex: 1;
8066
+ white-space: nowrap;
8067
+ overflow: hidden;
8068
+ text-overflow: ellipsis;
7925
8069
  }
7926
8070
 
7927
- /* Sidebar toggle button (mobile) */
7928
-
7929
- .sidebar-toggle {
7930
- display: none;
7931
- position: fixed;
7932
- bottom: var(--dm-space-4);
7933
- left: var(--dm-space-4);
7934
- width: 48px;
7935
- height: 48px;
7936
- border-radius: 50%;
7937
- background: var(--dm-primary);
7938
- color: white;
7939
- border: none;
7940
- cursor: pointer;
7941
- z-index: 1001;
7942
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
7943
- transition: transform 0.2s ease, box-shadow 0.2s ease;
8071
+ .sidebar-badge {
8072
+ flex-shrink: 0;
8073
+ display: inline-flex;
7944
8074
  align-items: center;
7945
8075
  justify-content: center;
8076
+ min-width: 20px;
8077
+ height: 20px;
8078
+ padding: 0 var(--dm-space-2, 0.5rem);
8079
+ font-size: var(--dm-font-size-xs, 0.75rem);
8080
+ font-weight: 600;
8081
+ line-height: 1;
8082
+ color: var(--dm-white, #fff);
8083
+ background: var(--dm-primary, #007bff);
8084
+ border-radius: 10px;
7946
8085
  }
7947
8086
 
7948
- .sidebar-toggle:hover {
7949
- transform: scale(1.05);
7950
- box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
8087
+ /* Submenu toggle (has children) */
8088
+ .sidebar-link-toggle {
8089
+ position: relative;
7951
8090
  }
7952
8091
 
7953
- .sidebar-toggle svg {
7954
- width: 24px;
7955
- height: 24px;
8092
+ .sidebar-chevron {
8093
+ flex-shrink: 0;
8094
+ margin-left: auto;
8095
+ transition: transform 0.2s ease;
7956
8096
  }
7957
8097
 
7958
- /* Sidebar overlay (mobile) */
8098
+ .sidebar-item.open > .sidebar-link-toggle .sidebar-chevron {
8099
+ transform: rotate(90deg);
8100
+ }
7959
8101
 
7960
- .sidebar-overlay {
8102
+ /* Submenu container */
8103
+ .sidebar-submenu {
7961
8104
  display: none;
7962
- position: fixed;
7963
- top: 0;
7964
- left: 0;
7965
- right: 0;
7966
- bottom: 0;
7967
- background: rgba(0, 0, 0, 0.5);
7968
- z-index: 999;
7969
- opacity: 0;
7970
- transition: opacity 0.3s ease;
8105
+ overflow: hidden;
7971
8106
  }
7972
8107
 
7973
- .sidebar-overlay.active {
7974
- opacity: 1;
8108
+ .sidebar-item.open > .sidebar-submenu {
8109
+ display: block;
7975
8110
  }
7976
8111
 
7977
- /* Mobile/Tablet: Slide-out drawer */
7978
- @media (max-width: 768px) {
7979
- .sidebar {
7980
- display: none;
7981
- position: fixed;
7982
- top: 0;
7983
- left: 0;
7984
- bottom: 0;
7985
- width: 260px;
7986
- max-height: 100vh;
7987
- }
8112
+ .sidebar-submenu .sidebar-menu {
8113
+ padding-left: var(--dm-space-4, 1rem);
7988
8114
  }
7989
8115
 
7990
- /**
7991
- * Domma Syntax Highlighting Styles
7992
- *
7993
- * Color-coded syntax highlighting for JavaScript, HTML, and CSS
7994
- * Theme-aware with light/dark mode support
7995
- */
8116
+ .sidebar-submenu .sidebar-link {
8117
+ padding-left: calc(var(--dm-space-4, 1rem) + var(--dm-space-2, 0.5rem));
8118
+ font-size: var(--dm-font-size-xs, 0.75rem);
8119
+ }
7996
8120
 
7997
- /* Syntax token colors - Dark theme (default) */
7998
- .syntax-keyword {
7999
- color: #569cd6;
8000
- font-weight: 600;
8121
+ /* Nested depth indentation */
8122
+ .sidebar-menu[data-depth="1"] .sidebar-link {
8123
+ padding-left: calc(var(--dm-space-4, 1rem) * 2);
8001
8124
  }
8002
8125
 
8003
- .syntax-string {
8004
- color: #ce9178;
8126
+ .sidebar-menu[data-depth="2"] .sidebar-link {
8127
+ padding-left: calc(var(--dm-space-4, 1rem) * 3);
8005
8128
  }
8006
8129
 
8007
- .syntax-comment {
8008
- color: #6a9955;
8009
- font-style: italic;
8130
+ .sidebar-menu[data-depth="3"] .sidebar-link {
8131
+ padding-left: calc(var(--dm-space-4, 1rem) * 4);
8010
8132
  }
8011
8133
 
8012
- .syntax-number {
8013
- color: #b5cea8;
8134
+ .sidebar-menu[data-depth="4"] .sidebar-link {
8135
+ padding-left: calc(var(--dm-space-4, 1rem) * 5);
8014
8136
  }
8015
8137
 
8016
- .syntax-function {
8017
- color: #dcdcaa;
8138
+ /* Divider */
8139
+ .sidebar-divider {
8140
+ height: 1px;
8141
+ margin: var(--dm-space-2, 0.5rem) var(--dm-space-4, 1rem);
8142
+ background: var(--dm-border, #dee2e6);
8143
+ list-style: none;
8018
8144
  }
8019
8145
 
8020
- .syntax-class {
8021
- color: #4ec9b0;
8146
+ /* Section Heading */
8147
+ .sidebar-heading {
8148
+ padding: var(--dm-space-3, 0.75rem) var(--dm-space-4, 1rem) var(--dm-space-2, 0.5rem);
8149
+ font-size: var(--dm-font-size-xs, 0.75rem);
8150
+ font-weight: 600;
8151
+ text-transform: uppercase;
8152
+ letter-spacing: 0.05em;
8153
+ color: var(--dm-gray-500, #6c757d);
8154
+ list-style: none;
8022
8155
  }
8023
8156
 
8024
- .syntax-tag {
8025
- color: #569cd6;
8157
+ /* Footer */
8158
+ .sidebar-footer {
8159
+ padding: var(--dm-space-3, 0.75rem) var(--dm-space-4, 1rem);
8160
+ border-top: 1px solid var(--dm-border, #dee2e6);
8161
+ background: var(--dm-surface-raised, #f8f9fa);
8026
8162
  }
8027
8163
 
8028
- .syntax-attr-name {
8029
- color: #9cdcfe;
8164
+ .sidebar-footer-text {
8165
+ margin: 0;
8166
+ font-size: var(--dm-font-size-xs, 0.75rem);
8167
+ color: var(--dm-text-muted, #6c757d);
8030
8168
  }
8031
8169
 
8032
- .syntax-attr-value {
8033
- color: #ce9178;
8170
+ /* Overlay (mobile) */
8171
+ .sidebar-overlay {
8172
+ position: fixed;
8173
+ top: 0;
8174
+ left: 0;
8175
+ right: 0;
8176
+ bottom: 0;
8177
+ background: rgba(0, 0, 0, 0.5);
8178
+ z-index: 99;
8179
+ opacity: 0;
8180
+ visibility: hidden;
8181
+ transition: opacity 0.3s ease, visibility 0.3s ease;
8034
8182
  }
8035
8183
 
8036
- .syntax-selector {
8037
- color: #d7ba7d;
8184
+ .sidebar-overlay.active {
8185
+ opacity: 1;
8186
+ visibility: visible;
8038
8187
  }
8039
8188
 
8040
- .syntax-property {
8041
- color: #9cdcfe;
8189
+ /* Theme Variants */
8190
+
8191
+ /* Dark variant */
8192
+ .sidebar-dark {
8193
+ background: var(--dm-gray-900, #212529);
8194
+ border-color: var(--dm-gray-700, #495057);
8042
8195
  }
8043
8196
 
8044
- .syntax-value {
8045
- color: #ce9178;
8197
+ .sidebar-dark .sidebar-header {
8198
+ background: var(--dm-gray-800, #343a40);
8199
+ border-color: var(--dm-gray-700, #495057);
8046
8200
  }
8047
8201
 
8048
- .syntax-operator {
8049
- color: #d4d4d4;
8202
+ .sidebar-dark .sidebar-header-title {
8203
+ color: var(--dm-white, #fff);
8050
8204
  }
8051
8205
 
8052
- .syntax-punctuation {
8053
- color: #d4d4d4;
8206
+ .sidebar-dark .sidebar-link {
8207
+ color: var(--dm-gray-400, #adb5bd);
8208
+ border-left-color: transparent;
8054
8209
  }
8055
8210
 
8056
- .syntax-boolean {
8057
- color: #569cd6;
8211
+ .sidebar-dark .sidebar-link:hover {
8212
+ color: var(--dm-white, #fff);
8213
+ background: var(--dm-gray-800, #343a40);
8214
+ }
8215
+
8216
+ .sidebar-dark .sidebar-link.active {
8217
+ color: var(--dm-primary-light, #66b2ff);
8218
+ background: rgba(102, 178, 255, 0.15);
8219
+ border-left-color: var(--dm-primary-light, #66b2ff);
8220
+ }
8221
+
8222
+ .sidebar-dark .sidebar-heading {
8223
+ color: var(--dm-gray-500, #6c757d);
8224
+ }
8225
+
8226
+ .sidebar-dark .sidebar-divider {
8227
+ background: var(--dm-gray-700, #495057);
8228
+ }
8229
+
8230
+ .sidebar-dark .sidebar-footer {
8231
+ background: var(--dm-gray-800, #343a40);
8232
+ border-color: var(--dm-gray-700, #495057);
8233
+ }
8234
+
8235
+ .sidebar-dark .sidebar-footer-text {
8236
+ color: var(--dm-gray-500, #6c757d);
8237
+ }
8238
+
8239
+ /* Light variant (default, explicit) */
8240
+ .sidebar-light {
8241
+ background: var(--dm-white, #fff);
8242
+ border-color: var(--dm-border, #dee2e6);
8243
+ }
8244
+
8245
+ /* Mobile/Tablet: Slide-out drawer */
8246
+ @media (max-width: 768px) {
8247
+ .sidebar-fixed {
8248
+ transform: translateX(-100%);
8249
+ box-shadow: none;
8250
+ }
8251
+
8252
+ .sidebar-fixed.sidebar-right {
8253
+ transform: translateX(100%);
8254
+ }
8255
+
8256
+ .sidebar-fixed.open {
8257
+ transform: translateX(0);
8258
+ box-shadow: var(--dm-shadow-xl, 0 10px 40px rgba(0,0,0,0.2));
8259
+ }
8260
+
8261
+ .sidebar-toggle-btn {
8262
+ display: flex;
8263
+ align-items: center;
8264
+ justify-content: center;
8265
+ }
8266
+
8267
+ .sidebar-overlay {
8268
+ display: block;
8269
+ }
8270
+ }
8271
+
8272
+ /* Showcase-specific overrides (for backward compatibility) */
8273
+ .showcase-content {
8274
+ width: 100%;
8275
+ }
8276
+
8277
+ @media (min-width: 1025px) {
8278
+ .showcase-content {
8279
+ margin-left: 240px;
8280
+ width: calc(100% - 240px);
8281
+ }
8282
+ }
8283
+
8284
+ /**
8285
+ * Domma Syntax Highlighting Styles
8286
+ *
8287
+ * Color-coded syntax highlighting for JavaScript, HTML, and CSS
8288
+ * Theme-aware with light/dark mode support
8289
+ */
8290
+
8291
+ /* Syntax token colors - Dark theme (default) */
8292
+ .syntax-keyword {
8293
+ color: #569cd6;
8294
+ font-weight: 600;
8295
+ }
8296
+
8297
+ .syntax-string {
8298
+ color: #ce9178;
8299
+ }
8300
+
8301
+ .syntax-comment {
8302
+ color: #6a9955;
8303
+ font-style: italic;
8304
+ }
8305
+
8306
+ .syntax-number {
8307
+ color: #b5cea8;
8308
+ }
8309
+
8310
+ .syntax-function {
8311
+ color: #dcdcaa;
8312
+ }
8313
+
8314
+ .syntax-class {
8315
+ color: #4ec9b0;
8316
+ }
8317
+
8318
+ .syntax-tag {
8319
+ color: #569cd6;
8320
+ }
8321
+
8322
+ .syntax-attr-name {
8323
+ color: #9cdcfe;
8324
+ }
8325
+
8326
+ .syntax-attr-value {
8327
+ color: #ce9178;
8328
+ }
8329
+
8330
+ .syntax-selector {
8331
+ color: #d7ba7d;
8332
+ }
8333
+
8334
+ .syntax-property {
8335
+ color: #9cdcfe;
8336
+ }
8337
+
8338
+ .syntax-value {
8339
+ color: #ce9178;
8340
+ }
8341
+
8342
+ .syntax-operator {
8343
+ color: #d4d4d4;
8344
+ }
8345
+
8346
+ .syntax-punctuation {
8347
+ color: #d4d4d4;
8348
+ }
8349
+
8350
+ .syntax-boolean {
8351
+ color: #569cd6;
8058
8352
  }
8059
8353
 
8060
8354
  .syntax-regex {
@@ -8165,6 +8459,330 @@ code {
8165
8459
  }
8166
8460
 
8167
8461
 
8462
+
8463
+ /* ============================================
8464
+ FOOTER
8465
+ ============================================ */
8466
+
8467
+ /* Base Footer */
8468
+ .footer {
8469
+ position: relative;
8470
+ width: 100%;
8471
+ background: var(--dm-surface, #fff);
8472
+ border-top: 1px solid var(--dm-border, #dee2e6);
8473
+ font-size: var(--dm-font-size-sm, 0.875rem);
8474
+ }
8475
+
8476
+ /* Position variants */
8477
+ .footer-static {
8478
+ position: static;
8479
+ }
8480
+
8481
+ .footer-fixed {
8482
+ position: fixed;
8483
+ bottom: 0;
8484
+ left: 0;
8485
+ right: 0;
8486
+ z-index: 100;
8487
+ }
8488
+
8489
+ .footer-sticky {
8490
+ position: sticky;
8491
+ bottom: 0;
8492
+ z-index: 100;
8493
+ }
8494
+
8495
+ /* Container */
8496
+ .footer-container {
8497
+ max-width: var(--dm-container-lg, 1200px);
8498
+ margin: 0 auto;
8499
+ padding: var(--dm-space-6, 1.5rem) var(--dm-space-4, 1rem);
8500
+ }
8501
+
8502
+ /* ========== Simple Layout ========== */
8503
+
8504
+ .footer-simple .footer-simple-content {
8505
+ display: flex;
8506
+ flex-wrap: wrap;
8507
+ align-items: center;
8508
+ justify-content: space-between;
8509
+ gap: var(--dm-space-4, 1rem);
8510
+ }
8511
+
8512
+ .footer-brand {
8513
+ display: flex;
8514
+ align-items: center;
8515
+ gap: var(--dm-space-3, 0.75rem);
8516
+ }
8517
+
8518
+ .footer-brand-link {
8519
+ display: flex;
8520
+ align-items: center;
8521
+ gap: var(--dm-space-3, 0.75rem);
8522
+ text-decoration: none;
8523
+ color: inherit;
8524
+ }
8525
+
8526
+ .footer-logo {
8527
+ height: 32px;
8528
+ width: auto;
8529
+ }
8530
+
8531
+ .footer-brand-text {
8532
+ font-weight: 600;
8533
+ color: var(--dm-text, #212529);
8534
+ }
8535
+
8536
+ .footer-nav {
8537
+ display: flex;
8538
+ flex-wrap: wrap;
8539
+ gap: var(--dm-space-4, 1rem);
8540
+ align-items: center;
8541
+ }
8542
+
8543
+ .footer-link {
8544
+ color: var(--dm-text-muted, #6c757d);
8545
+ text-decoration: none;
8546
+ transition: color 0.2s ease;
8547
+ }
8548
+
8549
+ .footer-link:hover {
8550
+ color: var(--dm-primary, #007bff);
8551
+ text-decoration: none;
8552
+ }
8553
+
8554
+ .footer-social {
8555
+ display: flex;
8556
+ gap: var(--dm-space-3, 0.75rem);
8557
+ align-items: center;
8558
+ }
8559
+
8560
+ .footer-social-link {
8561
+ display: inline-flex;
8562
+ align-items: center;
8563
+ justify-content: center;
8564
+ width: 36px;
8565
+ height: 36px;
8566
+ border-radius: 50%;
8567
+ color: var(--dm-text-muted, #6c757d);
8568
+ background: transparent;
8569
+ text-decoration: none;
8570
+ transition: all 0.2s ease;
8571
+ }
8572
+
8573
+ .footer-social-link:hover {
8574
+ color: var(--dm-primary, #007bff);
8575
+ background: var(--dm-gray-100, #f8f9fa);
8576
+ }
8577
+
8578
+ .footer-copyright {
8579
+ width: 100%;
8580
+ padding-top: var(--dm-space-4, 1rem);
8581
+ margin-top: var(--dm-space-4, 1rem);
8582
+ border-top: 1px solid var(--dm-border, #dee2e6);
8583
+ text-align: center;
8584
+ color: var(--dm-text-muted, #6c757d);
8585
+ }
8586
+
8587
+ /* ========== Columns Layout ========== */
8588
+
8589
+ .footer-columns .footer-columns-content {
8590
+ display: grid;
8591
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
8592
+ gap: var(--dm-space-6, 1.5rem);
8593
+ padding-bottom: var(--dm-space-4, 1rem);
8594
+ margin-bottom: var(--dm-space-4, 1rem);
8595
+ border-bottom: 1px solid var(--dm-border, #dee2e6);
8596
+ }
8597
+
8598
+ .footer-column {
8599
+ min-width: 0;
8600
+ }
8601
+
8602
+ .footer-column-brand {
8603
+ grid-column: span 1;
8604
+ }
8605
+
8606
+ .footer-column-brand .footer-logo {
8607
+ margin-bottom: var(--dm-space-3, 0.75rem);
8608
+ }
8609
+
8610
+ .footer-column-brand .footer-brand-text {
8611
+ display: block;
8612
+ margin: 0;
8613
+ color: var(--dm-text-muted, #6c757d);
8614
+ font-weight: 400;
8615
+ line-height: 1.6;
8616
+ }
8617
+
8618
+ .footer-column-title {
8619
+ margin: 0 0 var(--dm-space-3, 0.75rem);
8620
+ font-size: var(--dm-font-size-base, 1rem);
8621
+ font-weight: 600;
8622
+ color: var(--dm-text, #212529);
8623
+ }
8624
+
8625
+ .footer-column-links {
8626
+ list-style: none;
8627
+ margin: 0;
8628
+ padding: 0;
8629
+ }
8630
+
8631
+ .footer-column-links li {
8632
+ margin-bottom: var(--dm-space-2, 0.5rem);
8633
+ }
8634
+
8635
+ .footer-column-link {
8636
+ color: var(--dm-text-muted, #6c757d);
8637
+ text-decoration: none;
8638
+ transition: color 0.2s ease;
8639
+ display: inline-block;
8640
+ }
8641
+
8642
+ .footer-column-link:hover {
8643
+ color: var(--dm-primary, #007bff);
8644
+ text-decoration: none;
8645
+ }
8646
+
8647
+ .footer-columns .footer-bottom {
8648
+ display: flex;
8649
+ flex-wrap: wrap;
8650
+ align-items: center;
8651
+ justify-content: space-between;
8652
+ gap: var(--dm-space-4, 1rem);
8653
+ }
8654
+
8655
+ .footer-columns .footer-copyright {
8656
+ width: auto;
8657
+ padding: 0;
8658
+ margin: 0;
8659
+ border: none;
8660
+ text-align: left;
8661
+ }
8662
+
8663
+ /* ========== Minimal Layout ========== */
8664
+
8665
+ .footer-minimal .footer-minimal-content {
8666
+ display: flex;
8667
+ flex-wrap: wrap;
8668
+ align-items: center;
8669
+ justify-content: center;
8670
+ gap: var(--dm-space-4, 1rem);
8671
+ text-align: center;
8672
+ }
8673
+
8674
+ .footer-minimal .footer-copyright {
8675
+ width: 100%;
8676
+ padding: 0;
8677
+ margin: 0;
8678
+ border: none;
8679
+ }
8680
+
8681
+ .footer-minimal .footer-social {
8682
+ width: 100%;
8683
+ justify-content: center;
8684
+ margin-top: var(--dm-space-3, 0.75rem);
8685
+ }
8686
+
8687
+ /* ========== Theme Variants ========== */
8688
+
8689
+ /* Dark variant */
8690
+ .footer-dark {
8691
+ background: var(--dm-gray-900, #212529);
8692
+ border-color: var(--dm-gray-700, #495057);
8693
+ }
8694
+
8695
+ .footer-dark .footer-brand-text {
8696
+ color: var(--dm-white, #fff);
8697
+ }
8698
+
8699
+ .footer-dark .footer-link {
8700
+ color: var(--dm-gray-400, #adb5bd);
8701
+ }
8702
+
8703
+ .footer-dark .footer-link:hover {
8704
+ color: var(--dm-primary-light, #66b2ff);
8705
+ }
8706
+
8707
+ .footer-dark .footer-column-title {
8708
+ color: var(--dm-white, #fff);
8709
+ }
8710
+
8711
+ .footer-dark .footer-column-link {
8712
+ color: var(--dm-gray-400, #adb5bd);
8713
+ }
8714
+
8715
+ .footer-dark .footer-column-link:hover {
8716
+ color: var(--dm-primary-light, #66b2ff);
8717
+ }
8718
+
8719
+ .footer-dark .footer-copyright {
8720
+ color: var(--dm-gray-500, #6c757d);
8721
+ border-color: var(--dm-gray-700, #495057);
8722
+ }
8723
+
8724
+ .footer-dark .footer-social-link {
8725
+ color: var(--dm-gray-400, #adb5bd);
8726
+ }
8727
+
8728
+ .footer-dark .footer-social-link:hover {
8729
+ color: var(--dm-primary-light, #66b2ff);
8730
+ background: var(--dm-gray-800, #343a40);
8731
+ }
8732
+
8733
+ .footer-dark .footer-columns-content {
8734
+ border-color: var(--dm-gray-700, #495057);
8735
+ }
8736
+
8737
+ /* Light variant (default) */
8738
+ .footer-light {
8739
+ background: var(--dm-white, #fff);
8740
+ border-color: var(--dm-border, #dee2e6);
8741
+ }
8742
+
8743
+ /* Transparent variant */
8744
+ .footer-transparent {
8745
+ background: transparent;
8746
+ border-color: transparent;
8747
+ }
8748
+
8749
+ /* ========== Responsive ========== */
8750
+
8751
+ @media (max-width: 768px) {
8752
+ .footer-container {
8753
+ padding: var(--dm-space-4, 1rem);
8754
+ }
8755
+
8756
+ .footer-simple .footer-simple-content {
8757
+ flex-direction: column;
8758
+ align-items: flex-start;
8759
+ }
8760
+
8761
+ .footer-nav {
8762
+ flex-direction: column;
8763
+ align-items: flex-start;
8764
+ gap: var(--dm-space-2, 0.5rem);
8765
+ }
8766
+
8767
+ .footer-columns .footer-columns-content {
8768
+ grid-template-columns: 1fr;
8769
+ gap: var(--dm-space-4, 1rem);
8770
+ }
8771
+
8772
+ .footer-columns .footer-bottom {
8773
+ flex-direction: column;
8774
+ align-items: flex-start;
8775
+ }
8776
+
8777
+ .footer-columns .footer-copyright {
8778
+ width: 100%;
8779
+ text-align: left;
8780
+ }
8781
+
8782
+ .footer-social {
8783
+ width: 100%;
8784
+ }
8785
+ }
8168
8786
  /* ============================================
8169
8787
  BACKGROUND UTILITIES
8170
8788
  ============================================ */
@@ -9855,6 +10473,384 @@ code {
9855
10473
  border-color: var(--dm-slate-600);
9856
10474
  }
9857
10475
 
10476
+ /* ==============================================
10477
+ Progression Component (Timeline + Roadmap)
10478
+ ============================================== */
10479
+
10480
+ /* Base Progression styles */
10481
+ .dm-progression {
10482
+ width: 100%;
10483
+ position: relative;
10484
+ }
10485
+
10486
+ .dm-progression-item {
10487
+ display: flex;
10488
+ gap: var(--dm-space-4);
10489
+ position: relative;
10490
+ margin-bottom: var(--dm-space-6);
10491
+ }
10492
+
10493
+ .dm-progression-marker {
10494
+ flex-shrink: 0;
10495
+ display: flex;
10496
+ align-items: center;
10497
+ justify-content: center;
10498
+ font-weight: 600;
10499
+ font-size: var(--dm-font-size-sm);
10500
+ z-index: 2;
10501
+ }
10502
+
10503
+ .dm-progression-content {
10504
+ flex-grow: 1;
10505
+ background: var(--dm-surface, #fff);
10506
+ border: 1px solid var(--dm-border-color, #e0e0e0);
10507
+ border-radius: var(--dm-radius-md);
10508
+ padding: var(--dm-space-4);
10509
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
10510
+ transition: all 0.2s ease;
10511
+ }
10512
+
10513
+ .dm-progression-title {
10514
+ margin: 0 0 var(--dm-space-2);
10515
+ font-size: var(--dm-font-size-lg);
10516
+ font-weight: 600;
10517
+ color: var(--dm-text-primary);
10518
+ }
10519
+
10520
+ .dm-progression-description {
10521
+ margin: 0;
10522
+ font-size: var(--dm-font-size-base);
10523
+ color: var(--dm-text-secondary);
10524
+ line-height: 1.6;
10525
+ }
10526
+
10527
+ /* Vertical layout (default) */
10528
+ .dm-progression-vertical .dm-progression-item::before {
10529
+ content: '';
10530
+ position: absolute;
10531
+ left: 2rem;
10532
+ top: 3rem;
10533
+ bottom: -1.5rem;
10534
+ width: 2px;
10535
+ background: var(--dm-border-color, #e0e0e0);
10536
+ z-index: 1;
10537
+ }
10538
+
10539
+ .dm-progression-vertical .dm-progression-item:last-child::before {
10540
+ display: none;
10541
+ }
10542
+
10543
+ /* Centered layout */
10544
+ .dm-progression-centered {
10545
+ max-width: 1200px;
10546
+ margin: 0 auto;
10547
+ }
10548
+
10549
+ .dm-progression-centered .dm-progression-item {
10550
+ width: 100%;
10551
+ }
10552
+
10553
+ .dm-progression-centered .dm-progression-item:nth-child(odd) {
10554
+ flex-direction: row;
10555
+ }
10556
+
10557
+ .dm-progression-centered .dm-progression-item:nth-child(even) {
10558
+ flex-direction: row-reverse;
10559
+ }
10560
+
10561
+ /* Horizontal layout */
10562
+ .dm-progression-horizontal {
10563
+ display: flex;
10564
+ overflow-x: auto;
10565
+ padding-bottom: var(--dm-space-4);
10566
+ }
10567
+
10568
+ .dm-progression-horizontal .dm-progression-item {
10569
+ flex-direction: column;
10570
+ min-width: 250px;
10571
+ margin-right: var(--dm-space-4);
10572
+ margin-bottom: 0;
10573
+ }
10574
+
10575
+ /* Progress bar (Roadmap mode) */
10576
+ .dm-progression-progress {
10577
+ margin-bottom: var(--dm-space-6);
10578
+ padding: var(--dm-space-4);
10579
+ background: var(--dm-surface, #fff);
10580
+ border-radius: var(--dm-radius-md);
10581
+ border: 1px solid var(--dm-border-color, #e0e0e0);
10582
+ }
10583
+
10584
+ .dm-progression-progress-bar {
10585
+ height: 8px;
10586
+ background: linear-gradient(90deg, var(--dm-success, #22c55e), var(--dm-primary, #3b82f6));
10587
+ border-radius: var(--dm-radius-full);
10588
+ transition: width 0.6s ease;
10589
+ margin-bottom: var(--dm-space-2);
10590
+ }
10591
+
10592
+ .dm-progression-progress-text {
10593
+ font-size: var(--dm-font-size-sm);
10594
+ color: var(--dm-text-secondary);
10595
+ font-weight: 500;
10596
+ }
10597
+
10598
+ /* Roadmap-specific styles */
10599
+ .dm-progression-status-marker {
10600
+ width: 40px;
10601
+ height: 40px;
10602
+ border-radius: 50%;
10603
+ position: relative;
10604
+ }
10605
+
10606
+ .dm-progression-status-dot {
10607
+ width: 16px;
10608
+ height: 16px;
10609
+ border-radius: 50%;
10610
+ display: block;
10611
+ }
10612
+
10613
+ .dm-progression-status-icon {
10614
+ font-size: 20px;
10615
+ }
10616
+
10617
+ /* Status colours */
10618
+ .dm-progression-status-planned .dm-progression-status-marker {
10619
+ background: var(--dm-gray-100);
10620
+ border: 2px solid var(--dm-gray-400);
10621
+ }
10622
+
10623
+ .dm-progression-status-planned .dm-progression-status-dot {
10624
+ background: var(--dm-gray-400);
10625
+ }
10626
+
10627
+ .dm-progression-status-in-progress .dm-progression-status-marker {
10628
+ background: var(--dm-primary-light, rgba(59, 130, 246, 0.1));
10629
+ border: 2px solid var(--dm-primary, #3b82f6);
10630
+ position: relative;
10631
+ }
10632
+
10633
+ .dm-progression-status-in-progress .dm-progression-status-marker::after {
10634
+ content: '';
10635
+ position: absolute;
10636
+ inset: -4px;
10637
+ border: 2px solid var(--dm-primary, #3b82f6);
10638
+ border-radius: 50%;
10639
+ animation: progressPulse 2s infinite;
10640
+ }
10641
+
10642
+ @keyframes progressPulse {
10643
+ 0%, 100% {
10644
+ opacity: 0.6;
10645
+ transform: scale(1);
10646
+ }
10647
+ 50% {
10648
+ opacity: 0;
10649
+ transform: scale(1.3);
10650
+ }
10651
+ }
10652
+
10653
+ .dm-progression-status-in-progress .dm-progression-status-dot {
10654
+ background: var(--dm-primary, #3b82f6);
10655
+ }
10656
+
10657
+ .dm-progression-status-completed .dm-progression-status-marker {
10658
+ background: var(--dm-success-light, rgba(34, 197, 94, 0.1));
10659
+ border: 2px solid var(--dm-success, #22c55e);
10660
+ }
10661
+
10662
+ .dm-progression-status-completed .dm-progression-status-dot {
10663
+ background: var(--dm-success, #22c55e);
10664
+ }
10665
+
10666
+ .dm-progression-status-blocked .dm-progression-status-marker {
10667
+ background: var(--dm-danger-light, rgba(239, 68, 68, 0.1));
10668
+ border: 2px solid var(--dm-danger, #ef4444);
10669
+ }
10670
+
10671
+ .dm-progression-status-blocked .dm-progression-status-dot {
10672
+ background: var(--dm-danger, #ef4444);
10673
+ }
10674
+
10675
+ .dm-progression-status-cancelled .dm-progression-status-marker {
10676
+ background: var(--dm-gray-100);
10677
+ border: 2px solid var(--dm-gray-500);
10678
+ opacity: 0.6;
10679
+ }
10680
+
10681
+ .dm-progression-status-cancelled .dm-progression-status-dot {
10682
+ background: var(--dm-gray-500);
10683
+ }
10684
+
10685
+ /* Date/phase display */
10686
+ .dm-progression-date {
10687
+ font-size: var(--dm-font-size-sm);
10688
+ color: var(--dm-text-tertiary);
10689
+ font-weight: 500;
10690
+ margin-bottom: var(--dm-space-2);
10691
+ text-transform: uppercase;
10692
+ letter-spacing: 0.05em;
10693
+ }
10694
+
10695
+ /* Item progress bar */
10696
+ .dm-progression-item-progress {
10697
+ height: 6px;
10698
+ background: var(--dm-gray-200);
10699
+ border-radius: var(--dm-radius-full);
10700
+ overflow: hidden;
10701
+ margin-top: var(--dm-space-3);
10702
+ }
10703
+
10704
+ .dm-progression-item-progress-bar {
10705
+ height: 100%;
10706
+ background: var(--dm-primary, #3b82f6);
10707
+ border-radius: var(--dm-radius-full);
10708
+ transition: width 0.3s ease;
10709
+ }
10710
+
10711
+ .dm-progression-item-progress-text {
10712
+ font-size: var(--dm-font-size-xs);
10713
+ color: var(--dm-text-tertiary);
10714
+ margin-top: var(--dm-space-1);
10715
+ }
10716
+
10717
+ /* Priority badges */
10718
+ .dm-progression-priority {
10719
+ display: inline-flex;
10720
+ align-items: center;
10721
+ padding: 2px 8px;
10722
+ border-radius: var(--dm-radius-full);
10723
+ font-size: var(--dm-font-size-xs);
10724
+ font-weight: 600;
10725
+ text-transform: uppercase;
10726
+ letter-spacing: 0.05em;
10727
+ margin-top: var(--dm-space-2);
10728
+ }
10729
+
10730
+ .dm-progression-priority-low {
10731
+ background: var(--dm-gray-200);
10732
+ color: var(--dm-gray-700);
10733
+ }
10734
+
10735
+ .dm-progression-priority-medium {
10736
+ background: var(--dm-info-light, rgba(59, 130, 246, 0.1));
10737
+ color: var(--dm-info, #3b82f6);
10738
+ }
10739
+
10740
+ .dm-progression-priority-high {
10741
+ background: var(--dm-warning-light, rgba(245, 158, 11, 0.1));
10742
+ color: var(--dm-warning, #f59e0b);
10743
+ }
10744
+
10745
+ .dm-progression-priority-critical {
10746
+ background: var(--dm-danger-light, rgba(239, 68, 68, 0.1));
10747
+ color: var(--dm-danger, #ef4444);
10748
+ }
10749
+
10750
+ /* Tags */
10751
+ .dm-progression-tags {
10752
+ display: flex;
10753
+ flex-wrap: wrap;
10754
+ gap: var(--dm-space-2);
10755
+ margin-top: var(--dm-space-3);
10756
+ }
10757
+
10758
+ .dm-progression-tag {
10759
+ background: var(--dm-primary-light, rgba(59, 130, 246, 0.1));
10760
+ color: var(--dm-primary, #3b82f6);
10761
+ padding: 2px 8px;
10762
+ border-radius: var(--dm-radius-sm);
10763
+ font-size: var(--dm-font-size-xs);
10764
+ font-weight: 500;
10765
+ }
10766
+
10767
+ /* Assignee */
10768
+ .dm-progression-assignee {
10769
+ font-size: var(--dm-font-size-sm);
10770
+ color: var(--dm-text-tertiary);
10771
+ margin-top: var(--dm-space-2);
10772
+ font-style: italic;
10773
+ }
10774
+
10775
+ /* Current item highlight */
10776
+ .dm-progression-current .dm-progression-content {
10777
+ border-color: var(--dm-primary, #3b82f6);
10778
+ box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
10779
+ }
10780
+
10781
+ /* Themes */
10782
+ .dm-progression-minimal .dm-progression-content {
10783
+ background: var(--dm-gray-50);
10784
+ border-color: transparent;
10785
+ box-shadow: none;
10786
+ }
10787
+
10788
+ .dm-progression-corporate .dm-progression-content {
10789
+ background: var(--dm-slate-50);
10790
+ border-color: var(--dm-slate-200);
10791
+ }
10792
+
10793
+ .dm-progression-modern .dm-progression-content {
10794
+ background: linear-gradient(135deg, var(--dm-surface, #fff) 0%, var(--dm-gray-50) 100%);
10795
+ border-color: var(--dm-border-color, #e0e0e0);
10796
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
10797
+ }
10798
+
10799
+ /* Dark theme support */
10800
+ [data-theme="dark"] .dm-progression-content {
10801
+ background: var(--dm-slate-800);
10802
+ border-color: var(--dm-slate-700);
10803
+ color: var(--dm-slate-100);
10804
+ }
10805
+
10806
+ [data-theme="dark"] .dm-progression-title {
10807
+ color: var(--dm-slate-100);
10808
+ }
10809
+
10810
+ [data-theme="dark"] .dm-progression-description {
10811
+ color: var(--dm-slate-300);
10812
+ }
10813
+
10814
+ [data-theme="dark"] .dm-progression-minimal .dm-progression-content {
10815
+ background: var(--dm-slate-900);
10816
+ border-color: transparent;
10817
+ }
10818
+
10819
+ [data-theme="dark"] .dm-progression-corporate .dm-progression-content {
10820
+ background: var(--dm-slate-800);
10821
+ border-color: var(--dm-slate-600);
10822
+ }
10823
+
10824
+ [data-theme="dark"] .dm-progression-modern .dm-progression-content {
10825
+ background: linear-gradient(135deg, var(--dm-slate-800) 0%, var(--dm-slate-900) 100%);
10826
+ }
10827
+
10828
+ [data-theme="dark"] .dm-progression-item-progress {
10829
+ background: var(--dm-slate-700);
10830
+ }
10831
+
10832
+ [data-theme="dark"] .dm-progression-progress {
10833
+ background: var(--dm-slate-800);
10834
+ border-color: var(--dm-slate-700);
10835
+ }
10836
+
10837
+ /* Responsive design */
10838
+ @media (max-width: 768px) {
10839
+ .dm-progression-centered .dm-progression-item:nth-child(even) {
10840
+ flex-direction: row;
10841
+ }
10842
+
10843
+ .dm-progression-horizontal {
10844
+ flex-direction: column;
10845
+ }
10846
+
10847
+ .dm-progression-horizontal .dm-progression-item {
10848
+ min-width: 100%;
10849
+ margin-right: 0;
10850
+ margin-bottom: var(--dm-space-4);
10851
+ }
10852
+ }
10853
+
9858
10854
  /* ==============================================
9859
10855
  Cookie Consent Component
9860
10856
  ============================================== */
@@ -10155,11 +11151,11 @@ code {
10155
11151
  ============================================ */
10156
11152
 
10157
11153
  /*!
10158
- * Domma Themes v0.7.5-alpha
11154
+ * Domma Themes v0.8.0-alpha
10159
11155
  * Dynamic Object Manipulation & Modeling API
10160
11156
  * (c) 2026 Darryl Waterhouse & DCBW-IT
10161
- * Built: 2026-01-08T18:40:13.814Z
10162
- * Commit: 61aa8b6
11157
+ * Built: 2026-01-09T18:35:07.434Z
11158
+ * Commit: 1a13022
10163
11159
  */
10164
11160
 
10165
11161
  /**