@guildofgleks/ui 21.2.4 → 21.3.1
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/LICENSE +201 -21
- package/README.md +139 -23
- package/fesm2022/guildofgleks-ui.mjs +7042 -1707
- package/fesm2022/guildofgleks-ui.mjs.map +1 -1
- package/package.json +2 -2
- package/src/styles/index.css +17 -17
- package/src/styles/presets/one-dark.css +48 -0
- package/src/styles/presets/one-light.css +47 -0
- package/src/styles/presets/slate.css +55 -0
- package/src/styles/theme.css +723 -40
- package/src/styles/utilities.css +170 -69
- package/types/guildofgleks-ui.d.ts +2429 -336
package/src/styles/theme.css
CHANGED
|
@@ -143,6 +143,19 @@
|
|
|
143
143
|
--gog-field-slg-icon-offset: 18px;
|
|
144
144
|
--gog-field-slg-icon-inset: 52px;
|
|
145
145
|
|
|
146
|
+
/* ── Float label geometry (input / textarea / select / multiselect) ─────────
|
|
147
|
+
One scale for every field that can float its label. Each control reads these
|
|
148
|
+
through its own `--gog-<block>-float-label-*` token in the derived layer below,
|
|
149
|
+
so setting a value here retunes all of them at once while a single control can
|
|
150
|
+
still be tuned on its own. `reserve` is the headroom added inside the field for
|
|
151
|
+
the 'in'/'on' variants; `in-top` is where the label lands once floated for 'in';
|
|
152
|
+
`over-gap`/`over-reserve` are the gap above the border and the space permanently
|
|
153
|
+
kept clear for the 'over' variant. */
|
|
154
|
+
--gog-field-float-label-reserve: 14px;
|
|
155
|
+
--gog-field-float-label-in-top: 6px;
|
|
156
|
+
--gog-field-float-label-over-gap: 8px;
|
|
157
|
+
--gog-field-float-label-over-reserve: 1.4em;
|
|
158
|
+
|
|
146
159
|
/* ── Icon & spinner ───────────────────────────────────────────────────────── */
|
|
147
160
|
--gog-icon-size: 1.2em;
|
|
148
161
|
--gog-icon-stroke-width: 2;
|
|
@@ -172,28 +185,28 @@
|
|
|
172
185
|
color-scheme: light;
|
|
173
186
|
/* Фоновые и поверхностные тона */
|
|
174
187
|
--gog-background-color: #f7f3eb; /* Тёплый пергаментный фон страницы */
|
|
175
|
-
--gog-surface-color: #ffffff;
|
|
176
|
-
--gog-hover-color: #f0e7d7;
|
|
177
|
-
--gog-border-color: #d8c7ad;
|
|
188
|
+
--gog-surface-color: #ffffff; /* КИСЛО-БЕЛЫЙ ПЕРГАМЕНТ карточек (создает контраст со слоем 1!) */
|
|
189
|
+
--gog-hover-color: #f0e7d7; /* Состояние наведения (мягкий воск) */
|
|
190
|
+
--gog-border-color: #d8c7ad; /* Состаренная латунная рамка */
|
|
178
191
|
|
|
179
192
|
/* Типографика (Старинные дубовые чернила) */
|
|
180
|
-
--gog-text-color: #17120c;
|
|
193
|
+
--gog-text-color: #17120c; /* Глубокие чернила (высокий контраст WCAG AAA) */
|
|
181
194
|
--gog-accent-text-color: #ffffff;
|
|
182
195
|
--gog-muted-text-color: #63503c; /* Приглушенные печные чернила */
|
|
183
196
|
|
|
184
197
|
/* Бренд и акценты (Гильдейское Сусальное Золото) */
|
|
185
198
|
--gog-primary-color: #17120c;
|
|
186
|
-
--gog-accent-color: #9e6f00;
|
|
187
|
-
--gog-accent-bright: #c88e00;
|
|
188
|
-
--gog-accent-dim: #735100;
|
|
189
|
-
--gog-accent-pale: #f8f1df;
|
|
199
|
+
--gog-accent-color: #9e6f00; /* Насыщенный благородный золотисто-бронзовый */
|
|
200
|
+
--gog-accent-bright: #c88e00; /* Яркий отблеск золота */
|
|
201
|
+
--gog-accent-dim: #735100; /* Темная бронза */
|
|
202
|
+
--gog-accent-pale: #f8f1df; /* Светлая подложка под золото */
|
|
190
203
|
--gog-secondary-color: #6b5328;
|
|
191
204
|
|
|
192
205
|
/* Гармонизированная алхимическая семантика */
|
|
193
|
-
--gog-success-color: #216e4e;
|
|
194
|
-
--gog-danger-color: #a7232b;
|
|
195
|
-
--gog-warning-color: #c45100;
|
|
196
|
-
--gog-info-color: #2b5c8f;
|
|
206
|
+
--gog-success-color: #216e4e; /* Изумруд */
|
|
207
|
+
--gog-danger-color: #a7232b; /* Рубин */
|
|
208
|
+
--gog-warning-color: #c45100; /* Тёмный янтарь */
|
|
209
|
+
--gog-info-color: #2b5c8f; /* Лазурит */
|
|
197
210
|
|
|
198
211
|
/* Объёмная мягкая тень старой кожи */
|
|
199
212
|
--gog-panel-shadow: 0 4px 20px rgba(23, 18, 12, 0.08), 0 1px 3px rgba(23, 18, 12, 0.04);
|
|
@@ -206,28 +219,28 @@
|
|
|
206
219
|
|
|
207
220
|
/* Фоновые и поверхностные тона */
|
|
208
221
|
--gog-background-color: #f7f3eb; /* Тёплый пергаментный фон страницы */
|
|
209
|
-
--gog-surface-color: #ffffff;
|
|
210
|
-
--gog-hover-color: #f0e7d7;
|
|
211
|
-
--gog-border-color: #d8c7ad;
|
|
222
|
+
--gog-surface-color: #ffffff; /* КИСЛО-БЕЛЫЙ ПЕРГАМЕНТ карточек (создает контраст со слоем 1!) */
|
|
223
|
+
--gog-hover-color: #f0e7d7; /* Состояние наведения (мягкий воск) */
|
|
224
|
+
--gog-border-color: #d8c7ad; /* Состаренная латунная рамка */
|
|
212
225
|
|
|
213
226
|
/* Типографика (Старинные дубовые чернила) */
|
|
214
|
-
--gog-text-color: #17120c;
|
|
227
|
+
--gog-text-color: #17120c; /* Глубокие чернила (высокий контраст WCAG AAA) */
|
|
215
228
|
--gog-accent-text-color: #ffffff;
|
|
216
229
|
--gog-muted-text-color: #63503c; /* Приглушенные печные чернила */
|
|
217
230
|
|
|
218
231
|
/* Бренд и акценты (Гильдейское Сусальное Золото) */
|
|
219
232
|
--gog-primary-color: #17120c;
|
|
220
|
-
--gog-accent-color: #9e6f00;
|
|
221
|
-
--gog-accent-bright: #c88e00;
|
|
222
|
-
--gog-accent-dim: #735100;
|
|
223
|
-
--gog-accent-pale: #f8f1df;
|
|
233
|
+
--gog-accent-color: #9e6f00; /* Насыщенный благородный золотисто-бронзовый */
|
|
234
|
+
--gog-accent-bright: #c88e00; /* Яркий отблеск золота */
|
|
235
|
+
--gog-accent-dim: #735100; /* Темная бронза */
|
|
236
|
+
--gog-accent-pale: #f8f1df; /* Светлая подложка под золото */
|
|
224
237
|
--gog-secondary-color: #6b5328;
|
|
225
238
|
|
|
226
239
|
/* Гармонизированная алхимическая семантика */
|
|
227
|
-
--gog-success-color: #216e4e;
|
|
228
|
-
--gog-danger-color: #a7232b;
|
|
229
|
-
--gog-warning-color: #c45100;
|
|
230
|
-
--gog-info-color: #2b5c8f;
|
|
240
|
+
--gog-success-color: #216e4e; /* Изумруд */
|
|
241
|
+
--gog-danger-color: #a7232b; /* Рубин */
|
|
242
|
+
--gog-warning-color: #c45100; /* Тёмный янтарь */
|
|
243
|
+
--gog-info-color: #2b5c8f; /* Лазурит */
|
|
231
244
|
|
|
232
245
|
/* Объёмная мягкая тень старой кожи */
|
|
233
246
|
--gog-panel-shadow: 0 4px 20px rgba(23, 18, 12, 0.08), 0 1px 3px rgba(23, 18, 12, 0.04);
|
|
@@ -240,28 +253,28 @@
|
|
|
240
253
|
|
|
241
254
|
/* Фоновые и поверхностные тона */
|
|
242
255
|
--gog-background-color: #0d0b08; /* Глубокий кузнечный обсидиан */
|
|
243
|
-
--gog-surface-color: #16120e;
|
|
244
|
-
--gog-hover-color: #241d17;
|
|
245
|
-
--gog-border-color: #3d3122;
|
|
256
|
+
--gog-surface-color: #16120e; /* Тёмное обожженное железо (карточки) */
|
|
257
|
+
--gog-hover-color: #241d17; /* Наведение на элементы */
|
|
258
|
+
--gog-border-color: #3d3122; /* Состаренная чеканенная бронза */
|
|
246
259
|
|
|
247
260
|
/* Типографика (Светящаяся Слоновая Кость) */
|
|
248
|
-
--gog-text-color: #f3ebd8;
|
|
261
|
+
--gog-text-color: #f3ebd8; /* Мягкий светящийся пергамент */
|
|
249
262
|
--gog-accent-text-color: #0d0b08;
|
|
250
263
|
--gog-muted-text-color: #9e8d76; /* Приглушенная бронза */
|
|
251
264
|
|
|
252
265
|
/* Бренд и акценты (Светящееся Золото Алхимии) */
|
|
253
266
|
--gog-primary-color: #f3ebd8;
|
|
254
|
-
--gog-accent-color: #fbbf24;
|
|
255
|
-
--gog-accent-bright: #fde047;
|
|
256
|
-
--gog-accent-dim: #b48310;
|
|
257
|
-
--gog-accent-pale: #2b210c;
|
|
267
|
+
--gog-accent-color: #fbbf24; /* Плазменный янтарь */
|
|
268
|
+
--gog-accent-bright: #fde047; /* Яркий золотой луч */
|
|
269
|
+
--gog-accent-dim: #b48310; /* Приглушенное золото */
|
|
270
|
+
--gog-accent-pale: #2b210c; /* Тёмный золотой отсвет */
|
|
258
271
|
--gog-secondary-color: #d4a373;
|
|
259
272
|
|
|
260
273
|
/* Семантика */
|
|
261
|
-
--gog-success-color: #34d399;
|
|
262
|
-
--gog-danger-color: #f87171;
|
|
263
|
-
--gog-warning-color: #fbbf24;
|
|
264
|
-
--gog-info-color: #38bdf8;
|
|
274
|
+
--gog-success-color: #34d399; /* Светящийся изумруд */
|
|
275
|
+
--gog-danger-color: #f87171; /* Светящийся рубин */
|
|
276
|
+
--gog-warning-color: #fbbf24; /* Янтарь */
|
|
277
|
+
--gog-info-color: #38bdf8; /* Сапфир */
|
|
265
278
|
|
|
266
279
|
--gog-panel-shadow: 0 10px 30px rgba(0, 0, 0, 0.7), 0 0 0 1px var(--gog-border-color);
|
|
267
280
|
--gog-spinner-overlay-bg: rgba(13, 11, 8, 0.85);
|
|
@@ -452,6 +465,101 @@
|
|
|
452
465
|
--gog-btn-ghost-hover-shadow: none;
|
|
453
466
|
--gog-btn-ghost-spinner-color: var(--gog-accent-color);
|
|
454
467
|
|
|
468
|
+
/* ── Button toggle group ───────────────────────────────────────────────────
|
|
469
|
+
`--gog-button-toggle-bg`, `-color`, `-padding` and `-font-size` are intentionally NOT
|
|
470
|
+
declared — they are the per-instance escape hatch the size classes fall back through.
|
|
471
|
+
Padding/font-size reuse the `--gog-btn-<size>-*` scale so a toggle group and a
|
|
472
|
+
`<gog-button>` at the same `size` line up in a toolbar. */
|
|
473
|
+
--gog-button-toggle-font-family: var(--gog-font-heading);
|
|
474
|
+
--gog-button-toggle-font-weight: 700;
|
|
475
|
+
--gog-button-toggle-letter-spacing: 0.5px;
|
|
476
|
+
--gog-button-toggle-text-transform: uppercase;
|
|
477
|
+
--gog-button-toggle-line-height: 1;
|
|
478
|
+
--gog-button-toggle-gap: var(--gog-space-sm);
|
|
479
|
+
--gog-button-toggle-icon-size: 1.1em;
|
|
480
|
+
--gog-button-toggle-radius: var(--gog-radius);
|
|
481
|
+
--gog-button-toggle-border-width: var(--gog-control-border-width);
|
|
482
|
+
--gog-button-toggle-border-style: var(--gog-control-border-style);
|
|
483
|
+
--gog-button-toggle-border-color: var(--gog-border-color);
|
|
484
|
+
--gog-button-toggle-rest-bg: transparent;
|
|
485
|
+
--gog-button-toggle-rest-color: var(--gog-text-color);
|
|
486
|
+
--gog-button-toggle-hover-bg: var(--gog-hover-color);
|
|
487
|
+
--gog-button-toggle-hover-color: var(--gog-text-color);
|
|
488
|
+
--gog-button-toggle-selected-bg: var(--gog-accent-color);
|
|
489
|
+
--gog-button-toggle-selected-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
490
|
+
--gog-button-toggle-selected-border-color: var(--gog-accent-color);
|
|
491
|
+
--gog-button-toggle-separated-gap: var(--gog-space-sm);
|
|
492
|
+
--gog-button-toggle-transition-duration: var(--gog-duration-base);
|
|
493
|
+
--gog-button-toggle-disabled-opacity: var(--gog-disabled-opacity);
|
|
494
|
+
--gog-button-toggle-focus-ring-width: var(--gog-focus-ring-width);
|
|
495
|
+
--gog-button-toggle-focus-ring-offset: 2px;
|
|
496
|
+
--gog-button-toggle-focus-ring-color: var(--gog-accent-color);
|
|
497
|
+
|
|
498
|
+
/* ── Calendar (the month grid inside gog-datepicker, and gog-calendar on its own) ── */
|
|
499
|
+
--gog-calendar-font-family: var(--gog-font-body);
|
|
500
|
+
--gog-calendar-color: var(--gog-text-color);
|
|
501
|
+
--gog-calendar-padding: 12px;
|
|
502
|
+
--gog-calendar-header-gap: 4px;
|
|
503
|
+
--gog-calendar-header-margin: 8px;
|
|
504
|
+
--gog-calendar-months-gap: 16px;
|
|
505
|
+
--gog-calendar-title-color: var(--gog-text-color);
|
|
506
|
+
--gog-calendar-title-font-weight: 700;
|
|
507
|
+
--gog-calendar-nav-size: 28px;
|
|
508
|
+
--gog-calendar-nav-radius: 6px;
|
|
509
|
+
--gog-calendar-nav-bg: transparent;
|
|
510
|
+
--gog-calendar-nav-color: var(--gog-muted-text-color);
|
|
511
|
+
--gog-calendar-nav-hover-bg: var(--gog-hover-color);
|
|
512
|
+
--gog-calendar-nav-hover-color: var(--gog-text-color);
|
|
513
|
+
--gog-calendar-nav-icon-size: 0.8rem;
|
|
514
|
+
/* Pulls the two chevrons of a year step together so they read as one control. */
|
|
515
|
+
--gog-calendar-nav-icon-overlap: -0.35em;
|
|
516
|
+
--gog-calendar-weekday-padding: 4px 0;
|
|
517
|
+
--gog-calendar-weekday-color: var(--gog-muted-text-color);
|
|
518
|
+
--gog-calendar-weekday-font-size: var(--gog-text-xs);
|
|
519
|
+
--gog-calendar-weekday-font-weight: 600;
|
|
520
|
+
--gog-calendar-weekday-text-transform: uppercase;
|
|
521
|
+
--gog-calendar-day-radius: 6px;
|
|
522
|
+
--gog-calendar-day-border-width: 1px;
|
|
523
|
+
--gog-calendar-day-border-style: solid;
|
|
524
|
+
--gog-calendar-day-rest-bg: transparent;
|
|
525
|
+
--gog-calendar-day-rest-color: var(--gog-text-color);
|
|
526
|
+
--gog-calendar-day-hover-bg: var(--gog-hover-color);
|
|
527
|
+
--gog-calendar-day-outside-color: var(--gog-muted-text-color);
|
|
528
|
+
--gog-calendar-today-border-color: var(--gog-accent-color);
|
|
529
|
+
--gog-calendar-today-font-weight: 700;
|
|
530
|
+
--gog-calendar-selected-bg: var(--gog-accent-color);
|
|
531
|
+
--gog-calendar-selected-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
532
|
+
--gog-calendar-selected-font-weight: 700;
|
|
533
|
+
/* The wash between the two ends of a range: same hue, low enough to read as a band rather
|
|
534
|
+
than as a second selection. */
|
|
535
|
+
--gog-calendar-range-bg: color-mix(in srgb, var(--gog-accent-color) 16%, transparent);
|
|
536
|
+
--gog-calendar-range-color: var(--gog-text-color);
|
|
537
|
+
--gog-calendar-disabled-opacity: var(--gog-disabled-opacity);
|
|
538
|
+
--gog-calendar-transition-duration: var(--gog-duration-fast);
|
|
539
|
+
--gog-calendar-focus-ring-width: var(--gog-focus-ring-width);
|
|
540
|
+
--gog-calendar-focus-ring-offset: -2px;
|
|
541
|
+
--gog-calendar-focus-ring-color: var(--gog-accent-color);
|
|
542
|
+
--gog-calendar-divider-width: 1px;
|
|
543
|
+
--gog-calendar-divider-style: solid;
|
|
544
|
+
--gog-calendar-divider-color: var(--gog-border-color);
|
|
545
|
+
--gog-calendar-time-gap: 6px;
|
|
546
|
+
--gog-calendar-time-margin: 10px;
|
|
547
|
+
--gog-calendar-time-input-width: 3.5rem;
|
|
548
|
+
--gog-calendar-time-input-padding: 4px 6px;
|
|
549
|
+
--gog-calendar-time-input-bg: var(--gog-background-color);
|
|
550
|
+
--gog-calendar-action-padding: 4px 10px;
|
|
551
|
+
--gog-calendar-footer-gap: 8px;
|
|
552
|
+
--gog-calendar-xsm-font-size: var(--gog-text-xs);
|
|
553
|
+
--gog-calendar-xsm-day-size: 24px;
|
|
554
|
+
--gog-calendar-sm-font-size: var(--gog-text-sm);
|
|
555
|
+
--gog-calendar-sm-day-size: 28px;
|
|
556
|
+
--gog-calendar-md-font-size: var(--gog-text-sm);
|
|
557
|
+
--gog-calendar-md-day-size: 34px;
|
|
558
|
+
--gog-calendar-lg-font-size: var(--gog-text-md);
|
|
559
|
+
--gog-calendar-lg-day-size: 40px;
|
|
560
|
+
--gog-calendar-slg-font-size: var(--gog-text-lg);
|
|
561
|
+
--gog-calendar-slg-day-size: 46px;
|
|
562
|
+
|
|
455
563
|
/* ── Checkbox ──────────────────────────────────────────────────────────────
|
|
456
564
|
Box/label/icon size and padding come from the `--gog-control-checkbox-*` scale;
|
|
457
565
|
checkbox.component.ts maps the `size` input onto the host. */
|
|
@@ -476,6 +584,34 @@
|
|
|
476
584
|
--gog-checkbox-dash-height: 2px;
|
|
477
585
|
--gog-checkbox-dash-radius: 999px;
|
|
478
586
|
|
|
587
|
+
/* ── Radio group ───────────────────────────────────────────────────────────
|
|
588
|
+
Box/label size reuse the `--gog-control-checkbox-*` scale (see Checkbox above);
|
|
589
|
+
radio-group.component.ts maps the `size` input onto the host the same way. */
|
|
590
|
+
--gog-radio-font-family: var(--gog-font-body);
|
|
591
|
+
--gog-radio-group-gap: 10px;
|
|
592
|
+
--gog-radio-group-label-size: var(--gog-text-sm);
|
|
593
|
+
--gog-radio-group-label-color: var(--gog-muted-text-color);
|
|
594
|
+
--gog-radio-group-option-gap: 8px;
|
|
595
|
+
--gog-radio-group-option-gap-horizontal: 20px;
|
|
596
|
+
--gog-radio-gap: 10px;
|
|
597
|
+
--gog-radio-border-width: var(--gog-control-border-width);
|
|
598
|
+
--gog-radio-border-style: var(--gog-control-border-style);
|
|
599
|
+
--gog-radio-border-color: var(--gog-accent-dim);
|
|
600
|
+
--gog-radio-bg: var(--gog-surface-color);
|
|
601
|
+
--gog-radio-checked-bg: var(--gog-surface-color);
|
|
602
|
+
--gog-radio-checked-border: var(--gog-accent-color);
|
|
603
|
+
--gog-radio-dot-color: var(--gog-accent-color);
|
|
604
|
+
--gog-radio-dot-size-ratio: 0.45;
|
|
605
|
+
--gog-radio-label-color: var(--gog-muted-text-color);
|
|
606
|
+
--gog-radio-label-line-height: 1.3;
|
|
607
|
+
--gog-radio-focus-ring: color-mix(in srgb, var(--gog-accent-color) 25%, transparent);
|
|
608
|
+
--gog-radio-focus-ring-width: var(--gog-focus-ring-width);
|
|
609
|
+
--gog-radio-focus-ring-offset: var(--gog-focus-ring-offset);
|
|
610
|
+
--gog-radio-disabled-opacity: var(--gog-disabled-opacity);
|
|
611
|
+
--gog-radio-transition-duration: var(--gog-duration-base);
|
|
612
|
+
--gog-radio-error-font-size: var(--gog-text-xs);
|
|
613
|
+
--gog-radio-error-color: var(--gog-danger-color);
|
|
614
|
+
|
|
479
615
|
/* ── Chip ──────────────────────────────────────────────────────────────────
|
|
480
616
|
`--gog-chip-*` size tokens below are the per-size scale; the unsuffixed
|
|
481
617
|
`--gog-chip-font-size`/`-padding-*`/`-gap`/`-avatar-size`/`-icon-size`/
|
|
@@ -583,6 +719,185 @@
|
|
|
583
719
|
--gog-confirm-actions-gap: var(--gog-space-sm);
|
|
584
720
|
--gog-confirm-actions-offset: var(--gog-space-sm);
|
|
585
721
|
|
|
722
|
+
/* ── Autocomplete ──────────────────────────────────────────────────────────
|
|
723
|
+
A combobox whose trigger is a real text input. Padding/font-size reuse the shared
|
|
724
|
+
`--gog-field-<size>-*` scale, so it lines up with `gog-inputfield` and `gog-select` in a
|
|
725
|
+
form. `--gog-autocomplete-bg`, `-color`, `-font-size`, `-padding-x` and `-padding-y` are
|
|
726
|
+
intentionally NOT declared — they are the per-instance escape hatch the size classes fall
|
|
727
|
+
back through. */
|
|
728
|
+
--gog-autocomplete-font-family: var(--gog-font-body);
|
|
729
|
+
--gog-autocomplete-label-font-family: var(--gog-font-heading);
|
|
730
|
+
--gog-autocomplete-gap: 4px;
|
|
731
|
+
--gog-autocomplete-label-color: var(--gog-accent-color);
|
|
732
|
+
--gog-autocomplete-label-font-size: var(--gog-text-sm);
|
|
733
|
+
--gog-autocomplete-label-font-weight: 600;
|
|
734
|
+
--gog-autocomplete-label-letter-spacing: 1px;
|
|
735
|
+
--gog-autocomplete-label-text-transform: uppercase;
|
|
736
|
+
--gog-autocomplete-field-bg: var(--gog-surface-color);
|
|
737
|
+
--gog-autocomplete-text-color: var(--gog-text-color);
|
|
738
|
+
--gog-autocomplete-placeholder-color: var(--gog-muted-text-color);
|
|
739
|
+
--gog-autocomplete-border-width: var(--gog-control-border-width);
|
|
740
|
+
--gog-autocomplete-border-style: var(--gog-control-border-style);
|
|
741
|
+
--gog-autocomplete-border-color: var(--gog-accent-dim);
|
|
742
|
+
--gog-autocomplete-hover-border-color: var(--gog-accent-color);
|
|
743
|
+
--gog-autocomplete-radius: var(--gog-radius);
|
|
744
|
+
--gog-autocomplete-line-height: 1.4;
|
|
745
|
+
--gog-autocomplete-transition-duration: var(--gog-duration-base);
|
|
746
|
+
--gog-autocomplete-disabled-opacity: var(--gog-disabled-opacity);
|
|
747
|
+
--gog-autocomplete-focus-ring-width: var(--gog-focus-ring-width);
|
|
748
|
+
--gog-autocomplete-focus-ring-offset: var(--gog-focus-ring-offset);
|
|
749
|
+
--gog-autocomplete-focus-ring-color: var(--gog-accent-color);
|
|
750
|
+
--gog-autocomplete-error-color: var(--gog-danger-color);
|
|
751
|
+
--gog-autocomplete-error-border-color: var(--gog-danger-color);
|
|
752
|
+
--gog-autocomplete-error-font-family: var(--gog-font-body);
|
|
753
|
+
--gog-autocomplete-error-font-size: var(--gog-text-xs);
|
|
754
|
+
/* Floor for an auto-width field, so [fullWidth]="false" cannot collapse it to its chrome. */
|
|
755
|
+
--gog-autocomplete-min-width: 120px;
|
|
756
|
+
/* Trailing chrome: spinner and clear button, clear outermost — the arrangement the other
|
|
757
|
+
dropdowns settled on, so all of them line up in a form. */
|
|
758
|
+
--gog-autocomplete-actions-inset: var(--gog-control-icon-offset);
|
|
759
|
+
--gog-autocomplete-actions-gap: 6px;
|
|
760
|
+
/* Right padding on the input, reserving room for the actions above. */
|
|
761
|
+
--gog-autocomplete-actions-reserve: 40px;
|
|
762
|
+
--gog-autocomplete-clear-color: var(--gog-autocomplete-placeholder-color);
|
|
763
|
+
--gog-autocomplete-clear-hover-color: var(--gog-autocomplete-label-color);
|
|
764
|
+
--gog-autocomplete-clear-icon-ratio: 0.7;
|
|
765
|
+
--gog-autocomplete-spinner-size: 0.875rem;
|
|
766
|
+
/* Panel */
|
|
767
|
+
--gog-autocomplete-panel-bg: var(--gog-surface-color);
|
|
768
|
+
--gog-autocomplete-panel-shadow: var(--gog-panel-shadow);
|
|
769
|
+
--gog-autocomplete-panel-border-width: var(--gog-panel-border-width);
|
|
770
|
+
--gog-autocomplete-panel-border-style: var(--gog-panel-border-style);
|
|
771
|
+
--gog-autocomplete-panel-border-color: var(--gog-border-color);
|
|
772
|
+
--gog-autocomplete-panel-radius: var(--gog-radius);
|
|
773
|
+
--gog-autocomplete-panel-gap: 2px;
|
|
774
|
+
--gog-autocomplete-panel-max-height: 260px;
|
|
775
|
+
/* Ceiling for a content-sized panel, so one very long option cannot span the viewport. */
|
|
776
|
+
--gog-autocomplete-panel-max-width: 420px;
|
|
777
|
+
--gog-autocomplete-options-padding: 4px;
|
|
778
|
+
--gog-autocomplete-option-padding: 8px 10px;
|
|
779
|
+
--gog-autocomplete-option-radius: 4px;
|
|
780
|
+
--gog-autocomplete-option-gap: 10px;
|
|
781
|
+
--gog-autocomplete-option-color: var(--gog-text-color);
|
|
782
|
+
--gog-autocomplete-option-hover-bg: color-mix(in srgb, var(--gog-accent-color) 10%, transparent);
|
|
783
|
+
--gog-autocomplete-option-hover-color: var(--gog-text-color);
|
|
784
|
+
--gog-autocomplete-option-selected-bg: color-mix(
|
|
785
|
+
in srgb,
|
|
786
|
+
var(--gog-accent-color) 16%,
|
|
787
|
+
transparent
|
|
788
|
+
);
|
|
789
|
+
--gog-autocomplete-option-selected-color: var(--gog-accent-color);
|
|
790
|
+
/* Estimated row height fed into the panel's up/down placement math; not itself a real
|
|
791
|
+
layout property, so it has no effect unless the JS reads it. */
|
|
792
|
+
--gog-autocomplete-option-height: 36px;
|
|
793
|
+
--gog-autocomplete-empty-color: var(--gog-autocomplete-placeholder-color);
|
|
794
|
+
--gog-autocomplete-empty-font-size: var(--gog-text-sm);
|
|
795
|
+
--gog-autocomplete-float-label-reserve: var(--gog-field-float-label-reserve);
|
|
796
|
+
--gog-autocomplete-float-label-in-top: var(--gog-field-float-label-in-top);
|
|
797
|
+
--gog-autocomplete-float-label-over-gap: var(--gog-field-float-label-over-gap);
|
|
798
|
+
--gog-autocomplete-float-label-over-reserve: var(--gog-field-float-label-over-reserve);
|
|
799
|
+
|
|
800
|
+
/* ── Badge (the `gogBadge` directive; its classes live in utilities.css) ───── */
|
|
801
|
+
--gog-badge-font-family: var(--gog-font-body);
|
|
802
|
+
--gog-badge-font-size: var(--gog-text-xs);
|
|
803
|
+
--gog-badge-font-weight: 600;
|
|
804
|
+
--gog-badge-line-height: 1;
|
|
805
|
+
/* Min-width *and* height: a one-digit badge stays a circle, a three-digit one grows
|
|
806
|
+
sideways only. */
|
|
807
|
+
--gog-badge-size: 1.25rem;
|
|
808
|
+
--gog-badge-dot-size: 0.5rem;
|
|
809
|
+
--gog-badge-padding-inline: 5px;
|
|
810
|
+
--gog-badge-radius: 999px;
|
|
811
|
+
/* How far the badge hangs outside its host's corner. */
|
|
812
|
+
--gog-badge-offset: 6px;
|
|
813
|
+
--gog-badge-border-width: 0;
|
|
814
|
+
--gog-badge-border-style: solid;
|
|
815
|
+
--gog-badge-border-color: transparent;
|
|
816
|
+
/* Above the host's own chrome but below any overlay panel (--gog-dropdown-z is 300). */
|
|
817
|
+
--gog-badge-z: 1;
|
|
818
|
+
/* `--gog-accent-text-color` is the palette's "text on a filled surface" colour and flips
|
|
819
|
+
with the theme, which is why a red badge reads white on light and near-black on dark. */
|
|
820
|
+
--gog-badge-success-bg: var(--gog-success-color);
|
|
821
|
+
--gog-badge-success-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
822
|
+
--gog-badge-danger-bg: var(--gog-danger-color);
|
|
823
|
+
--gog-badge-danger-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
824
|
+
--gog-badge-warning-bg: var(--gog-warning-color);
|
|
825
|
+
--gog-badge-warning-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
826
|
+
--gog-badge-info-bg: var(--gog-info-color);
|
|
827
|
+
--gog-badge-info-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
828
|
+
|
|
829
|
+
/* ── Datepicker (the field; the grid inside it is themed by --gog-calendar-*) ───
|
|
830
|
+
`--gog-datepicker-bg`, `-color`, `-font-size`, `-padding-x` and `-padding-y` are
|
|
831
|
+
intentionally NOT declared — they are the per-instance escape hatch the size classes fall
|
|
832
|
+
back through. */
|
|
833
|
+
--gog-datepicker-font-family: var(--gog-font-body);
|
|
834
|
+
--gog-datepicker-label-font-family: var(--gog-font-heading);
|
|
835
|
+
--gog-datepicker-gap: 4px;
|
|
836
|
+
--gog-datepicker-label-color: var(--gog-accent-color);
|
|
837
|
+
--gog-datepicker-label-font-size: var(--gog-text-sm);
|
|
838
|
+
--gog-datepicker-label-letter-spacing: 1px;
|
|
839
|
+
--gog-datepicker-label-text-transform: uppercase;
|
|
840
|
+
--gog-datepicker-field-bg: var(--gog-surface-color);
|
|
841
|
+
--gog-datepicker-text-color: var(--gog-text-color);
|
|
842
|
+
--gog-datepicker-placeholder-color: var(--gog-muted-text-color);
|
|
843
|
+
--gog-datepicker-border-width: var(--gog-control-border-width);
|
|
844
|
+
--gog-datepicker-border-style: var(--gog-control-border-style);
|
|
845
|
+
--gog-datepicker-border-color: var(--gog-accent-dim);
|
|
846
|
+
--gog-datepicker-hover-border-color: var(--gog-accent-color);
|
|
847
|
+
--gog-datepicker-radius: var(--gog-radius);
|
|
848
|
+
--gog-datepicker-line-height: 1.4;
|
|
849
|
+
--gog-datepicker-transition-duration: var(--gog-duration-base);
|
|
850
|
+
--gog-datepicker-disabled-opacity: var(--gog-disabled-opacity);
|
|
851
|
+
--gog-datepicker-focus-ring-width: var(--gog-focus-ring-width);
|
|
852
|
+
--gog-datepicker-focus-ring-offset: var(--gog-focus-ring-offset);
|
|
853
|
+
--gog-datepicker-focus-ring-color: var(--gog-accent-color);
|
|
854
|
+
--gog-datepicker-error-color: var(--gog-danger-color);
|
|
855
|
+
--gog-datepicker-error-border-color: var(--gog-danger-color);
|
|
856
|
+
--gog-datepicker-error-font-family: var(--gog-font-body);
|
|
857
|
+
--gog-datepicker-error-font-size: var(--gog-text-xs);
|
|
858
|
+
--gog-datepicker-min-width: 150px;
|
|
859
|
+
--gog-datepicker-actions-inset: var(--gog-control-icon-offset);
|
|
860
|
+
--gog-datepicker-actions-gap: 6px;
|
|
861
|
+
/* Right padding on the input, reserving room for the calendar and clear buttons. */
|
|
862
|
+
--gog-datepicker-actions-reserve: 40px;
|
|
863
|
+
--gog-datepicker-icon-color: var(--gog-accent-color);
|
|
864
|
+
--gog-datepicker-icon-hover-color: var(--gog-accent-bright);
|
|
865
|
+
--gog-datepicker-toggle-icon-size: 1rem;
|
|
866
|
+
--gog-datepicker-clear-color: var(--gog-datepicker-placeholder-color);
|
|
867
|
+
--gog-datepicker-clear-icon-ratio: 0.7;
|
|
868
|
+
--gog-datepicker-panel-bg: var(--gog-surface-color);
|
|
869
|
+
--gog-datepicker-panel-shadow: var(--gog-panel-shadow);
|
|
870
|
+
--gog-datepicker-panel-border-width: var(--gog-panel-border-width);
|
|
871
|
+
--gog-datepicker-panel-border-style: var(--gog-panel-border-style);
|
|
872
|
+
--gog-datepicker-panel-border-color: var(--gog-border-color);
|
|
873
|
+
--gog-datepicker-panel-radius: var(--gog-radius);
|
|
874
|
+
--gog-datepicker-panel-gap: 2px;
|
|
875
|
+
--gog-datepicker-float-label-reserve: var(--gog-field-float-label-reserve);
|
|
876
|
+
--gog-datepicker-float-label-in-top: var(--gog-field-float-label-in-top);
|
|
877
|
+
--gog-datepicker-float-label-over-gap: var(--gog-field-float-label-over-gap);
|
|
878
|
+
--gog-datepicker-float-label-over-reserve: var(--gog-field-float-label-over-reserve);
|
|
879
|
+
|
|
880
|
+
/* ── Divider ───────────────────────────────────────────────────────────────── */
|
|
881
|
+
--gog-divider-line-color: var(--gog-border-color);
|
|
882
|
+
--gog-divider-line-thickness: 1px;
|
|
883
|
+
/* The variant classes map onto these, so a theme can decide what "dashed" looks like
|
|
884
|
+
rather than the value being frozen into the component's stylesheet. */
|
|
885
|
+
--gog-divider-solid-style: solid;
|
|
886
|
+
--gog-divider-dashed-style: dashed;
|
|
887
|
+
--gog-divider-dotted-style: dotted;
|
|
888
|
+
--gog-divider-block-spacing: var(--gog-space-md);
|
|
889
|
+
--gog-divider-inline-spacing: var(--gog-space-md);
|
|
890
|
+
--gog-divider-inset-size: var(--gog-space-lg);
|
|
891
|
+
/* Floor for a vertical divider with nothing to stretch to — e.g. between two inline
|
|
892
|
+
buttons. In a flex/grid row it stretches to the row instead. */
|
|
893
|
+
--gog-divider-vertical-length: 1.5em;
|
|
894
|
+
--gog-divider-label-gap: var(--gog-space-sm);
|
|
895
|
+
--gog-divider-label-color: var(--gog-muted-text-color);
|
|
896
|
+
--gog-divider-label-font-family: var(--gog-font-body);
|
|
897
|
+
--gog-divider-label-font-size: var(--gog-text-sm);
|
|
898
|
+
--gog-divider-label-font-weight: 500;
|
|
899
|
+
--gog-divider-label-line-height: 1.4;
|
|
900
|
+
|
|
586
901
|
/* ── Icon ──────────────────────────────────────────────────────────────────── */
|
|
587
902
|
--gog-icon-fallback-size: 1em;
|
|
588
903
|
|
|
@@ -613,66 +928,196 @@
|
|
|
613
928
|
--gog-input-icon-hover-color: var(--gog-accent-color);
|
|
614
929
|
--gog-input-icon-action-radius: 4px;
|
|
615
930
|
--gog-input-icon-focus-ring-width: 2px;
|
|
931
|
+
/* Number field's spin buttons — a subtle fill on hover, since they sit flush against the
|
|
932
|
+
field's own border rather than floating with their own padding like the other icons. */
|
|
933
|
+
--gog-input-spin-hover-bg: color-mix(in srgb, var(--gog-input-icon-hover-color) 12%, transparent);
|
|
616
934
|
--gog-input-disabled-opacity: var(--gog-disabled-opacity);
|
|
617
935
|
--gog-input-transition-duration: var(--gog-duration-base);
|
|
618
|
-
|
|
619
|
-
/*
|
|
936
|
+
/* Float label — also used by gog-textarea, which shares the --gog-input-* block. */
|
|
937
|
+
/* Clear button — only rendered once the field has text, see `clearable`. */
|
|
938
|
+
--gog-input-clear-radius: 2px;
|
|
939
|
+
--gog-input-clear-icon-ratio: 0.7;
|
|
940
|
+
/*
|
|
941
|
+
The textarea's clear button gets a full-size glyph. The 0.7 ratio above suits the dense
|
|
942
|
+
single-line trigger of a dropdown; on a large multi-line box it reads as a speck.
|
|
943
|
+
*/
|
|
944
|
+
--gog-textarea-clear-icon-ratio: 1;
|
|
945
|
+
/* Custom resize grip — see the `::-webkit-resizer` comment in textarea.component.scss for
|
|
946
|
+
why this replaces rather than restyles the native glyph. Colour follows the field's own
|
|
947
|
+
border by default, not a fixed muted grey, so it reads as part of the field rather than a
|
|
948
|
+
mismatched accent. */
|
|
949
|
+
--gog-textarea-resize-grip-size: 11px;
|
|
950
|
+
--gog-textarea-resize-grip-color: var(--gog-input-field-border);
|
|
951
|
+
--gog-textarea-resize-grip-opacity: 0.8;
|
|
952
|
+
--gog-textarea-resize-grip-stripe-width: 1.5px;
|
|
953
|
+
--gog-textarea-resize-grip-stripe-gap: 3px;
|
|
954
|
+
--gog-input-clear-inset: 8px;
|
|
955
|
+
--gog-input-float-label-reserve: var(--gog-field-float-label-reserve);
|
|
956
|
+
--gog-input-float-label-in-top: var(--gog-field-float-label-in-top);
|
|
957
|
+
--gog-input-float-label-over-gap: var(--gog-field-float-label-over-gap);
|
|
958
|
+
--gog-input-float-label-over-reserve: var(--gog-field-float-label-over-reserve);
|
|
959
|
+
|
|
960
|
+
/* ── Multiselect ─────────────────────────────────────────────────────────────
|
|
961
|
+
Each token is declared twice on purpose: the `--gog-ms-*` name is the pre-21.3.0
|
|
962
|
+
spelling and stays the *declared* one so an existing override of it still feeds the
|
|
963
|
+
component, while `--gog-multiselect-*` — what the stylesheet actually reads — derives
|
|
964
|
+
from it. Overriding either name works for the whole 21.3.0/21.4.0 window.
|
|
965
|
+
@deprecated since 21.3.0 (2026-08-07) — use `--gog-multiselect-*`. Removed in 21.5.0. */
|
|
620
966
|
--gog-ms-font-family: var(--gog-font-body);
|
|
967
|
+
--gog-multiselect-font-family: var(--gog-ms-font-family);
|
|
621
968
|
--gog-ms-label-font-family: var(--gog-font-heading);
|
|
969
|
+
--gog-multiselect-label-font-family: var(--gog-ms-label-font-family);
|
|
622
970
|
--gog-ms-gap: 4px;
|
|
971
|
+
--gog-multiselect-gap: var(--gog-ms-gap);
|
|
623
972
|
--gog-ms-option-gap: 4px;
|
|
973
|
+
--gog-multiselect-option-gap: var(--gog-ms-option-gap);
|
|
624
974
|
--gog-ms-options-padding: 4px;
|
|
975
|
+
--gog-multiselect-options-padding: var(--gog-ms-options-padding);
|
|
625
976
|
--gog-ms-label-color: var(--gog-accent-color);
|
|
977
|
+
--gog-multiselect-label-color: var(--gog-ms-label-color);
|
|
626
978
|
--gog-ms-label-font-size: var(--gog-text-sm);
|
|
979
|
+
--gog-multiselect-label-font-size: var(--gog-ms-label-font-size);
|
|
627
980
|
--gog-ms-label-letter-spacing: 1px;
|
|
981
|
+
--gog-multiselect-label-letter-spacing: var(--gog-ms-label-letter-spacing);
|
|
628
982
|
--gog-ms-label-text-transform: uppercase;
|
|
983
|
+
--gog-multiselect-label-text-transform: var(--gog-ms-label-text-transform);
|
|
629
984
|
--gog-ms-field-bg: var(--gog-surface-color);
|
|
985
|
+
--gog-multiselect-field-bg: var(--gog-ms-field-bg);
|
|
630
986
|
--gog-ms-field-border: var(--gog-accent-dim);
|
|
987
|
+
--gog-multiselect-field-border: var(--gog-ms-field-border);
|
|
631
988
|
--gog-ms-field-border-width: var(--gog-control-border-width);
|
|
989
|
+
--gog-multiselect-field-border-width: var(--gog-ms-field-border-width);
|
|
632
990
|
--gog-ms-field-border-style: var(--gog-control-border-style);
|
|
991
|
+
--gog-multiselect-field-border-style: var(--gog-ms-field-border-style);
|
|
633
992
|
--gog-ms-radius: var(--gog-radius);
|
|
993
|
+
--gog-multiselect-radius: var(--gog-ms-radius);
|
|
634
994
|
--gog-ms-field-color: var(--gog-text-color);
|
|
995
|
+
--gog-multiselect-field-color: var(--gog-ms-field-color);
|
|
635
996
|
--gog-ms-value-color: var(--gog-text-color);
|
|
997
|
+
--gog-multiselect-value-color: var(--gog-ms-value-color);
|
|
636
998
|
--gog-ms-placeholder-color: var(--gog-muted-text-color);
|
|
999
|
+
--gog-multiselect-placeholder-color: var(--gog-ms-placeholder-color);
|
|
637
1000
|
--gog-ms-focus-border: var(--gog-accent-color);
|
|
1001
|
+
--gog-multiselect-focus-border: var(--gog-ms-focus-border);
|
|
638
1002
|
--gog-ms-focus-ring: color-mix(in srgb, var(--gog-accent-color) 25%, transparent);
|
|
1003
|
+
--gog-multiselect-focus-ring: var(--gog-ms-focus-ring);
|
|
639
1004
|
--gog-ms-focus-glow: 0 0 8px var(--gog-ms-focus-ring);
|
|
1005
|
+
--gog-multiselect-focus-glow: var(--gog-ms-focus-glow);
|
|
640
1006
|
--gog-ms-focus-ring-width: var(--gog-focus-ring-width);
|
|
1007
|
+
--gog-multiselect-focus-ring-width: var(--gog-ms-focus-ring-width);
|
|
641
1008
|
--gog-ms-focus-ring-offset: var(--gog-focus-ring-offset);
|
|
1009
|
+
--gog-multiselect-focus-ring-offset: var(--gog-ms-focus-ring-offset);
|
|
642
1010
|
--gog-ms-error-color: var(--gog-danger-color);
|
|
1011
|
+
--gog-multiselect-error-color: var(--gog-ms-error-color);
|
|
643
1012
|
--gog-ms-error-font-size: var(--gog-text-xs);
|
|
1013
|
+
--gog-multiselect-error-font-size: var(--gog-ms-error-font-size);
|
|
644
1014
|
--gog-ms-error-offset: 2px;
|
|
1015
|
+
--gog-multiselect-error-offset: var(--gog-ms-error-offset);
|
|
645
1016
|
--gog-ms-border-color: var(--gog-accent-color);
|
|
1017
|
+
--gog-multiselect-border-color: var(--gog-ms-border-color);
|
|
646
1018
|
--gog-ms-panel-bg: var(--gog-surface-color);
|
|
1019
|
+
--gog-multiselect-panel-bg: var(--gog-ms-panel-bg);
|
|
647
1020
|
--gog-ms-panel-border: var(--gog-accent-color);
|
|
1021
|
+
--gog-multiselect-panel-border: var(--gog-ms-panel-border);
|
|
648
1022
|
--gog-ms-panel-shadow: var(--gog-panel-shadow);
|
|
1023
|
+
--gog-multiselect-panel-shadow: var(--gog-ms-panel-shadow);
|
|
649
1024
|
--gog-ms-panel-max-height: 260px;
|
|
1025
|
+
--gog-multiselect-panel-max-height: var(--gog-ms-panel-max-height);
|
|
650
1026
|
--gog-ms-panel-offset: 2px;
|
|
1027
|
+
--gog-multiselect-panel-offset: var(--gog-ms-panel-offset);
|
|
651
1028
|
--gog-ms-option-hover-bg: color-mix(in srgb, var(--gog-accent-color) 10%, transparent);
|
|
1029
|
+
--gog-multiselect-option-hover-bg: var(--gog-ms-option-hover-bg);
|
|
652
1030
|
--gog-ms-option-color: var(--gog-text-color);
|
|
1031
|
+
--gog-multiselect-option-color: var(--gog-ms-option-color);
|
|
653
1032
|
--gog-ms-option-gap-inline: 10px;
|
|
1033
|
+
--gog-multiselect-option-gap-inline: var(--gog-ms-option-gap-inline);
|
|
654
1034
|
/* Estimated row height fed into the panel's up/down placement math; not itself a real
|
|
655
1035
|
layout property, so it has no effect unless the JS reads it. */
|
|
656
1036
|
--gog-ms-option-height: 40px;
|
|
1037
|
+
--gog-multiselect-option-height: var(--gog-ms-option-height);
|
|
657
1038
|
--gog-ms-option-radius: calc(var(--gog-radius) - 2px);
|
|
1039
|
+
--gog-multiselect-option-radius: var(--gog-ms-option-radius);
|
|
658
1040
|
--gog-ms-option-disabled-opacity: 0.5;
|
|
1041
|
+
--gog-multiselect-option-disabled-opacity: var(--gog-ms-option-disabled-opacity);
|
|
659
1042
|
--gog-ms-option-transition-duration: var(--gog-duration-fast);
|
|
1043
|
+
--gog-multiselect-option-transition-duration: var(--gog-ms-option-transition-duration);
|
|
660
1044
|
--gog-ms-checkbox-border: var(--gog-accent-dim);
|
|
1045
|
+
--gog-multiselect-checkbox-border: var(--gog-ms-checkbox-border);
|
|
661
1046
|
--gog-ms-checkbox-bg: var(--gog-background-color);
|
|
1047
|
+
--gog-multiselect-checkbox-bg: var(--gog-ms-checkbox-bg);
|
|
662
1048
|
--gog-ms-checkbox-checked-bg: var(--gog-accent-color);
|
|
1049
|
+
--gog-multiselect-checkbox-checked-bg: var(--gog-ms-checkbox-checked-bg);
|
|
663
1050
|
--gog-ms-checkbox-checked-color: var(--gog-primary-color);
|
|
1051
|
+
--gog-multiselect-checkbox-checked-color: var(--gog-ms-checkbox-checked-color);
|
|
664
1052
|
--gog-ms-controls-gap: 4px;
|
|
1053
|
+
--gog-multiselect-controls-gap: var(--gog-ms-controls-gap);
|
|
665
1054
|
--gog-ms-controls-padding: 6px 10px;
|
|
1055
|
+
--gog-multiselect-controls-padding: var(--gog-ms-controls-padding);
|
|
666
1056
|
--gog-ms-actions-gap: 6px;
|
|
1057
|
+
--gog-multiselect-actions-gap: var(--gog-ms-actions-gap);
|
|
1058
|
+
--gog-ms-filter-padding: 6px;
|
|
1059
|
+
--gog-multiselect-filter-padding: var(--gog-ms-filter-padding);
|
|
1060
|
+
--gog-ms-filter-input-padding-y: 6px;
|
|
1061
|
+
--gog-multiselect-filter-input-padding-y: var(--gog-ms-filter-input-padding-y);
|
|
1062
|
+
--gog-ms-filter-input-padding-x: 8px;
|
|
1063
|
+
--gog-multiselect-filter-input-padding-x: var(--gog-ms-filter-input-padding-x);
|
|
1064
|
+
--gog-ms-filter-input-bg: var(--gog-background-color);
|
|
1065
|
+
--gog-multiselect-filter-input-bg: var(--gog-ms-filter-input-bg);
|
|
1066
|
+
--gog-ms-filter-input-color: var(--gog-multiselect-control-color);
|
|
1067
|
+
--gog-multiselect-filter-input-color: var(--gog-ms-filter-input-color);
|
|
1068
|
+
--gog-ms-filter-input-border: var(--gog-multiselect-control-border);
|
|
1069
|
+
--gog-multiselect-filter-input-border: var(--gog-ms-filter-input-border);
|
|
1070
|
+
--gog-ms-filter-input-radius: var(--gog-radius);
|
|
1071
|
+
--gog-multiselect-filter-input-radius: var(--gog-ms-filter-input-radius);
|
|
1072
|
+
--gog-ms-filter-border-width: var(--gog-panel-border-width);
|
|
1073
|
+
--gog-multiselect-filter-border-width: var(--gog-ms-filter-border-width);
|
|
1074
|
+
--gog-ms-filter-border-style: var(--gog-panel-border-style);
|
|
1075
|
+
--gog-multiselect-filter-border-style: var(--gog-ms-filter-border-style);
|
|
1076
|
+
--gog-ms-filter-border-color: var(--gog-border-color);
|
|
1077
|
+
--gog-multiselect-filter-border-color: var(--gog-ms-filter-border-color);
|
|
1078
|
+
--gog-ms-filter-empty-padding: 10px;
|
|
1079
|
+
--gog-multiselect-filter-empty-padding: var(--gog-ms-filter-empty-padding);
|
|
1080
|
+
--gog-ms-filter-empty-color: var(--gog-multiselect-placeholder-color);
|
|
1081
|
+
--gog-multiselect-filter-empty-color: var(--gog-ms-filter-empty-color);
|
|
1082
|
+
/* Matches --gog-select-chevron-inset; see the note there. */
|
|
1083
|
+
/* "+N" badge shown when the selection does not fit on one line. */
|
|
1084
|
+
--gog-ms-overflow-color: var(--gog-multiselect-placeholder-color);
|
|
1085
|
+
--gog-multiselect-overflow-color: var(--gog-ms-overflow-color);
|
|
1086
|
+
--gog-ms-overflow-font-size: var(--gog-text-sm);
|
|
1087
|
+
--gog-multiselect-overflow-font-size: var(--gog-ms-overflow-font-size);
|
|
1088
|
+
--gog-ms-overflow-gap: 6px;
|
|
1089
|
+
--gog-multiselect-overflow-gap: var(--gog-ms-overflow-gap);
|
|
1090
|
+
--gog-ms-min-width: 120px;
|
|
1091
|
+
--gog-multiselect-min-width: var(--gog-ms-min-width);
|
|
1092
|
+
--gog-ms-panel-max-width: 420px;
|
|
1093
|
+
--gog-multiselect-panel-max-width: var(--gog-ms-panel-max-width);
|
|
1094
|
+
--gog-ms-actions-inset: var(--gog-control-icon-offset);
|
|
1095
|
+
--gog-multiselect-actions-inset: var(--gog-ms-actions-inset);
|
|
667
1096
|
--gog-ms-clear-radius: 2px;
|
|
1097
|
+
--gog-multiselect-clear-radius: var(--gog-ms-clear-radius);
|
|
668
1098
|
--gog-ms-disabled-opacity: var(--gog-disabled-opacity);
|
|
1099
|
+
--gog-multiselect-disabled-opacity: var(--gog-ms-disabled-opacity);
|
|
669
1100
|
--gog-ms-transition-duration: var(--gog-duration-base);
|
|
1101
|
+
--gog-multiselect-transition-duration: var(--gog-ms-transition-duration);
|
|
1102
|
+
--gog-ms-float-label-reserve: var(--gog-field-float-label-reserve);
|
|
1103
|
+
--gog-multiselect-float-label-reserve: var(--gog-ms-float-label-reserve);
|
|
1104
|
+
--gog-ms-float-label-in-top: var(--gog-field-float-label-in-top);
|
|
1105
|
+
--gog-multiselect-float-label-in-top: var(--gog-ms-float-label-in-top);
|
|
1106
|
+
--gog-ms-float-label-over-gap: var(--gog-field-float-label-over-gap);
|
|
1107
|
+
--gog-multiselect-float-label-over-gap: var(--gog-ms-float-label-over-gap);
|
|
1108
|
+
--gog-ms-float-label-over-reserve: var(--gog-field-float-label-over-reserve);
|
|
1109
|
+
--gog-multiselect-float-label-over-reserve: var(--gog-ms-float-label-over-reserve);
|
|
670
1110
|
--gog-ms-arrow-transition-duration: var(--gog-duration-slow);
|
|
1111
|
+
--gog-multiselect-arrow-transition-duration: var(--gog-ms-arrow-transition-duration);
|
|
671
1112
|
/* Icon geometry, expressed as a ratio of the control's font size. */
|
|
672
1113
|
--gog-ms-clear-icon-ratio: 0.7;
|
|
1114
|
+
--gog-multiselect-clear-icon-ratio: var(--gog-ms-clear-icon-ratio);
|
|
673
1115
|
--gog-ms-arrow-icon-ratio: 0.875;
|
|
1116
|
+
--gog-multiselect-arrow-icon-ratio: var(--gog-ms-arrow-icon-ratio);
|
|
674
1117
|
--gog-ms-mark-size-ratio: 1.2375;
|
|
1118
|
+
--gog-multiselect-mark-size-ratio: var(--gog-ms-mark-size-ratio);
|
|
675
1119
|
--gog-ms-mark-icon-ratio: 1.125;
|
|
1120
|
+
--gog-multiselect-mark-icon-ratio: var(--gog-ms-mark-icon-ratio);
|
|
676
1121
|
|
|
677
1122
|
/* ── Paginator ─────────────────────────────────────────────────────────────── */
|
|
678
1123
|
--gog-paginator-gap: 4px;
|
|
@@ -681,6 +1126,50 @@
|
|
|
681
1126
|
--gog-paginator-ellipsis-font-family: var(--gog-font-body);
|
|
682
1127
|
--gog-paginator-ellipsis-min-width: 32px;
|
|
683
1128
|
|
|
1129
|
+
/* ── Progressbar ──────────────────────────────────────────────────────────── */
|
|
1130
|
+
--gog-progressbar-track-base-bg: color-mix(
|
|
1131
|
+
in srgb,
|
|
1132
|
+
var(--gog-text-color) 20%,
|
|
1133
|
+
var(--gog-border-color)
|
|
1134
|
+
);
|
|
1135
|
+
--gog-progressbar-radius: 999px;
|
|
1136
|
+
--gog-progressbar-transition-duration: var(--gog-duration-slow);
|
|
1137
|
+
--gog-progressbar-xsm-height: 2px;
|
|
1138
|
+
--gog-progressbar-sm-height: 4px;
|
|
1139
|
+
--gog-progressbar-md-height: 6px;
|
|
1140
|
+
--gog-progressbar-lg-height: 10px;
|
|
1141
|
+
--gog-progressbar-slg-height: 14px;
|
|
1142
|
+
--gog-progressbar-value-gap: var(--gog-space-sm);
|
|
1143
|
+
--gog-progressbar-value-min-width: 3ch;
|
|
1144
|
+
--gog-progressbar-value-color: var(--gog-muted-text-color);
|
|
1145
|
+
--gog-progressbar-value-font-family: var(--gog-font-body);
|
|
1146
|
+
--gog-progressbar-value-font-size: var(--gog-text-sm);
|
|
1147
|
+
--gog-progressbar-indeterminate-duration: 1.6s;
|
|
1148
|
+
--gog-progressbar-indeterminate-easing: cubic-bezier(0.65, 0.05, 0.36, 1);
|
|
1149
|
+
/* The reduced-motion stand-in for the indeterminate animation. */
|
|
1150
|
+
--gog-progressbar-stripe-size: 6px;
|
|
1151
|
+
--gog-progressbar-stripe-color: color-mix(in srgb, var(--gog-surface-color) 45%, transparent);
|
|
1152
|
+
/* The buffer tier is the same hue at low opacity, so it reads as "ahead of the fill"
|
|
1153
|
+
rather than as a second, competing colour. */
|
|
1154
|
+
--gog-progressbar-accent-bg: var(--gog-accent-color);
|
|
1155
|
+
--gog-progressbar-accent-buffer-bg: color-mix(in srgb, var(--gog-accent-color) 35%, transparent);
|
|
1156
|
+
--gog-progressbar-success-bg: var(--gog-success-color);
|
|
1157
|
+
--gog-progressbar-success-buffer-bg: color-mix(
|
|
1158
|
+
in srgb,
|
|
1159
|
+
var(--gog-success-color) 35%,
|
|
1160
|
+
transparent
|
|
1161
|
+
);
|
|
1162
|
+
--gog-progressbar-danger-bg: var(--gog-danger-color);
|
|
1163
|
+
--gog-progressbar-danger-buffer-bg: color-mix(in srgb, var(--gog-danger-color) 35%, transparent);
|
|
1164
|
+
--gog-progressbar-warning-bg: var(--gog-warning-color);
|
|
1165
|
+
--gog-progressbar-warning-buffer-bg: color-mix(
|
|
1166
|
+
in srgb,
|
|
1167
|
+
var(--gog-warning-color) 35%,
|
|
1168
|
+
transparent
|
|
1169
|
+
);
|
|
1170
|
+
--gog-progressbar-info-bg: var(--gog-info-color);
|
|
1171
|
+
--gog-progressbar-info-buffer-bg: color-mix(in srgb, var(--gog-info-color) 35%, transparent);
|
|
1172
|
+
|
|
684
1173
|
/* ── Scroll ────────────────────────────────────────────────────────────────── */
|
|
685
1174
|
--gog-scroll-track-bg: transparent;
|
|
686
1175
|
--gog-scroll-track-radius: var(--gog-radius);
|
|
@@ -700,6 +1189,12 @@
|
|
|
700
1189
|
--gog-scroll-thin-track-width: 6px;
|
|
701
1190
|
--gog-scroll-normal-thumb-min-size: 32px;
|
|
702
1191
|
--gog-scroll-thin-thumb-min-size: 24px;
|
|
1192
|
+
/* Invisible pointer-target padding around the thumb (see .gog-scroll__thumb::before) — the
|
|
1193
|
+
`thin` variant gets more of it since its 6px track leaves the least visible thumb to aim
|
|
1194
|
+
at; both land the effective hit width in the ~22-24px range generally recommended for a
|
|
1195
|
+
comfortable pointer target. */
|
|
1196
|
+
--gog-scroll-normal-thumb-hit-padding: 6px;
|
|
1197
|
+
--gog-scroll-thin-thumb-hit-padding: 9px;
|
|
703
1198
|
|
|
704
1199
|
/* ── Select ────────────────────────────────────────────────────────────────── */
|
|
705
1200
|
--gog-select-font-family: var(--gog-font-body);
|
|
@@ -724,7 +1219,37 @@
|
|
|
724
1219
|
--gog-select-error-color: var(--gog-danger-color);
|
|
725
1220
|
--gog-select-error-font-size: var(--gog-text-xs);
|
|
726
1221
|
--gog-select-chevron-color: var(--gog-accent-color);
|
|
727
|
-
|
|
1222
|
+
/*
|
|
1223
|
+
Distance from the trigger's right edge to the trailing chrome, matching the leading icon
|
|
1224
|
+
inset on gog-inputfield so a select, a multiselect and an input line up in one form. It is
|
|
1225
|
+
applied as the trigger's `padding-right`, and the chevron sits inside that padding — so this
|
|
1226
|
+
is the gap itself, not the gap plus the chevron. It used to be 40px, which double-counted
|
|
1227
|
+
and put the chevron 42px from the edge.
|
|
1228
|
+
*/
|
|
1229
|
+
--gog-select-chevron-inset: var(--gog-control-icon-offset);
|
|
1230
|
+
/* Floor for an auto-width trigger, so [fullWidth]="false" cannot collapse it to the chevron. */
|
|
1231
|
+
--gog-select-min-width: 120px;
|
|
1232
|
+
/* Ceiling for a content-sized panel, so one very long option cannot span the viewport. */
|
|
1233
|
+
--gog-select-panel-max-width: 420px;
|
|
1234
|
+
/* Filter box — only rendered when `filter` is on. */
|
|
1235
|
+
--gog-select-filter-padding: 6px;
|
|
1236
|
+
--gog-select-filter-input-padding-y: 6px;
|
|
1237
|
+
--gog-select-filter-input-padding-x: 8px;
|
|
1238
|
+
--gog-select-filter-input-bg: var(--gog-background-color);
|
|
1239
|
+
--gog-select-filter-input-color: var(--gog-select-control-color);
|
|
1240
|
+
--gog-select-filter-input-border: var(--gog-select-control-border);
|
|
1241
|
+
--gog-select-filter-input-radius: var(--gog-radius);
|
|
1242
|
+
--gog-select-filter-border-width: var(--gog-panel-border-width);
|
|
1243
|
+
--gog-select-filter-border-style: var(--gog-panel-border-style);
|
|
1244
|
+
--gog-select-filter-border-color: var(--gog-select-option-border-color, var(--gog-border-color));
|
|
1245
|
+
--gog-select-filter-empty-padding: 10px;
|
|
1246
|
+
--gog-select-filter-empty-color: var(--gog-select-placeholder-color);
|
|
1247
|
+
/* Clear button — only rendered once a value is selected, see `clearable`. */
|
|
1248
|
+
--gog-select-clear-radius: 2px;
|
|
1249
|
+
--gog-select-clear-icon-ratio: 0.7;
|
|
1250
|
+
--gog-select-clear-gap: 6px;
|
|
1251
|
+
--gog-select-clear-color: var(--gog-select-placeholder-color);
|
|
1252
|
+
--gog-select-clear-hover-color: var(--gog-select-label-color);
|
|
728
1253
|
--gog-select-control-gap: 12px;
|
|
729
1254
|
--gog-select-panel-bg: var(--gog-surface-color);
|
|
730
1255
|
--gog-select-panel-shadow: var(--gog-panel-shadow);
|
|
@@ -745,6 +1270,10 @@
|
|
|
745
1270
|
--gog-select-mark-icon-ratio: 0.875;
|
|
746
1271
|
--gog-select-disabled-opacity: var(--gog-disabled-opacity);
|
|
747
1272
|
--gog-select-transition-duration: var(--gog-duration-base);
|
|
1273
|
+
--gog-select-float-label-reserve: var(--gog-field-float-label-reserve);
|
|
1274
|
+
--gog-select-float-label-in-top: var(--gog-field-float-label-in-top);
|
|
1275
|
+
--gog-select-float-label-over-gap: var(--gog-field-float-label-over-gap);
|
|
1276
|
+
--gog-select-float-label-over-reserve: var(--gog-field-float-label-over-reserve);
|
|
748
1277
|
|
|
749
1278
|
/* ── Skeleton ─────────────────────────────────────────────────────────────── */
|
|
750
1279
|
--gog-skeleton-base: color-mix(in srgb, var(--gog-border-color) 40%, var(--gog-surface-color));
|
|
@@ -775,6 +1304,9 @@
|
|
|
775
1304
|
|
|
776
1305
|
/* ── Slider ───────────────────────────────────────────────────────────────── */
|
|
777
1306
|
--gog-slider-auto-width: 240px;
|
|
1307
|
+
/* Length (height) of a vertical slider's track — the counterpart to
|
|
1308
|
+
--gog-slider-auto-width, which only sizes the horizontal case. */
|
|
1309
|
+
--gog-slider-vertical-length: 160px;
|
|
778
1310
|
--gog-slider-label-font-family: var(--gog-font-heading);
|
|
779
1311
|
--gog-slider-value-font-family: var(--gog-font-mono);
|
|
780
1312
|
--gog-slider-error-font-family: var(--gog-font-body);
|
|
@@ -789,7 +1321,26 @@
|
|
|
789
1321
|
--gog-slider-track-height: 4px;
|
|
790
1322
|
--gog-slider-track-area-height: 20px;
|
|
791
1323
|
--gog-slider-track-radius: 0px;
|
|
792
|
-
|
|
1324
|
+
/*
|
|
1325
|
+
* Deliberately NOT an accent-* token: --gog-accent-dim sits on the same hue ramp as
|
|
1326
|
+
* --gog-slider-fill-bg (--gog-accent-color), so at a 4px track height the two used to
|
|
1327
|
+
* read as one blob rather than "recessed groove + accent fill" — same problem in both
|
|
1328
|
+
* themes, since the whole accent ramp is one hue. Mixing --gog-text-color into
|
|
1329
|
+
* --gog-border-color instead gives a desaturated, theme-adaptive groove: it darkens
|
|
1330
|
+
* toward black in the light theme (text-color is near-black there) and lightens toward
|
|
1331
|
+
* parchment in the dark theme (text-color is near-white there), landing at a neutral
|
|
1332
|
+
* warm gray in both — always visibly distinct from the saturated accent fill, and always
|
|
1333
|
+
* legible against its own theme's surface.
|
|
1334
|
+
*/
|
|
1335
|
+
--gog-slider-track-bg: color-mix(in srgb, var(--gog-text-color) 30%, var(--gog-border-color));
|
|
1336
|
+
--gog-slider-track-border-width: 1px;
|
|
1337
|
+
--gog-slider-track-border-style: solid;
|
|
1338
|
+
/* Transparent by default — same opt-in convention as --gog-btn-primary-border: the
|
|
1339
|
+
width/style are always in the box model, but invisible until a theme sets a color. */
|
|
1340
|
+
--gog-slider-track-border-color: transparent;
|
|
1341
|
+
/* Bound via `background` (not `background-color`) in slider.component.scss, so this
|
|
1342
|
+
also accepts a gradient (e.g. `linear-gradient(...)`) for the fill style, not just a
|
|
1343
|
+
solid color. */
|
|
793
1344
|
--gog-slider-fill-bg: var(--gog-accent-color);
|
|
794
1345
|
--gog-slider-thumb-size: 16px;
|
|
795
1346
|
--gog-slider-thumb-bg: var(--gog-accent-color);
|
|
@@ -889,6 +1440,47 @@
|
|
|
889
1440
|
--gog-table-slg-th-font-size: var(--gog-text-md);
|
|
890
1441
|
--gog-table-slg-td-font-size: var(--gog-text-lg);
|
|
891
1442
|
|
|
1443
|
+
/* ── Tabs ──────────────────────────────────────────────────────────────────
|
|
1444
|
+
`--gog-tabs-tab-bg`, `-tab-color`, `-tab-padding` and `-tab-font-size` are intentionally
|
|
1445
|
+
NOT declared — they are the per-instance escape hatch the size classes fall back through.
|
|
1446
|
+
`--gog-tabs-indicator-offset` / `-length` are written as inline styles from the measured
|
|
1447
|
+
header geometry, so they are not declared either. */
|
|
1448
|
+
--gog-tabs-font-family: var(--gog-font-heading);
|
|
1449
|
+
--gog-tabs-font-weight: 700;
|
|
1450
|
+
--gog-tabs-letter-spacing: 0.4px;
|
|
1451
|
+
--gog-tabs-text-transform: none;
|
|
1452
|
+
--gog-tabs-line-height: 1.2;
|
|
1453
|
+
--gog-tabs-gap: 0px;
|
|
1454
|
+
--gog-tabs-tab-gap: var(--gog-space-sm);
|
|
1455
|
+
--gog-tabs-icon-size: 1.1em;
|
|
1456
|
+
--gog-tabs-rest-bg: transparent;
|
|
1457
|
+
--gog-tabs-rest-color: var(--gog-muted-text-color);
|
|
1458
|
+
--gog-tabs-hover-color: var(--gog-text-color);
|
|
1459
|
+
--gog-tabs-active-color: var(--gog-accent-color);
|
|
1460
|
+
--gog-tabs-header-border-width: 1px;
|
|
1461
|
+
--gog-tabs-header-border-style: solid;
|
|
1462
|
+
--gog-tabs-header-border-color: var(--gog-border-color);
|
|
1463
|
+
--gog-tabs-indicator-color: var(--gog-accent-color);
|
|
1464
|
+
--gog-tabs-indicator-thickness: 2px;
|
|
1465
|
+
--gog-tabs-indicator-radius: 999px;
|
|
1466
|
+
--gog-tabs-transition-duration: var(--gog-duration-base);
|
|
1467
|
+
--gog-tabs-disabled-opacity: var(--gog-disabled-opacity);
|
|
1468
|
+
--gog-tabs-focus-ring-width: var(--gog-focus-ring-width);
|
|
1469
|
+
--gog-tabs-focus-ring-offset: -2px;
|
|
1470
|
+
--gog-tabs-focus-ring-color: var(--gog-accent-color);
|
|
1471
|
+
--gog-tabs-panel-padding: var(--gog-space-md);
|
|
1472
|
+
--gog-tabs-panel-color: var(--gog-text-color);
|
|
1473
|
+
--gog-tabs-xsm-padding: 0.375rem 0.625rem;
|
|
1474
|
+
--gog-tabs-xsm-font-size: var(--gog-text-xs);
|
|
1475
|
+
--gog-tabs-sm-padding: 0.5rem 0.875rem;
|
|
1476
|
+
--gog-tabs-sm-font-size: var(--gog-text-sm);
|
|
1477
|
+
--gog-tabs-md-padding: 0.75rem 1.125rem;
|
|
1478
|
+
--gog-tabs-md-font-size: var(--gog-text-md);
|
|
1479
|
+
--gog-tabs-lg-padding: 1rem 1.5rem;
|
|
1480
|
+
--gog-tabs-lg-font-size: var(--gog-text-lg);
|
|
1481
|
+
--gog-tabs-slg-padding: 1.25rem 1.75rem;
|
|
1482
|
+
--gog-tabs-slg-font-size: var(--gog-text-xl);
|
|
1483
|
+
|
|
892
1484
|
/* ── Tag ──────────────────────────────────────────────────────────────────
|
|
893
1485
|
Like the button, the unsuffixed `--gog-tag-bg`/`-border`/`-color`/`-font-size`
|
|
894
1486
|
and friends stay undeclared so variant and size classes can fall through them. */
|
|
@@ -975,4 +1567,95 @@
|
|
|
975
1567
|
--gog-toast-stack-min-opacity: 0.4;
|
|
976
1568
|
--gog-toast-stack-opacity-step: 0.18;
|
|
977
1569
|
--gog-toast-stack-max-depth: 6;
|
|
1570
|
+
|
|
1571
|
+
/* ── Toggle ───────────────────────────────────────────────────────────────────
|
|
1572
|
+
A switch, not a checkbox: it announces as "switch, on". The outer label size reuses
|
|
1573
|
+
the `--gog-control-checkbox-*` scale so a toggle and a checkbox in the same form read
|
|
1574
|
+
at the same weight; the track/thumb geometry is its own, since a switch is wider than
|
|
1575
|
+
it is tall. */
|
|
1576
|
+
--gog-toggle-font-family: var(--gog-font-body);
|
|
1577
|
+
--gog-toggle-gap: var(--gog-space-sm);
|
|
1578
|
+
--gog-toggle-radius: 999px;
|
|
1579
|
+
--gog-toggle-border-width: 1px;
|
|
1580
|
+
--gog-toggle-border-style: solid;
|
|
1581
|
+
--gog-toggle-border-color: var(--gog-border-color);
|
|
1582
|
+
--gog-toggle-on-border-color: var(--gog-accent-color);
|
|
1583
|
+
--gog-toggle-track-off-bg: color-mix(in srgb, var(--gog-text-color) 18%, transparent);
|
|
1584
|
+
--gog-toggle-track-on-bg: var(--gog-accent-color);
|
|
1585
|
+
--gog-toggle-thumb-off-bg: var(--gog-surface-color);
|
|
1586
|
+
--gog-toggle-thumb-on-bg: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
1587
|
+
--gog-toggle-thumb-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
|
|
1588
|
+
--gog-toggle-thumb-inset: 2px;
|
|
1589
|
+
--gog-toggle-transition-duration: var(--gog-duration-base);
|
|
1590
|
+
--gog-toggle-disabled-opacity: var(--gog-disabled-opacity);
|
|
1591
|
+
--gog-toggle-label-color: var(--gog-text-color);
|
|
1592
|
+
--gog-toggle-label-line-height: 1.4;
|
|
1593
|
+
--gog-toggle-focus-ring-width: var(--gog-focus-ring-width);
|
|
1594
|
+
--gog-toggle-focus-ring-offset: var(--gog-focus-ring-offset);
|
|
1595
|
+
--gog-toggle-focus-ring-color: var(--gog-accent-color);
|
|
1596
|
+
/* In-track on/off wording */
|
|
1597
|
+
--gog-toggle-state-color: var(--gog-accent-text-color, var(--gog-primary-color));
|
|
1598
|
+
--gog-toggle-state-font-weight: 600;
|
|
1599
|
+
--gog-toggle-state-letter-spacing: 0.04em;
|
|
1600
|
+
--gog-toggle-state-padding-inline: 4px;
|
|
1601
|
+
--gog-toggle-state-offset: 6px;
|
|
1602
|
+
/* Gap between the wording and the thumb parked at the opposite end. The clearance itself
|
|
1603
|
+
(thumb size + this) is computed in the component stylesheet, not here: a `var(` to a
|
|
1604
|
+
size-class token is substituted where it is *declared*, so doing that calc on :root would
|
|
1605
|
+
freeze it to the md thumb and stop it scaling with `size`. */
|
|
1606
|
+
--gog-toggle-state-thumb-gap: 6px;
|
|
1607
|
+
--gog-toggle-xsm-track-width: 24px;
|
|
1608
|
+
--gog-toggle-xsm-track-height: 14px;
|
|
1609
|
+
--gog-toggle-xsm-thumb-size: 10px;
|
|
1610
|
+
--gog-toggle-xsm-label-size: var(--gog-control-checkbox-label-size-xsm);
|
|
1611
|
+
--gog-toggle-xsm-state-font-size: 0.5rem;
|
|
1612
|
+
--gog-toggle-sm-track-width: 32px;
|
|
1613
|
+
--gog-toggle-sm-track-height: 18px;
|
|
1614
|
+
--gog-toggle-sm-thumb-size: 14px;
|
|
1615
|
+
--gog-toggle-sm-label-size: var(--gog-control-checkbox-label-size-sm);
|
|
1616
|
+
--gog-toggle-sm-state-font-size: 0.5625rem;
|
|
1617
|
+
--gog-toggle-md-track-width: 44px;
|
|
1618
|
+
--gog-toggle-md-track-height: 24px;
|
|
1619
|
+
--gog-toggle-md-thumb-size: 18px;
|
|
1620
|
+
--gog-toggle-md-label-size: var(--gog-control-checkbox-label-size-md);
|
|
1621
|
+
--gog-toggle-md-state-font-size: 0.625rem;
|
|
1622
|
+
--gog-toggle-lg-track-width: 56px;
|
|
1623
|
+
--gog-toggle-lg-track-height: 32px;
|
|
1624
|
+
--gog-toggle-lg-thumb-size: 26px;
|
|
1625
|
+
--gog-toggle-lg-label-size: var(--gog-control-checkbox-label-size-lg);
|
|
1626
|
+
--gog-toggle-lg-state-font-size: 0.75rem;
|
|
1627
|
+
--gog-toggle-slg-track-width: 68px;
|
|
1628
|
+
--gog-toggle-slg-track-height: 40px;
|
|
1629
|
+
--gog-toggle-slg-thumb-size: 34px;
|
|
1630
|
+
--gog-toggle-slg-label-size: var(--gog-control-checkbox-label-size-slg);
|
|
1631
|
+
--gog-toggle-slg-state-font-size: 0.8125rem;
|
|
1632
|
+
|
|
1633
|
+
/* ── Tooltip ──────────────────────────────────────────────────────────────── */
|
|
1634
|
+
--gog-tooltip-font-family: var(--gog-font-body);
|
|
1635
|
+
--gog-tooltip-font-size: var(--gog-text-xs);
|
|
1636
|
+
--gog-tooltip-line-height: 1.4;
|
|
1637
|
+
--gog-tooltip-padding: 6px 10px;
|
|
1638
|
+
--gog-tooltip-radius: var(--gog-radius);
|
|
1639
|
+
--gog-tooltip-max-width: 280px;
|
|
1640
|
+
/* Caps the gog-scroll wrapping the bubble's content — see tooltip-bubble.component.html.
|
|
1641
|
+
A cap, not a fixed height: shorter content stays exactly as tall as it needs to be, this
|
|
1642
|
+
only stops something unusually long (a multi-paragraph TemplateRef) from growing to
|
|
1643
|
+
cover most of the viewport. */
|
|
1644
|
+
--gog-tooltip-max-height: 220px;
|
|
1645
|
+
/* Same "floating panel" recipe as gog-dialog's panel and gog-select's dropdown — a
|
|
1646
|
+
surface-colored box with a plain (not accent) border and the shared panel shadow —
|
|
1647
|
+
rather than an inverted dark/light bubble, so it reads as part of this site instead of
|
|
1648
|
+
a generic dark tooltip dropped on top of it. */
|
|
1649
|
+
--gog-tooltip-bg: var(--gog-surface-color);
|
|
1650
|
+
--gog-tooltip-color: var(--gog-text-color);
|
|
1651
|
+
--gog-tooltip-border-width: var(--gog-panel-border-width);
|
|
1652
|
+
--gog-tooltip-border-style: var(--gog-panel-border-style);
|
|
1653
|
+
--gog-tooltip-border-color: var(--gog-border-color);
|
|
1654
|
+
--gog-tooltip-shadow: var(--gog-panel-shadow);
|
|
1655
|
+
--gog-tooltip-arrow-size: 5px;
|
|
1656
|
+
/* Space kept between the trigger and the bubble. Read by the directive itself (not just
|
|
1657
|
+
CSS) to feed the placement math — see `readPxToken` in `tooltip.directive.ts`. */
|
|
1658
|
+
--gog-tooltip-gap: 8px;
|
|
1659
|
+
--gog-tooltip-z: 400;
|
|
1660
|
+
--gog-tooltip-transition-duration: var(--gog-duration-fast);
|
|
978
1661
|
}
|