@cirthcss/cirth 0.14.1 → 0.15.0-beta.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.
@@ -37,13 +37,13 @@ main {
37
37
  }
38
38
 
39
39
  body > header, body > main, body > footer {
40
- grid-template-columns: minmax(var(--cirth-spacing), 1fr) minmax(0, var(--cirth-container-max-width)) minmax(var(--cirth-spacing), 1fr);
40
+ grid-template-columns: [full-start] minmax(var(--cirth-container-gutter), 1fr) [content-start] minmax(0, var(--cirth-container-max-width)) [content-end] minmax(var(--cirth-container-gutter), 1fr) [full-end];
41
41
  padding-block: var(--cirth-block-spacing-vertical);
42
42
  display: grid;
43
43
  }
44
44
 
45
45
  body > header > *, body > main > *, body > footer > * {
46
- grid-column: 2;
46
+ grid-column: content;
47
47
  }
48
48
 
49
49
  section {
@@ -70,11 +70,9 @@ sup {
70
70
  }
71
71
 
72
72
  address, blockquote, dl, ol, p, pre, table, ul {
73
- margin-top: 0;
74
- margin-bottom: var(--cirth-typography-spacing-vertical);
73
+ margin-block: 0 var(--cirth-typography-spacing-vertical);
75
74
  color: var(--cirth-color);
76
75
  font-style: normal;
77
- font-weight: var(--cirth-font-weight);
78
76
  }
79
77
 
80
78
  p {
@@ -82,8 +80,7 @@ p {
82
80
  }
83
81
 
84
82
  h1, h2, h3, h4, h5, h6 {
85
- margin-top: 0;
86
- margin-bottom: var(--cirth-typography-spacing-vertical);
83
+ margin-block: 0 calc(var(--cirth-typography-spacing-vertical) * .5);
87
84
  color: var(--cirth-color);
88
85
  font-weight: var(--cirth-font-weight);
89
86
  font-size: var(--cirth-font-size);
@@ -121,13 +118,12 @@ h6 {
121
118
  margin-top: var(--cirth-typography-spacing-top);
122
119
  }
123
120
 
124
- p, hgroup {
121
+ hgroup {
125
122
  margin-bottom: var(--cirth-typography-spacing-vertical);
126
123
  }
127
124
 
128
125
  hgroup > * {
129
- margin-top: 0;
130
- margin-bottom: 0;
126
+ margin-block: 0;
131
127
  }
132
128
 
133
129
  hgroup > :not(:first-child):last-child {
@@ -149,6 +145,18 @@ ul li {
149
145
  list-style: square;
150
146
  }
151
147
 
148
+ dt {
149
+ font-weight: var(--cirth-font-weight-semibold);
150
+ }
151
+
152
+ dd {
153
+ margin-inline-start: 0;
154
+ }
155
+
156
+ dl > dd + dt {
157
+ margin-top: calc(var(--cirth-typography-spacing-vertical) * .5);
158
+ }
159
+
152
160
  mark {
153
161
  padding: 0 var(--cirth-space-1);
154
162
  background-color: var(--cirth-mark-background-color);
@@ -161,7 +169,10 @@ blockquote {
161
169
  padding: var(--cirth-spacing);
162
170
  border-inline-start: var(--cirth-border-width-4) solid var(--cirth-blockquote-border-color);
163
171
  border-inline-end: none;
164
- display: block;
172
+ }
173
+
174
+ blockquote > :last-child, blockquote > :has( + footer) {
175
+ margin-bottom: 0;
165
176
  }
166
177
 
167
178
  blockquote footer {
@@ -213,10 +224,14 @@ del {
213
224
  outline: var(--cirth-outline-width) solid transparent;
214
225
  }
215
226
 
216
- :where(a:not([role="button"])):visited:not([aria-current]:not([aria-current="false"]), :hover, :active, :focus, nav a) {
227
+ :where(a:not([role="button"])):visited:not([aria-current]:not([aria-current="false"]), :hover, :active, :focus, nav a, :has(article)) {
217
228
  color: var(--cirth-link-visited-color);
218
229
  }
219
230
 
231
+ :where(a:not([role="button"])):has(article) {
232
+ --cirth-color: inherit;
233
+ }
234
+
220
235
  a[role="button"] {
221
236
  display: inline-block;
222
237
  }
@@ -237,7 +252,7 @@ button, [type="submit"], [type="reset"], [type="button"], [role="button"] {
237
252
  --cirth-color: var(--cirth-primary-inverse);
238
253
  --cirth-box-shadow: var(--cirth-button-box-shadow, 0 0 0 #0000);
239
254
  max-width: 100%;
240
- min-block-size: calc(var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
255
+ min-block-size: max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
241
256
  padding: var(--cirth-form-element-spacing-vertical) var(--cirth-form-element-spacing-horizontal);
242
257
  border: var(--cirth-border-width) solid var(--cirth-border-color);
243
258
  border-radius: var(--cirth-border-radius);
@@ -262,7 +277,7 @@ button, [type="submit"], [type="reset"], [type="button"], [role="button"] {
262
277
  --cirth-color: var(--cirth-primary-inverse);
263
278
  --cirth-box-shadow: var(--cirth-button-box-shadow, 0 0 0 #0000);
264
279
  max-width: 100%;
265
- min-block-size: calc(var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
280
+ min-block-size: max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
266
281
  padding: var(--cirth-form-element-spacing-vertical) var(--cirth-form-element-spacing-horizontal);
267
282
  border: var(--cirth-border-width) solid var(--cirth-border-color);
268
283
  border-radius: var(--cirth-border-radius);
@@ -303,11 +318,11 @@ button[aria-current]:not([aria-current="false"]), button:is(:hover, :active, :fo
303
318
  }
304
319
 
305
320
  button:active, [type="submit"]:active, [type="reset"]:active, [type="button"]:active, [role="button"]:active {
306
- transform: translateY(.0625rem);
321
+ background-image: linear-gradient(#0000001f 0 0);
307
322
  }
308
323
 
309
324
  [type="file"]::file-selector-button:active {
310
- transform: translateY(.0625rem);
325
+ background-image: linear-gradient(#0000001f 0 0);
311
326
  }
312
327
 
313
328
  button:focus-visible, button[aria-current]:not([aria-current="false"]):focus-visible, [type="submit"]:focus-visible, [type="submit"][aria-current]:not([aria-current="false"]):focus-visible, [type="reset"]:focus-visible, [type="reset"][aria-current]:not([aria-current="false"]):focus-visible, [type="button"]:focus-visible, [type="button"][aria-current]:not([aria-current="false"]):focus-visible, [role="button"]:focus-visible, [role="button"][aria-current]:not([aria-current="false"]):focus-visible {
@@ -316,18 +331,6 @@ button:focus-visible, button[aria-current]:not([aria-current="false"]):focus-vis
316
331
  outline: var(--cirth-outline-width) solid transparent;
317
332
  }
318
333
 
319
- [type="file"]::file-selector-button:focus-visible {
320
- --cirth-box-shadow: var(--cirth-button-hover-box-shadow, 0 0 0 #0000),
321
- 0 0 0 var(--cirth-outline-width) var(--cirth-primary-focus);
322
- outline: var(--cirth-outline-width) solid transparent;
323
- }
324
-
325
- [type="file"]::file-selector-button:is():focus-visible {
326
- --cirth-box-shadow: var(--cirth-button-hover-box-shadow, 0 0 0 #0000),
327
- 0 0 0 var(--cirth-outline-width) var(--cirth-primary-focus);
328
- outline: var(--cirth-outline-width) solid transparent;
329
- }
330
-
331
334
  [type="submit"], [type="reset"], [type="button"] {
332
335
  margin-bottom: var(--cirth-spacing);
333
336
  }
@@ -363,32 +366,31 @@ button:focus-visible, button[aria-current]:not([aria-current="false"]):focus-vis
363
366
  0 0 0 var(--cirth-outline-width) var(--cirth-secondary-focus);
364
367
  }
365
368
 
366
- [type="file"]::file-selector-button:focus-visible {
367
- --cirth-box-shadow: var(--cirth-button-hover-box-shadow, 0 0 0 #0000),
368
- 0 0 0 var(--cirth-outline-width) var(--cirth-secondary-focus);
369
- }
370
-
371
369
  :where(button, [type="submit"], [type="reset"], [type="button"], [role="button"])[disabled], :where(fieldset[disabled]) :is(button, [type="submit"], [type="button"], [type="reset"], [role="button"]) {
372
370
  opacity: var(--cirth-opacity-disabled);
373
371
  pointer-events: none;
374
372
  }
375
373
 
376
- form:invalid :is(button:not([type="button"], [type="reset"]), [type="submit"]) {
374
+ form:has(:user-invalid) :is(button:not([type="button"], [type="reset"]), [type="submit"]) {
377
375
  filter: grayscale();
378
376
  }
379
377
 
380
378
  :where(table) {
381
379
  border-collapse: collapse;
382
- border-spacing: 0;
383
380
  text-indent: 0;
384
381
  border-color: currentColor;
385
382
  width: 100%;
386
383
  }
387
384
 
385
+ caption {
386
+ color: var(--cirth-muted-color);
387
+ text-align: start;
388
+ padding-block-end: calc(var(--cirth-spacing) * .5);
389
+ }
390
+
388
391
  th, td {
389
392
  padding: calc(var(--cirth-spacing) / 2) var(--cirth-spacing);
390
393
  border-bottom: var(--cirth-border-width) solid var(--cirth-table-border-color);
391
- color: var(--cirth-color);
392
394
  font-weight: var(--cirth-font-weight);
393
395
  font-variant-numeric: tabular-nums;
394
396
  text-align: start;
@@ -450,10 +452,15 @@ code, kbd, samp {
450
452
 
451
453
  pre {
452
454
  margin-bottom: var(--cirth-spacing);
455
+ border: var(--cirth-border-width) solid var(--cirth-card-border-color);
453
456
  display: block;
454
457
  overflow-x: auto;
455
458
  }
456
459
 
460
+ pre:focus-visible {
461
+ outline: var(--cirth-outline-width) solid var(--cirth-primary-focus);
462
+ }
463
+
457
464
  pre > code, pre > samp {
458
465
  padding: var(--cirth-spacing);
459
466
  line-height: var(--cirth-line-height);
@@ -541,11 +548,11 @@ legend {
541
548
  }
542
549
 
543
550
  input:not([type="checkbox"], [type="radio"], [type="range"]) {
544
- height: calc(var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
551
+ height: max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
545
552
  }
546
553
 
547
554
  select, textarea {
548
- min-block-size: calc(var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
555
+ min-block-size: max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2);
549
556
  }
550
557
 
551
558
  fieldset {
@@ -563,10 +570,6 @@ label, fieldset legend {
563
570
  display: block;
564
571
  }
565
572
 
566
- fieldset legend {
567
- margin-bottom: calc(var(--cirth-spacing) * .5);
568
- }
569
-
570
573
  input:not([type="checkbox"], [type="radio"], [size]), button[type="submit"], select, textarea {
571
574
  width: 100%;
572
575
  }
@@ -591,6 +594,11 @@ input, select, textarea {
591
594
  outline: none;
592
595
  }
593
596
 
597
+ :where(input, textarea)[readonly] {
598
+ background-color: var(--cirth-card-sectioning-background-color);
599
+ border-style: dashed;
600
+ }
601
+
594
602
  input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [readonly]):is(:active, :focus), :where(select, textarea):not([readonly]):is(:active, :focus) {
595
603
  --cirth-background-color: var(--cirth-form-element-active-background-color);
596
604
  }
@@ -599,10 +607,18 @@ input:not([type="submit"], [type="button"], [type="reset"], [role="switch"], [re
599
607
  --cirth-border-color: var(--cirth-form-element-active-border-color);
600
608
  }
601
609
 
602
- input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="range"], [type="file"], [readonly]):hover:not(:active, :focus, [disabled], [aria-invalid]), :where(select, textarea):not([readonly]):hover:not(:active, :focus, [disabled], [aria-invalid]) {
603
- --cirth-border-color: color-mix(in oklch,
604
- var(--cirth-form-element-border-color) 65%,
605
- var(--cirth-color));
610
+ @media (hover: hover) and (pointer: fine) {
611
+ input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="range"], [type="file"], [readonly]):hover:not(:active, :focus, :disabled, [aria-invalid], :user-invalid) {
612
+ --cirth-border-color: color-mix(in oklch,
613
+ var(--cirth-form-element-border-color) 65%,
614
+ var(--cirth-color));
615
+ }
616
+
617
+ :where(select, textarea):not([readonly]):hover:not(:active, :focus, :disabled, [aria-invalid], :user-invalid) {
618
+ --cirth-border-color: color-mix(in oklch,
619
+ var(--cirth-form-element-border-color) 65%,
620
+ var(--cirth-color));
621
+ }
606
622
  }
607
623
 
608
624
  input:not([type="submit"], [type="button"], [type="reset"], [type="range"], [type="file"], [readonly]):focus, :where(select, textarea):not([readonly]):focus {
@@ -707,7 +723,7 @@ textarea:not([rows]) {
707
723
  textarea:is([aria-invalid], :user-invalid:not([aria-invalid], [type="range"]):not(select:focus)) {
708
724
  --cirth-icon-height: calc(var(--cirth-font-size-md) * var(--cirth-line-height) +
709
725
  var(--cirth-form-element-spacing-vertical) * 2 +
710
- var(--cirth-border-width) * 2);
726
+ (var(--cirth-border-width) * 2));
711
727
  background-position: top right var(--cirth-space-3);
712
728
  background-size: var(--cirth-font-size-md) var(--cirth-icon-height);
713
729
  }
@@ -1061,16 +1077,21 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
1061
1077
 
1062
1078
  details {
1063
1079
  margin-bottom: var(--cirth-spacing);
1064
- display: block;
1065
1080
  }
1066
1081
 
1067
1082
  details summary {
1068
- line-height: var(--cirth-font-size-md);
1083
+ line-height: var(--cirth-line-height-normal);
1069
1084
  cursor: pointer;
1070
1085
  transition: color var(--cirth-transition);
1071
1086
  list-style-type: none;
1072
1087
  }
1073
1088
 
1089
+ @media (hover: hover) and (pointer: fine) {
1090
+ details summary:hover:not([role]) {
1091
+ color: var(--cirth-accordion-active-summary-color);
1092
+ }
1093
+ }
1094
+
1074
1095
  details summary:not([role]) {
1075
1096
  color: var(--cirth-accordion-close-summary-color);
1076
1097
  }
@@ -1084,16 +1105,16 @@ details summary::marker {
1084
1105
  }
1085
1106
 
1086
1107
  details summary:after {
1087
- width: var(--cirth-font-size-md);
1088
- height: var(--cirth-font-size-md);
1108
+ width: 1em;
1109
+ height: 1lh;
1089
1110
  float: right;
1090
- background-color: var(--cirth-muted-color);
1091
1111
  mask-image: var(--cirth-icon-chevron);
1092
- mask-position: 100%;
1093
- mask-size: var(--cirth-font-size-md) auto;
1112
+ background-color: currentColor;
1094
1113
  margin-inline-start: calc(var(--cirth-spacing, var(--cirth-space-4)) * .5);
1095
1114
  display: block;
1096
- transform: rotate(-90deg);
1115
+ transform: rotate(0);
1116
+ mask-position: 100%;
1117
+ mask-size: 1em;
1097
1118
  mask-repeat: no-repeat;
1098
1119
  }
1099
1120
 
@@ -1118,8 +1139,8 @@ details summary:focus:not([role]) {
1118
1139
 
1119
1140
  details summary:focus-visible:not([role]) {
1120
1141
  outline: var(--cirth-outline-width) solid var(--cirth-primary-focus);
1121
- outline-offset: calc(var(--cirth-spacing, var(--cirth-space-4)) * .5);
1122
- color: var(--cirth-primary);
1142
+ outline-offset: var(--cirth-space-1);
1143
+ color: var(--cirth-accordion-active-summary-color);
1123
1144
  }
1124
1145
 
1125
1146
  details summary[role="button"] {
@@ -1127,59 +1148,92 @@ details summary[role="button"] {
1127
1148
  width: 100%;
1128
1149
  }
1129
1150
 
1130
- details summary[role="button"]:after {
1131
- height: calc(var(--cirth-font-size-md) * var(--cirth-line-height, var(--cirth-line-height-normal)));
1132
- }
1133
-
1134
1151
  details[open] > summary {
1135
- margin-bottom: var(--cirth-spacing);
1152
+ margin-bottom: var(--cirth-space-2);
1136
1153
  }
1137
1154
 
1138
- details[open] > summary:not([role]):not(:focus) {
1155
+ details[open] > summary:not([role]):not(:focus, :hover) {
1139
1156
  color: var(--cirth-accordion-open-summary-color);
1140
1157
  }
1141
1158
 
1142
1159
  details[open] > summary:after {
1143
- transform: rotate(0);
1160
+ transform: rotate(180deg);
1161
+ }
1162
+
1163
+ details {
1164
+ border-block-end: var(--cirth-border-width) solid var(--cirth-muted-border-color);
1165
+ }
1166
+
1167
+ details > summary {
1168
+ min-block-size: 2.75rem;
1169
+ padding-block: var(--cirth-space-2);
1170
+ font-weight: var(--cirth-font-weight-semibold);
1171
+ }
1172
+
1173
+ details[open] {
1174
+ padding-block-end: var(--cirth-space-4);
1175
+ }
1176
+
1177
+ details > :last-child:not(summary) {
1178
+ margin-bottom: 0;
1179
+ }
1180
+
1181
+ @media (prefers-reduced-motion: no-preference) {
1182
+ @supports selector(::details-content) {
1183
+ details::details-content {
1184
+ block-size: 0;
1185
+ transition: block-size var(--cirth-transition), content-visibility var(--cirth-transition) allow-discrete;
1186
+ interpolate-size: allow-keywords;
1187
+ overflow: hidden;
1188
+ }
1189
+
1190
+ details[open]::details-content {
1191
+ block-size: auto;
1192
+ }
1193
+ }
1144
1194
  }
1145
1195
 
1146
1196
  [dir="rtl"] details summary:after {
1147
1197
  float: left;
1148
- background-position: 0;
1149
1198
  }
1150
1199
 
1151
1200
  article {
1152
1201
  margin-bottom: var(--cirth-block-spacing-vertical);
1153
1202
  padding: var(--cirth-block-spacing-vertical) var(--cirth-block-spacing-horizontal);
1154
- border-radius: var(--cirth-border-radius);
1203
+ border: var(--cirth-border-width) solid var(--cirth-card-border-color);
1204
+ border-radius: var(--cirth-card-border-radius);
1155
1205
  background: var(--cirth-card-background-color);
1156
1206
  box-shadow: var(--cirth-card-box-shadow);
1157
1207
  }
1158
1208
 
1209
+ article > :last-child:not(header, footer), article > :is(header, footer) > :last-child {
1210
+ margin-bottom: 0;
1211
+ }
1212
+
1213
+ article > :is(header, footer) :is(h1, h2, h3, h4, h5, h6) {
1214
+ margin-top: 0;
1215
+ }
1216
+
1159
1217
  article > header, article > footer {
1160
1218
  margin-inline: calc(var(--cirth-block-spacing-horizontal) * -1);
1161
1219
  padding: calc(var(--cirth-block-spacing-vertical) - var(--cirth-space-2)) var(--cirth-block-spacing-horizontal);
1162
1220
  background-color: var(--cirth-card-sectioning-background-color);
1163
1221
  }
1164
1222
 
1165
- article > header > :last-child, article > footer > :last-child {
1166
- margin-bottom: 0;
1167
- }
1168
-
1169
1223
  article > header {
1170
1224
  margin-top: calc(var(--cirth-block-spacing-vertical) * -1);
1171
1225
  margin-bottom: var(--cirth-block-spacing-vertical);
1172
1226
  border-bottom: var(--cirth-border-width) solid var(--cirth-card-border-color);
1173
- border-top-right-radius: var(--cirth-border-radius);
1174
- border-top-left-radius: var(--cirth-border-radius);
1227
+ border-top-right-radius: var(--cirth-card-border-radius);
1228
+ border-top-left-radius: var(--cirth-card-border-radius);
1175
1229
  }
1176
1230
 
1177
1231
  article > footer {
1178
1232
  margin-top: var(--cirth-block-spacing-vertical);
1179
1233
  margin-bottom: calc(var(--cirth-block-spacing-vertical) * -1);
1180
1234
  border-top: var(--cirth-border-width) solid var(--cirth-card-border-color);
1181
- border-bottom-right-radius: var(--cirth-border-radius);
1182
- border-bottom-left-radius: var(--cirth-border-radius);
1235
+ border-bottom-right-radius: var(--cirth-card-border-radius);
1236
+ border-bottom-left-radius: var(--cirth-card-border-radius);
1183
1237
  }
1184
1238
 
1185
1239
  [role="search"], [role="group"]:not(fieldset) {
@@ -1393,31 +1447,19 @@ dialog[open] {
1393
1447
 
1394
1448
  dialog > article {
1395
1449
  transition: opacity var(--cirth-transition), transform var(--cirth-transition);
1396
- width: 100%;
1450
+ width: min(100% - var(--cirth-spacing) * 2, var(--cirth-modal-max-width));
1397
1451
  max-height: calc(100vh - var(--cirth-spacing) * 2);
1398
1452
  max-height: calc(100dvh - var(--cirth-spacing) * 2);
1399
1453
  margin: var(--cirth-spacing);
1400
1454
  overflow: auto;
1401
1455
  }
1402
1456
 
1403
- @media (width >= 576px) {
1404
- dialog > article {
1405
- max-width: 510px;
1406
- }
1407
- }
1408
-
1409
- @media (width >= 768px) {
1410
- dialog > article {
1411
- max-width: 700px;
1412
- }
1413
- }
1414
-
1415
1457
  dialog > article > header > * {
1416
1458
  margin-bottom: 0;
1417
1459
  }
1418
1460
 
1419
1461
  dialog > article > header :is(a, button)[rel="prev"] {
1420
- margin: calc(calc((var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2 - var(--cirth-font-size-md)) / 2) * -1);
1462
+ margin: calc(calc((max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2) - var(--cirth-font-size-md)) / 2) * -1);
1421
1463
  float: right;
1422
1464
  margin-inline-start: var(--cirth-spacing);
1423
1465
  padding: 0;
@@ -1436,11 +1478,11 @@ dialog > article > footer button:not(:first-of-type), dialog > article > footer
1436
1478
  }
1437
1479
 
1438
1480
  dialog > article :is(a, button)[rel="prev"] {
1439
- width: calc(var(--cirth-font-size-md) + calc((var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2 - var(--cirth-font-size-md)) / 2) * 2);
1440
- height: calc(var(--cirth-font-size-md) + calc((var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2 - var(--cirth-font-size-md)) / 2) * 2);
1441
- margin-top: calc(var(--cirth-spacing) * -1 - calc((var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2 - var(--cirth-font-size-md)) / 2));
1442
- margin-right: calc(calc((var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2 - var(--cirth-font-size-md)) / 2) * -1);
1443
- margin-bottom: calc(var(--cirth-spacing) - calc((var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2 - var(--cirth-font-size-md)) / 2));
1481
+ width: calc(var(--cirth-font-size-md) + calc((max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2) - var(--cirth-font-size-md)) / 2) * 2);
1482
+ height: calc(var(--cirth-font-size-md) + calc((max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2) - var(--cirth-font-size-md)) / 2) * 2);
1483
+ margin-top: calc(var(--cirth-spacing) * -1 - calc((max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2) - var(--cirth-font-size-md)) / 2));
1484
+ margin-right: calc(calc((max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2) - var(--cirth-font-size-md)) / 2) * -1);
1485
+ margin-bottom: calc(var(--cirth-spacing) - calc((max(2.75rem, var(--cirth-font-size-md) * var(--cirth-line-height) + var(--cirth-form-element-spacing-vertical) * 2 + var(--cirth-border-width) * 2) - var(--cirth-font-size-md)) / 2));
1444
1486
  opacity: .5;
1445
1487
  transition: opacity var(--cirth-transition);
1446
1488
  background-color: #0000;
@@ -1484,11 +1526,11 @@ html:has(dialog:modal) {
1484
1526
  }
1485
1527
 
1486
1528
  :where(nav li):before {
1487
- float: left;
1488
1529
  content: "​";
1530
+ position: absolute;
1489
1531
  }
1490
1532
 
1491
- nav, nav ul {
1533
+ nav, nav :is(ol, ul) {
1492
1534
  display: flex;
1493
1535
  }
1494
1536
 
@@ -1519,8 +1561,11 @@ nav li {
1519
1561
  }
1520
1562
 
1521
1563
  nav li :where(a:not([role="button"]), [role="link"]) {
1522
- margin: calc(var(--cirth-nav-link-spacing-vertical) * -1) calc(var(--cirth-nav-link-spacing-horizontal) * -1);
1564
+ --cirth-color: inherit;
1565
+ margin-block: calc(var(--cirth-nav-link-spacing-vertical) * -1);
1566
+ margin-inline: calc(var(--cirth-nav-element-spacing-horizontal) * -1);
1523
1567
  padding: var(--cirth-nav-link-spacing-vertical) var(--cirth-nav-link-spacing-horizontal);
1568
+ border-block-end: var(--cirth-border-width-2) solid transparent;
1524
1569
  border-radius: var(--cirth-border-radius);
1525
1570
  display: inline-block;
1526
1571
  }
@@ -1529,6 +1574,13 @@ nav li :where(a:not([role="button"]), [role="link"]):not(:hover) {
1529
1574
  text-decoration: none;
1530
1575
  }
1531
1576
 
1577
+ nav li :where(a:not([role="button"]), [role="link"]):is([aria-current]:not([aria-current="false"]), [aria-selected="true"]) {
1578
+ --cirth-color: inherit;
1579
+ --cirth-text-decoration: none;
1580
+ border-block-end-color: var(--cirth-primary-border);
1581
+ border-radius: 0;
1582
+ }
1583
+
1532
1584
  nav li [role="group"]:not(fieldset), nav li [role="search"] {
1533
1585
  width: auto;
1534
1586
  margin-bottom: 0;
@@ -1536,7 +1588,7 @@ nav li [role="group"]:not(fieldset), nav li [role="search"] {
1536
1588
 
1537
1589
  nav li button, nav li [role="button"], nav li [type="button"], nav li input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]), nav li select {
1538
1590
  height: auto;
1539
- min-block-size: var(--cirth-space-6);
1591
+ min-block-size: var(--cirth-space-10);
1540
1592
  margin-inline: inherit;
1541
1593
  padding: calc(var(--cirth-nav-link-spacing-vertical) - var(--cirth-border-width) * 2) var(--cirth-nav-link-spacing-horizontal);
1542
1594
  margin-bottom: 0;
@@ -1547,16 +1599,16 @@ nav[aria-label="breadcrumb"] {
1547
1599
  align-items: center;
1548
1600
  }
1549
1601
 
1550
- nav[aria-label="breadcrumb"] ul li:not(:first-child) {
1602
+ nav[aria-label="breadcrumb"] :is(ol, ul) li:not(:first-child) {
1551
1603
  margin-inline-start: var(--cirth-nav-link-spacing-horizontal);
1552
1604
  }
1553
1605
 
1554
- nav[aria-label="breadcrumb"] ul li a {
1606
+ nav[aria-label="breadcrumb"] :is(ol, ul) li a {
1555
1607
  margin: calc(var(--cirth-nav-link-spacing-vertical) * -1) 0;
1556
- margin-inline-start: calc(var(--cirth-nav-link-spacing-horizontal) * -1);
1608
+ margin-inline-start: calc(var(--cirth-nav-element-spacing-horizontal) * -1);
1557
1609
  }
1558
1610
 
1559
- nav[aria-label="breadcrumb"] ul li:not(:last-child):after {
1611
+ nav[aria-label="breadcrumb"] :is(ol, ul) li:not(:last-child):after {
1560
1612
  width: calc(var(--cirth-nav-link-spacing-horizontal) * 4);
1561
1613
  margin: 0 calc(var(--cirth-nav-link-spacing-horizontal) * -1);
1562
1614
  content: var(--cirth-nav-breadcrumb-divider);
@@ -1572,22 +1624,65 @@ nav[aria-label="breadcrumb"] a[aria-current]:not([aria-current="false"]) {
1572
1624
  color: inherit;
1573
1625
  pointer-events: none;
1574
1626
  background-color: #0000;
1627
+ border-block-end-color: #0000;
1575
1628
  text-decoration: none;
1576
1629
  }
1577
1630
 
1578
- aside nav, aside ol, aside ul, aside li {
1631
+ header:not(:is(article, aside, dialog, figure, li, nav, section, td) *) > nav {
1632
+ --cirth-nav-element-spacing-vertical: var(--cirth-space-2);
1633
+ flex-wrap: wrap;
1634
+ align-items: center;
1635
+ }
1636
+
1637
+ header:not(:is(article, aside, dialog, figure, li, nav, section, td) *) > nav li :where(a:not([role="button"]), [role="link"]) {
1638
+ --cirth-color: var(--cirth-muted-color);
1639
+ --cirth-text-decoration: none;
1640
+ border-block-end: 0;
1641
+ border-radius: 0;
1642
+ }
1643
+
1644
+ header:not(:is(article, aside, dialog, figure, li, nav, section, td) *) > nav li :where(a:not([role="button"]), [role="link"]):is(:hover, :focus, :active) {
1645
+ --cirth-color: color-mix(in oklch,
1646
+ var(--cirth-muted-color),
1647
+ var(--cirth-contrast));
1648
+ }
1649
+
1650
+ header:not(:is(article, aside, dialog, figure, li, nav, section, td) *) > nav li :where(a:not([role="button"]), [role="link"]):is([aria-current]:not([aria-current="false"]), [aria-selected="true"]) {
1651
+ --cirth-color: var(--cirth-contrast);
1652
+ font-weight: var(--cirth-font-weight-semibold);
1653
+ }
1654
+
1655
+ header:not(:is(article, aside, dialog, figure, li, nav, section, td) *) > nav li :where(a:not([role="button"]), [role="link"])[aria-disabled="true"] {
1656
+ --cirth-color: color-mix(in oklch,
1657
+ var(--cirth-muted-color) 55%,
1658
+ transparent);
1659
+ pointer-events: none;
1660
+ }
1661
+
1662
+ aside nav {
1663
+ --cirth-nav-element-spacing-horizontal: 0;
1579
1664
  display: block;
1580
1665
  }
1581
1666
 
1582
- aside li {
1583
- padding: calc(var(--cirth-nav-element-spacing-vertical) * .5) var(--cirth-nav-element-spacing-horizontal);
1667
+ aside nav ol, aside nav ul, aside nav li {
1668
+ display: block;
1669
+ }
1670
+
1671
+ aside nav li {
1672
+ padding: calc(var(--cirth-nav-element-spacing-vertical) * .5) 0;
1584
1673
  }
1585
1674
 
1586
- aside li a {
1675
+ aside nav li a {
1676
+ border-inline-start: var(--cirth-border-width-2) solid transparent;
1587
1677
  display: block;
1588
1678
  }
1589
1679
 
1590
- aside li [role="button"] {
1680
+ aside nav li a:is([aria-current]:not([aria-current="false"]), [aria-selected="true"]) {
1681
+ border-block-end-color: #0000;
1682
+ border-inline-start-color: var(--cirth-primary-border);
1683
+ }
1684
+
1685
+ aside nav li [role="button"] {
1591
1686
  margin: inherit;
1592
1687
  }
1593
1688
 
@@ -1605,11 +1700,18 @@ aside li [role="button"] {
1605
1700
  background-color: var(--cirth-popover-background-color);
1606
1701
  box-shadow: var(--cirth-popover-box-shadow);
1607
1702
  color: var(--cirth-popover-color);
1608
- transition: opacity var(--cirth-transition), display var(--cirth-transition) allow-discrete, overlay var(--cirth-transition) allow-discrete;
1609
1703
  margin: auto;
1610
1704
  inset: 0;
1611
1705
  }
1612
1706
 
1707
+ :is([popover=""], [popover="auto"], [popover="hint"]):not(dialog):popover-open > :last-child {
1708
+ margin-bottom: 0;
1709
+ }
1710
+
1711
+ :is([popover=""], [popover="auto"], [popover="hint"]):not(dialog):popover-open {
1712
+ transition: opacity var(--cirth-transition), display var(--cirth-transition) allow-discrete, overlay var(--cirth-transition) allow-discrete;
1713
+ }
1714
+
1613
1715
  @starting-style {
1614
1716
  :is([popover=""], [popover="auto"], [popover="hint"]):not(dialog):popover-open {
1615
1717
  opacity: 0;
@@ -1732,7 +1834,7 @@ progress::-moz-progress-bar {
1732
1834
  --cirth-font-weight-medium: 500;
1733
1835
  --cirth-font-weight-semibold: 600;
1734
1836
  --cirth-font-weight-bold: 700;
1735
- --cirth-letter-spacing-tight: -.02em;
1837
+ --cirth-letter-spacing-tight: -.03em;
1736
1838
  --cirth-letter-spacing-snug: -.01em;
1737
1839
  --cirth-line-height-none: 1;
1738
1840
  --cirth-line-height-tight: 1.125;
@@ -1782,12 +1884,12 @@ progress::-moz-progress-bar {
1782
1884
  --cirth-z-index-modal-backdrop: 1040;
1783
1885
  --cirth-z-index-modal: 1050;
1784
1886
  --cirth-font-family: var(--cirth-font-family-sans);
1785
- --cirth-font-family-display: var(--cirth-font-family-serif);
1887
+ --cirth-font-family-display: var(--cirth-font-family-sans);
1786
1888
  --cirth-line-height: var(--cirth-line-height-normal);
1787
1889
  --cirth-font-weight: var(--cirth-font-weight-regular);
1788
1890
  --cirth-font-size: 100%;
1789
1891
  --cirth-text-underline-offset: .15em;
1790
- --cirth-border-radius: var(--cirth-radius-lg);
1892
+ --cirth-border-radius: var(--cirth-radius-sm);
1791
1893
  --cirth-card-border-radius: calc(var(--cirth-border-radius) * 1.5);
1792
1894
  --cirth-checkbox-border-radius: min(var(--cirth-border-radius),
1793
1895
  var(--cirth-radius-sm));
@@ -1798,25 +1900,29 @@ progress::-moz-progress-bar {
1798
1900
  --cirth-background-color: var(--cirth-canvas);
1799
1901
  --cirth-transition: var(--cirth-duration-normal) var(--cirth-ease-out);
1800
1902
  --cirth-spacing: var(--cirth-space-4);
1801
- --cirth-typography-spacing-vertical: var(--cirth-space-4);
1903
+ --cirth-typography-spacing-vertical: var(--cirth-spacing);
1802
1904
  --cirth-block-spacing-vertical: var(--cirth-spacing);
1803
1905
  --cirth-block-spacing-horizontal: var(--cirth-spacing);
1906
+ --cirth-container-gutter: clamp(var(--cirth-space-4),
1907
+ 4%,
1908
+ var(--cirth-space-12));
1804
1909
  --cirth-container-max-width: 60rem;
1805
1910
  --cirth-form-element-spacing-vertical: var(--cirth-space-2);
1806
1911
  --cirth-form-element-spacing-horizontal: var(--cirth-space-4);
1807
- --cirth-form-label-font-weight: var(--cirth-font-weight);
1912
+ --cirth-form-label-font-weight: var(--cirth-font-weight-medium);
1808
1913
  --cirth-group-box-shadow: 0 0 0 #0000;
1809
1914
  --cirth-group-box-shadow-focus-with-button: 0 0 0 var(--cirth-outline-width)
1810
1915
  var(--cirth-primary-focus);
1811
1916
  --cirth-group-box-shadow-focus-with-input: 0 0 0 var(--cirth-border-width-1)
1812
1917
  var(--cirth-form-element-border-color);
1918
+ --cirth-card-box-shadow: none;
1813
1919
  --cirth-meter-background-color: var(--cirth-progress-background-color);
1814
1920
  --cirth-meter-border-color: var(--cirth-progress-border-color);
1815
- --cirth-popover-background-color: var(--cirth-card-background-color);
1816
1921
  --cirth-popover-border-color: var(--cirth-muted-border-color);
1817
- --cirth-popover-color: var(--cirth-color);
1922
+ --cirth-popover-color: var(--cirth-ink);
1818
1923
  --cirth-popover-box-shadow: var(--cirth-box-shadow);
1819
1924
  --cirth-popover-max-width: min(30rem, 100% - var(--cirth-spacing) * 2);
1925
+ --cirth-modal-max-width: 43.75rem;
1820
1926
  --cirth-modal-overlay-backdrop-filter: blur(.375rem);
1821
1927
  --cirth-nav-element-spacing-vertical: var(--cirth-space-4);
1822
1928
  --cirth-nav-element-spacing-horizontal: var(--cirth-space-2);
@@ -1846,30 +1952,35 @@ h4, h5, h6 {
1846
1952
  --cirth-font-weight: var(--cirth-font-weight-semibold);
1847
1953
  }
1848
1954
 
1955
+ h1, h2 {
1956
+ --cirth-letter-spacing: var(--cirth-letter-spacing-tight);
1957
+ }
1958
+
1959
+ h3, h4 {
1960
+ --cirth-letter-spacing: var(--cirth-letter-spacing-snug);
1961
+ }
1962
+
1849
1963
  h1 {
1850
- --cirth-font-size: clamp(var(--cirth-font-size-5xl),
1851
- 1.7rem + 2.2vw,
1852
- var(--cirth-font-size-7xl));
1964
+ --cirth-font-size: clamp(var(--cirth-font-size-3xl),
1965
+ 1.31rem + 1.8vw,
1966
+ var(--cirth-font-size-6xl));
1853
1967
  --cirth-line-height: var(--cirth-line-height-tight);
1854
- --cirth-letter-spacing: var(--cirth-letter-spacing-tight);
1855
1968
  --cirth-typography-spacing-top: var(--cirth-space-12);
1856
1969
  }
1857
1970
 
1858
1971
  h2 {
1859
1972
  --cirth-font-size: clamp(var(--cirth-font-size-2xl),
1860
- 1.3rem + 1vw,
1973
+ 1.28rem + .9vw,
1861
1974
  var(--cirth-font-size-4xl));
1862
- --cirth-line-height: 1.15;
1863
- --cirth-letter-spacing: var(--cirth-letter-spacing-tight);
1975
+ --cirth-line-height: var(--cirth-line-height-snug);
1864
1976
  --cirth-typography-spacing-top: var(--cirth-space-12);
1865
1977
  }
1866
1978
 
1867
1979
  h3 {
1868
1980
  --cirth-font-size: clamp(var(--cirth-font-size-xl),
1869
- 1.15rem + .5vw,
1981
+ 1.14rem + .45vw,
1870
1982
  var(--cirth-font-size-2xl));
1871
- --cirth-line-height: 1.2;
1872
- --cirth-letter-spacing: var(--cirth-letter-spacing-snug);
1983
+ --cirth-line-height: var(--cirth-line-height-snug);
1873
1984
  --cirth-typography-spacing-top: var(--cirth-space-10);
1874
1985
  }
1875
1986
 
@@ -1892,14 +2003,12 @@ h6 {
1892
2003
  }
1893
2004
 
1894
2005
  article {
1895
- --cirth-border-radius: var(--cirth-card-border-radius);
1896
- --cirth-block-spacing-vertical: var(--cirth-space-6);
1897
- --cirth-block-spacing-horizontal: var(--cirth-space-6);
2006
+ --cirth-block-spacing-vertical: var(--cirth-space-5);
2007
+ --cirth-block-spacing-horizontal: var(--cirth-space-5);
1898
2008
  }
1899
2009
 
1900
2010
  thead th, thead td, tfoot th, tfoot td {
1901
2011
  --cirth-font-weight: var(--cirth-font-weight-semibold);
1902
- --cirth-border-width: .1875rem;
1903
2012
  }
1904
2013
 
1905
2014
  pre, code, kbd, samp, var {
@@ -1914,11 +2023,6 @@ kbd {
1914
2023
  --cirth-font-weight: bolder;
1915
2024
  }
1916
2025
 
1917
- input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]), :where(select, textarea) {
1918
- --cirth-outline-width: var(--cirth-border-width-1);
1919
- --cirth-line-height: var(--cirth-line-height-relaxed);
1920
- }
1921
-
1922
2026
  [type="search"] {
1923
2027
  --cirth-border-radius: var(--cirth-radius-pill);
1924
2028
  }
@@ -1929,12 +2033,7 @@ input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [
1929
2033
 
1930
2034
  button, [type="submit"], [type="reset"], [type="button"], [role="button"] {
1931
2035
  --cirth-font-weight: var(--cirth-font-weight-semibold);
1932
- --cirth-line-height: var(--cirth-line-height-relaxed);
1933
- --cirth-form-element-spacing-horizontal: var(--cirth-space-5);
1934
- }
1935
-
1936
- [type="file"] {
1937
- --cirth-line-height: var(--cirth-line-height-relaxed);
2036
+ --cirth-form-element-spacing-horizontal: var(--cirth-space-4);
1938
2037
  }
1939
2038
 
1940
2039
  [type="checkbox"], [type="radio"] {
@@ -1963,9 +2062,10 @@ details summary[role="button"]:after {
1963
2062
 
1964
2063
  :root, :host {
1965
2064
  --cirth-canvas: light-dark(oklch(97.4% .004 69.35), oklch(20.15% .003 264));
1966
- --cirth-color: light-dark(oklch(35.3% .021 264), oklch(83% .016 264));
2065
+ --cirth-ink: light-dark(oklch(35.3% .021 264), oklch(83% .016 264));
2066
+ --cirth-color: var(--cirth-ink);
1967
2067
  --cirth-text-selection-color: light-dark(oklch(65.7% .121 69.35 / .25), oklch(70% .129 69.35 / .1875));
1968
- --cirth-muted-color: light-dark(oklch(52.7% .032 264), oklch(61.3% .032 264));
2068
+ --cirth-muted-color: light-dark(oklch(52.7% .032 264), oklch(65.7% .03 264));
1969
2069
  --cirth-muted-border-color: light-dark(oklch(93.85% .003 264), oklch(26.7% .011 264));
1970
2070
  --cirth-error: light-dark(oklch(44% .151 29.73), oklch(74.3% .133 29.73));
1971
2071
  --cirth-success: light-dark(oklch(52.7% .1 160.59), oklch(65.7% .125 160.59));
@@ -1983,9 +2083,9 @@ details summary[role="button"]:after {
1983
2083
  --cirth-contrast-hover-background: light-dark(oklch(0% 0 0), oklch(100% 0 0));
1984
2084
  --cirth-contrast-focus: light-dark(oklch(48.3% .03 264 / .7), oklch(87.3% .011 264 / .5));
1985
2085
  --cirth-contrast-inverse: light-dark(oklch(100% 0 0), oklch(0% 0 0));
1986
- --cirth-link-visited-color: light-dark(oklch(48.3% .03 264), oklch(65.7% .03 264));
2086
+ --cirth-link-visited-color: light-dark(oklch(48.3% 0 264), oklch(65.7% 0 264));
1987
2087
  --cirth-box-shadow: light-dark(.0145rem .029rem .174rem oklch(65.7% .03 264 / .01698), .0335rem .067rem .402rem oklch(65.7% .03 264 / .024), .0625rem .125rem .75rem oklch(65.7% .03 264 / .03), .1125rem .225rem 1.35rem oklch(65.7% .03 264 / .036), .2085rem .417rem 2.502rem oklch(65.7% .03 264 / .04302), .5rem 1rem 6rem oklch(65.7% .03 264 / .06), 0 0 0 .0625rem oklch(65.7% .03 264 / .015),
1988
- .0145rem .029rem .174rem oklch(9% 0 312 / .01698), .0335rem .067rem .402rem oklch(9% 0 312 / .024), .0625rem .125rem .75rem oklch(9% 0 312 / .03), .1125rem .225rem 1.35rem oklch(9% 0 312 / .036), .2085rem .417rem 2.502rem oklch(9% 0 312 / .04302), .5rem 1rem 6rem oklch(9% 0 312 / .06), 0 0 0 .0625rem oklch(9% 0 312 / .015));
2088
+ .0145rem .029rem .174rem oklch(9% 0 none / .01698), .0335rem .067rem .402rem oklch(9% 0 none / .024), .0625rem .125rem .75rem oklch(9% 0 none / .03), .1125rem .225rem 1.35rem oklch(9% 0 none / .036), .2085rem .417rem 2.502rem oklch(9% 0 none / .04302), .5rem 1rem 6rem oklch(9% 0 none / .06), 0 0 0 .0625rem oklch(9% 0 none / .015));
1989
2089
  --cirth-h1-color: light-dark(oklch(22.3% .006 264), oklch(96% 0 264));
1990
2090
  --cirth-h2-color: light-dark(oklch(26.7% .011 264), oklch(91.7% .006 264));
1991
2091
  --cirth-h3-color: light-dark(oklch(31% .016 264), oklch(83% .016 264));
@@ -1993,21 +2093,13 @@ details summary[role="button"]:after {
1993
2093
  --cirth-h5-color: light-dark(oklch(39.7% .025 264), oklch(74.3% .025 264));
1994
2094
  --cirth-h6-color: light-dark(oklch(44% .028 264), oklch(65.7% .03 264));
1995
2095
  --cirth-mark-color: light-dark(oklch(18% 0 264), oklch(100% 0 0));
1996
- --cirth-code-background-color: light-dark(oklch(97% 0 288), oklch(23.4% .00725 264));
1997
2096
  --cirth-code-color: light-dark(oklch(52.7% .032 264), oklch(65.7% .03 264));
1998
- --cirth-form-element-background-color: light-dark(oklch(99% 0 336), oklch(24.5% .0085 264));
1999
2097
  --cirth-form-element-selected-background-color: light-dark(oklch(91.7% .006 264), oklch(31% .016 264));
2000
2098
  --cirth-form-element-border-color: light-dark(oklch(61.3% .032 264), oklch(52.7% .032 264));
2001
2099
  --cirth-form-element-color: light-dark(oklch(26.7% .011 264), oklch(91.7% .006 264));
2002
- --cirth-form-element-active-background-color: light-dark(oklch(100% 0 0), oklch(23.4% .00725 264));
2003
2100
  --cirth-switch-background-color: light-dark(oklch(61.3% .032 264), oklch(52.7% .032 264));
2004
2101
  --cirth-range-border-color: light-dark(oklch(91.7% .006 264), oklch(26.7% .011 264));
2005
2102
  --cirth-range-active-border-color: light-dark(oklch(83% .016 264), oklch(31% .016 264));
2006
- --cirth-card-background-color: light-dark(oklch(100% 0 0), oklch(22.3% .006 264));
2007
- --cirth-card-sectioning-background-color: light-dark(oklch(99% 0 336), oklch(23.4% .00725 264));
2008
- --cirth-dropdown-background-color: light-dark(oklch(100% 0 0), oklch(22.3% .006 264));
2009
- --cirth-dropdown-border-color: light-dark(oklch(96% 0 264), oklch(26.7% .011 264));
2010
- --cirth-dropdown-hover-background-color: light-dark(oklch(96% 0 264), oklch(26.7% .011 264));
2011
2103
  --cirth-progress-background-color: light-dark(oklch(91.7% .006 264), oklch(26.7% .011 264));
2012
2104
  --cirth-progress-border-color: light-dark(oklch(61.3% .032 264), oklch(52.7% .032 264));
2013
2105
  }
@@ -2037,6 +2129,13 @@ details summary[role="button"]:after {
2037
2129
  --cirth-primary-hover-underline: var(--cirth-primary-hover);
2038
2130
  --cirth-primary-focus: oklch(from var(--cirth-primary) l c h / 75%);
2039
2131
  --cirth-primary-inverse: oklch(100% 0 0);
2132
+ --cirth-code-background-color: oklch(from var(--cirth-canvas) calc(l - .019) c h);
2133
+ --cirth-card-sectioning-background-color: oklch(from var(--cirth-canvas) calc(l + .009) c h);
2134
+ --cirth-form-element-background-color: oklch(from var(--cirth-canvas) calc(l - .008) c h);
2135
+ --cirth-card-background-color: oklch(from var(--cirth-canvas) calc(l + .018) c h);
2136
+ --cirth-form-element-active-background-color: var(--cirth-canvas);
2137
+ --cirth-dropdown-background-color: var(--cirth-card-background-color);
2138
+ --cirth-popover-background-color: var(--cirth-card-background-color);
2040
2139
  --cirth-secondary-background: oklch(48.3% .03 264);
2041
2140
  --cirth-secondary-border: var(--cirth-secondary-background);
2042
2141
  --cirth-secondary-hover-border: var(--cirth-secondary-hover-background);
@@ -2052,13 +2151,13 @@ details summary[role="button"]:after {
2052
2151
  --cirth-blockquote-footer-color: var(--cirth-muted-color);
2053
2152
  --cirth-button-box-shadow: 0 0 0 #0000;
2054
2153
  --cirth-button-hover-box-shadow: 0 0 0 #0000;
2055
- --cirth-table-border-color: var(--cirth-muted-border-color);
2154
+ --cirth-table-border-color: var(--cirth-card-border-color);
2056
2155
  --cirth-table-row-stripped-background-color: oklch(57% .032 264 / .0375);
2057
- --cirth-code-kbd-background-color: var(--cirth-color);
2156
+ --cirth-code-kbd-background-color: var(--cirth-ink);
2058
2157
  --cirth-code-kbd-color: var(--cirth-background-color);
2059
2158
  --cirth-form-element-placeholder-color: var(--cirth-muted-color);
2060
2159
  --cirth-form-element-active-border-color: var(--cirth-primary-border);
2061
- --cirth-form-element-focus-color: var(--cirth-primary-border);
2160
+ --cirth-form-element-focus-color: var(--cirth-primary-focus);
2062
2161
  --cirth-form-element-disabled-opacity: var(--cirth-opacity-disabled);
2063
2162
  --cirth-form-element-invalid-border-color: var(--cirth-error-border);
2064
2163
  --cirth-form-element-invalid-active-border-color: var(--cirth-error-active);
@@ -2073,10 +2172,11 @@ details summary[role="button"]:after {
2073
2172
  --cirth-range-thumb-color: var(--cirth-secondary-background);
2074
2173
  --cirth-range-thumb-active-color: var(--cirth-primary-background);
2075
2174
  --cirth-accordion-active-summary-color: var(--cirth-primary-hover);
2076
- --cirth-accordion-close-summary-color: var(--cirth-color);
2077
- --cirth-accordion-open-summary-color: var(--cirth-muted-color);
2078
- --cirth-card-border-color: var(--cirth-muted-border-color);
2079
- --cirth-card-box-shadow: var(--cirth-box-shadow);
2175
+ --cirth-accordion-close-summary-color: var(--cirth-ink);
2176
+ --cirth-accordion-open-summary-color: var(--cirth-ink);
2177
+ --cirth-card-border-color: color-mix(in oklab,
2178
+ var(--cirth-form-element-border-color) 38%,
2179
+ var(--cirth-card-background-color));
2080
2180
  --cirth-modal-overlay-background-color: oklch(93.85% .003 264deg / var(--cirth-opacity-overlay));
2081
2181
  --cirth-meter-optimum-color: var(--cirth-success);
2082
2182
  --cirth-meter-suboptimum-color: var(--cirth-warning);
@@ -2090,10 +2190,6 @@ details summary[role="button"]:after {
2090
2190
  --cirth-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(189, 47, 33)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
2091
2191
  }
2092
2192
 
2093
- :where([data-theme="light"]) input:is([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]), :root:where(:not([data-theme="dark"])) input:is([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]), :host(:where(:not([data-theme="dark"]))) input:is([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]) {
2094
- --cirth-form-element-focus-color: var(--cirth-primary-focus);
2095
- }
2096
-
2097
2193
  @media only screen and (prefers-color-scheme: dark) {
2098
2194
  :root:where(:not([data-theme])), :host(:where(:not([data-theme]))) {
2099
2195
  color-scheme: dark;
@@ -2116,12 +2212,19 @@ details summary[role="button"]:after {
2116
2212
  --cirth-primary-underline: oklch(from var(--cirth-primary) l c h / 50%);
2117
2213
  --cirth-primary-hover: oklch(from var(--cirth-primary) calc(l * 1.124) calc(c * 1.132) h);
2118
2214
  --cirth-primary-hover-background: color-mix(in oklch,
2119
- var(--cirth-primary) 81.4%,
2215
+ var(--cirth-primary) 72%,
2120
2216
  black);
2121
2217
  --cirth-primary-hover-border: var(--cirth-primary-hover-background);
2122
2218
  --cirth-primary-hover-underline: var(--cirth-primary-hover);
2123
2219
  --cirth-primary-focus: oklch(from var(--cirth-primary) l c h / 70%);
2124
2220
  --cirth-primary-inverse: oklch(100% 0 0);
2221
+ --cirth-code-background-color: oklch(from var(--cirth-canvas) calc(l - .02) c h);
2222
+ --cirth-card-sectioning-background-color: oklch(from var(--cirth-canvas) calc(l + .025) c h);
2223
+ --cirth-form-element-background-color: oklch(from var(--cirth-canvas) calc(l - .008) c h);
2224
+ --cirth-card-background-color: oklch(from var(--cirth-canvas) calc(l + .04) c h);
2225
+ --cirth-form-element-active-background-color: var(--cirth-canvas);
2226
+ --cirth-dropdown-background-color: var(--cirth-card-background-color);
2227
+ --cirth-popover-background-color: var(--cirth-card-background-color);
2125
2228
  --cirth-secondary-background: oklch(48.3% .03 264);
2126
2229
  --cirth-secondary-border: var(--cirth-secondary-background);
2127
2230
  --cirth-secondary-hover-border: var(--cirth-secondary-hover-background);
@@ -2137,13 +2240,13 @@ details summary[role="button"]:after {
2137
2240
  --cirth-blockquote-footer-color: var(--cirth-muted-color);
2138
2241
  --cirth-button-box-shadow: 0 0 0 #0000;
2139
2242
  --cirth-button-hover-box-shadow: 0 0 0 #0000;
2140
- --cirth-table-border-color: var(--cirth-muted-border-color);
2243
+ --cirth-table-border-color: var(--cirth-card-border-color);
2141
2244
  --cirth-table-row-stripped-background-color: oklch(57% .032 264 / .0375);
2142
- --cirth-code-kbd-background-color: var(--cirth-color);
2245
+ --cirth-code-kbd-background-color: var(--cirth-ink);
2143
2246
  --cirth-code-kbd-color: var(--cirth-background-color);
2144
2247
  --cirth-form-element-placeholder-color: oklch(65.7% .03 264);
2145
2248
  --cirth-form-element-active-border-color: var(--cirth-primary-border);
2146
- --cirth-form-element-focus-color: var(--cirth-primary-border);
2249
+ --cirth-form-element-focus-color: var(--cirth-primary-focus);
2147
2250
  --cirth-form-element-disabled-opacity: var(--cirth-opacity-disabled);
2148
2251
  --cirth-form-element-invalid-border-color: var(--cirth-error-border);
2149
2252
  --cirth-form-element-invalid-active-border-color: var(--cirth-error-active);
@@ -2158,26 +2261,23 @@ details summary[role="button"]:after {
2158
2261
  --cirth-range-thumb-color: var(--cirth-secondary-background);
2159
2262
  --cirth-range-thumb-active-color: var(--cirth-primary-background);
2160
2263
  --cirth-accordion-active-summary-color: var(--cirth-primary-hover);
2161
- --cirth-accordion-close-summary-color: var(--cirth-color);
2162
- --cirth-accordion-open-summary-color: var(--cirth-muted-color);
2163
- --cirth-card-border-color: var(--cirth-card-background-color);
2164
- --cirth-card-box-shadow: var(--cirth-box-shadow);
2165
- --cirth-modal-overlay-background-color: oklch(9% 0 312deg / var(--cirth-opacity-overlay));
2264
+ --cirth-accordion-close-summary-color: var(--cirth-ink);
2265
+ --cirth-accordion-open-summary-color: var(--cirth-ink);
2266
+ --cirth-card-border-color: color-mix(in oklab,
2267
+ var(--cirth-form-element-border-color) 46%,
2268
+ var(--cirth-card-background-color));
2269
+ --cirth-modal-overlay-background-color: oklch(9% 0 0deg / var(--cirth-opacity-overlay));
2166
2270
  --cirth-meter-optimum-color: var(--cirth-success);
2167
2271
  --cirth-meter-suboptimum-color: var(--cirth-warning);
2168
2272
  --cirth-meter-even-less-good-color: var(--cirth-error);
2169
- --cirth-progress-color: oklch(61.3% .113 69.35);
2170
- --cirth-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
2171
- --cirth-icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
2172
- --cirth-icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
2173
- --cirth-icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
2273
+ --cirth-progress-color: var(--cirth-primary);
2274
+ --cirth-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
2275
+ --cirth-icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
2276
+ --cirth-icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
2277
+ --cirth-icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
2174
2278
  --cirth-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(75, 215, 153)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
2175
2279
  --cirth-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(246, 160, 145)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
2176
2280
  }
2177
-
2178
- :root:where(:not([data-theme])) input:is([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]), :host(:where(:not([data-theme]))) input:is([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]) {
2179
- --cirth-form-element-focus-color: var(--cirth-primary-focus);
2180
- }
2181
2281
  }
2182
2282
 
2183
2283
  :where([data-theme="dark"]) {
@@ -2201,12 +2301,19 @@ details summary[role="button"]:after {
2201
2301
  --cirth-primary-underline: oklch(from var(--cirth-primary) l c h / 50%);
2202
2302
  --cirth-primary-hover: oklch(from var(--cirth-primary) calc(l * 1.124) calc(c * 1.132) h);
2203
2303
  --cirth-primary-hover-background: color-mix(in oklch,
2204
- var(--cirth-primary) 81.4%,
2304
+ var(--cirth-primary) 72%,
2205
2305
  black);
2206
2306
  --cirth-primary-hover-border: var(--cirth-primary-hover-background);
2207
2307
  --cirth-primary-hover-underline: var(--cirth-primary-hover);
2208
2308
  --cirth-primary-focus: oklch(from var(--cirth-primary) l c h / 70%);
2209
2309
  --cirth-primary-inverse: oklch(100% 0 0);
2310
+ --cirth-code-background-color: oklch(from var(--cirth-canvas) calc(l - .02) c h);
2311
+ --cirth-card-sectioning-background-color: oklch(from var(--cirth-canvas) calc(l + .025) c h);
2312
+ --cirth-form-element-background-color: oklch(from var(--cirth-canvas) calc(l - .008) c h);
2313
+ --cirth-card-background-color: oklch(from var(--cirth-canvas) calc(l + .04) c h);
2314
+ --cirth-form-element-active-background-color: var(--cirth-canvas);
2315
+ --cirth-dropdown-background-color: var(--cirth-card-background-color);
2316
+ --cirth-popover-background-color: var(--cirth-card-background-color);
2210
2317
  --cirth-secondary-background: oklch(48.3% .03 264);
2211
2318
  --cirth-secondary-border: var(--cirth-secondary-background);
2212
2319
  --cirth-secondary-hover-border: var(--cirth-secondary-hover-background);
@@ -2222,13 +2329,13 @@ details summary[role="button"]:after {
2222
2329
  --cirth-blockquote-footer-color: var(--cirth-muted-color);
2223
2330
  --cirth-button-box-shadow: 0 0 0 #0000;
2224
2331
  --cirth-button-hover-box-shadow: 0 0 0 #0000;
2225
- --cirth-table-border-color: var(--cirth-muted-border-color);
2332
+ --cirth-table-border-color: var(--cirth-card-border-color);
2226
2333
  --cirth-table-row-stripped-background-color: oklch(57% .032 264 / .0375);
2227
- --cirth-code-kbd-background-color: var(--cirth-color);
2334
+ --cirth-code-kbd-background-color: var(--cirth-ink);
2228
2335
  --cirth-code-kbd-color: var(--cirth-background-color);
2229
2336
  --cirth-form-element-placeholder-color: oklch(65.7% .03 264);
2230
2337
  --cirth-form-element-active-border-color: var(--cirth-primary-border);
2231
- --cirth-form-element-focus-color: var(--cirth-primary-border);
2338
+ --cirth-form-element-focus-color: var(--cirth-primary-focus);
2232
2339
  --cirth-form-element-disabled-opacity: var(--cirth-opacity-disabled);
2233
2340
  --cirth-form-element-invalid-border-color: var(--cirth-error-border);
2234
2341
  --cirth-form-element-invalid-active-border-color: var(--cirth-error-active);
@@ -2243,34 +2350,31 @@ details summary[role="button"]:after {
2243
2350
  --cirth-range-thumb-color: var(--cirth-secondary-background);
2244
2351
  --cirth-range-thumb-active-color: var(--cirth-primary-background);
2245
2352
  --cirth-accordion-active-summary-color: var(--cirth-primary-hover);
2246
- --cirth-accordion-close-summary-color: var(--cirth-color);
2247
- --cirth-accordion-open-summary-color: var(--cirth-muted-color);
2248
- --cirth-card-border-color: var(--cirth-card-background-color);
2249
- --cirth-card-box-shadow: var(--cirth-box-shadow);
2250
- --cirth-modal-overlay-background-color: oklch(9% 0 312deg / var(--cirth-opacity-overlay));
2353
+ --cirth-accordion-close-summary-color: var(--cirth-ink);
2354
+ --cirth-accordion-open-summary-color: var(--cirth-ink);
2355
+ --cirth-card-border-color: color-mix(in oklab,
2356
+ var(--cirth-form-element-border-color) 46%,
2357
+ var(--cirth-card-background-color));
2358
+ --cirth-modal-overlay-background-color: oklch(9% 0 0deg / var(--cirth-opacity-overlay));
2251
2359
  --cirth-meter-optimum-color: var(--cirth-success);
2252
2360
  --cirth-meter-suboptimum-color: var(--cirth-warning);
2253
2361
  --cirth-meter-even-less-good-color: var(--cirth-error);
2254
- --cirth-progress-color: oklch(61.3% .113 69.35);
2255
- --cirth-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
2256
- --cirth-icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
2257
- --cirth-icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
2258
- --cirth-icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(122, 132, 152)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
2362
+ --cirth-progress-color: var(--cirth-primary);
2363
+ --cirth-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
2364
+ --cirth-icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
2365
+ --cirth-icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
2366
+ --cirth-icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 146, 164)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
2259
2367
  --cirth-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(75, 215, 153)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
2260
2368
  --cirth-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(246, 160, 145)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
2261
2369
  }
2262
2370
 
2263
- :where([data-theme="dark"]) input:is([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [type="file"]) {
2264
- --cirth-form-element-focus-color: var(--cirth-primary-focus);
2265
- }
2266
-
2267
2371
  progress, [type="checkbox"], [type="radio"], [type="range"] {
2268
2372
  accent-color: var(--cirth-primary);
2269
2373
  }
2270
2374
 
2271
2375
  @media (prefers-contrast: more) {
2272
2376
  :where([data-theme="light"]), :root:where(:not([data-theme="dark"])), :host(:where(:not([data-theme="dark"]))) {
2273
- --cirth-color: oklch(22.3% .006 264);
2377
+ --cirth-ink: oklch(22.3% .006 264);
2274
2378
  --cirth-h1-color: var(--cirth-color);
2275
2379
  --cirth-h2-color: var(--cirth-color);
2276
2380
  --cirth-h3-color: var(--cirth-color);
@@ -2307,7 +2411,7 @@ progress, [type="checkbox"], [type="radio"], [type="range"] {
2307
2411
 
2308
2412
  @media only screen and (prefers-contrast: more) and (prefers-color-scheme: dark) {
2309
2413
  :root:where(:not([data-theme])), :host(:where(:not([data-theme]))) {
2310
- --cirth-color: oklch(96% 0 264);
2414
+ --cirth-ink: oklch(96% 0 264);
2311
2415
  --cirth-h1-color: var(--cirth-color);
2312
2416
  --cirth-h2-color: var(--cirth-color);
2313
2417
  --cirth-h3-color: var(--cirth-color);
@@ -2347,7 +2451,7 @@ progress, [type="checkbox"], [type="radio"], [type="range"] {
2347
2451
 
2348
2452
  @media (prefers-contrast: more) {
2349
2453
  :where([data-theme="dark"]) {
2350
- --cirth-color: oklch(96% 0 264);
2454
+ --cirth-ink: oklch(96% 0 264);
2351
2455
  --cirth-h1-color: var(--cirth-color);
2352
2456
  --cirth-h2-color: var(--cirth-color);
2353
2457
  --cirth-h3-color: var(--cirth-color);