@ketvietlab/design-system 0.1.6 → 0.1.7

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 (57) hide show
  1. package/README.md +111 -11
  2. package/dist/catalogue/catalogue.css +41 -34
  3. package/dist/catalogue/index.d.ts.map +1 -1
  4. package/dist/catalogue/index.js +413 -55
  5. package/dist/catalogue/index.js.map +1 -1
  6. package/dist/catalogue/page-surfaces.d.ts.map +1 -1
  7. package/dist/catalogue/page-surfaces.js +8 -6
  8. package/dist/catalogue/page-surfaces.js.map +1 -1
  9. package/dist/contract/index.d.ts.map +1 -1
  10. package/dist/contract/index.js +4 -0
  11. package/dist/contract/index.js.map +1 -1
  12. package/dist/foundations/tokens.css +2 -1
  13. package/dist/index.d.ts +3 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/layouts/flat.css +74 -0
  18. package/dist/layouts/grouped.css +126 -0
  19. package/dist/layouts/index.d.ts +3 -1
  20. package/dist/layouts/index.d.ts.map +1 -1
  21. package/dist/layouts/index.js +5 -2
  22. package/dist/layouts/index.js.map +1 -1
  23. package/dist/layouts/layouts.css +44 -7
  24. package/dist/layouts/shell.css +16 -2
  25. package/dist/layouts/shell.d.ts.map +1 -1
  26. package/dist/layouts/shell.js +1 -1
  27. package/dist/layouts/shell.js.map +1 -1
  28. package/dist/patterns/data-table.d.ts +50 -2
  29. package/dist/patterns/data-table.d.ts.map +1 -1
  30. package/dist/patterns/data-table.js +57 -3
  31. package/dist/patterns/data-table.js.map +1 -1
  32. package/dist/patterns/list-chrome.d.ts +80 -0
  33. package/dist/patterns/list-chrome.d.ts.map +1 -0
  34. package/dist/patterns/list-chrome.js +45 -0
  35. package/dist/patterns/list-chrome.js.map +1 -0
  36. package/dist/patterns/modal-sheet.d.ts +6 -1
  37. package/dist/patterns/modal-sheet.d.ts.map +1 -1
  38. package/dist/patterns/modal-sheet.js +5 -1
  39. package/dist/patterns/modal-sheet.js.map +1 -1
  40. package/dist/patterns/patterns.css +937 -131
  41. package/dist/patterns/record-page.d.ts +2 -2
  42. package/dist/patterns/record-page.d.ts.map +1 -1
  43. package/dist/patterns/record-page.js +1 -1
  44. package/dist/patterns/record-page.js.map +1 -1
  45. package/dist/primitives/actions.d.ts.map +1 -1
  46. package/dist/primitives/actions.js +1 -1
  47. package/dist/primitives/actions.js.map +1 -1
  48. package/dist/primitives/field.d.ts +16 -3
  49. package/dist/primitives/field.d.ts.map +1 -1
  50. package/dist/primitives/field.js +18 -5
  51. package/dist/primitives/field.js.map +1 -1
  52. package/dist/primitives/navigation.css +1 -1
  53. package/dist/primitives/primitives.css +82 -6
  54. package/dist/primitives/progress.js +1 -1
  55. package/dist/primitives/progress.js.map +1 -1
  56. package/dist/styles.css +2 -0
  57. package/package.json +2 -2
@@ -1,6 +1,12 @@
1
1
  @layer ket.app {
2
2
  :where([data-kv-design-system])
3
- :is([data-ui="list-page"], [data-ui="form-page"], [data-ui="dashboard-page"], [data-ui="board-page"]) {
3
+ :is(
4
+ [data-ui="list-page"],
5
+ [data-ui="record-page"],
6
+ [data-ui="form-page"],
7
+ [data-ui="dashboard-page"],
8
+ [data-ui="board-page"]
9
+ ) {
4
10
  --kv-page-title-size: 1.5rem;
5
11
  }
6
12
 
@@ -35,7 +41,7 @@
35
41
  color: var(--kv-accent);
36
42
  font-size: var(--kv-text-2xs);
37
43
  font-weight: var(--kv-weight-bold);
38
- letter-spacing: 0.09em;
44
+ letter-spacing: 0;
39
45
  line-height: var(--kv-leading-tight);
40
46
  text-transform: uppercase;
41
47
  }
@@ -45,7 +51,7 @@
45
51
  color: var(--kv-text-main);
46
52
  font-size: var(--kv-page-title-size);
47
53
  font-weight: var(--kv-weight-semibold);
48
- letter-spacing: -0.025em;
54
+ letter-spacing: 0;
49
55
  line-height: var(--kv-leading-tight);
50
56
  }
51
57
 
@@ -184,7 +190,7 @@
184
190
 
185
191
  :where([data-kv-design-system])
186
192
  [data-ui="list-page"][data-variant="operational"]
187
- [data-ui="list-page-body"]:has(> [data-ui="table-scroll"])
193
+ [data-ui="list-page-body"]:has(+ [data-ui="list-page-footer"])
188
194
  > [data-ui="table-scroll"] {
189
195
  border-radius: var(--kv-radius-md) var(--kv-radius-md) 0 0;
190
196
  }
@@ -236,6 +242,15 @@
236
242
  font-size: var(--kv-text-sm);
237
243
  }
238
244
 
245
+ :where([data-kv-design-system]) [data-ui="table-scroll"][data-framed="false"],
246
+ :where([data-kv-design-system]) [data-ui="list-page"] [data-ui="table-scroll"][data-framed="false"] {
247
+ width: auto;
248
+ margin-inline: 0;
249
+ border: 0;
250
+ border-radius: 0;
251
+ background: transparent;
252
+ }
253
+
239
254
  :where([data-kv-design-system]) [data-ui="table-caption"] {
240
255
  padding: var(--kv-space-3);
241
256
  color: var(--kv-text-muted);
@@ -251,12 +266,63 @@
251
266
  color: var(--kv-table-header-text);
252
267
  font-size: var(--kv-text-2xs);
253
268
  font-weight: var(--kv-weight-semibold);
254
- letter-spacing: 0.035em;
269
+ letter-spacing: 0;
255
270
  text-align: left;
256
271
  text-transform: uppercase;
257
272
  white-space: nowrap;
258
273
  }
259
274
 
275
+ :where([data-kv-design-system]) [data-ui="select-col"],
276
+ :where([data-kv-design-system]) [data-ui="select-cell"] {
277
+ width: 3.5rem;
278
+ min-width: 3.5rem;
279
+ max-width: 3.5rem;
280
+ white-space: nowrap;
281
+ text-align: center;
282
+ }
283
+
284
+ :where([data-kv-design-system]) [data-ui="select-col"] {
285
+ height: var(--kv-table-header-height);
286
+ padding: 0 var(--kv-space-3);
287
+ border-bottom: 1px solid var(--kv-table-border);
288
+ background: var(--kv-table-header-bg);
289
+ }
290
+
291
+ :where([data-kv-design-system]) [data-ui="select-cell"] {
292
+ min-width: 3.5rem;
293
+ height: var(--kv-row-height);
294
+ padding: 0.4375rem var(--kv-space-3);
295
+ border-bottom: 1px solid var(--kv-table-border);
296
+ background: var(--kv-table-row-bg);
297
+ vertical-align: middle;
298
+ }
299
+
300
+ :where([data-kv-design-system]) [data-ui="select-all"],
301
+ :where([data-kv-design-system]) [data-ui="row-select"] {
302
+ width: 1rem;
303
+ height: 1rem;
304
+ margin: 0;
305
+ accent-color: var(--kv-color-accent);
306
+ }
307
+
308
+ :where([data-kv-design-system]) [data-ui="sort-link"] {
309
+ display: inline-flex;
310
+ align-items: center;
311
+ gap: var(--kv-space-1);
312
+ color: inherit;
313
+ text-decoration: none;
314
+ }
315
+
316
+ :where([data-kv-design-system]) [data-ui="sort-link"]:hover {
317
+ color: var(--kv-color-accent);
318
+ }
319
+
320
+ :where([data-kv-design-system]) [data-ui="sort-icon"] {
321
+ color: var(--kv-color-accent);
322
+ font-size: var(--kv-text-xs);
323
+ line-height: 1;
324
+ }
325
+
260
326
  :where([data-kv-design-system]) [data-ui="col"][data-align="end"],
261
327
  :where([data-kv-design-system]) [data-ui="cell"][data-align="end"] {
262
328
  font-variant-numeric: tabular-nums;
@@ -264,6 +330,7 @@
264
330
  }
265
331
 
266
332
  :where([data-kv-design-system]) [data-ui="row"] {
333
+ position: relative;
267
334
  height: var(--kv-row-height);
268
335
  transition: background var(--kv-motion-fast);
269
336
  }
@@ -272,14 +339,95 @@
272
339
  background: transparent;
273
340
  }
274
341
 
275
- :where([data-kv-design-system]) [data-ui="row"]:hover [data-ui="cell"] {
342
+ :where([data-kv-design-system]) [data-ui="row"]:hover [data-ui="cell"],
343
+ :where([data-kv-design-system]) [data-ui="row"]:hover [data-ui="select-cell"] {
276
344
  background: var(--kv-table-row-hover);
277
345
  }
278
346
 
279
- :where([data-kv-design-system]) [data-ui="row"][data-selected="true"] [data-ui="cell"] {
347
+ :where([data-kv-design-system])
348
+ [data-ui="row"][data-selected="true"]:not(:has([data-ui="row-select"]))
349
+ [data-ui="cell"],
350
+ :where([data-kv-design-system]) [data-ui="row"]:has([data-ui="row-select"]:checked) [data-ui="cell"],
351
+ :where([data-kv-design-system])
352
+ [data-ui="row"]:has([data-ui="row-select"]:checked)
353
+ [data-ui="select-cell"] {
280
354
  background: var(--kv-table-row-selected);
281
355
  }
282
356
 
357
+ :where([data-kv-design-system]) [data-ui="group-row"] {
358
+ height: var(--kv-table-header-height);
359
+ }
360
+
361
+ :where([data-kv-design-system]) [data-ui="group-cell"] {
362
+ padding: var(--kv-space-2) var(--kv-space-3);
363
+ border-bottom: 1px solid var(--kv-table-border);
364
+ background: var(--kv-table-header-bg);
365
+ color: var(--kv-text-main);
366
+ font-size: var(--kv-text-sm);
367
+ font-weight: var(--kv-weight-semibold);
368
+ text-align: left;
369
+ }
370
+
371
+ :where([data-kv-design-system]) [data-ui="group-link"] {
372
+ display: inline-flex;
373
+ align-items: center;
374
+ min-width: 0;
375
+ color: inherit;
376
+ text-decoration: none;
377
+ vertical-align: middle;
378
+ }
379
+
380
+ :where([data-kv-design-system]) a[data-ui="group-link"]:hover {
381
+ color: var(--kv-color-accent);
382
+ text-decoration: underline;
383
+ text-underline-offset: 0.15em;
384
+ }
385
+
386
+ :where([data-kv-design-system]) [data-ui="group-indent"] {
387
+ display: inline-block;
388
+ width: calc(var(--kv-group-depth, 0) * var(--kv-space-5));
389
+ min-width: 0;
390
+ }
391
+
392
+ :where([data-kv-design-system]) [data-ui="group-count"] {
393
+ display: inline-grid;
394
+ min-width: 1.625rem;
395
+ margin-left: var(--kv-space-2);
396
+ padding: 0 var(--kv-space-2);
397
+ border-radius: var(--kv-radius-full);
398
+ background: var(--kv-interactive-disabled);
399
+ color: var(--kv-text-muted);
400
+ font-size: var(--kv-text-xs);
401
+ font-variant-numeric: tabular-nums;
402
+ line-height: 1.5;
403
+ text-align: center;
404
+ }
405
+
406
+ :where([data-kv-design-system]) [data-ui="group-pager"] td {
407
+ padding: var(--kv-space-2) var(--kv-space-3);
408
+ border-bottom: 1px solid var(--kv-table-border);
409
+ background: var(--kv-table-row-bg);
410
+ color: var(--kv-text-muted);
411
+ font-size: var(--kv-text-xs);
412
+ }
413
+
414
+ :where([data-kv-design-system]) [data-ui="group-pager-actions"] {
415
+ display: inline-flex;
416
+ gap: var(--kv-space-1);
417
+ margin-left: var(--kv-space-3);
418
+ }
419
+
420
+ :where([data-kv-design-system]) [data-ui="group-pager-actions"] a {
421
+ display: inline-grid;
422
+ place-items: center;
423
+ width: 1.5rem;
424
+ height: 1.5rem;
425
+ border: 1px solid var(--kv-border-default);
426
+ border-radius: var(--kv-radius-sm);
427
+ color: var(--kv-text-secondary);
428
+ text-decoration: none;
429
+ }
430
+
283
431
  :where([data-kv-design-system]) [data-ui="cell"] {
284
432
  max-width: 24rem;
285
433
  height: var(--kv-row-height);
@@ -295,7 +443,15 @@
295
443
  font-weight: var(--kv-weight-semibold);
296
444
  }
297
445
 
446
+ :where([data-kv-design-system]) [data-ui="cell"][data-linked="true"] {
447
+ padding: 0;
448
+ }
449
+
298
450
  :where([data-kv-design-system]) [data-ui="row-link"] {
451
+ display: flex;
452
+ min-height: calc(var(--kv-row-height) - 1px);
453
+ align-items: center;
454
+ padding: 0.4375rem var(--kv-space-3);
299
455
  color: inherit;
300
456
  text-decoration: none;
301
457
  }
@@ -306,8 +462,287 @@
306
462
  text-underline-offset: 0.15em;
307
463
  }
308
464
 
465
+ :where([data-kv-design-system]) [data-ui="row-link"]::after {
466
+ position: absolute;
467
+ inset: 0;
468
+ content: "";
469
+ }
470
+
471
+ :where([data-kv-design-system]) [data-ui="row-select"] {
472
+ position: relative;
473
+ z-index: 1;
474
+ }
475
+
476
+ :where([data-kv-design-system]) [data-ui="row"]:focus-within {
477
+ outline: 2px solid var(--kv-color-focus);
478
+ outline-offset: -2px;
479
+ }
480
+
481
+ :where([data-kv-design-system]) [data-ui="row-link"]:focus-visible {
482
+ outline: none;
483
+ box-shadow: none;
484
+ }
485
+
486
+ :where([data-kv-design-system]) [data-ui="cell"][data-align="end"] [data-ui="row-link"] {
487
+ justify-content: flex-end;
488
+ }
489
+
490
+ :where([data-kv-design-system])
491
+ [data-ui="table-scroll"][data-gutter="compact"]
492
+ [data-ui="cell"]:not([data-linked="true"]),
493
+ :where([data-kv-design-system]) [data-ui="table-scroll"][data-gutter="compact"] [data-ui="row-link"] {
494
+ padding-block: 0.3125rem;
495
+ }
496
+
497
+ :where([data-kv-design-system]) [data-ui="list-chrome"] {
498
+ display: grid;
499
+ gap: var(--kv-space-2);
500
+ width: 100%;
501
+ min-width: 0;
502
+ }
503
+
504
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"] {
505
+ display: flex;
506
+ flex-wrap: wrap;
507
+ align-items: center;
508
+ gap: var(--kv-space-2);
509
+ min-width: 0;
510
+ }
511
+
512
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"]:empty {
513
+ display: none;
514
+ }
515
+
516
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="query"] {
517
+ flex-wrap: nowrap;
518
+ align-items: center;
519
+ }
520
+
521
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="filters"] {
522
+ flex: 0 1 auto;
523
+ min-width: 0;
524
+ }
525
+
526
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="tail"] {
527
+ flex: 0 1 auto;
528
+ flex-wrap: nowrap;
529
+ align-items: center;
530
+ margin-left: auto;
531
+ max-width: 100%;
532
+ }
533
+
534
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="meta"] {
535
+ flex: 0 0 auto;
536
+ flex-wrap: nowrap;
537
+ }
538
+
539
+ :where([data-kv-design-system]) [data-ui="list-search"] {
540
+ display: flex;
541
+ flex: 1 1 16rem;
542
+ align-items: stretch;
543
+ min-width: 12rem;
544
+ max-width: 32rem;
545
+ border: 1px solid var(--kv-input-border);
546
+ border-radius: var(--kv-radius-sm);
547
+ background: var(--kv-input-bg);
548
+ }
549
+
550
+ :where([data-kv-design-system]) [data-ui="list-search"]:focus-within {
551
+ border-color: var(--kv-input-border-focus);
552
+ box-shadow: var(--kv-input-ring);
553
+ }
554
+
555
+ :where([data-kv-design-system]) [data-ui="list-search-label"],
556
+ :where([data-kv-design-system]) [data-ui="list-sort-label"] {
557
+ position: absolute;
558
+ width: 1px;
559
+ height: 1px;
560
+ overflow: hidden;
561
+ clip-path: inset(50%);
562
+ white-space: nowrap;
563
+ }
564
+
565
+ :where([data-kv-design-system]) [data-ui="list-search-input"],
566
+ :where([data-kv-design-system]) [data-ui="list-sort-select"] {
567
+ width: 100%;
568
+ min-width: 0;
569
+ min-height: var(--kv-control-height-compact);
570
+ border: 1px solid var(--kv-input-border);
571
+ border-radius: var(--kv-radius-sm);
572
+ background: var(--kv-input-bg);
573
+ color: var(--kv-input-text);
574
+ font: inherit;
575
+ }
576
+
577
+ :where([data-kv-design-system]) [data-ui="list-search-input"] {
578
+ flex: 1 1 auto;
579
+ width: 100%;
580
+ min-width: 0;
581
+ min-height: var(--kv-control-height-compact);
582
+ padding: 0 var(--kv-space-3);
583
+ border: 0;
584
+ background: transparent;
585
+ color: var(--kv-input-text);
586
+ font: inherit;
587
+ }
588
+
589
+ :where([data-kv-design-system]) [data-ui="list-search-input"]:focus-visible {
590
+ outline: none;
591
+ box-shadow: none;
592
+ }
593
+
594
+ :where([data-kv-design-system]) [data-ui="list-search-submit"] {
595
+ display: inline-flex;
596
+ align-items: center;
597
+ padding-right: var(--kv-space-1);
598
+ }
599
+
600
+ :where([data-kv-design-system]) [data-ui="list-facets"],
601
+ :where([data-kv-design-system]) [data-ui="list-view-switch"] {
602
+ display: flex;
603
+ flex-wrap: wrap;
604
+ align-items: center;
605
+ gap: var(--kv-space-1);
606
+ min-width: 0;
607
+ max-width: 100%;
608
+ }
609
+
610
+ :where([data-kv-design-system]) [data-ui="list-facet"],
611
+ :where([data-kv-design-system]) [data-ui="list-view"] {
612
+ display: inline-flex;
613
+ align-items: center;
614
+ gap: var(--kv-space-1);
615
+ min-height: var(--kv-control-height-compact);
616
+ padding: 0 var(--kv-space-3);
617
+ border: 1px solid var(--kv-border-default);
618
+ border-radius: var(--kv-radius-sm);
619
+ background: var(--kv-interactive-bg);
620
+ color: var(--kv-text-secondary);
621
+ font-size: var(--kv-text-sm);
622
+ text-decoration: none;
623
+ }
624
+
625
+ :where([data-kv-design-system]) [data-ui="list-facet"][data-active="true"],
626
+ :where([data-kv-design-system]) [data-ui="list-view"][data-active="true"] {
627
+ border-color: var(--kv-color-accent);
628
+ background: var(--kv-color-accent-soft);
629
+ color: var(--kv-color-accent);
630
+ }
631
+
632
+ :where([data-kv-design-system]) [data-ui="list-facet-count"] {
633
+ display: inline-grid;
634
+ min-width: 1.375rem;
635
+ padding: 0 var(--kv-space-1);
636
+ border-radius: var(--kv-radius-full);
637
+ background: var(--kv-interactive-disabled);
638
+ color: var(--kv-text-muted);
639
+ font-size: var(--kv-text-xs);
640
+ font-variant-numeric: tabular-nums;
641
+ line-height: 1.5;
642
+ text-align: center;
643
+ }
644
+
645
+ :where([data-kv-design-system]) [data-ui="list-sort"] {
646
+ display: inline-grid;
647
+ grid-template-columns: minmax(8rem, 12rem) auto;
648
+ align-items: center;
649
+ gap: var(--kv-space-2);
650
+ }
651
+
652
+ :where([data-kv-design-system]) [data-ui="list-sort-select"] {
653
+ padding: 0 var(--kv-space-2);
654
+ }
655
+
656
+ :where([data-kv-design-system]) [data-ui="list-status"] {
657
+ color: var(--kv-text-muted);
658
+ font-size: var(--kv-text-sm);
659
+ }
660
+
661
+ :where([data-kv-design-system]) [data-ui="list-actions"] {
662
+ display: inline-flex;
663
+ flex-wrap: wrap;
664
+ justify-content: flex-end;
665
+ gap: var(--kv-space-2);
666
+ }
667
+
668
+ :where([data-kv-design-system]) [data-ui="bulk-actions"] {
669
+ display: flex;
670
+ flex-wrap: wrap;
671
+ align-items: center;
672
+ gap: var(--kv-space-2);
673
+ min-width: 0;
674
+ color: var(--kv-text-muted);
675
+ font-size: var(--kv-text-sm);
676
+ }
677
+
678
+ :where([data-kv-design-system]) [data-ui="bulk-actions"]:not([data-has-selection="true"]) {
679
+ display: none;
680
+ }
681
+
682
+ :where([data-kv-design-system]) [data-ui="pager-bar"] {
683
+ display: flex;
684
+ flex-wrap: nowrap;
685
+ align-items: center;
686
+ gap: var(--kv-space-2);
687
+ min-width: 0;
688
+ padding: 0;
689
+ color: var(--kv-text-muted);
690
+ font-size: var(--kv-text-sm);
691
+ }
692
+
693
+ :where([data-kv-design-system]) [data-ui="bulk-actions"][data-has-selection="true"] {
694
+ color: var(--kv-text-secondary);
695
+ }
696
+
697
+ :where([data-kv-design-system]) [data-ui="bulk-summary"],
698
+ :where([data-kv-design-system]) [data-ui="pager-summary"] {
699
+ display: inline-flex;
700
+ flex-wrap: nowrap;
701
+ align-items: center;
702
+ gap: var(--kv-space-2);
703
+ min-width: 0;
704
+ white-space: nowrap;
705
+ }
706
+
707
+ :where([data-kv-design-system]) [data-ui="bulk-action-list"],
708
+ :where([data-kv-design-system]) [data-ui="pager-actions"],
709
+ :where([data-kv-design-system]) [data-ui="pager-pages"] {
710
+ display: inline-flex;
711
+ flex-wrap: wrap;
712
+ align-items: center;
713
+ gap: var(--kv-space-1);
714
+ }
715
+
716
+ :where([data-kv-design-system]) [data-ui="pager-link"],
717
+ :where([data-kv-design-system]) [data-ui="pager-page"] {
718
+ display: inline-grid;
719
+ place-items: center;
720
+ min-width: 2rem;
721
+ height: 2rem;
722
+ padding: 0 var(--kv-space-2);
723
+ border: 1px solid var(--kv-border-default);
724
+ border-radius: var(--kv-radius-sm);
725
+ background: var(--kv-interactive-bg);
726
+ color: var(--kv-text-secondary);
727
+ font-size: var(--kv-text-sm);
728
+ text-decoration: none;
729
+ }
730
+
731
+ :where([data-kv-design-system]) [data-ui="pager-page"][data-active="true"] {
732
+ border-color: var(--kv-color-accent);
733
+ background: var(--kv-color-accent-soft);
734
+ color: var(--kv-color-accent);
735
+ }
736
+
737
+ :where([data-kv-design-system]) [data-ui="pager-link"][data-disabled="true"] {
738
+ opacity: 0.45;
739
+ }
740
+
309
741
  :where([data-kv-design-system]) [data-ui="record-form"] {
310
742
  display: grid;
743
+ min-width: 0;
744
+ container-type: inline-size;
745
+ container-name: record-form;
311
746
  gap: var(--kv-gap-field-group);
312
747
  }
313
748
 
@@ -341,6 +776,18 @@
341
776
  border-bottom: 0;
342
777
  }
343
778
 
779
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="group-row"],
780
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="group-pager"] {
781
+ display: block;
782
+ height: auto;
783
+ }
784
+
785
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="group-cell"],
786
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="group-pager"] td {
787
+ display: block;
788
+ width: 100%;
789
+ }
790
+
344
791
  :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="cell"] {
345
792
  display: flex;
346
793
  flex-wrap: wrap;
@@ -370,6 +817,60 @@
370
817
  :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="cell"]:first-child::before {
371
818
  display: none;
372
819
  }
820
+
821
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="select-cell"] {
822
+ display: flex;
823
+ justify-content: flex-start;
824
+ width: 100%;
825
+ max-width: none;
826
+ height: auto;
827
+ padding: var(--kv-space-2) 0;
828
+ border: 0;
829
+ }
830
+
831
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="cell"][data-linked="true"] {
832
+ padding: 0;
833
+ }
834
+
835
+ :where([data-kv-design-system]) [data-responsive="stack"] [data-ui="row-link"] {
836
+ min-height: auto;
837
+ padding: var(--kv-space-2) 0;
838
+ }
839
+ }
840
+
841
+ @media (max-width: 47.9375rem) {
842
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="query"] {
843
+ flex-wrap: wrap;
844
+ }
845
+
846
+ :where([data-kv-design-system]) [data-ui="list-search"] {
847
+ flex: 1 1 8rem;
848
+ width: auto;
849
+ min-width: 0;
850
+ max-width: none;
851
+ }
852
+
853
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="filters"] {
854
+ flex: 1 0 100%;
855
+ width: 100%;
856
+ min-width: 0;
857
+ order: 3;
858
+ }
859
+
860
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="tail"] {
861
+ display: contents;
862
+ }
863
+
864
+ :where([data-kv-design-system]) [data-ui="list-chrome-row"][data-row="meta"] {
865
+ margin-left: auto;
866
+ }
867
+
868
+ :where([data-kv-design-system]) [data-ui="list-actions"],
869
+ :where([data-kv-design-system]) [data-ui="bulk-action-list"],
870
+ :where([data-kv-design-system]) [data-ui="pager-actions"],
871
+ :where([data-kv-design-system]) [data-ui="pager-pages"] {
872
+ justify-content: flex-start;
873
+ }
373
874
  }
374
875
 
375
876
  :where([data-kv-design-system]) [data-ui="form-errors"] {
@@ -411,40 +912,109 @@
411
912
  }
412
913
  }
413
914
 
414
- :where([data-kv-design-system]) [data-ui="modal-backdrop"] {
915
+ :where([data-kv-design-system]) [data-ui="modal-layer"] {
415
916
  position: fixed;
416
- z-index: var(--kv-z-modal);
417
917
  inset: 0;
918
+ z-index: var(--kv-z-modal);
418
919
  display: grid;
920
+ min-width: 0;
921
+ justify-items: end;
922
+ overflow: hidden;
923
+ }
924
+
925
+ body:has([data-kv-design-system] [data-ui="modal-layer"][data-route-modal="true"]) {
926
+ overflow: hidden;
927
+ }
928
+
929
+ :where([data-kv-design-system]) [data-ui="modal-layer"][data-presentation="dialog"] {
419
930
  place-items: center;
420
- padding: var(--kv-space-4);
421
- background: rgb(12 14 16 / 52%);
422
- backdrop-filter: blur(3px);
931
+ padding: var(--kv-space-6);
423
932
  }
424
933
 
425
- :where([data-kv-design-system]) [data-ui="modal-backdrop"][data-mode="embedded"] {
934
+ :where([data-kv-design-system]) [data-ui="modal-layer"][data-mode="embedded"] {
426
935
  position: relative;
427
936
  min-height: 20rem;
428
937
  inset: auto;
938
+ padding: var(--kv-space-4);
939
+ place-items: center;
429
940
  border-radius: var(--kv-radius-md);
430
941
  background:
431
942
  linear-gradient(135deg, color-mix(in srgb, var(--kv-color-accent-soft) 60%, transparent), transparent),
432
943
  var(--kv-color-canvas);
944
+ }
945
+
946
+ :where([data-kv-design-system]) [data-ui="modal-backdrop"] {
947
+ position: absolute;
948
+ z-index: 0;
949
+ inset: 0;
950
+ display: block;
951
+ background: rgb(12 14 16 / 52%);
952
+ backdrop-filter: blur(3px);
953
+ text-decoration: none;
954
+ }
955
+
956
+ :where([data-kv-design-system]) [data-ui="modal-backdrop"] > span {
957
+ position: absolute;
958
+ width: 1px;
959
+ height: 1px;
960
+ overflow: hidden;
961
+ clip-path: inset(50%);
962
+ white-space: nowrap;
963
+ }
964
+
965
+ :where([data-kv-design-system]) [data-ui="modal-layer"][data-mode="embedded"] [data-ui="modal-backdrop"] {
966
+ background: transparent;
433
967
  backdrop-filter: none;
434
968
  }
435
969
 
436
970
  :where([data-kv-design-system]) [data-ui="modal-sheet"] {
971
+ position: relative;
972
+ z-index: 1;
973
+ display: grid;
974
+ width: min(34rem, 100vw);
975
+ max-width: 100%;
976
+ height: 100dvh;
977
+ min-width: 0;
978
+ grid-template-rows: auto minmax(0, 1fr) auto;
979
+ border-left: 1px solid var(--kv-color-line-strong);
980
+ background: var(--kv-color-surface);
981
+ box-shadow: var(--kv-shadow-popover);
982
+ }
983
+
984
+ :where([data-kv-design-system]) [data-ui="modal-sheet"][data-size="large"] {
985
+ width: min(56rem, 100vw);
986
+ }
987
+
988
+ :where([data-kv-design-system])
989
+ [data-ui="modal-layer"][data-presentation="dialog"]
990
+ [data-ui="modal-sheet"] {
991
+ width: min(56rem, 100%);
992
+ height: auto;
993
+ max-height: calc(100dvh - var(--kv-space-12));
994
+ overflow: hidden;
995
+ border: 1px solid var(--kv-color-line-strong);
996
+ border-radius: var(--kv-radius-lg);
997
+ }
998
+
999
+ :where([data-kv-design-system])
1000
+ [data-ui="modal-layer"][data-presentation="dialog"]
1001
+ [data-ui="modal-sheet"][data-size="large"] {
1002
+ width: min(75rem, 100%);
1003
+ height: min(62.5rem, calc(100dvh - var(--kv-space-12)));
1004
+ }
1005
+
1006
+ :where([data-kv-design-system]) [data-ui="modal-layer"][data-mode="embedded"] [data-ui="modal-sheet"] {
437
1007
  width: min(34rem, 100%);
1008
+ height: auto;
438
1009
  max-height: calc(100dvh - 2rem);
439
- overflow: auto;
1010
+ overflow: hidden;
440
1011
  border: 1px solid var(--kv-color-line-strong);
441
1012
  border-radius: var(--kv-radius-lg);
442
- background: var(--kv-color-surface);
443
- box-shadow: var(--kv-shadow-popover);
444
1013
  }
445
1014
 
446
1015
  :where([data-kv-design-system]) [data-ui="modal-head"] {
447
1016
  display: flex;
1017
+ min-width: 0;
448
1018
  align-items: center;
449
1019
  justify-content: space-between;
450
1020
  gap: var(--kv-space-4);
@@ -452,32 +1022,112 @@
452
1022
  border-bottom: 1px solid var(--kv-color-line);
453
1023
  }
454
1024
 
455
- :where([data-kv-design-system]) [data-ui="modal-title"] {
456
- margin-bottom: 0;
457
- font-family: var(--kv-font-display);
458
- font-size: var(--kv-text-lg);
459
- font-weight: 650;
460
- }
1025
+ :where([data-kv-design-system]) [data-ui="modal-heading"] {
1026
+ display: grid;
1027
+ min-width: 0;
1028
+ gap: var(--kv-space-1);
1029
+ }
1030
+
1031
+ :where([data-kv-design-system]) [data-ui="modal-title"] {
1032
+ min-width: 0;
1033
+ margin: 0;
1034
+ overflow: hidden;
1035
+ color: var(--kv-color-ink);
1036
+ font-family: var(--kv-font-display);
1037
+ font-size: var(--kv-text-lg);
1038
+ font-weight: 650;
1039
+ line-height: var(--kv-leading-tight);
1040
+ text-overflow: ellipsis;
1041
+ white-space: nowrap;
1042
+ }
1043
+
1044
+ :where([data-kv-design-system]) [data-ui="modal-description"] {
1045
+ margin: 0;
1046
+ color: var(--kv-color-ink-secondary);
1047
+ font-size: var(--kv-text-sm);
1048
+ line-height: var(--kv-leading-normal);
1049
+ }
1050
+
1051
+ :where([data-kv-design-system]) [data-ui="modal-close"] {
1052
+ display: grid;
1053
+ flex: none;
1054
+ width: 2rem;
1055
+ height: 2rem;
1056
+ place-items: center;
1057
+ border-radius: 50%;
1058
+ color: var(--kv-color-ink-muted);
1059
+ font-size: 1.4rem;
1060
+ line-height: 1;
1061
+ text-decoration: none;
1062
+ }
1063
+
1064
+ :where([data-kv-design-system]) [data-ui="modal-close"]:hover {
1065
+ background: var(--kv-color-surface-hover);
1066
+ color: var(--kv-color-ink);
1067
+ }
1068
+
1069
+ :where([data-kv-design-system]) [data-ui="modal-body"] {
1070
+ min-width: 0;
1071
+ overflow: auto;
1072
+ padding: var(--kv-space-5);
1073
+ overscroll-behavior: contain;
1074
+ }
1075
+
1076
+ :where([data-kv-design-system]) [data-ui="modal-actions"] {
1077
+ display: flex;
1078
+ flex-wrap: wrap;
1079
+ justify-content: flex-end;
1080
+ gap: var(--kv-space-2);
1081
+ padding: var(--kv-space-4) var(--kv-space-5);
1082
+ border-top: 1px solid var(--kv-color-line);
1083
+ background: var(--kv-color-surface);
1084
+ }
1085
+
1086
+ @media (max-width: 47.9375rem) {
1087
+ :where([data-kv-design-system]) [data-ui="modal-layer"],
1088
+ :where([data-kv-design-system]) [data-ui="modal-layer"][data-presentation="dialog"] {
1089
+ padding: 0;
1090
+ place-items: stretch;
1091
+ justify-items: stretch;
1092
+ }
1093
+
1094
+ :where([data-kv-design-system])
1095
+ [data-ui="modal-layer"]:not([data-mode="embedded"])
1096
+ [data-ui="modal-sheet"],
1097
+ :where([data-kv-design-system])
1098
+ [data-ui="modal-layer"]:not([data-mode="embedded"])
1099
+ [data-ui="modal-sheet"][data-size],
1100
+ :where([data-kv-design-system])
1101
+ [data-ui="modal-layer"][data-presentation="dialog"]:not([data-mode="embedded"])
1102
+ [data-ui="modal-sheet"][data-size] {
1103
+ width: 100%;
1104
+ height: 100dvh;
1105
+ max-height: 100dvh;
1106
+ border: 0;
1107
+ border-radius: 0;
1108
+ box-shadow: none;
1109
+ }
1110
+
1111
+ :where([data-kv-design-system]) [data-ui="modal-head"] {
1112
+ padding: var(--kv-space-4);
1113
+ }
461
1114
 
462
- :where([data-kv-design-system]) [data-ui="modal-close"] {
463
- display: grid;
464
- width: 2rem;
465
- height: 2rem;
466
- place-items: center;
467
- border-radius: 50%;
468
- color: var(--kv-color-ink-muted);
469
- font-size: 1.4rem;
470
- line-height: 1;
471
- text-decoration: none;
472
- }
1115
+ :where([data-kv-design-system]) [data-ui="modal-title"] {
1116
+ white-space: normal;
1117
+ }
473
1118
 
474
- :where([data-kv-design-system]) [data-ui="modal-close"]:hover {
475
- background: var(--kv-color-surface-hover);
476
- color: var(--kv-color-ink);
477
- }
1119
+ :where([data-kv-design-system]) [data-ui="modal-body"] {
1120
+ padding: var(--kv-space-4);
1121
+ }
478
1122
 
479
- :where([data-kv-design-system]) [data-ui="modal-body"] {
480
- padding: var(--kv-space-5);
1123
+ :where([data-kv-design-system]) [data-ui="modal-actions"] {
1124
+ justify-content: stretch;
1125
+ padding: var(--kv-space-3) var(--kv-space-4) max(var(--kv-space-4), env(safe-area-inset-bottom));
1126
+ }
1127
+
1128
+ :where([data-kv-design-system]) [data-ui="modal-actions"] > [data-ui="action"] {
1129
+ flex: 1 1 auto;
1130
+ }
481
1131
  }
482
1132
 
483
1133
  @media (max-width: 42rem) {
@@ -732,7 +1382,7 @@
732
1382
  font-size: var(--kv-text-2xl);
733
1383
  font-weight: var(--kv-weight-bold);
734
1384
  font-variant-numeric: tabular-nums;
735
- letter-spacing: -0.025em;
1385
+ letter-spacing: 0;
736
1386
  }
737
1387
 
738
1388
  /* Too narrow for four columns, so the rail turns and runs down the left. The
@@ -838,7 +1488,7 @@
838
1488
  color: var(--kv-text-muted);
839
1489
  font-size: var(--kv-text-2xs);
840
1490
  font-weight: var(--kv-weight-semibold);
841
- letter-spacing: 0.07em;
1491
+ letter-spacing: 0;
842
1492
  line-height: var(--kv-leading-normal);
843
1493
  text-transform: uppercase;
844
1494
  }
@@ -857,7 +1507,7 @@
857
1507
  color: var(--kv-text-main);
858
1508
  font-size: var(--kv-page-title-size);
859
1509
  font-weight: var(--kv-weight-semibold);
860
- letter-spacing: -0.025em;
1510
+ letter-spacing: 0;
861
1511
  line-height: var(--kv-leading-tight);
862
1512
  }
863
1513
 
@@ -910,6 +1560,7 @@
910
1560
  :where([data-kv-design-system]) [data-ui="board-page-body"] {
911
1561
  display: grid;
912
1562
  min-width: 0;
1563
+ overflow-x: auto;
913
1564
  gap: var(--kv-space-4);
914
1565
  padding: var(--kv-space-4) var(--kv-page-padding-x) var(--kv-space-8);
915
1566
  }
@@ -1003,7 +1654,7 @@
1003
1654
  color: var(--kv-text-muted);
1004
1655
  font-size: var(--kv-text-2xs);
1005
1656
  font-weight: var(--kv-weight-semibold);
1006
- letter-spacing: 0.07em;
1657
+ letter-spacing: 0;
1007
1658
  line-height: var(--kv-leading-normal);
1008
1659
  text-transform: uppercase;
1009
1660
  }
@@ -1022,7 +1673,7 @@
1022
1673
  color: var(--kv-text-main);
1023
1674
  font-size: var(--kv-page-title-size);
1024
1675
  font-weight: var(--kv-weight-semibold);
1025
- letter-spacing: -0.025em;
1676
+ letter-spacing: 0;
1026
1677
  line-height: var(--kv-leading-tight);
1027
1678
  }
1028
1679
 
@@ -1184,7 +1835,7 @@
1184
1835
  color: var(--kv-text-main);
1185
1836
  font-size: var(--kv-page-title-size);
1186
1837
  font-weight: var(--kv-weight-semibold);
1187
- letter-spacing: -0.025em;
1838
+ letter-spacing: 0;
1188
1839
  line-height: var(--kv-leading-tight);
1189
1840
  }
1190
1841
 
@@ -1269,29 +1920,6 @@
1269
1920
  gap: var(--kv-space-6);
1270
1921
  }
1271
1922
 
1272
- :where([data-kv-design-system]) [data-ui="form-page-body"] > [data-ui="section"] > [data-ui="section-head"],
1273
- :where([data-kv-design-system])
1274
- [data-ui="form-page-body"]
1275
- > [data-ui="stack"]
1276
- > [data-ui="section"]
1277
- > [data-ui="section-head"] {
1278
- align-items: flex-start;
1279
- padding-bottom: 0;
1280
- border-bottom: 0;
1281
- }
1282
-
1283
- :where([data-kv-design-system]) [data-ui="form-page-body"] > [data-ui="stack"] > [data-ui="section"] {
1284
- padding-block: var(--kv-space-5);
1285
- border-bottom: 1px solid var(--kv-panel-divider);
1286
- }
1287
-
1288
- :where([data-kv-design-system])
1289
- [data-ui="form-page-body"]
1290
- > [data-ui="stack"]
1291
- > [data-ui="section"]:first-child {
1292
- padding-block-start: 0;
1293
- }
1294
-
1295
1923
  :where([data-kv-design-system]) [data-ui="form-page-aside"] {
1296
1924
  position: sticky;
1297
1925
  top: 0;
@@ -1308,45 +1936,6 @@
1308
1936
  /* Record forms use the compact ERP label/value rhythm while there is enough
1309
1937
  room. Below 768 px the form becomes conventional vertical fields so labels
1310
1938
  and controls never compete for the same narrow row. */
1311
- :where([data-kv-design-system])
1312
- [data-ui="form-page"]
1313
- [data-ui="record-form"]
1314
- [data-ui="field"]:not([data-kind="checkbox"]) {
1315
- grid-template-columns: minmax(7rem, 9rem) minmax(0, 1fr);
1316
- align-items: center;
1317
- column-gap: var(--kv-space-3);
1318
- }
1319
-
1320
- :where([data-kv-design-system])
1321
- [data-ui="form-page"]
1322
- [data-ui="record-form"]
1323
- [data-ui="field"]:not([data-kind="checkbox"])
1324
- > [data-ui="field-label"] {
1325
- grid-column: 1;
1326
- }
1327
-
1328
- :where([data-kv-design-system])
1329
- [data-ui="form-page"]
1330
- [data-ui="record-form"]
1331
- [data-ui="field"]:not([data-kind="checkbox"])
1332
- > :is(
1333
- [data-ui="field-control"],
1334
- [data-ui="field-options"],
1335
- [data-ui="field-help"],
1336
- [data-ui="field-error"]
1337
- ) {
1338
- grid-column: 2;
1339
- }
1340
-
1341
- @media (max-width: 89.9375rem) {
1342
- :where([data-kv-design-system])
1343
- [data-ui="form-page"]
1344
- [data-ui="record-form"]
1345
- [data-ui="field"]:not([data-kind="checkbox"]) {
1346
- grid-template-columns: minmax(6.5rem, 7.5rem) minmax(0, 1fr);
1347
- column-gap: var(--kv-space-2);
1348
- }
1349
- }
1350
1939
 
1351
1940
  @media (max-width: 63.9375rem) {
1352
1941
  :where([data-kv-design-system]) [data-ui="form-page-layout"] {
@@ -1364,30 +1953,6 @@
1364
1953
  }
1365
1954
  }
1366
1955
 
1367
- @media (max-width: 47.9375rem) {
1368
- :where([data-kv-design-system])
1369
- [data-ui="form-page"]
1370
- [data-ui="record-form"]
1371
- [data-ui="field"]:not([data-kind="checkbox"]) {
1372
- grid-template-columns: minmax(0, 1fr);
1373
- align-items: stretch;
1374
- }
1375
-
1376
- :where([data-kv-design-system])
1377
- [data-ui="form-page"]
1378
- [data-ui="record-form"]
1379
- [data-ui="field"]:not([data-kind="checkbox"])
1380
- > :is(
1381
- [data-ui="field-label"],
1382
- [data-ui="field-control"],
1383
- [data-ui="field-options"],
1384
- [data-ui="field-help"],
1385
- [data-ui="field-error"]
1386
- ) {
1387
- grid-column: 1;
1388
- }
1389
- }
1390
-
1391
1956
  @media (max-width: 42rem) {
1392
1957
  :where([data-kv-design-system]) [data-ui="form-page"][data-variant="operational"] {
1393
1958
  padding-bottom: var(--kv-space-8);
@@ -1438,4 +2003,245 @@
1438
2003
  padding-inline: var(--kv-space-4);
1439
2004
  }
1440
2005
  }
2006
+
2007
+ @container record-form (max-width: 42rem) {
2008
+ :where([data-kv-design-system]) [data-ui="form-grid"] {
2009
+ grid-template-columns: minmax(0, 1fr);
2010
+ }
2011
+ }
2012
+
2013
+ /* RecordPage is the canonical public record surface. FormPage keeps this same
2014
+ rhythm as a compatibility adapter, but the hooks must remain distinct so
2015
+ application audits can tell new record screens from legacy form screens. */
2016
+ :where([data-kv-design-system]) [data-ui="record-page"] {
2017
+ display: grid;
2018
+ min-width: 0;
2019
+ background: var(--kv-page-content-bg);
2020
+ }
2021
+
2022
+ :where([data-kv-design-system]) [data-ui="record-page"][data-variant="operational"] {
2023
+ gap: 0;
2024
+ padding: 0 0 var(--kv-space-10);
2025
+ }
2026
+
2027
+ :where([data-kv-design-system])
2028
+ [data-ui="record-page"][data-variant="operational"]
2029
+ [data-ui="record-page-context"] {
2030
+ display: flex;
2031
+ min-width: 0;
2032
+ min-height: var(--kv-table-header-height);
2033
+ align-items: center;
2034
+ padding-inline: var(--kv-page-padding-x);
2035
+ border-bottom: 1px solid var(--kv-panel-divider);
2036
+ background: var(--kv-page-chrome-bg);
2037
+ }
2038
+
2039
+ :where([data-kv-design-system]) [data-ui="record-page-header"] {
2040
+ display: grid;
2041
+ min-width: 0;
2042
+ gap: var(--kv-space-2);
2043
+ padding: var(--kv-space-4) var(--kv-page-padding-x);
2044
+ border-bottom: 1px solid var(--kv-panel-divider);
2045
+ }
2046
+
2047
+ :where([data-kv-design-system])
2048
+ [data-ui="record-page"][data-variant="operational"]
2049
+ [data-ui="record-page-header"] {
2050
+ background: var(--kv-page-chrome-bg);
2051
+ }
2052
+
2053
+ :where([data-kv-design-system]) [data-ui="record-page-title-row"] {
2054
+ display: grid;
2055
+ min-width: 0;
2056
+ grid-template-columns: minmax(0, 1fr) auto;
2057
+ align-items: center;
2058
+ gap: var(--kv-space-4);
2059
+ }
2060
+
2061
+ :where([data-kv-design-system]) [data-ui="record-page-heading"] {
2062
+ display: grid;
2063
+ min-width: 0;
2064
+ gap: var(--kv-space-1);
2065
+ }
2066
+
2067
+ :where([data-kv-design-system]) [data-ui="record-page-title"] {
2068
+ margin: 0;
2069
+ overflow-wrap: anywhere;
2070
+ color: var(--kv-text-main);
2071
+ font-size: var(--kv-page-title-size);
2072
+ font-weight: var(--kv-weight-semibold);
2073
+ letter-spacing: 0;
2074
+ line-height: var(--kv-leading-tight);
2075
+ }
2076
+
2077
+ :where([data-kv-design-system]) [data-ui="record-page-status"] {
2078
+ display: inline-flex;
2079
+ flex: 0 0 auto;
2080
+ align-items: center;
2081
+ }
2082
+
2083
+ :where([data-kv-design-system]) [data-ui="record-page-subline"] {
2084
+ display: flex;
2085
+ min-width: 0;
2086
+ flex-wrap: wrap;
2087
+ align-items: center;
2088
+ gap: var(--kv-space-2);
2089
+ }
2090
+
2091
+ :where([data-kv-design-system]) [data-ui="record-page-description"] {
2092
+ max-width: 48rem;
2093
+ margin: 0;
2094
+ color: var(--kv-text-muted);
2095
+ font-size: var(--kv-text-sm);
2096
+ line-height: var(--kv-leading-normal);
2097
+ }
2098
+
2099
+ :where([data-kv-design-system]) [data-ui="record-page-actions"] {
2100
+ display: flex;
2101
+ min-width: 0;
2102
+ flex-wrap: wrap;
2103
+ align-items: center;
2104
+ justify-content: flex-end;
2105
+ gap: var(--kv-space-2);
2106
+ }
2107
+
2108
+ :where([data-kv-design-system]) [data-ui="record-page-meta"] {
2109
+ min-width: 0;
2110
+ }
2111
+
2112
+ :where([data-kv-design-system]) [data-ui="record-page-controller"] {
2113
+ min-width: 0;
2114
+ padding-inline: var(--kv-page-padding-x);
2115
+ background: var(--kv-page-bg);
2116
+ }
2117
+
2118
+ :where([data-kv-design-system]) [data-ui="record-page-controller"]:empty {
2119
+ display: none;
2120
+ }
2121
+
2122
+ :where([data-kv-design-system]) [data-ui="record-page-navigation"] {
2123
+ min-width: 0;
2124
+ padding-inline: var(--kv-page-padding-x);
2125
+ border-bottom: 1px solid var(--kv-panel-divider);
2126
+ background: var(--kv-page-bg);
2127
+ }
2128
+
2129
+ :where([data-kv-design-system]) [data-ui="record-page-layout"] {
2130
+ display: grid;
2131
+ min-width: 0;
2132
+ grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
2133
+ align-items: start;
2134
+ }
2135
+
2136
+ :where([data-kv-design-system])
2137
+ [data-ui="record-page"][data-has-aside="false"]
2138
+ [data-ui="record-page-layout"] {
2139
+ grid-template-columns: minmax(0, 56rem);
2140
+ }
2141
+
2142
+ :where([data-kv-design-system])
2143
+ [data-ui="record-page"][data-has-aside="false"][data-width="wide"]
2144
+ [data-ui="record-page-layout"] {
2145
+ grid-template-columns: minmax(0, calc(68.75rem + var(--kv-page-padding-x) * 2));
2146
+ }
2147
+
2148
+ :where([data-kv-design-system]) [data-ui="record-page-body"] {
2149
+ display: grid;
2150
+ min-width: 0;
2151
+ gap: var(--kv-space-6);
2152
+ padding: var(--kv-space-5) var(--kv-page-padding-x) var(--kv-space-10);
2153
+ background: var(--kv-page-content-bg);
2154
+ }
2155
+
2156
+ :where([data-kv-design-system]) [data-ui="record-page-body"] > [data-ui="stack"] {
2157
+ gap: var(--kv-space-6);
2158
+ }
2159
+
2160
+ :where([data-kv-design-system]) [data-ui="record-page-aside"] {
2161
+ position: sticky;
2162
+ top: 0;
2163
+ display: grid;
2164
+ min-width: 0;
2165
+ max-height: 100dvh;
2166
+ align-content: start;
2167
+ padding: var(--kv-space-5) var(--kv-page-padding-x) var(--kv-space-10) var(--kv-space-5);
2168
+ overflow-y: auto;
2169
+ border-left: 1px solid var(--kv-panel-divider);
2170
+ background: var(--kv-panel-bg-subtle);
2171
+ }
2172
+
2173
+ @media (max-width: 63.9375rem) {
2174
+ :where([data-kv-design-system]) [data-ui="record-page-layout"] {
2175
+ grid-template-columns: minmax(0, 1fr);
2176
+ row-gap: var(--kv-space-5);
2177
+ }
2178
+
2179
+ :where([data-kv-design-system]) [data-ui="record-page-aside"] {
2180
+ position: static;
2181
+ max-height: none;
2182
+ padding-top: var(--kv-space-5);
2183
+ overflow: visible;
2184
+ border-top: 1px solid var(--kv-panel-divider);
2185
+ border-left: 0;
2186
+ }
2187
+ }
2188
+
2189
+ @media (max-width: 42rem) {
2190
+ :where([data-kv-design-system]) [data-ui="record-page"][data-variant="operational"] {
2191
+ padding-bottom: var(--kv-space-8);
2192
+ }
2193
+
2194
+ :where([data-kv-design-system])
2195
+ [data-ui="record-page"][data-variant="operational"]
2196
+ [data-ui="record-page-context"] {
2197
+ min-height: 2.75rem;
2198
+ padding-inline: var(--kv-space-4);
2199
+ }
2200
+
2201
+ :where([data-kv-design-system]) [data-ui="record-page-header"] {
2202
+ padding: var(--kv-space-4) var(--kv-space-4) var(--kv-space-3);
2203
+ }
2204
+
2205
+ :where([data-kv-design-system]) [data-ui="record-page-title-row"] {
2206
+ grid-template-columns: minmax(0, 1fr);
2207
+ align-items: stretch;
2208
+ gap: var(--kv-space-3);
2209
+ }
2210
+
2211
+ :where([data-kv-design-system]) [data-ui="record-page-title"] {
2212
+ font-size: var(--kv-text-lg);
2213
+ }
2214
+
2215
+ :where([data-kv-design-system]) [data-ui="record-page-actions"] {
2216
+ justify-content: flex-start;
2217
+ }
2218
+
2219
+ :where([data-kv-design-system])
2220
+ [data-ui="record-page-actions"]
2221
+ > :is([data-ui="action-group"], [data-ui="form-cluster"]) {
2222
+ width: 100%;
2223
+ }
2224
+
2225
+ :where([data-kv-design-system]) [data-ui="record-page-meta"] {
2226
+ padding-left: 0;
2227
+ }
2228
+
2229
+ :where([data-kv-design-system]) [data-ui="record-page-navigation"] {
2230
+ padding-inline: var(--kv-space-4);
2231
+ }
2232
+
2233
+ :where([data-kv-design-system]) [data-ui="record-page-body"],
2234
+ :where([data-kv-design-system]) [data-ui="record-page-aside"],
2235
+ :where([data-kv-design-system]) [data-ui="record-page-controller"] {
2236
+ padding-inline: var(--kv-space-4);
2237
+ }
2238
+ }
2239
+
2240
+ :where([data-kv-design-system])
2241
+ [data-pattern="workspace"][data-layout="canvas"]
2242
+ > [data-ui="board-page-body"]
2243
+ > [data-ui="grid"] {
2244
+ grid-template-columns: repeat(var(--kv-grid-columns, 3), minmax(16rem, 1fr));
2245
+ align-items: start;
2246
+ }
1441
2247
  }