@trismegisto/core 3.3.0 → 3.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.
Files changed (2) hide show
  1. package/dist/core.css +359 -151
  2. package/package.json +1 -1
package/dist/core.css CHANGED
@@ -341,7 +341,7 @@ button, input, select, textarea {
341
341
  padding: 0 var(--hm-space-micro);
342
342
  border: var(--hm-border-hairline) solid var(--hm-divider);
343
343
  border-radius: var(--hm-radius-micro);
344
- background: var(--hm-surface-raised);
344
+ background: var(--hm-surface-muted);
345
345
  color: var(--hm-text);
346
346
  font-family: var(--hm-font-mono);
347
347
  overflow-wrap: anywhere;
@@ -351,7 +351,7 @@ button, input, select, textarea {
351
351
  padding: 0 var(--hm-space-micro);
352
352
  border: var(--hm-border-hairline) solid var(--hm-divider);
353
353
  border-radius: var(--hm-radius-micro);
354
- background: var(--hm-surface-raised);
354
+ background: var(--hm-surface-muted);
355
355
  color: var(--hm-text);
356
356
  font-family: var(--hm-font-mono);
357
357
  overflow-wrap: anywhere;
@@ -364,7 +364,7 @@ button, input, select, textarea {
364
364
  border: var(--hm-border-hairline) solid var(--hm-border);
365
365
  border-block-end-width: var(--hm-border-thin);
366
366
  border-radius: var(--hm-radius-micro);
367
- background: var(--hm-surface-raised);
367
+ background: var(--hm-surface-muted);
368
368
  color: var(--hm-text);
369
369
  font-family: var(--hm-font-family);
370
370
  font-size: var(--hm-font-size-xs);
@@ -381,7 +381,7 @@ button, input, select, textarea {
381
381
  border: var(--hm-border-hairline) solid var(--hm-border);
382
382
  border-block-end-width: var(--hm-border-thin);
383
383
  border-radius: var(--hm-radius-micro);
384
- background: var(--hm-surface-raised);
384
+ background: var(--hm-surface-muted);
385
385
  color: var(--hm-text);
386
386
  font-family: var(--hm-font-family);
387
387
  font-size: var(--hm-font-size-xs);
@@ -409,7 +409,7 @@ button, input, select, textarea {
409
409
  overflow: auto;
410
410
  border: var(--hm-border-hairline) solid var(--hm-divider);
411
411
  border-radius: var(--hm-radius);
412
- background: var(--hm-surface-raised);
412
+ background: var(--hm-surface-muted);
413
413
  color: var(--hm-text);
414
414
  font-family: var(--hm-font-mono);
415
415
  font-size: var(--hm-font-size-sm);
@@ -431,7 +431,7 @@ button, input, select, textarea {
431
431
  overflow: auto;
432
432
  border: var(--hm-border-hairline) solid var(--hm-divider);
433
433
  border-radius: var(--hm-radius);
434
- background: var(--hm-surface-raised);
434
+ background: var(--hm-surface-muted);
435
435
  color: var(--hm-text);
436
436
  font-family: var(--hm-font-mono);
437
437
  font-size: var(--hm-font-size-sm);
@@ -1008,7 +1008,7 @@ hm-icon-button,
1008
1008
  padding: 0;
1009
1009
  border: var(--hm-border-hairline) solid var(--intent-color);
1010
1010
  border-radius: var(--hm-radius-control);
1011
- background: var(--hm-surface-raised);
1011
+ background: var(--hm-surface-muted);
1012
1012
  color: var(--intent-color);
1013
1013
  line-height: 1;
1014
1014
  cursor: pointer;
@@ -1162,7 +1162,7 @@ hm-icon-button,
1162
1162
  max-inline-size: 100%;
1163
1163
  border: var(--hm-border-hairline) solid var(--hm-border);
1164
1164
  border-radius: var(--hm-radius-control);
1165
- background: var(--hm-surface-raised);
1165
+ background: var(--hm-surface-muted);
1166
1166
  }
1167
1167
  .hm-toggle-group--vertical {
1168
1168
  flex-direction: column;
@@ -1772,7 +1772,7 @@ hm-form-required-hint {
1772
1772
  margin: 0;
1773
1773
  border: var(--hm-border-hairline) solid var(--hm-border);
1774
1774
  border-radius: var(--hm-radius-micro);
1775
- background: var(--hm-surface);
1775
+ background: var(--hm-surface-raised);
1776
1776
  vertical-align: middle;
1777
1777
  cursor: pointer;
1778
1778
  transition: background var(--hm-duration-quick) var(--hm-ease), border-color var(--hm-duration-quick) var(--hm-ease);
@@ -1805,7 +1805,7 @@ hm-form-required-hint {
1805
1805
  }
1806
1806
  .hm-check:indeterminate, .hm-check--indeterminate {
1807
1807
  border-color: var(--hm-action);
1808
- background: var(--hm-surface);
1808
+ background: var(--hm-surface-raised);
1809
1809
  }
1810
1810
  .hm-check:indeterminate::after, .hm-check--indeterminate::after {
1811
1811
  display: block;
@@ -1817,7 +1817,7 @@ hm-form-required-hint {
1817
1817
  }
1818
1818
  .hm-check:disabled, .hm-check--disabled {
1819
1819
  border-color: var(--hm-divider);
1820
- background: var(--hm-surface-raised);
1820
+ background: var(--hm-surface-muted);
1821
1821
  cursor: not-allowed;
1822
1822
  }
1823
1823
  .hm-check:disabled:checked, .hm-check:disabled.hm-check--checked, .hm-check--disabled:checked, .hm-check--disabled.hm-check--checked {
@@ -2166,7 +2166,7 @@ hm-modal, .hm-modal-host {
2166
2166
  width: 100%;
2167
2167
  max-width: 640px;
2168
2168
  border-radius: var(--hm-radius);
2169
- background: var(--hm-surface-raised);
2169
+ background: var(--hm-surface-overlay);
2170
2170
  box-shadow: var(--hm-shadow-lg);
2171
2171
  }
2172
2172
  .hm-modal__window--small {
@@ -2380,7 +2380,7 @@ hm-theme-picker {
2380
2380
  padding: var(--hm-border-thin);
2381
2381
  border: var(--hm-border-hairline) solid var(--hm-border);
2382
2382
  border-radius: var(--hm-radius-pill);
2383
- background: var(--hm-surface-raised);
2383
+ background: var(--hm-surface-muted);
2384
2384
  }
2385
2385
  .hm-theme-picker__mode {
2386
2386
  display: inline-flex;
@@ -2452,7 +2452,8 @@ hm-theme-picker {
2452
2452
  compartilhado em vez de duplicado. */
2453
2453
  .hm-code-input {
2454
2454
  display: flex;
2455
- gap: 8px;
2455
+ /* 8px nas duas densidades, como antes (a escala não tem 8px no modo confortável). */
2456
+ gap: calc(var(--hm-space-micro) * 2);
2456
2457
  justify-content: center;
2457
2458
  }
2458
2459
 
@@ -3186,7 +3187,7 @@ hm-bubble {
3186
3187
  }
3187
3188
  .hm-bubble--received .hm-bubble__content {
3188
3189
  border-color: var(--hm-divider);
3189
- background: var(--hm-surface-raised);
3190
+ background: var(--hm-surface-muted);
3190
3191
  color: var(--hm-text);
3191
3192
  }
3192
3193
  .hm-bubble--sent {
@@ -3240,7 +3241,7 @@ hm-bubble {
3240
3241
  padding-inline: var(--hm-space-xs);
3241
3242
  border: var(--hm-border-hairline) solid var(--hm-border);
3242
3243
  border-radius: var(--hm-radius-pill);
3243
- background: var(--hm-surface);
3244
+ background: var(--hm-surface-raised);
3244
3245
  color: var(--hm-text);
3245
3246
  font: inherit;
3246
3247
  font-size: var(--hm-font-size-xs);
@@ -3434,7 +3435,7 @@ hm-message-scroller {
3434
3435
  padding-inline: var(--hm-space-xs);
3435
3436
  border: var(--hm-border-hairline) solid var(--hm-border);
3436
3437
  border-radius: var(--hm-radius-pill);
3437
- background: var(--hm-surface);
3438
+ background: var(--hm-surface-overlay);
3438
3439
  color: var(--hm-text);
3439
3440
  box-shadow: var(--hm-shadow-overlay);
3440
3441
  font: inherit;
@@ -3730,7 +3731,7 @@ hm-sidebar-node {
3730
3731
  min-block-size: 0;
3731
3732
  overflow: hidden;
3732
3733
  border-inline-end: var(--hm-border-hairline) solid var(--hm-divider);
3733
- background: var(--hm-surface-raised);
3734
+ background: var(--hm-sidebar-bg);
3734
3735
  color: var(--hm-text);
3735
3736
  font-size: var(--hm-font-size-md);
3736
3737
  transition: inline-size var(--hm-duration-relaxed) var(--hm-ease-standard), box-shadow var(--hm-duration-relaxed) var(--hm-ease-standard), border-color var(--hm-duration-relaxed) var(--hm-ease-standard);
@@ -4053,7 +4054,7 @@ hm-sidebar-group,
4053
4054
  block-size: var(--hm-space-nano);
4054
4055
  border-radius: var(--hm-radius-pill);
4055
4056
  background: var(--hm-accent);
4056
- box-shadow: 0 0 0 var(--hm-border-thin) var(--hm-surface);
4057
+ box-shadow: 0 0 0 var(--hm-border-thin) var(--hm-surface-raised);
4057
4058
  }
4058
4059
  .hm-sidebar-group__label {
4059
4060
  flex: 1 1 auto;
@@ -4226,7 +4227,7 @@ hm-menu {
4226
4227
  flex-direction: column;
4227
4228
  border: var(--hm-border-hairline) solid var(--hm-divider);
4228
4229
  border-radius: var(--hm-radius-control);
4229
- background: var(--hm-surface-raised);
4230
+ background: var(--hm-surface-overlay);
4230
4231
  box-shadow: var(--hm-shadow-overlay);
4231
4232
  color: var(--hm-text);
4232
4233
  font-family: var(--hm-font-family);
@@ -4420,7 +4421,7 @@ hm-menu {
4420
4421
  flex-direction: column;
4421
4422
  border: var(--hm-border-hairline) solid var(--hm-divider);
4422
4423
  border-radius: var(--hm-radius-control);
4423
- background: var(--hm-surface-raised);
4424
+ background: var(--hm-surface-overlay);
4424
4425
  box-shadow: var(--hm-shadow-overlay);
4425
4426
  color: var(--hm-text);
4426
4427
  font-family: var(--hm-font-family);
@@ -4505,7 +4506,7 @@ hm-menu {
4505
4506
  }
4506
4507
  .hm-menu__item:hover:not(:disabled), .hm-menu__item:focus-visible, .hm-menu__item[aria-expanded=true] {
4507
4508
  background: var(--hm-accent);
4508
- color: var(--hm-surface);
4509
+ color: var(--hm-on-action);
4509
4510
  }
4510
4511
  .hm-menu__item:focus-visible {
4511
4512
  outline: var(--hm-border-thin) solid currentColor;
@@ -4519,7 +4520,7 @@ hm-menu {
4519
4520
  }
4520
4521
  .hm-menu__item--danger:hover:not(:disabled), .hm-menu__item--danger:focus-visible {
4521
4522
  background: var(--hm-danger);
4522
- color: var(--hm-surface);
4523
+ color: var(--hm-on-action);
4523
4524
  }
4524
4525
  .hm-menu__item:disabled {
4525
4526
  color: var(--hm-disabled-text);
@@ -4846,7 +4847,7 @@ hm-menu-button,
4846
4847
  border: var(--hm-border-hairline) solid var(--hm-border);
4847
4848
  border-radius: var(--hm-radius);
4848
4849
  padding: var(--hm-space-xs);
4849
- background: var(--hm-surface-raised);
4850
+ background: var(--hm-surface-overlay);
4850
4851
  color: var(--hm-text);
4851
4852
  box-shadow: var(--hm-shadow-overlay);
4852
4853
  font-size: var(--hm-font-size-sm);
@@ -4997,7 +4998,7 @@ hm-tab-bar,
4997
4998
  align-items: flex-end;
4998
4999
  gap: var(--hm-space-micro);
4999
5000
  min-width: 0;
5000
- padding: var(--hm-space-micro) var(--hm-space-xs) 0;
5001
+ padding: var(--hm-tab-gap) var(--hm-tab-gap) 0;
5001
5002
  background: var(--hm-tab-strip-bg);
5002
5003
  }
5003
5004
 
@@ -5005,7 +5006,7 @@ hm-tab-bar,
5005
5006
  display: flex;
5006
5007
  flex: 0 1 auto;
5007
5008
  align-items: flex-end;
5008
- gap: var(--hm-space-micro);
5009
+ gap: var(--hm-tab-gap);
5009
5010
  min-width: 0;
5010
5011
  padding-inline: var(--hm-radius);
5011
5012
  overflow-x: auto;
@@ -5021,9 +5022,11 @@ hm-tab-bar,
5021
5022
  box-sizing: border-box;
5022
5023
  min-inline-size: 7rem;
5023
5024
  max-inline-size: 15rem;
5024
- block-size: var(--hm-control-height-large);
5025
+ block-size: calc(var(--hm-tab-height) + var(--hm-tab-gap));
5026
+ padding-block-end: var(--hm-tab-gap);
5025
5027
  border-radius: var(--hm-radius) var(--hm-radius) 0 0;
5026
5028
  background: transparent;
5029
+ isolation: isolate;
5027
5030
  color: var(--hm-muted);
5028
5031
  font-size: var(--hm-font-size-sm);
5029
5032
  touch-action: manipulation;
@@ -5032,8 +5035,31 @@ hm-tab-bar,
5032
5035
  transition: background-color var(--hm-duration-quick) var(--hm-ease-standard), color var(--hm-duration-quick) var(--hm-ease-standard), opacity var(--hm-duration-quick) var(--hm-ease-standard);
5033
5036
  animation: hm-tab-bar-enter var(--hm-duration-quick) var(--hm-ease-decelerate);
5034
5037
  }
5035
- .hm-tab-bar__tab:hover:not(.hm-tab-bar__tab--active) {
5036
- background: var(--hm-nav-hover);
5038
+ .hm-tab-bar__tab:not(.hm-tab-bar__tab--active)::before {
5039
+ content: "";
5040
+ position: absolute;
5041
+ inset-block: 0 var(--hm-tab-gap);
5042
+ inset-inline-start: calc((var(--hm-tab-gap) + var(--hm-border-hairline)) / -2);
5043
+ inline-size: var(--hm-border-hairline);
5044
+ block-size: calc(var(--hm-tab-height) / 2);
5045
+ margin-block: auto;
5046
+ background: var(--hm-tab-separator);
5047
+ pointer-events: none;
5048
+ }
5049
+ .hm-tab-bar__tab:not(.hm-tab-bar__tab--active)::after {
5050
+ content: "";
5051
+ position: absolute;
5052
+ inset-block: 0 var(--hm-tab-gap);
5053
+ inset-inline: 0;
5054
+ z-index: -1;
5055
+ border-radius: var(--hm-radius);
5056
+ background: var(--hm-tab-hover-bg);
5057
+ opacity: 0;
5058
+ transition: opacity var(--hm-duration-quick) var(--hm-ease-standard);
5059
+ pointer-events: none;
5060
+ }
5061
+ .hm-tab-bar__tab:not(.hm-tab-bar__tab--active):hover::after {
5062
+ opacity: 1;
5037
5063
  }
5038
5064
  .hm-tab-bar__tab--active {
5039
5065
  background: var(--hm-tab-active-bg);
@@ -5059,6 +5085,9 @@ hm-tab-bar,
5059
5085
  .hm-tab-bar__tab--dragging {
5060
5086
  opacity: 0.5;
5061
5087
  }
5088
+ .hm-tab-bar__tab:first-child::before, .hm-tab-bar__tab:hover::before, .hm-tab-bar__tab--active + .hm-tab-bar__tab::before, .hm-tab-bar__tab:hover + .hm-tab-bar__tab::before {
5089
+ opacity: 0;
5090
+ }
5062
5091
  .hm-tab-bar__tab.hm-drag-source--hidden {
5063
5092
  display: flex !important;
5064
5093
  opacity: 0.5;
@@ -5071,7 +5100,7 @@ hm-tab-bar,
5071
5100
  gap: var(--hm-space-nano);
5072
5101
  align-self: stretch;
5073
5102
  min-width: 0;
5074
- padding-inline: var(--hm-space-xxxs) var(--hm-space-micro);
5103
+ padding-inline: calc(var(--hm-tab-gap) * 2) var(--hm-space-micro);
5075
5104
  border-radius: inherit;
5076
5105
  cursor: pointer;
5077
5106
  }
@@ -5128,7 +5157,7 @@ hm-tab-bar,
5128
5157
  }
5129
5158
  .hm-tab-bar__close:hover,
5130
5159
  .hm-tab-bar__new:hover {
5131
- background: var(--hm-nav-hover-strong);
5160
+ background: color-mix(in srgb, var(--hm-text) 12%, transparent);
5132
5161
  color: var(--hm-text);
5133
5162
  }
5134
5163
  .hm-tab-bar__close:focus-visible,
@@ -5138,20 +5167,72 @@ hm-tab-bar,
5138
5167
  }
5139
5168
 
5140
5169
  .hm-tab-bar__close {
5141
- inline-size: var(--hm-control-height-dense);
5142
- block-size: var(--hm-control-height-dense);
5143
- margin-inline-end: var(--hm-space-micro);
5144
- border-radius: var(--hm-radius-micro);
5170
+ inline-size: calc(var(--hm-tab-height) - 10px);
5171
+ block-size: calc(var(--hm-tab-height) - 10px);
5172
+ margin-inline-end: var(--hm-tab-gap);
5173
+ border-radius: var(--hm-radius-pill);
5145
5174
  }
5146
5175
 
5147
5176
  .hm-tab-bar__new {
5148
- align-self: center;
5149
- inline-size: var(--hm-control-height);
5150
- block-size: var(--hm-control-height);
5151
- border-radius: var(--hm-radius-control);
5177
+ align-self: flex-end;
5178
+ --hm-tab-new-size: calc(var(--hm-tab-height) - 2px);
5179
+ inline-size: var(--hm-tab-new-size);
5180
+ block-size: var(--hm-tab-new-size);
5181
+ margin-block-end: calc(var(--hm-tab-gap) + (var(--hm-tab-height) - var(--hm-tab-new-size)) / 2);
5182
+ border-radius: var(--hm-radius-pill);
5152
5183
  color: var(--hm-muted);
5153
5184
  }
5154
5185
 
5186
+ .hm-tab-bar__tab.hm-drag-preview {
5187
+ border-radius: var(--hm-radius) var(--hm-radius) 0 0;
5188
+ background: var(--hm-tab-active-bg);
5189
+ box-shadow: none;
5190
+ color: var(--hm-text);
5191
+ opacity: 1;
5192
+ transition: border-radius var(--hm-duration-quick) var(--hm-ease-standard), box-shadow var(--hm-duration-quick) var(--hm-ease-standard);
5193
+ }
5194
+ .hm-tab-bar__tab.hm-drag-preview::before, .hm-tab-bar__tab.hm-drag-preview::after {
5195
+ display: none;
5196
+ }
5197
+
5198
+ .hm-tab-bar__tab.hm-drag-preview--released {
5199
+ block-size: var(--hm-tab-height);
5200
+ padding-block-end: 0;
5201
+ border: var(--hm-border-hairline) solid var(--hm-divider);
5202
+ border-radius: var(--hm-radius);
5203
+ box-shadow: var(--hm-shadow-overlay);
5204
+ }
5205
+
5206
+ .hm-tab-bar__preview {
5207
+ position: fixed;
5208
+ z-index: var(--hm-z-tooltip);
5209
+ display: flex;
5210
+ flex-direction: column;
5211
+ gap: var(--hm-space-micro);
5212
+ box-sizing: border-box;
5213
+ max-inline-size: 20rem;
5214
+ padding: var(--hm-space-sm) var(--hm-space-md);
5215
+ border: var(--hm-border-hairline) solid var(--hm-divider);
5216
+ border-radius: var(--hm-radius);
5217
+ background: var(--hm-surface-overlay);
5218
+ box-shadow: var(--hm-shadow-overlay);
5219
+ color: var(--hm-text);
5220
+ font-size: var(--hm-font-size-sm);
5221
+ pointer-events: none;
5222
+ animation: hm-tab-bar-enter var(--hm-duration-quick) var(--hm-ease-decelerate);
5223
+ }
5224
+
5225
+ .hm-tab-bar__preview-title {
5226
+ font-weight: var(--hm-font-weight-semibold);
5227
+ overflow-wrap: anywhere;
5228
+ }
5229
+
5230
+ .hm-tab-bar__preview-description {
5231
+ color: var(--hm-muted);
5232
+ font-size: var(--hm-font-size-xs);
5233
+ overflow-wrap: anywhere;
5234
+ }
5235
+
5155
5236
  @keyframes hm-tab-bar-enter {
5156
5237
  from {
5157
5238
  opacity: 0;
@@ -5159,15 +5240,19 @@ hm-tab-bar,
5159
5240
  }
5160
5241
  @media (prefers-reduced-motion: reduce) {
5161
5242
  :where(:root:not([data-motion])) .hm-tab-bar__tab,
5243
+ :where(:root:not([data-motion])) .hm-tab-bar__tab::after,
5162
5244
  :where(:root:not([data-motion])) .hm-tab-bar__close,
5163
- :where(:root:not([data-motion])) .hm-tab-bar__new {
5245
+ :where(:root:not([data-motion])) .hm-tab-bar__new,
5246
+ :where(:root:not([data-motion])) .hm-tab-bar__preview {
5164
5247
  transition: none;
5165
5248
  animation: none;
5166
5249
  }
5167
5250
  }
5168
5251
  :where(:root[data-motion=reduce]) .hm-tab-bar__tab,
5252
+ :where(:root[data-motion=reduce]) .hm-tab-bar__tab::after,
5169
5253
  :where(:root[data-motion=reduce]) .hm-tab-bar__close,
5170
- :where(:root[data-motion=reduce]) .hm-tab-bar__new {
5254
+ :where(:root[data-motion=reduce]) .hm-tab-bar__new,
5255
+ :where(:root[data-motion=reduce]) .hm-tab-bar__preview {
5171
5256
  transition: none;
5172
5257
  animation: none;
5173
5258
  }
@@ -5219,15 +5304,15 @@ hm-tab-bar,
5219
5304
  }
5220
5305
  .hm-badge--success {
5221
5306
  background: var(--hm-success);
5222
- color: var(--hm-surface);
5307
+ color: var(--hm-on-status);
5223
5308
  }
5224
5309
  .hm-badge--warning {
5225
5310
  background: var(--hm-warning);
5226
- color: var(--hm-surface);
5311
+ color: var(--hm-on-status);
5227
5312
  }
5228
5313
  .hm-badge--danger {
5229
5314
  background: var(--hm-danger);
5230
- color: var(--hm-surface);
5315
+ color: var(--hm-on-status);
5231
5316
  }
5232
5317
  .hm-badge--dot {
5233
5318
  --hm-badge-size: var(--hm-space-xs);
@@ -5285,7 +5370,7 @@ hm-toast,
5285
5370
  padding: var(--hm-space-sm) var(--hm-space-xs) var(--hm-space-sm) var(--hm-space-sm);
5286
5371
  border: var(--hm-border-hairline) solid var(--hm-divider);
5287
5372
  border-radius: var(--hm-radius);
5288
- background: var(--hm-surface-raised);
5373
+ background: var(--hm-surface-overlay);
5289
5374
  box-shadow: var(--hm-shadow-lg);
5290
5375
  color: var(--hm-text);
5291
5376
  pointer-events: auto;
@@ -5420,7 +5505,7 @@ hm-toast,
5420
5505
  border-radius: var(--hm-radius-micro);
5421
5506
  padding: var(--hm-space-micro) var(--hm-space-sm);
5422
5507
  background: var(--hm-text);
5423
- color: var(--hm-surface);
5508
+ color: var(--hm-surface-raised);
5424
5509
  font-family: inherit;
5425
5510
  font-size: var(--hm-font-size-xs);
5426
5511
  font-weight: var(--hm-font-weight-medium);
@@ -5472,7 +5557,7 @@ hm-toast,
5472
5557
  border: var(--hm-border-hairline) solid var(--hm-border);
5473
5558
  border-radius: var(--hm-radius-control);
5474
5559
  padding: var(--hm-space-xs) var(--hm-space-sm);
5475
- background: var(--hm-surface);
5560
+ background: var(--hm-surface-overlay);
5476
5561
  box-shadow: var(--hm-shadow-overlay);
5477
5562
  color: var(--hm-text);
5478
5563
  font-family: var(--hm-font-family);
@@ -5525,7 +5610,7 @@ hm-toast,
5525
5610
  border: var(--hm-border-hairline) solid var(--hm-border);
5526
5611
  border-radius: var(--hm-radius-control);
5527
5612
  padding: var(--hm-space-sm) var(--hm-space-md);
5528
- background: var(--hm-surface-raised);
5613
+ background: var(--hm-surface-overlay);
5529
5614
  box-shadow: var(--hm-shadow-overlay);
5530
5615
  color: var(--hm-text);
5531
5616
  font-family: var(--hm-font-family);
@@ -6154,7 +6239,7 @@ hm-step,
6154
6239
  height: var(--hm-stepper-mark);
6155
6240
  border: var(--hm-border-thin) solid var(--hm-border);
6156
6241
  border-radius: var(--hm-radius-pill);
6157
- background: var(--hm-surface);
6242
+ background: var(--hm-surface-raised);
6158
6243
  color: var(--hm-muted);
6159
6244
  font-size: var(--hm-font-size-xs);
6160
6245
  font-weight: var(--hm-font-weight-semibold);
@@ -6416,7 +6501,7 @@ hm-wizard {
6416
6501
  z-index: -1;
6417
6502
  grid-area: 1/1/-1/2;
6418
6503
  border-inline-end: var(--hm-border-hairline) solid var(--hm-divider);
6419
- background: var(--hm-surface);
6504
+ background: var(--hm-surface-muted);
6420
6505
  }
6421
6506
  .hm-wizard--side .hm-wizard__stepper,
6422
6507
  .hm-wizard--side .hm-wizard__stepper > .hm-stepper {
@@ -6615,7 +6700,7 @@ hm-timeline-item,
6615
6700
  height: var(--hm-timeline-mark);
6616
6701
  border: var(--hm-timeline-ring) solid var(--hm-border);
6617
6702
  border-radius: var(--hm-radius-pill);
6618
- background: var(--hm-surface);
6703
+ background: var(--hm-surface-raised);
6619
6704
  color: var(--hm-muted);
6620
6705
  }
6621
6706
  .hm-timeline__glyph {
@@ -6878,7 +6963,7 @@ hm-avatar-group {
6878
6963
  margin-inline-start: var(--hm-avatar-group-overlap);
6879
6964
  }
6880
6965
  .hm-avatar-group__face {
6881
- box-shadow: 0 0 0 var(--hm-avatar-group-ring) var(--hm-surface);
6966
+ box-shadow: 0 0 0 var(--hm-avatar-group-ring) var(--hm-surface-raised);
6882
6967
  }
6883
6968
  .hm-avatar-group__more {
6884
6969
  display: inline-flex;
@@ -6888,7 +6973,7 @@ hm-avatar-group {
6888
6973
  inline-size: var(--hm-avatar-size);
6889
6974
  block-size: var(--hm-avatar-size);
6890
6975
  border-radius: 50%;
6891
- box-shadow: 0 0 0 var(--hm-avatar-group-ring) var(--hm-surface);
6976
+ box-shadow: 0 0 0 var(--hm-avatar-group-ring) var(--hm-surface-raised);
6892
6977
  background: var(--hm-hover);
6893
6978
  color: var(--hm-text);
6894
6979
  font-size: calc(var(--hm-avatar-size) * 0.34);
@@ -7219,11 +7304,11 @@ hm-reorder-list {
7219
7304
  .hm-reorder-list__item--grabbed, .hm-reorder-list__item.hm-drag-preview {
7220
7305
  z-index: 1;
7221
7306
  border-color: var(--hm-action);
7222
- background: var(--hm-surface-raised);
7307
+ background: var(--hm-surface-overlay);
7223
7308
  box-shadow: var(--hm-shadow-lg);
7224
7309
  }
7225
7310
  .hm-reorder-list__item--grabbed:hover, .hm-reorder-list__item.hm-drag-preview:hover {
7226
- background: var(--hm-surface-raised);
7311
+ background: var(--hm-surface-overlay);
7227
7312
  }
7228
7313
  .hm-reorder-list__item.hm-drag-source--grabbed {
7229
7314
  outline: none;
@@ -7671,6 +7756,28 @@ hm-list-editor {
7671
7756
  outline: var(--hm-border-thin) solid Highlight;
7672
7757
  }
7673
7758
  }
7759
+ /* Fundo da coluna e do cartão. A coluna antes era `--hm-surface`, a mesma cor da página: ficava só a borda e a coluna
7760
+ vazia parecia um buraco. Agora a coluna se destaca da página e o cartão contrasta com a coluna: no claro, coluna
7761
+ `--hm-surface-muted` (um tom abaixo da página) e cartão `--hm-surface-raised` (branco). No escuro os degraus entre as
7762
+ superfícies são curtos (coluna raised e cartão muted ficavam quase iguais, e era difícil ver onde um cartão começa):
7763
+ a coluna fica entre a página e o raised, o cartão clareia na direção do texto e ganha uma borda mais visível
7764
+ (`--hm-kanban-card-border`). Redeclarados onde o tema e a família mudam (`var()` resolve onde é declarado); o app
7765
+ pode sobrescrever os três. */
7766
+ :root,
7767
+ [data-theme],
7768
+ [data-family] {
7769
+ --hm-kanban-column-bg: var(--hm-surface-muted);
7770
+ --hm-kanban-card-bg: var(--hm-surface-raised);
7771
+ --hm-kanban-card-border: var(--hm-border);
7772
+ }
7773
+
7774
+ [data-theme=dark],
7775
+ [data-theme=dark] [data-family]:not([data-theme]) {
7776
+ --hm-kanban-column-bg: color-mix(in srgb, var(--hm-surface) 55%, var(--hm-surface-raised));
7777
+ --hm-kanban-card-bg: color-mix(in srgb, var(--hm-text) 9%, var(--hm-surface-raised));
7778
+ --hm-kanban-card-border: color-mix(in srgb, var(--hm-text) 22%, var(--hm-surface-raised));
7779
+ }
7780
+
7674
7781
  hm-kanban {
7675
7782
  display: block;
7676
7783
  min-width: 0;
@@ -7723,7 +7830,7 @@ hm-kanban {
7723
7830
  border: var(--hm-border-hairline) solid var(--hm-border);
7724
7831
  border-radius: var(--hm-radius);
7725
7832
  padding: var(--hm-space-xs);
7726
- background: var(--hm-surface);
7833
+ background: var(--hm-kanban-column-bg);
7727
7834
  transition: border-color var(--hm-duration-quick) var(--hm-ease-standard);
7728
7835
  }
7729
7836
  .hm-kanban-column__header {
@@ -7798,6 +7905,25 @@ hm-kanban {
7798
7905
  flex: none;
7799
7906
  color: var(--hm-warning);
7800
7907
  }
7908
+ .hm-kanban-column__summary {
7909
+ display: flex;
7910
+ flex-wrap: wrap;
7911
+ align-items: center;
7912
+ gap: var(--hm-space-micro) var(--hm-space-xs);
7913
+ min-width: 0;
7914
+ color: var(--hm-muted);
7915
+ font-size: var(--hm-font-size-xs);
7916
+ }
7917
+ .hm-kanban-column__summary:empty {
7918
+ display: none;
7919
+ }
7920
+ .hm-kanban-column__footer {
7921
+ display: flex;
7922
+ flex: none;
7923
+ flex-direction: column;
7924
+ gap: var(--hm-space-nano);
7925
+ min-width: 0;
7926
+ }
7801
7927
  .hm-kanban-column__list {
7802
7928
  display: flex;
7803
7929
  flex: 1;
@@ -7817,6 +7943,14 @@ hm-kanban {
7817
7943
  font-size: var(--hm-font-size-sm);
7818
7944
  text-align: center;
7819
7945
  }
7946
+ .hm-kanban-column__empty--custom {
7947
+ display: flex;
7948
+ flex: 1;
7949
+ flex-direction: column;
7950
+ align-items: center;
7951
+ justify-content: center;
7952
+ border-style: none;
7953
+ }
7820
7954
  .hm-kanban-column__empty--hidden {
7821
7955
  display: none;
7822
7956
  }
@@ -7859,10 +7993,10 @@ hm-kanban {
7859
7993
  .hm-kanban-card {
7860
7994
  display: block;
7861
7995
  box-sizing: border-box;
7862
- border: var(--hm-border-hairline) solid var(--hm-border);
7996
+ border: var(--hm-border-hairline) solid var(--hm-kanban-card-border);
7863
7997
  border-radius: var(--hm-radius);
7864
7998
  padding: var(--hm-space-xs);
7865
- background: var(--hm-surface-raised);
7999
+ background: var(--hm-kanban-card-bg);
7866
8000
  color: var(--hm-text);
7867
8001
  font-size: var(--hm-font-size-md);
7868
8002
  line-height: var(--hm-line-height-normal);
@@ -8184,7 +8318,7 @@ hm-kanban {
8184
8318
  inline-size: var(--hm-control-height-large);
8185
8319
  block-size: var(--hm-control-height-large);
8186
8320
  border: var(--hm-border-hairline) solid var(--hm-border);
8187
- background: var(--hm-surface);
8321
+ background: var(--hm-surface-muted);
8188
8322
  color: var(--hm-muted);
8189
8323
  }
8190
8324
  .hm-item__icon {
@@ -8534,7 +8668,7 @@ hm-description-list {
8534
8668
  padding: 0 var(--hm-space-xxxs);
8535
8669
  border: var(--hm-border-hairline) solid var(--hm-border);
8536
8670
  border-radius: var(--hm-radius-control);
8537
- background: var(--hm-surface);
8671
+ background: var(--hm-surface-raised);
8538
8672
  color: var(--hm-text);
8539
8673
  font: inherit;
8540
8674
  }
@@ -8587,7 +8721,7 @@ hm-property-view {
8587
8721
  min-height: var(--hm-control-height);
8588
8722
  border: 0;
8589
8723
  padding: var(--hm-space-nano) var(--hm-space-xs);
8590
- background: var(--hm-surface);
8724
+ background: var(--hm-surface-raised);
8591
8725
  color: var(--hm-text);
8592
8726
  font: inherit;
8593
8727
  font-size: var(--hm-font-size-md);
@@ -8765,7 +8899,7 @@ hm-card-container {
8765
8899
  border: var(--hm-border-hairline) solid var(--hm-border);
8766
8900
  border-radius: var(--hm-radius);
8767
8901
  padding: var(--hm-space-sm);
8768
- background: var(--hm-surface-raised);
8902
+ background: var(--hm-surface-muted);
8769
8903
  }
8770
8904
  .hm-card-container__skeleton-title {
8771
8905
  border-radius: var(--hm-radius-micro);
@@ -8861,7 +8995,7 @@ hm-card-container {
8861
8995
  border: var(--hm-border-hairline) solid var(--hm-border);
8862
8996
  border-radius: var(--hm-radius-control);
8863
8997
  padding-inline: var(--hm-space-nano);
8864
- background: var(--hm-surface);
8998
+ background: var(--hm-surface-raised);
8865
8999
  color: var(--hm-text);
8866
9000
  font: inherit;
8867
9001
  font-size: var(--hm-font-size-sm);
@@ -9134,7 +9268,7 @@ hm-legend {
9134
9268
  margin: calc(var(--hm-card-pad) * -1) calc(var(--hm-card-pad) * -1) var(--hm-card-pad);
9135
9269
  border-start-start-radius: var(--hm-card-media-radius);
9136
9270
  border-start-end-radius: var(--hm-card-media-radius);
9137
- background: var(--hm-surface);
9271
+ background: var(--hm-surface-muted);
9138
9272
  aspect-ratio: var(--hm-card-media-ratio, 16/9);
9139
9273
  }
9140
9274
  .hm-card__media:empty {
@@ -9655,7 +9789,7 @@ hm-drawer, .hm-drawer-host {
9655
9789
  display: grid;
9656
9790
  grid-template-rows: auto 1fr auto;
9657
9791
  width: min(var(--hm-drawer-width), 100vw);
9658
- background: var(--hm-surface-raised);
9792
+ background: var(--hm-surface-overlay);
9659
9793
  box-shadow: var(--hm-shadow-lg);
9660
9794
  opacity: 1;
9661
9795
  translate: 0 0;
@@ -9842,7 +9976,7 @@ hm-floating-window {
9842
9976
  min-width: 0;
9843
9977
  border: var(--hm-border-hairline) solid var(--hm-border);
9844
9978
  border-radius: var(--hm-radius);
9845
- background: var(--hm-surface-raised);
9979
+ background: var(--hm-surface-overlay);
9846
9980
  box-shadow: var(--hm-shadow-overlay);
9847
9981
  color: var(--hm-text);
9848
9982
  }
@@ -9903,7 +10037,7 @@ hm-floating-window {
9903
10037
  overflow: auto;
9904
10038
  border-block-start: var(--hm-border-hairline) solid var(--hm-divider);
9905
10039
  padding: var(--hm-space-sm);
9906
- background: var(--hm-surface);
10040
+ background: var(--hm-surface-overlay);
9907
10041
  }
9908
10042
  .hm-floating-window__body[hidden] {
9909
10043
  display: none;
@@ -9922,7 +10056,7 @@ hm-floating-window {
9922
10056
  gap: var(--hm-space-xs);
9923
10057
  border-block-start: var(--hm-border-hairline) solid var(--hm-divider);
9924
10058
  padding: var(--hm-space-xs) var(--hm-space-sm);
9925
- background: var(--hm-surface);
10059
+ background: var(--hm-surface-overlay);
9926
10060
  border-end-start-radius: var(--hm-radius);
9927
10061
  border-end-end-radius: var(--hm-radius);
9928
10062
  }
@@ -10015,7 +10149,8 @@ hm-palette-shell {
10015
10149
  display: flex;
10016
10150
  justify-content: center;
10017
10151
  align-items: flex-start;
10018
- padding: 10dvh var(--hm-space-md) var(--hm-space-md);
10152
+ /* Logo abaixo do cabeçalho (onde fica o campo de busca que abre a paleta), não no meio da tela. */
10153
+ padding: calc(var(--hm-header-height) + var(--hm-space-lg)) var(--hm-space-md) var(--hm-space-md);
10019
10154
  }
10020
10155
  .hm-command-palette__backdrop {
10021
10156
  position: absolute;
@@ -10031,8 +10166,8 @@ hm-palette-shell {
10031
10166
  max-height: 70dvh;
10032
10167
  border: var(--hm-border-hairline) solid var(--hm-divider);
10033
10168
  border-radius: var(--hm-radius);
10034
- padding: var(--hm-space-sm);
10035
- background: var(--hm-surface-raised);
10169
+ padding: var(--hm-space-md);
10170
+ background: var(--hm-surface-overlay);
10036
10171
  box-shadow: var(--hm-shadow-overlay);
10037
10172
  color: var(--hm-text);
10038
10173
  }
@@ -10044,17 +10179,16 @@ hm-palette-shell {
10044
10179
  flex: none;
10045
10180
  align-items: center;
10046
10181
  gap: var(--hm-space-xs);
10047
- min-height: var(--hm-control-height);
10182
+ min-height: var(--hm-control-height-large);
10048
10183
  border: var(--hm-border-hairline) solid var(--hm-border);
10049
10184
  border-radius: var(--hm-radius-control);
10050
- padding: 0 var(--hm-space-sm);
10051
- background: var(--hm-surface);
10185
+ padding: 0 var(--hm-space-xs) 0 var(--hm-space-sm);
10186
+ background: var(--hm-surface-raised);
10052
10187
  color: var(--hm-muted);
10053
- /* O foco visível é a borda do campo: dois anéis no mesmo controle leem como dois controles. */
10188
+ /* O foco visível é a borda do campo, na cor de destaque (um anel só). */
10054
10189
  }
10055
10190
  .hm-command-palette__field:focus-within {
10056
10191
  border-color: var(--hm-accent);
10057
- box-shadow: 0 0 0 var(--hm-border-hairline) var(--hm-accent);
10058
10192
  }
10059
10193
  .hm-command-palette__search-icon {
10060
10194
  flex: none;
@@ -10085,7 +10219,7 @@ hm-palette-shell {
10085
10219
  border: var(--hm-border-hairline) solid var(--hm-border);
10086
10220
  border-radius: var(--hm-radius-micro);
10087
10221
  padding: 0 var(--hm-space-micro);
10088
- background: var(--hm-surface-raised);
10222
+ background: var(--hm-surface-muted);
10089
10223
  color: var(--hm-muted);
10090
10224
  font-family: inherit;
10091
10225
  font-size: var(--hm-font-size-xs);
@@ -10095,19 +10229,27 @@ hm-palette-shell {
10095
10229
  .hm-command-palette__list {
10096
10230
  flex: 1 1 auto;
10097
10231
  min-height: 0;
10098
- margin-block-start: var(--hm-space-xs);
10232
+ margin-block-start: var(--hm-space-sm);
10099
10233
  overflow-y: auto;
10100
10234
  overscroll-behavior: contain;
10101
10235
  }
10102
10236
  .hm-command-palette__list[hidden] {
10103
10237
  display: none;
10104
10238
  }
10239
+ .hm-command-palette {
10240
+ /* Grupos separados por um divisor, como seções, com respiro igual acima e abaixo. */
10241
+ }
10105
10242
  .hm-command-palette__group + .hm-command-palette__group {
10106
- margin-block-start: var(--hm-space-xs);
10243
+ margin-block-start: var(--hm-space-sm);
10244
+ padding-block-start: var(--hm-space-sm);
10245
+ border-block-start: var(--hm-border-hairline) solid var(--hm-divider);
10107
10246
  }
10108
10247
  .hm-command-palette__group-label {
10109
- padding: var(--hm-space-xs) var(--hm-space-sm) var(--hm-space-micro);
10110
- color: var(--hm-muted);
10248
+ display: flex;
10249
+ align-items: center;
10250
+ gap: var(--hm-space-xs);
10251
+ padding: var(--hm-space-xs) var(--hm-space-sm);
10252
+ color: var(--hm-text);
10111
10253
  font-size: var(--hm-font-size-xs);
10112
10254
  font-weight: var(--hm-font-weight-semibold);
10113
10255
  text-transform: uppercase;
@@ -10117,17 +10259,16 @@ hm-palette-shell {
10117
10259
  display: flex;
10118
10260
  align-items: center;
10119
10261
  gap: var(--hm-space-sm);
10120
- min-height: var(--hm-control-height);
10262
+ min-height: var(--hm-control-height-large);
10121
10263
  border-radius: var(--hm-radius-control);
10122
10264
  padding: var(--hm-space-xs) var(--hm-space-sm);
10123
10265
  color: var(--hm-text);
10124
10266
  cursor: pointer;
10125
- /* Ativa (aria-activedescendant): fundo e barra de destaque — a barra garante o sinal sem
10126
- depender só da cor de fundo (WCAG 1.4.11). */
10267
+ /* Ativa (aria-activedescendant): fundo neutro, como o hover de uma lista (sem barra lateral). No alto
10268
+ contraste, o contorno de sistema marca a ativa (ver forced-colors abaixo). */
10127
10269
  }
10128
10270
  .hm-command-palette__option--active {
10129
- background: var(--hm-accent-subtle);
10130
- box-shadow: inset var(--hm-border-thin) 0 0 var(--hm-accent);
10271
+ background: var(--hm-hover);
10131
10272
  }
10132
10273
  .hm-command-palette__option[aria-disabled=true] {
10133
10274
  color: var(--hm-disabled-text);
@@ -10135,12 +10276,13 @@ hm-palette-shell {
10135
10276
  }
10136
10277
  .hm-command-palette__option-icon {
10137
10278
  flex: none;
10138
- color: var(--hm-accent-strong);
10279
+ color: var(--hm-muted);
10139
10280
  }
10140
10281
  .hm-command-palette__option-text {
10141
10282
  display: flex;
10142
10283
  flex: 1;
10143
10284
  flex-direction: column;
10285
+ gap: var(--hm-space-nano);
10144
10286
  min-width: 0;
10145
10287
  }
10146
10288
  .hm-command-palette__option-label {
@@ -10278,7 +10420,7 @@ hm-carousel {
10278
10420
  margin-block-end: var(--hm-space-xs);
10279
10421
  overflow: hidden;
10280
10422
  border-radius: var(--hm-radius);
10281
- background: var(--hm-surface-raised);
10423
+ background: var(--hm-surface-muted);
10282
10424
  }
10283
10425
  .hm-carousel__image {
10284
10426
  display: block;
@@ -10418,7 +10560,7 @@ hm-paginator {
10418
10560
  padding-inline: var(--hm-space-xs) calc(var(--hm-icon-md) + var(--hm-space-xs));
10419
10561
  border: var(--hm-border-hairline) solid var(--hm-border);
10420
10562
  border-radius: var(--hm-radius-control);
10421
- background: var(--hm-surface);
10563
+ background: var(--hm-surface-raised);
10422
10564
  color: var(--hm-text);
10423
10565
  font: inherit;
10424
10566
  font-size: var(--hm-font-size-sm);
@@ -10579,7 +10721,7 @@ hm-paginator {
10579
10721
  border: 1px solid var(--hm-border);
10580
10722
  border-radius: var(--hm-radius-control);
10581
10723
  padding-inline: var(--hm-space-nano);
10582
- background: var(--hm-surface);
10724
+ background: var(--hm-surface-raised);
10583
10725
  color: var(--hm-muted);
10584
10726
  }
10585
10727
  .hm-data-grid-action-bar__search:focus-within {
@@ -10683,6 +10825,20 @@ hm-data-grid {
10683
10825
  display: block;
10684
10826
  inline-size: 100%;
10685
10827
  min-inline-size: 0;
10828
+ /* Tons do tema na grade: cabeçalho na banda de marca da família (como o menu do topo), linhas intercaladas
10829
+ e rodapé com um véu do accent. No escuro a banda é o próprio fundo da página, então o cabeçalho vira o
10830
+ accent sobre o card. Quem hospeda a grade pode sobrescrever qualquer um. */
10831
+ --hm-data-grid-head-bg: var(--hm-table-head-bg);
10832
+ --hm-data-grid-head-text: var(--hm-table-head-text);
10833
+ --hm-data-grid-head-accent: var(--hm-panel-accent);
10834
+ --hm-data-grid-row-alt: color-mix(in srgb, var(--hm-accent) 4%, var(--hm-surface-muted));
10835
+ --hm-data-grid-footer-bg: color-mix(in srgb, var(--hm-accent) 10%, var(--hm-surface-raised));
10836
+ }
10837
+
10838
+ [data-theme=dark] hm-data-grid {
10839
+ --hm-data-grid-head-accent: var(--hm-accent);
10840
+ --hm-data-grid-row-alt: color-mix(in srgb, var(--hm-accent) 7%, var(--hm-surface-raised));
10841
+ --hm-data-grid-footer-bg: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface-raised));
10686
10842
  }
10687
10843
 
10688
10844
  .hm-data-grid {
@@ -10693,6 +10849,7 @@ hm-data-grid {
10693
10849
  table-layout: fixed;
10694
10850
  font-size: var(--hm-font-size-sm);
10695
10851
  color: var(--hm-text);
10852
+ background: var(--hm-surface-raised);
10696
10853
  }
10697
10854
  .hm-data-grid th,
10698
10855
  .hm-data-grid td {
@@ -10726,8 +10883,17 @@ hm-data-grid {
10726
10883
  }
10727
10884
 
10728
10885
  .hm-data-grid thead {
10729
- background: var(--hm-surface-raised);
10886
+ background: var(--hm-data-grid-head-bg);
10730
10887
  padding-inline-end: var(--hm-data-grid-scrollbar, 0);
10888
+ /* Os tokens do conteúdo passam ao tom da banda: título, ícones de ordenar/filtrar, checkbox de
10889
+ selecionar tudo, divisores e foco ficam legíveis sobre ela sem regra própria em cada peça. */
10890
+ --hm-text: var(--hm-data-grid-head-text);
10891
+ --hm-muted: color-mix(in srgb, var(--hm-data-grid-head-text) 80%, var(--hm-data-grid-head-bg));
10892
+ --hm-accent: var(--hm-data-grid-head-accent);
10893
+ --hm-on-action: var(--hm-data-grid-head-bg);
10894
+ --hm-divider: color-mix(in srgb, var(--hm-data-grid-head-text) 28%, var(--hm-data-grid-head-bg));
10895
+ --hm-border: color-mix(in srgb, var(--hm-data-grid-head-text) 40%, var(--hm-data-grid-head-bg));
10896
+ --hm-focus-color: var(--hm-data-grid-head-text);
10731
10897
  }
10732
10898
 
10733
10899
  .hm-data-grid th {
@@ -10878,6 +11044,11 @@ hm-data-grid {
10878
11044
 
10879
11045
  .hm-data-grid__row {
10880
11046
  transition: background var(--hm-duration-quick) var(--hm-ease);
11047
+ /* Linhas intercaladas (contando só as linhas de dado, não as de detalhe). `:where` zera a
11048
+ especificidade: hover, selecionada e erro/aviso continuam vencendo. */
11049
+ }
11050
+ .hm-data-grid__row:where(:nth-child(even of .hm-data-grid__row)) {
11051
+ background: var(--hm-data-grid-row-alt);
10881
11052
  }
10882
11053
  .hm-data-grid__row:hover {
10883
11054
  background: var(--hm-hover);
@@ -10890,7 +11061,7 @@ hm-data-grid {
10890
11061
  regra inteira — não existia faixa nenhuma, só o tingimento de fundo abaixo). */
10891
11062
  }
10892
11063
  .hm-data-grid__row--selected {
10893
- background: color-mix(in srgb, var(--hm-accent) 10%, var(--hm-surface));
11064
+ background: color-mix(in srgb, var(--hm-accent) 10%, var(--hm-surface-raised));
10894
11065
  }
10895
11066
  .hm-data-grid__row--selected td:first-child {
10896
11067
  box-shadow: inset var(--hm-space-micro) 0 0 0 var(--hm-accent);
@@ -10903,10 +11074,10 @@ hm-data-grid {
10903
11074
  para um alerta sozinho, não para várias linhas seguidas). O texto do status fica numa célula. */
10904
11075
  }
10905
11076
  .hm-data-grid__row--error {
10906
- background: color-mix(in srgb, var(--hm-danger) 10%, var(--hm-surface));
11077
+ background: color-mix(in srgb, var(--hm-danger) 10%, var(--hm-surface-raised));
10907
11078
  }
10908
11079
  .hm-data-grid__row--warning {
10909
- background: color-mix(in srgb, var(--hm-warning) 10%, var(--hm-surface));
11080
+ background: color-mix(in srgb, var(--hm-warning) 10%, var(--hm-surface-raised));
10910
11081
  }
10911
11082
  .hm-data-grid__row--error:hover, .hm-data-grid__row--warning:hover {
10912
11083
  background: var(--hm-hover);
@@ -10990,7 +11161,7 @@ hm-data-grid {
10990
11161
  gap: var(--hm-space-sm);
10991
11162
  min-block-size: var(--hm-control-height-large);
10992
11163
  border-top: 1px solid var(--hm-border);
10993
- background: var(--hm-surface-raised);
11164
+ background: var(--hm-data-grid-footer-bg);
10994
11165
  padding: var(--hm-space-micro) var(--hm-space-sm);
10995
11166
  color: var(--hm-muted);
10996
11167
  font-size: var(--hm-font-size-xs);
@@ -11029,7 +11200,7 @@ hm-data-grid {
11029
11200
  border: var(--hm-border-hairline) solid var(--hm-border);
11030
11201
  border-radius: var(--hm-radius-micro);
11031
11202
  padding-inline: var(--hm-space-micro);
11032
- background: var(--hm-surface);
11203
+ background: var(--hm-surface-raised);
11033
11204
  color: var(--hm-text);
11034
11205
  font: inherit;
11035
11206
  cursor: pointer;
@@ -11091,7 +11262,7 @@ hm-data-grid {
11091
11262
  border: var(--hm-border-hairline) solid var(--hm-border);
11092
11263
  border-radius: var(--hm-radius-micro);
11093
11264
  padding-inline: var(--hm-space-micro);
11094
- background: var(--hm-surface);
11265
+ background: var(--hm-surface-raised);
11095
11266
  color: var(--hm-text);
11096
11267
  font: inherit;
11097
11268
  text-align: center;
@@ -11155,7 +11326,7 @@ hm-data-grid {
11155
11326
  }
11156
11327
 
11157
11328
  .hm-data-grid__row--pane {
11158
- background: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface));
11329
+ background: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface-raised));
11159
11330
  }
11160
11331
  .hm-data-grid__row--pane td:first-child {
11161
11332
  box-shadow: inset var(--hm-space-micro) 0 0 0 var(--hm-accent);
@@ -11172,7 +11343,7 @@ hm-data-grid {
11172
11343
  min-block-size: 0;
11173
11344
  flex-direction: column;
11174
11345
  border-inline-start: var(--hm-border-hairline) solid var(--hm-border);
11175
- background: var(--hm-surface);
11346
+ background: var(--hm-surface-raised);
11176
11347
  animation: hm-data-grid-pane-in var(--hm-duration-medium) var(--hm-ease);
11177
11348
  }
11178
11349
 
@@ -11183,7 +11354,7 @@ hm-data-grid {
11183
11354
  gap: var(--hm-space-sm);
11184
11355
  border-block-end: var(--hm-border-hairline) solid var(--hm-divider);
11185
11356
  padding: var(--hm-space-nano) var(--hm-space-sm);
11186
- background: var(--hm-surface-raised);
11357
+ background: var(--hm-surface-muted);
11187
11358
  }
11188
11359
 
11189
11360
  .hm-data-grid__pane-title {
@@ -11254,7 +11425,7 @@ hm-data-grid {
11254
11425
  border: 1px solid var(--hm-border);
11255
11426
  border-radius: var(--hm-radius-control);
11256
11427
  padding-inline: var(--hm-space-nano);
11257
- background: var(--hm-surface);
11428
+ background: var(--hm-surface-raised);
11258
11429
  color: var(--hm-text);
11259
11430
  font-size: var(--hm-font-size-sm);
11260
11431
  }
@@ -11283,8 +11454,15 @@ hm-data-grid {
11283
11454
 
11284
11455
  .hm-data-grid__toolbar {
11285
11456
  display: flex;
11457
+ flex-wrap: wrap;
11458
+ align-items: center;
11286
11459
  justify-content: flex-end;
11460
+ gap: var(--hm-space-xs);
11287
11461
  margin-block-end: var(--hm-space-sm);
11462
+ /* Sem botão do app nem ferramenta: a barra não ocupa espaço. */
11463
+ }
11464
+ .hm-data-grid__toolbar:not(:has(*)) {
11465
+ display: none;
11288
11466
  }
11289
11467
 
11290
11468
  .hm-data-grid__tools {
@@ -11302,7 +11480,7 @@ hm-data-grid {
11302
11480
  border: var(--hm-border-hairline) solid var(--hm-border);
11303
11481
  border-radius: var(--hm-radius-control);
11304
11482
  padding-inline: var(--hm-space-nano);
11305
- background: var(--hm-surface);
11483
+ background: var(--hm-surface-raised);
11306
11484
  color: var(--hm-text);
11307
11485
  font: inherit;
11308
11486
  font-size: var(--hm-font-size-sm);
@@ -11363,7 +11541,7 @@ hm-data-grid {
11363
11541
  }
11364
11542
 
11365
11543
  .hm-data-grid__group-row {
11366
- background: var(--hm-surface-raised);
11544
+ background: var(--hm-surface-muted);
11367
11545
  }
11368
11546
 
11369
11547
  .hm-data-grid .hm-data-grid__group-cell {
@@ -11439,7 +11617,7 @@ hm-data-grid {
11439
11617
  }
11440
11618
 
11441
11619
  .hm-data-grid tfoot {
11442
- background: var(--hm-surface-raised);
11620
+ background: var(--hm-data-grid-footer-bg);
11443
11621
  }
11444
11622
 
11445
11623
  .hm-data-grid__totals td,
@@ -11508,7 +11686,7 @@ hm-data-grid {
11508
11686
  border: var(--hm-border-hairline) solid var(--hm-border);
11509
11687
  border-radius: var(--hm-radius-micro);
11510
11688
  padding-inline: var(--hm-space-micro);
11511
- background: var(--hm-surface);
11689
+ background: var(--hm-surface-raised);
11512
11690
  color: var(--hm-text);
11513
11691
  font: inherit;
11514
11692
  font-size: var(--hm-font-size-sm);
@@ -11646,16 +11824,20 @@ hm-data-grid {
11646
11824
  .hm-data-grid .hm-data-grid__pinned {
11647
11825
  position: sticky;
11648
11826
  z-index: 1;
11649
- background-color: var(--hm-surface);
11827
+ background-color: var(--hm-surface-raised);
11650
11828
  }
11651
11829
 
11652
11830
  .hm-data-grid thead .hm-data-grid__pinned {
11653
11831
  z-index: 3;
11654
- background-color: var(--hm-surface-raised);
11832
+ background-color: var(--hm-data-grid-head-bg);
11655
11833
  }
11656
11834
 
11657
11835
  .hm-data-grid tfoot .hm-data-grid__pinned {
11658
- background-color: var(--hm-surface-raised);
11836
+ background-color: var(--hm-data-grid-footer-bg);
11837
+ }
11838
+
11839
+ .hm-data-grid__row:where(:nth-child(even of .hm-data-grid__row)) > .hm-data-grid__pinned {
11840
+ background-color: var(--hm-data-grid-row-alt);
11659
11841
  }
11660
11842
 
11661
11843
  .hm-data-grid__row:hover > .hm-data-grid__pinned {
@@ -11663,19 +11845,19 @@ hm-data-grid {
11663
11845
  }
11664
11846
 
11665
11847
  .hm-data-grid__row--selected > .hm-data-grid__pinned {
11666
- background-color: color-mix(in srgb, var(--hm-accent) 10%, var(--hm-surface));
11848
+ background-color: color-mix(in srgb, var(--hm-accent) 10%, var(--hm-surface-raised));
11667
11849
  }
11668
11850
 
11669
11851
  .hm-data-grid__row--pane > .hm-data-grid__pinned {
11670
- background-color: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface));
11852
+ background-color: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface-raised));
11671
11853
  }
11672
11854
 
11673
11855
  .hm-data-grid__row--error > .hm-data-grid__pinned {
11674
- background-color: color-mix(in srgb, var(--hm-danger) 10%, var(--hm-surface));
11856
+ background-color: color-mix(in srgb, var(--hm-danger) 10%, var(--hm-surface-raised));
11675
11857
  }
11676
11858
 
11677
11859
  .hm-data-grid__row--warning > .hm-data-grid__pinned {
11678
- background-color: color-mix(in srgb, var(--hm-warning) 10%, var(--hm-surface));
11860
+ background-color: color-mix(in srgb, var(--hm-warning) 10%, var(--hm-surface-raised));
11679
11861
  }
11680
11862
 
11681
11863
  /* Divisor + sombra na borda das fixas, só quando há conteúdo passando por baixo daquele lado
@@ -11713,7 +11895,7 @@ hm-data-grid {
11713
11895
  position: sticky;
11714
11896
  inset-block-start: 0;
11715
11897
  z-index: 2;
11716
- background-color: var(--hm-surface-raised);
11898
+ background-color: var(--hm-data-grid-head-bg);
11717
11899
  }
11718
11900
 
11719
11901
  .hm-data-grid--virtual .hm-data-grid__scroll:focus-visible {
@@ -11893,7 +12075,7 @@ hm-data-grid {
11893
12075
  border: var(--hm-border-hairline) solid var(--hm-divider);
11894
12076
  border-radius: var(--hm-radius-control);
11895
12077
  padding: var(--hm-space-sm);
11896
- background: var(--hm-surface-raised);
12078
+ background: var(--hm-surface-overlay);
11897
12079
  box-shadow: var(--hm-shadow-overlay);
11898
12080
  color: var(--hm-text);
11899
12081
  font-family: var(--hm-font-family);
@@ -12229,6 +12411,7 @@ hm-workspace-node {
12229
12411
  min-inline-size: 0;
12230
12412
  min-block-size: 0;
12231
12413
  overflow: hidden;
12414
+ /* O painel é a página: os cards (surface-raised) se destacam dele. */
12232
12415
  background: var(--hm-surface);
12233
12416
  }
12234
12417
 
@@ -12559,7 +12742,7 @@ hm-workspace-node {
12559
12742
  max-width: min(32rem, 100vw - var(--hm-space-md));
12560
12743
  border: var(--hm-border-hairline) solid var(--hm-divider);
12561
12744
  border-radius: var(--hm-radius-control);
12562
- background: var(--hm-surface-raised);
12745
+ background: var(--hm-surface-overlay);
12563
12746
  color: var(--hm-text);
12564
12747
  box-shadow: var(--hm-shadow-overlay);
12565
12748
  font-size: var(--hm-font-size-sm);
@@ -12851,7 +13034,7 @@ hm-workspace-node {
12851
13034
  max-width: min(32rem, 100vw - var(--hm-space-md));
12852
13035
  border: var(--hm-border-hairline) solid var(--hm-divider);
12853
13036
  border-radius: var(--hm-radius-control);
12854
- background: var(--hm-surface-raised);
13037
+ background: var(--hm-surface-overlay);
12855
13038
  color: var(--hm-text);
12856
13039
  box-shadow: var(--hm-shadow-overlay);
12857
13040
  font-size: var(--hm-font-size-sm);
@@ -12945,7 +13128,7 @@ hm-workspace-node {
12945
13128
  height: var(--hm-icon-md);
12946
13129
  border: var(--hm-border-hairline) solid var(--hm-border);
12947
13130
  border-radius: var(--hm-radius-micro);
12948
- background: var(--hm-surface);
13131
+ background: var(--hm-surface-raised);
12949
13132
  color: var(--hm-on-action);
12950
13133
  --hm-icon-size: calc(var(--hm-icon-md) - var(--hm-space-micro));
12951
13134
  }
@@ -13236,7 +13419,7 @@ hm-workspace-node {
13236
13419
  padding: 0 var(--hm-space-xxxs);
13237
13420
  border: var(--hm-border-hairline) solid var(--hm-border);
13238
13421
  border-radius: var(--hm-radius-control);
13239
- background: var(--hm-surface);
13422
+ background: var(--hm-surface-raised);
13240
13423
  color: var(--hm-text);
13241
13424
  font: inherit;
13242
13425
  font-size: var(--hm-font-size-sm);
@@ -14016,7 +14199,7 @@ hm-tab {
14016
14199
  .hm-rich-text__bar {
14017
14200
  padding: var(--hm-space-micro) var(--hm-space-xs);
14018
14201
  border-block-end: var(--hm-border-hairline) solid var(--hm-divider);
14019
- background: var(--hm-surface);
14202
+ background: var(--hm-surface-muted);
14020
14203
  cursor: default;
14021
14204
  }
14022
14205
  .hm-rich-text__bar .hm-toolbar__start {
@@ -14057,8 +14240,9 @@ hm-tab {
14057
14240
  max-block-size: calc(var(--hm-rich-text-max-rows) * 1lh);
14058
14241
  overflow-y: auto;
14059
14242
  }
14060
- .hm-rich-text__area :where(pre) {
14061
- white-space: pre;
14243
+ .hm-rich-text__area.hm-prose :where(pre) {
14244
+ white-space: pre-wrap;
14245
+ overflow-wrap: anywhere;
14062
14246
  }
14063
14247
  .hm-rich-text__frame--disabled .hm-rich-text__area {
14064
14248
  color: var(--hm-disabled-text);
@@ -14603,7 +14787,7 @@ hm-radio {
14603
14787
  border-color: var(--hm-danger);
14604
14788
  }
14605
14789
  .hm-radio--card .hm-radio__row--disabled {
14606
- background: var(--hm-surface);
14790
+ background: var(--hm-surface-muted);
14607
14791
  }
14608
14792
  .hm-radio--card.hm-radio--inline .hm-radio__options {
14609
14793
  flex-flow: row wrap;
@@ -14708,7 +14892,7 @@ hm-radio {
14708
14892
  --hm-tag-tone: var(--hm-warning);
14709
14893
  --hm-tag-fill: var(--hm-warning-bg);
14710
14894
  }
14711
- .hm-tag--danger, .hm-tag--error {
14895
+ .hm-tag--danger {
14712
14896
  --hm-tag-tone: var(--hm-danger);
14713
14897
  --hm-tag-fill: var(--hm-danger-bg);
14714
14898
  }
@@ -15138,7 +15322,7 @@ hm-settings-dialog {
15138
15322
  overflow: hidden;
15139
15323
  border: var(--hm-border-hairline) solid var(--hm-border);
15140
15324
  border-radius: var(--hm-radius);
15141
- background: var(--hm-surface);
15325
+ background: var(--hm-surface-overlay);
15142
15326
  box-shadow: var(--hm-shadow-lg);
15143
15327
  }
15144
15328
  .hm-settings__window:focus-visible {
@@ -15162,7 +15346,7 @@ hm-settings-dialog {
15162
15346
  min-width: 0;
15163
15347
  padding: var(--hm-space-sm) var(--hm-space-lg);
15164
15348
  border-top: var(--hm-border-hairline) solid var(--hm-divider);
15165
- background: var(--hm-surface);
15349
+ background: var(--hm-surface-overlay);
15166
15350
  }
15167
15351
  .hm-settings__footer-spacer {
15168
15352
  flex: 1;
@@ -15183,7 +15367,7 @@ hm-settings-dialog {
15183
15367
  gap: var(--hm-space-xxxs);
15184
15368
  border-inline-end: var(--hm-border-hairline) solid var(--hm-divider);
15185
15369
  padding: var(--hm-space-sm) var(--hm-space-xxxs);
15186
- background: var(--hm-surface-raised);
15370
+ background: var(--hm-surface-muted);
15187
15371
  }
15188
15372
  .hm-settings__heading {
15189
15373
  margin: 0 var(--hm-space-nano);
@@ -15199,7 +15383,7 @@ hm-settings-dialog {
15199
15383
  padding: 0 var(--hm-space-xxxs);
15200
15384
  border: var(--hm-border-hairline) solid var(--hm-border);
15201
15385
  border-radius: var(--hm-radius-control);
15202
- background: var(--hm-surface);
15386
+ background: var(--hm-surface-raised);
15203
15387
  color: var(--hm-muted);
15204
15388
  }
15205
15389
  .hm-settings__search:focus-within {
@@ -15824,7 +16008,7 @@ hm-accordion-panel,
15824
16008
  overflow-y: auto;
15825
16009
  padding: var(--hm-space-micro) 0;
15826
16010
  border-radius: var(--hm-radius-control);
15827
- background: var(--hm-surface-raised);
16011
+ background: var(--hm-surface-overlay);
15828
16012
  box-shadow: var(--hm-shadow-overlay);
15829
16013
  outline: var(--hm-border-hairline) solid var(--hm-divider);
15830
16014
  color: var(--hm-text);
@@ -15867,7 +16051,7 @@ hm-accordion-panel,
15867
16051
  }
15868
16052
  .hm-dropdown__item:hover:not(:disabled, [aria-disabled=true]), .hm-dropdown__item:focus-visible {
15869
16053
  background: var(--hm-accent);
15870
- color: var(--hm-surface);
16054
+ color: var(--hm-on-action);
15871
16055
  }
15872
16056
  .hm-dropdown__item:focus-visible {
15873
16057
  outline: var(--hm-border-thin) solid currentColor;
@@ -16008,7 +16192,7 @@ hm-accordion-panel,
16008
16192
  position: fixed;
16009
16193
  z-index: calc(var(--hm-z-menu) + 1);
16010
16194
  border-radius: var(--hm-radius-control);
16011
- background: var(--hm-surface-raised);
16195
+ background: var(--hm-surface-overlay);
16012
16196
  box-shadow: var(--hm-shadow-overlay);
16013
16197
  outline: var(--hm-border-hairline) solid var(--hm-divider);
16014
16198
  transition: opacity var(--hm-duration-quick) ease-out, scale var(--hm-duration-quick) ease-out;
@@ -16350,7 +16534,7 @@ hm-event-calendar {
16350
16534
  border-inline-start: var(--hm-border-thin) solid var(--hm-ec-color);
16351
16535
  border-radius: var(--hm-radius-micro);
16352
16536
  padding: var(--hm-space-micro) var(--hm-space-nano);
16353
- background: color-mix(in srgb, var(--hm-ec-color) 18%, var(--hm-surface));
16537
+ background: color-mix(in srgb, var(--hm-ec-color) 18%, var(--hm-surface-raised));
16354
16538
  color: var(--hm-text);
16355
16539
  font: inherit;
16356
16540
  font-size: var(--hm-font-size-xs);
@@ -16359,7 +16543,7 @@ hm-event-calendar {
16359
16543
  cursor: pointer;
16360
16544
  }
16361
16545
  .hm-event-calendar__event:hover {
16362
- background: color-mix(in srgb, var(--hm-ec-color) 28%, var(--hm-surface));
16546
+ background: color-mix(in srgb, var(--hm-ec-color) 28%, var(--hm-surface-raised));
16363
16547
  }
16364
16548
  .hm-event-calendar__event:focus-visible {
16365
16549
  z-index: 2;
@@ -16405,7 +16589,7 @@ hm-event-calendar {
16405
16589
  border: var(--hm-border-hairline) solid var(--hm-divider);
16406
16590
  border-radius: var(--hm-radius);
16407
16591
  overflow: hidden;
16408
- background: var(--hm-surface);
16592
+ background: var(--hm-surface-raised);
16409
16593
  }
16410
16594
 
16411
16595
  .hm-event-calendar__weekdays,
@@ -16416,7 +16600,7 @@ hm-event-calendar {
16416
16600
 
16417
16601
  .hm-event-calendar__weekday {
16418
16602
  padding: var(--hm-space-micro) var(--hm-space-nano);
16419
- background: var(--hm-surface-raised);
16603
+ background: var(--hm-surface-muted);
16420
16604
  color: var(--hm-muted);
16421
16605
  font-size: var(--hm-font-size-xs);
16422
16606
  font-weight: var(--hm-font-weight-semibold);
@@ -16433,14 +16617,14 @@ hm-event-calendar {
16433
16617
  border-block-start: var(--hm-border-hairline) solid var(--hm-divider);
16434
16618
  border-inline-end: var(--hm-border-hairline) solid var(--hm-divider);
16435
16619
  padding-block: var(--hm-space-micro);
16436
- background: var(--hm-surface);
16620
+ background: var(--hm-surface-raised);
16437
16621
  }
16438
16622
  .hm-event-calendar__cell:last-child {
16439
16623
  border-inline-end: none;
16440
16624
  }
16441
16625
 
16442
16626
  .hm-event-calendar__cell--outside {
16443
- background: var(--hm-surface-raised);
16627
+ background: var(--hm-surface-muted);
16444
16628
  }
16445
16629
  .hm-event-calendar__cell--outside .hm-event-calendar__date {
16446
16630
  color: var(--hm-muted);
@@ -16558,7 +16742,7 @@ hm-event-calendar {
16558
16742
  border: var(--hm-border-hairline) solid var(--hm-divider);
16559
16743
  border-radius: var(--hm-radius);
16560
16744
  overflow: hidden;
16561
- background: var(--hm-surface);
16745
+ background: var(--hm-surface-raised);
16562
16746
  }
16563
16747
 
16564
16748
  .hm-event-calendar__time-head,
@@ -16570,7 +16754,7 @@ hm-event-calendar {
16570
16754
 
16571
16755
  .hm-event-calendar__time-head {
16572
16756
  border-block-end: var(--hm-border-hairline) solid var(--hm-divider);
16573
- background: var(--hm-surface-raised);
16757
+ background: var(--hm-surface-muted);
16574
16758
  }
16575
16759
 
16576
16760
  .hm-event-calendar__col-head {
@@ -16753,14 +16937,14 @@ hm-event-calendar {
16753
16937
  border-inline-start: var(--hm-border-thin) solid var(--hm-ec-color);
16754
16938
  border-radius: var(--hm-radius-micro);
16755
16939
  padding: var(--hm-space-nano) var(--hm-space-xs);
16756
- background: var(--hm-surface);
16940
+ background: var(--hm-surface-raised);
16757
16941
  color: var(--hm-text);
16758
16942
  font: inherit;
16759
16943
  text-align: start;
16760
16944
  cursor: pointer;
16761
16945
  }
16762
16946
  .hm-event-calendar__list-event:hover {
16763
- background: color-mix(in srgb, var(--hm-ec-color) 12%, var(--hm-surface));
16947
+ background: color-mix(in srgb, var(--hm-ec-color) 12%, var(--hm-surface-raised));
16764
16948
  }
16765
16949
  .hm-event-calendar__list-event:focus-visible {
16766
16950
  outline: var(--hm-border-thin) solid var(--hm-focus-color);
@@ -17477,6 +17661,22 @@ hm-event-calendar {
17477
17661
  Puro CSS, sem componente Angular: `<table>`/`<th>`/`<td>` continuam sendo os elementos nativos
17478
17662
  do consumidor, isto só estiliza. Se a lista crescer e precisar de paginação/busca/ordenação de
17479
17663
  verdade, a resposta é trocar pro `hm-data-grid`, não esticar este utilitário. */
17664
+ /* Cabeçalho de tabela no tom do tema — o mesmo do `hm-data-grid`: a faixa de marca da família no claro (como o menu do
17665
+ topo) e o accent sobre o card no escuro. Tabela própria de um app usa estes dois tokens no `<thead>`, nunca
17666
+ `--hm-muted` (cinza, não acompanha o tema). Redeclarados onde o tema e a família mudam (`var()` resolve onde é
17667
+ declarado). */
17668
+ :root,
17669
+ [data-theme],
17670
+ [data-family] {
17671
+ --hm-table-head-bg: var(--hm-panel-bg);
17672
+ --hm-table-head-text: var(--hm-panel-text);
17673
+ }
17674
+
17675
+ [data-theme=dark] {
17676
+ --hm-table-head-bg: color-mix(in srgb, var(--hm-accent) 26%, var(--hm-surface-raised));
17677
+ --hm-table-head-text: var(--hm-text);
17678
+ }
17679
+
17480
17680
  .hm-table {
17481
17681
  width: 100%;
17482
17682
  border-collapse: collapse;
@@ -17490,6 +17690,14 @@ hm-event-calendar {
17490
17690
  font-weight: var(--hm-font-weight-semibold);
17491
17691
  text-align: start;
17492
17692
  }
17693
+ .hm-table {
17694
+ /* Cabeçalho de colunas no tom do tema; o `th scope="row"` da tabela vertical continua rótulo discreto. */
17695
+ }
17696
+ .hm-table thead th {
17697
+ background: var(--hm-table-head-bg);
17698
+ color: var(--hm-table-head-text);
17699
+ border-bottom-color: transparent;
17700
+ }
17493
17701
  .hm-table td {
17494
17702
  padding: var(--hm-space-xxxs) var(--hm-space-xs);
17495
17703
  border-bottom: var(--hm-border-hairline) solid var(--hm-divider);
@@ -17508,7 +17716,7 @@ hm-event-calendar {
17508
17716
  }
17509
17717
 
17510
17718
  /* Sem bordas entre as linhas: lista curta dentro de um cartão ou painel que já tem moldura. O
17511
- cabeçalho continua se distinguindo pelo peso e pela cor `--hm-muted`; se as linhas forem muitas ou
17719
+ cabeçalho continua se distinguindo pela faixa no tom do tema; se as linhas forem muitas ou
17512
17720
  largas, prefira a tabela com bordas (a borda guia o olho na linha certa). */
17513
17721
  .hm-table--borderless th,
17514
17722
  .hm-table--borderless td {
@@ -18542,7 +18750,7 @@ hm-slider {
18542
18750
  padding: var(--hm-space-micro) var(--hm-space-xs);
18543
18751
  border-radius: var(--hm-radius-micro);
18544
18752
  background: var(--hm-text);
18545
- color: var(--hm-surface);
18753
+ color: var(--hm-surface-raised);
18546
18754
  font-size: var(--hm-font-size-xs);
18547
18755
  font-variant-numeric: tabular-nums;
18548
18756
  white-space: nowrap;
@@ -18702,7 +18910,7 @@ hm-slider {
18702
18910
  margin: 0;
18703
18911
  padding: var(--hm-space-micro);
18704
18912
  border-radius: var(--hm-radius-control);
18705
- background: var(--hm-surface-raised);
18913
+ background: var(--hm-surface-overlay);
18706
18914
  box-shadow: var(--hm-shadow-overlay);
18707
18915
  outline: var(--hm-border-hairline) solid var(--hm-divider);
18708
18916
  color: var(--hm-text);
@@ -18883,7 +19091,7 @@ hm-slider {
18883
19091
  }
18884
19092
 
18885
19093
  .hm-fab__button--highlight {
18886
- box-shadow: var(--hm-shadow-lg), 0 0 0 var(--hm-border-thin) var(--hm-surface), 0 0 0 calc(var(--hm-border-thin) * 2) var(--hm-accent);
19094
+ box-shadow: var(--hm-shadow-lg), 0 0 0 var(--hm-border-thin) var(--hm-surface-raised), 0 0 0 calc(var(--hm-border-thin) * 2) var(--hm-accent);
18887
19095
  }
18888
19096
 
18889
19097
  .hm-fab__icon {
@@ -18945,7 +19153,7 @@ hm-slider {
18945
19153
  outline-offset: var(--hm-border-thin);
18946
19154
  }
18947
19155
  .hm-fab__action:hover:not([aria-disabled=true]) .hm-fab__action-icon {
18948
- background: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface-raised));
19156
+ background: color-mix(in srgb, var(--hm-accent) 14%, var(--hm-surface-overlay));
18949
19157
  }
18950
19158
  .hm-fab__action[aria-disabled=true] {
18951
19159
  color: var(--hm-disabled-text);
@@ -18959,7 +19167,7 @@ hm-slider {
18959
19167
  inline-size: var(--hm-fab-action-size);
18960
19168
  block-size: var(--hm-fab-action-size);
18961
19169
  border-radius: var(--hm-radius-pill);
18962
- background: var(--hm-surface-raised);
19170
+ background: var(--hm-surface-overlay);
18963
19171
  box-shadow: var(--hm-shadow-overlay);
18964
19172
  color: var(--hm-accent-strong);
18965
19173
  transition: background-color var(--hm-duration-quick) var(--hm-ease);
@@ -18978,7 +19186,7 @@ hm-slider {
18978
19186
  translate: 0 -50%;
18979
19187
  padding: var(--hm-space-micro) var(--hm-space-xs);
18980
19188
  border-radius: var(--hm-radius-micro);
18981
- background: var(--hm-surface-raised);
19189
+ background: var(--hm-surface-overlay);
18982
19190
  box-shadow: var(--hm-shadow-overlay);
18983
19191
  color: inherit;
18984
19192
  font-size: var(--hm-font-size-xs);
@@ -19367,7 +19575,7 @@ hm-search-field {
19367
19575
  padding-inline: var(--hm-space-nano);
19368
19576
  border: 1px solid var(--hm-border);
19369
19577
  border-radius: var(--hm-radius-control);
19370
- background: var(--hm-surface);
19578
+ background: var(--hm-surface-raised);
19371
19579
  color: var(--hm-text);
19372
19580
  font-family: var(--hm-font-mono);
19373
19581
  font-size: var(--hm-font-size-sm);
@@ -19485,7 +19693,7 @@ hm-search-field {
19485
19693
  white-space: nowrap;
19486
19694
  }
19487
19695
  .hm-theme-builder__checks thead th {
19488
- background: var(--hm-surface-raised);
19696
+ background: var(--hm-surface-muted);
19489
19697
  font-weight: var(--hm-font-weight-semibold);
19490
19698
  }
19491
19699
  .hm-theme-builder__checks tbody th {
@@ -19547,7 +19755,7 @@ hm-search-field {
19547
19755
  overflow: auto;
19548
19756
  border: 1px solid var(--hm-border);
19549
19757
  border-radius: var(--hm-radius);
19550
- background: var(--hm-surface-raised);
19758
+ background: var(--hm-surface-muted);
19551
19759
  color: var(--hm-text);
19552
19760
  font-family: var(--hm-font-mono);
19553
19761
  font-size: var(--hm-font-size-sm);
@@ -20129,7 +20337,7 @@ hm-file-upload {
20129
20337
  padding: var(--hm-file-upload-zone-padding);
20130
20338
  border: var(--hm-border-hairline) dashed var(--hm-border);
20131
20339
  border-radius: var(--hm-radius);
20132
- background: var(--hm-surface-raised);
20340
+ background: var(--hm-surface-muted);
20133
20341
  text-align: center;
20134
20342
  transition: border-color var(--hm-duration-quick) var(--hm-ease), background-color var(--hm-duration-quick) var(--hm-ease);
20135
20343
  }