@keenmate/web-daterangepicker 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keenmate/web-daterangepicker",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "Lightweight date picker web component with excellent keyboard navigation and range selection",
5
5
  "type": "module",
6
6
  "main": "./dist/web-daterangepicker.umd.js",
@@ -47,16 +47,16 @@
47
47
 
48
48
  // Number Badge (e.g., day number, count)
49
49
  .drp-date-picker__badge-cell.badge-number {
50
- background-color: $drp-badge-number-bg;
51
- color: $drp-badge-number-color;
50
+ background-color: var(--drp-badge-number-bg);
51
+ color: var(--drp-badge-number-color);
52
52
  font-size: 0.7rem;
53
53
  font-weight: 600;
54
54
  }
55
55
 
56
56
  // Count Badge (e.g., number of events)
57
57
  .drp-date-picker__badge-cell.badge-count {
58
- background-color: $drp-badge-count-bg;
59
- color: $drp-badge-count-color;
58
+ background-color: var(--drp-badge-count-bg);
59
+ color: var(--drp-badge-count-color);
60
60
  font-size: 0.7rem;
61
61
  font-weight: 700;
62
62
  }
@@ -66,8 +66,8 @@
66
66
  // should be defined by the application, not the component library.
67
67
  // See index.html examples for how to customize badge colors for your use case.
68
68
  .drp-date-picker__badge-cell.badge-text {
69
- background-color: $drp-badge-text-bg;
70
- color: $drp-badge-text-color;
69
+ background-color: var(--drp-badge-text-bg);
70
+ color: var(--drp-badge-text-color);
71
71
  font-size: 0.65rem;
72
72
  font-weight: 700;
73
73
  text-transform: uppercase;
@@ -87,24 +87,256 @@
87
87
  --drp-input-padding-h: #{$drp-input-padding-h};
88
88
  --drp-grid-columns: #{$drp-grid-columns};
89
89
  --drp-grid-rows: #{$drp-grid-rows};
90
+
91
+ // ===========================================================================
92
+ // INPUT FIELD SEMANTIC VARIABLES
93
+ // ===========================================================================
94
+ // Semantic variables for input customization (loosely coupled)
95
+
96
+ // Input colors
97
+ --drp-input-background: var(--drp-card-bg);
98
+ --drp-input-color: var(--drp-text-primary);
99
+ --drp-input-border-color: var(--drp-border-color);
100
+ --drp-input-border-color-hover: var(--drp-accent-color);
101
+ --drp-input-border-color-focus: var(--drp-accent-color);
102
+ --drp-input-placeholder-color: var(--drp-text-secondary);
103
+ --drp-input-disabled-background: var(--drp-primary-bg);
104
+
105
+ // Input focus state
106
+ --drp-input-focus-shadow-color: rgba(59, 130, 246, 0.1);
107
+ --drp-input-focus-shadow-size: 3px;
108
+
109
+ // Input icon
110
+ --drp-input-icon-opacity: #{$drp-input-icon-opacity};
111
+
112
+ // ===========================================================================
113
+ // INPUT SIZE VARIANTS (BASE VALUES)
114
+ // ===========================================================================
115
+ // Five size variants for the input element (xs, sm, md, lg, xl)
116
+
117
+ --drp-input-size-xs-font: #{$font-size-xs};
118
+ --drp-input-size-xs-padding-v: #{$padding-xs};
119
+ --drp-input-size-xs-padding-h: #{$padding-xs};
120
+ --drp-input-size-xs-height: 1.5rem;
121
+ --drp-input-size-xs-icon-size: 0.75em;
122
+
123
+ --drp-input-size-sm-font: #{$drp-font-size-sm};
124
+ --drp-input-size-sm-padding-v: #{$drp-spacing-xs};
125
+ --drp-input-size-sm-padding-h: #{$drp-spacing-sm};
126
+ --drp-input-size-sm-height: 2rem;
127
+ --drp-input-size-sm-icon-size: 0.875em;
128
+
129
+ --drp-input-size-md-font: #{$drp-font-size-base};
130
+ --drp-input-size-md-padding-v: #{$drp-spacing-sm};
131
+ --drp-input-size-md-padding-h: #{$padding-base};
132
+ --drp-input-size-md-height: 2.5rem;
133
+ --drp-input-size-md-icon-size: 1em;
134
+
135
+ --drp-input-size-lg-font: #{$drp-font-size-lg};
136
+ --drp-input-size-lg-padding-v: #{$drp-spacing-md};
137
+ --drp-input-size-lg-padding-h: #{$drp-spacing-md};
138
+ --drp-input-size-lg-height: 3rem;
139
+ --drp-input-size-lg-icon-size: 1.125em;
140
+
141
+ --drp-input-size-xl-font: #{$font-size-xl};
142
+ --drp-input-size-xl-padding-v: #{$drp-spacing-md};
143
+ --drp-input-size-xl-padding-h: #{$drp-spacing-lg};
144
+ --drp-input-size-xl-height: 3.5rem;
145
+ --drp-input-size-xl-icon-size: 1.25em;
146
+
147
+ // ===========================================================================
148
+ // HEADER & NAVIGATION SEMANTIC VARIABLES
149
+ // ===========================================================================
150
+
151
+ --drp-header-text-color: var(--drp-text-primary);
152
+ --drp-header-bg-hover: var(--drp-primary-bg);
153
+ --drp-header-bg-active: var(--drp-primary-bg-hover);
154
+
155
+ --drp-nav-text-color: var(--drp-text-primary);
156
+ --drp-nav-border-color: var(--drp-border-color);
157
+ --drp-nav-bg-hover: var(--drp-primary-bg);
158
+ --drp-nav-bg-active: var(--drp-primary-bg-hover);
159
+ --drp-nav-border-hover: var(--drp-accent-color);
160
+
161
+ --drp-rolling-bg: var(--drp-primary-bg);
162
+ --drp-rolling-border-color: var(--drp-border-color);
163
+ --drp-rolling-scrollbar-thumb: var(--drp-border-color);
164
+ --drp-rolling-scrollbar-thumb-hover: var(--drp-accent-color);
165
+ --drp-rolling-item-bg-hover: var(--drp-primary-bg);
166
+ --drp-rolling-item-bg-selected: var(--drp-accent-color);
167
+ --drp-rolling-item-color-selected: var(--drp-accent-text-color);
168
+ --drp-rolling-item-bg-selected-hover: var(--drp-accent-color-hover);
169
+
170
+ // ===========================================================================
171
+ // CALENDAR GRID & DAY CELLS SEMANTIC VARIABLES
172
+ // ===========================================================================
173
+
174
+ --drp-weekday-color: var(--drp-text-secondary);
175
+
176
+ --drp-day-text-color: var(--drp-text-primary);
177
+ --drp-day-bg-hover: var(--drp-primary-bg);
178
+ --drp-day-border-hover: var(--drp-accent-color);
179
+ --drp-day-today-border: var(--drp-accent-color);
180
+ --drp-day-selected-bg: var(--drp-accent-color);
181
+ --drp-day-selected-color: var(--drp-accent-text-color);
182
+ --drp-day-selected-bg-hover: var(--drp-accent-color-hover);
183
+ --drp-day-focused-outline: var(--drp-accent-color);
184
+ --drp-day-disabled-color: var(--drp-text-secondary);
185
+ --drp-day-other-month-color: var(--drp-text-secondary);
186
+ --drp-day-range-bg: var(--drp-accent-color);
187
+ --drp-day-range-color: var(--drp-accent-text-color);
188
+
189
+ // ===========================================================================
190
+ // SUMMARY & ACTIONS SEMANTIC VARIABLES
191
+ // ===========================================================================
192
+
193
+ --drp-summary-text-color: var(--drp-text-secondary);
194
+ --drp-summary-border-color: var(--drp-border-color);
195
+ --drp-summary-count-color: var(--drp-accent-color);
196
+
197
+ --drp-button-border-color: var(--drp-border-color);
198
+ --drp-button-bg-hover: var(--drp-primary-bg);
199
+ --drp-button-border-hover: var(--drp-accent-color);
200
+ --drp-button-today-color: var(--drp-accent-color);
201
+ --drp-button-clear-color: var(--drp-text-secondary);
202
+ --drp-button-cancel-color: var(--drp-text-secondary);
203
+ --drp-button-apply-bg: var(--drp-accent-color);
204
+ --drp-button-apply-color: var(--drp-button-text-color);
205
+ --drp-button-apply-border: var(--drp-accent-color);
206
+ --drp-button-apply-bg-hover: var(--drp-accent-color-hover);
207
+
208
+ // ===========================================================================
209
+ // BADGE SYSTEM SEMANTIC VARIABLES
210
+ // ===========================================================================
211
+
212
+ --drp-badge-number-bg: var(--drp-accent-color);
213
+ --drp-badge-number-color: var(--drp-accent-text-color);
214
+ --drp-badge-count-bg: #{$drp-color-error};
215
+ --drp-badge-count-color: #{$drp-color-white};
216
+ --drp-badge-text-bg: var(--drp-text-secondary);
217
+ --drp-badge-text-color: #{$drp-color-white};
218
+
219
+ // ===========================================================================
220
+ // UNIFIED NAV SEMANTIC VARIABLES
221
+ // ===========================================================================
222
+
223
+ --drp-unified-range-text-color: var(--drp-text-primary);
224
+ --drp-unified-range-bg-hover: var(--drp-primary-bg);
225
+ --drp-unified-range-bg-active: var(--drp-primary-bg-hover);
226
+ --drp-unified-month-color: var(--drp-text-secondary);
227
+ --drp-unified-rolling-disabled-color: var(--drp-text-secondary);
90
228
  }
91
229
 
92
230
  // ==============================================================================
93
231
  // DATE PICKER INPUT FIELD
94
232
  // ==============================================================================
95
233
 
234
+ // Input element itself (actual <input> tag)
235
+ .drp-input {
236
+ width: 100%;
237
+ font-family: inherit;
238
+ font-size: var(--drp-input-size-md-font);
239
+ line-height: 1.5;
240
+ color: var(--drp-input-color);
241
+ background-color: var(--drp-input-background);
242
+ border: var(--drp-border-width-base) solid var(--drp-input-border-color);
243
+ border-radius: var(--drp-border-radius);
244
+ padding: var(--drp-input-size-md-padding-v) var(--drp-input-size-md-padding-h);
245
+ padding-right: calc(var(--drp-input-size-md-padding-h) * 2.5); // Extra space for calendar icon
246
+ height: var(--drp-input-size-md-height);
247
+ box-sizing: border-box;
248
+ transition: border-color var(--drp-transition-fast) var(--drp-easing-snappy),
249
+ box-shadow var(--drp-transition-fast) var(--drp-easing-snappy);
250
+
251
+ &::placeholder {
252
+ color: var(--drp-input-placeholder-color);
253
+ opacity: 0.6;
254
+ }
255
+
256
+ &:hover:not(:disabled) {
257
+ border-color: var(--drp-input-border-color-hover);
258
+ }
259
+
260
+ &:focus {
261
+ outline: none;
262
+ border-color: var(--drp-input-border-color-focus);
263
+ box-shadow: 0 0 0 var(--drp-input-focus-shadow-size) var(--drp-input-focus-shadow-color);
264
+ }
265
+
266
+ &:disabled {
267
+ opacity: #{$drp-opacity-disabled};
268
+ cursor: not-allowed;
269
+ background-color: var(--drp-input-disabled-background);
270
+ }
271
+
272
+ // Size variants
273
+ &.drp-input--xs {
274
+ font-size: var(--drp-input-size-xs-font);
275
+ padding: var(--drp-input-size-xs-padding-v) var(--drp-input-size-xs-padding-h);
276
+ padding-right: calc(var(--drp-input-size-xs-padding-h) * 2.5);
277
+ height: var(--drp-input-size-xs-height);
278
+ }
279
+
280
+ &.drp-input--sm {
281
+ font-size: var(--drp-input-size-sm-font);
282
+ padding: var(--drp-input-size-sm-padding-v) var(--drp-input-size-sm-padding-h);
283
+ padding-right: calc(var(--drp-input-size-sm-padding-h) * 2.5);
284
+ height: var(--drp-input-size-sm-height);
285
+ }
286
+
287
+ &.drp-input--lg {
288
+ font-size: var(--drp-input-size-lg-font);
289
+ padding: var(--drp-input-size-lg-padding-v) var(--drp-input-size-lg-padding-h);
290
+ padding-right: calc(var(--drp-input-size-lg-padding-h) * 2.5);
291
+ height: var(--drp-input-size-lg-height);
292
+ }
293
+
294
+ &.drp-input--xl {
295
+ font-size: var(--drp-input-size-xl-font);
296
+ padding: var(--drp-input-size-xl-padding-v) var(--drp-input-size-xl-padding-h);
297
+ padding-right: calc(var(--drp-input-size-xl-padding-h) * 2.5);
298
+ height: var(--drp-input-size-xl-height);
299
+ }
300
+ }
301
+
302
+ // Input wrapper container (for positioning calendar icon)
96
303
  .drp-date-picker-input {
97
304
  position: relative;
98
305
  cursor: pointer;
306
+ display: inline-block;
307
+ width: 100%;
99
308
 
309
+ // Calendar icon
100
310
  &::after {
101
311
  content: '📅';
102
312
  position: absolute;
103
- right: var(--drp-input-padding-h);
313
+ right: var(--drp-input-size-md-padding-h);
104
314
  top: 50%;
105
315
  transform: translateY(-50%);
106
316
  pointer-events: none;
107
- opacity: $drp-input-icon-opacity;
317
+ opacity: var(--drp-input-icon-opacity);
318
+ font-size: var(--drp-input-size-md-icon-size);
319
+ }
320
+
321
+ // Size variant icon positioning
322
+ &.drp-date-picker-input--xs::after {
323
+ right: var(--drp-input-size-xs-padding-h);
324
+ font-size: var(--drp-input-size-xs-icon-size);
325
+ }
326
+
327
+ &.drp-date-picker-input--sm::after {
328
+ right: var(--drp-input-size-sm-padding-h);
329
+ font-size: var(--drp-input-size-sm-icon-size);
330
+ }
331
+
332
+ &.drp-date-picker-input--lg::after {
333
+ right: var(--drp-input-size-lg-padding-h);
334
+ font-size: var(--drp-input-size-lg-icon-size);
335
+ }
336
+
337
+ &.drp-date-picker-input--xl::after {
338
+ right: var(--drp-input-size-xl-padding-h);
339
+ font-size: var(--drp-input-size-xl-icon-size);
108
340
  }
109
341
  }
110
342
 
@@ -20,7 +20,7 @@
20
20
  text-align: center;
21
21
  font-size: var(--drp-font-size-xs);
22
22
  font-weight: var(--drp-font-weight-semibold);
23
- color: var(--drp-text-secondary);
23
+ color: var(--drp-weekday-color);
24
24
  padding: var(--drp-spacing-xs);
25
25
  text-transform: uppercase;
26
26
  }
@@ -52,7 +52,7 @@
52
52
  align-items: center;
53
53
  justify-content: center;
54
54
  font-size: var(--drp-font-size-sm);
55
- color: var(--drp-text-primary);
55
+ color: var(--drp-day-text-color);
56
56
  border-radius: var(--drp-border-radius);
57
57
  cursor: pointer;
58
58
  // Scale border width with cell-scale
@@ -60,15 +60,15 @@
60
60
  position: relative; // For absolute positioning of labels
61
61
 
62
62
  &:hover:not(.drp-date-picker__day--disabled):not(.drp-date-picker__day--other-month) {
63
- background-color: var(--drp-primary-bg);
64
- border-color: var(--drp-accent-color);
63
+ background-color: var(--drp-day-bg-hover);
64
+ border-color: var(--drp-day-border-hover);
65
65
  }
66
66
 
67
67
  // --------------------------------------
68
68
  // Today
69
69
  // --------------------------------------
70
70
  &--today {
71
- border-color: var(--drp-accent-color);
71
+ border-color: var(--drp-day-today-border);
72
72
  font-weight: var(--drp-font-weight-semibold);
73
73
  }
74
74
 
@@ -76,12 +76,12 @@
76
76
  // Selected
77
77
  // --------------------------------------
78
78
  &--selected {
79
- background-color: var(--drp-accent-color);
80
- color: var(--drp-accent-text-color);
79
+ background-color: var(--drp-day-selected-bg);
80
+ color: var(--drp-day-selected-color);
81
81
  font-weight: var(--drp-font-weight-semibold);
82
82
 
83
83
  &:hover {
84
- background-color: var(--drp-accent-color-hover);
84
+ background-color: var(--drp-day-selected-bg-hover);
85
85
  }
86
86
  }
87
87
 
@@ -90,7 +90,7 @@
90
90
  // --------------------------------------
91
91
  &--focused {
92
92
  // Scale outline with cell-scale
93
- outline: calc(#{$drp-day-focused-outline-width} * var(--drp-cell-scale)) solid var(--drp-accent-color);
93
+ outline: calc(#{$drp-day-focused-outline-width} * var(--drp-cell-scale)) solid var(--drp-day-focused-outline);
94
94
  outline-offset: calc(#{$drp-day-focused-outline-offset} * var(--drp-cell-scale));
95
95
  }
96
96
 
@@ -98,7 +98,7 @@
98
98
  // Disabled
99
99
  // --------------------------------------
100
100
  &--disabled {
101
- color: var(--drp-text-secondary);
101
+ color: var(--drp-day-disabled-color);
102
102
  opacity: $drp-day-disabled-opacity;
103
103
  cursor: not-allowed;
104
104
  position: relative;
@@ -132,7 +132,7 @@
132
132
  // Other month days (previous/next month)
133
133
  // --------------------------------------
134
134
  &--other-month {
135
- color: var(--drp-text-secondary);
135
+ color: var(--drp-day-other-month-color);
136
136
  opacity: $drp-day-other-month-opacity;
137
137
 
138
138
  // Reset opacity when other-month days are part of range selection
@@ -149,8 +149,8 @@
149
149
  // --------------------------------------
150
150
  &--range-start,
151
151
  &--range-end {
152
- background-color: var(--drp-accent-color);
153
- color: var(--drp-accent-text-color);
152
+ background-color: var(--drp-day-range-bg);
153
+ color: var(--drp-day-range-color);
154
154
  font-weight: var(--drp-font-weight-semibold);
155
155
  cursor: grab;
156
156
  user-select: none;
@@ -161,10 +161,10 @@
161
161
  }
162
162
 
163
163
  &--in-range {
164
- background-color: color-mix(in srgb, var(--drp-accent-color) $drp-day-in-range-bg-opacity * 100%, transparent);
164
+ background-color: color-mix(in srgb, var(--drp-day-range-bg) $drp-day-in-range-bg-opacity * 100%, transparent);
165
165
 
166
166
  &:hover {
167
- background-color: color-mix(in srgb, var(--drp-accent-color) $drp-day-in-range-hover-bg-opacity * 100%, transparent);
167
+ background-color: color-mix(in srgb, var(--drp-day-range-bg) $drp-day-in-range-hover-bg-opacity * 100%, transparent);
168
168
  }
169
169
  }
170
170
 
@@ -179,14 +179,14 @@
179
179
  }
180
180
 
181
181
  &--drag-preview {
182
- background-color: color-mix(in srgb, var(--drp-accent-color) $drp-day-drag-preview-bg-opacity * 100%, transparent);
182
+ background-color: color-mix(in srgb, var(--drp-day-range-bg) $drp-day-drag-preview-bg-opacity * 100%, transparent);
183
183
  // Scale border width with cell-scale
184
- border: calc(#{$drp-day-border-width} * var(--drp-cell-scale)) $drp-day-drag-preview-border-style var(--drp-accent-color);
184
+ border: calc(#{$drp-day-border-width} * var(--drp-cell-scale)) $drp-day-drag-preview-border-style var(--drp-day-range-bg);
185
185
 
186
186
  &.drp-date-picker__day--range-start,
187
187
  &.drp-date-picker__day--range-end {
188
- background-color: color-mix(in srgb, var(--drp-accent-color) $drp-day-drag-preview-edge-bg-opacity * 100%, transparent);
189
- color: var(--drp-accent-text-color);
188
+ background-color: color-mix(in srgb, var(--drp-day-range-bg) $drp-day-drag-preview-edge-bg-opacity * 100%, transparent);
189
+ color: var(--drp-day-range-color);
190
190
  }
191
191
  }
192
192
 
@@ -227,7 +227,7 @@
227
227
  // (e.g., when outside rollingYearRange/rollingMonthRange or minDate/maxDate)
228
228
 
229
229
  .drp-date-picker__rolling-item--disabled {
230
- color: var(--drp-text-secondary);
230
+ color: var(--drp-unified-rolling-disabled-color);
231
231
  opacity: 0.4;
232
232
  cursor: not-allowed;
233
233
  pointer-events: none; // Prevent clicking
@@ -39,17 +39,17 @@
39
39
  text-align: center;
40
40
  font-weight: var(--drp-font-weight-semibold);
41
41
  font-size: var(--drp-font-size-base);
42
- color: var(--drp-text-primary);
42
+ color: var(--drp-header-text-color);
43
43
  padding: var(--drp-spacing-sm) var(--drp-spacing-md);
44
44
  border-radius: var(--drp-border-radius);
45
45
  cursor: pointer;
46
46
 
47
47
  &:hover {
48
- background-color: var(--drp-primary-bg);
48
+ background-color: var(--drp-header-bg-hover);
49
49
  }
50
50
 
51
51
  &:active {
52
- background-color: var(--drp-primary-bg-hover);
52
+ background-color: var(--drp-header-bg-active);
53
53
  }
54
54
  }
55
55
 
@@ -64,20 +64,20 @@
64
64
  display: flex;
65
65
  align-items: center;
66
66
  justify-content: center;
67
- border: var(--drp-border-width-base) solid var(--drp-border-color);
67
+ border: var(--drp-border-width-base) solid var(--drp-nav-border-color);
68
68
  border-radius: var(--drp-border-radius);
69
69
  background: transparent;
70
70
  cursor: pointer;
71
71
  font-size: var(--drp-font-size-lg);
72
- color: var(--drp-text-primary);
72
+ color: var(--drp-nav-text-color);
73
73
 
74
74
  &:hover {
75
- background-color: var(--drp-primary-bg);
76
- border-color: var(--drp-accent-color);
75
+ background-color: var(--drp-nav-bg-hover);
76
+ border-color: var(--drp-nav-border-hover);
77
77
  }
78
78
 
79
79
  &:active {
80
- background-color: var(--drp-primary-bg-hover);
80
+ background-color: var(--drp-nav-bg-active);
81
81
  }
82
82
 
83
83
  // Disabled state
@@ -89,7 +89,7 @@
89
89
 
90
90
  &:hover {
91
91
  background-color: transparent;
92
- border-color: var(--drp-border-color);
92
+ border-color: var(--drp-nav-border-color);
93
93
  }
94
94
  }
95
95
 
@@ -131,7 +131,7 @@
131
131
  min-width: 0; // Allow flex child to shrink below content size (enables ellipsis on items)
132
132
  height: 100%; // Fill parent height
133
133
  overflow-y: auto;
134
- border: var(--drp-border-width-base) solid var(--drp-border-color);
134
+ border: var(--drp-border-width-base) solid var(--drp-rolling-border-color);
135
135
  border-radius: var(--drp-border-radius);
136
136
 
137
137
  // Flex layout to control child item sizing
@@ -147,15 +147,15 @@
147
147
  }
148
148
 
149
149
  &::-webkit-scrollbar-track {
150
- background: var(--drp-primary-bg);
150
+ background: var(--drp-rolling-bg);
151
151
  }
152
152
 
153
153
  &::-webkit-scrollbar-thumb {
154
- background: var(--drp-border-color);
154
+ background: var(--drp-rolling-scrollbar-thumb);
155
155
  border-radius: 3px;
156
156
 
157
157
  &:hover {
158
- background: var(--drp-accent-color);
158
+ background: var(--drp-rolling-scrollbar-thumb-hover);
159
159
  }
160
160
  }
161
161
  }
@@ -175,16 +175,16 @@
175
175
  justify-content: var(--drp-rolling-item-justify-content, #{$drp-rolling-item-justify-content});
176
176
 
177
177
  &:hover {
178
- background-color: $drp-rolling-item-bg-hover;
178
+ background-color: var(--drp-rolling-item-bg-hover);
179
179
  }
180
180
 
181
181
  &--selected {
182
- background-color: $drp-rolling-item-bg-selected;
183
- color: $drp-rolling-item-color-selected;
182
+ background-color: var(--drp-rolling-item-bg-selected);
183
+ color: var(--drp-rolling-item-color-selected);
184
184
  font-weight: $drp-rolling-item-font-weight-selected;
185
185
 
186
186
  &:hover {
187
- background-color: var(--drp-accent-color-hover);
187
+ background-color: var(--drp-rolling-item-bg-selected-hover);
188
188
  }
189
189
  }
190
190
  }
@@ -219,17 +219,17 @@
219
219
  text-align: center;
220
220
  font-weight: var(--drp-font-weight-semibold);
221
221
  font-size: var(--drp-font-size-lg);
222
- color: var(--drp-text-primary);
222
+ color: var(--drp-unified-range-text-color);
223
223
  padding: var(--drp-spacing-sm) var(--drp-spacing-md);
224
224
  border-radius: var(--drp-border-radius);
225
225
  cursor: pointer;
226
226
 
227
227
  &:hover {
228
- background-color: var(--drp-primary-bg);
228
+ background-color: var(--drp-unified-range-bg-hover);
229
229
  }
230
230
 
231
231
  &:active {
232
- background-color: var(--drp-primary-bg-hover);
232
+ background-color: var(--drp-unified-range-bg-active);
233
233
  }
234
234
 
235
235
  // Non-interactive state (when unifiedHeaderInteractive is false)
@@ -275,7 +275,7 @@
275
275
  min-width: 0;
276
276
  height: 100%;
277
277
  overflow-y: auto;
278
- border: var(--drp-border-width-base) solid var(--drp-border-color);
278
+ border: var(--drp-border-width-base) solid var(--drp-rolling-border-color);
279
279
  border-radius: var(--drp-border-radius);
280
280
  display: flex;
281
281
  flex-direction: column;
@@ -287,15 +287,15 @@
287
287
  }
288
288
 
289
289
  &::-webkit-scrollbar-track {
290
- background: var(--drp-primary-bg);
290
+ background: var(--drp-rolling-bg);
291
291
  }
292
292
 
293
293
  &::-webkit-scrollbar-thumb {
294
- background: var(--drp-border-color);
294
+ background: var(--drp-rolling-scrollbar-thumb);
295
295
  border-radius: 3px;
296
296
 
297
297
  &:hover {
298
- background: var(--drp-accent-color);
298
+ background: var(--drp-rolling-scrollbar-thumb-hover);
299
299
  }
300
300
  }
301
301
  }
@@ -312,21 +312,21 @@
312
312
  justify-content: var(--drp-rolling-item-justify-content, #{$drp-rolling-item-justify-content});
313
313
 
314
314
  &:hover {
315
- background-color: $drp-rolling-item-bg-hover;
315
+ background-color: var(--drp-rolling-item-bg-hover);
316
316
  }
317
317
 
318
318
  &--selected {
319
- background-color: $drp-rolling-item-bg-selected;
320
- color: $drp-rolling-item-color-selected;
319
+ background-color: var(--drp-rolling-item-bg-selected);
320
+ color: var(--drp-rolling-item-color-selected);
321
321
  font-weight: $drp-rolling-item-font-weight-selected;
322
322
 
323
323
  &:hover {
324
- background-color: var(--drp-accent-color-hover);
324
+ background-color: var(--drp-rolling-item-bg-selected-hover);
325
325
  }
326
326
  }
327
327
 
328
328
  &--disabled {
329
- color: var(--drp-text-secondary);
329
+ color: var(--drp-unified-rolling-disabled-color);
330
330
  opacity: 0.4;
331
331
  cursor: not-allowed;
332
332
  }
@@ -357,7 +357,7 @@
357
357
  cursor: default;
358
358
  font-size: var(--drp-font-size-base);
359
359
  font-weight: var(--drp-font-weight-normal);
360
- color: var(--drp-text-secondary);
360
+ color: var(--drp-unified-month-color);
361
361
 
362
362
  &:hover {
363
363
  background-color: transparent;