@gjsify/adwaita-web 0.51.0 → 0.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/adwaita-web.css +255 -27
  2. package/dist/adwaita-web.css.map +1 -1
  3. package/lib/types/blueprint-layout.spec.d.ts +1 -0
  4. package/lib/types/blueprint-markup.spec.d.ts +4 -0
  5. package/lib/types/blueprint-tree.spec.d.ts +1 -0
  6. package/lib/types/elements/adw-bottom-sheet.d.ts +31 -13
  7. package/lib/types/elements/adw-carousel.d.ts +5 -0
  8. package/lib/types/elements/adw-header-bar.d.ts +15 -0
  9. package/lib/types/elements/adw-inline-view-switcher.d.ts +1 -0
  10. package/lib/types/elements/adw-navigation-view.d.ts +1 -0
  11. package/lib/types/elements/adw-sidebar.d.ts +10 -0
  12. package/lib/types/elements/adw-tab-view.d.ts +1 -0
  13. package/lib/types/elements/adw-toggle-group.d.ts +11 -0
  14. package/lib/types/elements/gtk-action-bar.d.ts +19 -0
  15. package/lib/types/elements/gtk-box.d.ts +17 -0
  16. package/lib/types/elements/gtk-button.d.ts +2 -0
  17. package/lib/types/elements/gtk-label.d.ts +122 -0
  18. package/lib/types/gio-menu.spec.d.ts +1 -0
  19. package/lib/types/gtk-box.spec.d.ts +1 -0
  20. package/lib/types/gtk-label.spec.d.ts +1 -0
  21. package/lib/types/gtk-value-doors.spec.d.ts +1 -0
  22. package/lib/types/index.d.ts +4 -1
  23. package/lib/types/namespace/gio.d.ts +1 -0
  24. package/lib/types/namespace/gtk.d.ts +5 -0
  25. package/lib/types/shared-tree-builder.d.ts +64 -0
  26. package/lib/types/source-view/asm6502.d.ts +1 -20
  27. package/lib/types/source-view/index.d.ts +3 -2
  28. package/lib/types/source-view/theme.d.ts +1 -1
  29. package/lib/types/string-list-slot.d.ts +4 -0
  30. package/lib/types/styles.generated.d.ts +1 -1
  31. package/lib/types/tags.spec.d.ts +1 -0
  32. package/lib/types/value-lists.spec.d.ts +1 -0
  33. package/package.json +8 -6
  34. package/scss/_action_bar.scss +51 -0
  35. package/scss/_banner.scss +8 -1
  36. package/scss/_bottom_sheet.scss +57 -0
  37. package/scss/_box.scss +23 -0
  38. package/scss/_button.scss +29 -7
  39. package/scss/_button_content.scss +6 -1
  40. package/scss/_button_row.scss +5 -2
  41. package/scss/_carousel.scss +6 -0
  42. package/scss/_labels.scss +126 -12
  43. package/scss/_navigation_split_view.scss +18 -0
  44. package/scss/_overlay_split_view.scss +5 -0
  45. package/scss/_reset.scss +29 -4
  46. package/scss/_split_button.scss +5 -2
  47. package/scss/_status_page.scss +31 -17
  48. package/scss/_theme.scss +11 -3
  49. package/scss/_toolbar_view.scss +10 -0
  50. package/scss/_variables.scss +1 -0
  51. package/scss/_widget.scss +55 -0
  52. package/scss/_window_title.scss +9 -0
  53. package/scss/adwaita-skin.scss +8 -2
  54. package/src/adw-banner.spec.ts +16 -0
  55. package/src/adw-button-row.spec.ts +8 -0
  56. package/src/adw-header-bar.spec.ts +17 -0
  57. package/src/blueprint-layout.spec.ts +223 -0
  58. package/src/blueprint-markup.spec.ts +155 -0
  59. package/src/blueprint-tree.spec.ts +174 -0
  60. package/src/bottom-sheet.spec.ts +166 -1
  61. package/src/chrome.spec.ts +5 -2
  62. package/src/elements/adw-bottom-sheet.ts +166 -59
  63. package/src/elements/adw-carousel.ts +10 -5
  64. package/src/elements/adw-clamp.ts +12 -0
  65. package/src/elements/adw-combo-row.ts +13 -4
  66. package/src/elements/adw-header-bar.ts +46 -3
  67. package/src/elements/adw-inline-view-switcher.ts +11 -0
  68. package/src/elements/adw-navigation-view.ts +10 -0
  69. package/src/elements/adw-sidebar.ts +22 -0
  70. package/src/elements/adw-spin-row.ts +44 -5
  71. package/src/elements/adw-status-page.ts +12 -6
  72. package/src/elements/adw-tab-view.ts +20 -3
  73. package/src/elements/adw-toggle-group.ts +45 -4
  74. package/src/elements/adw-toolbar-view.ts +9 -0
  75. package/src/elements/gtk-action-bar.ts +90 -0
  76. package/src/elements/gtk-box.ts +87 -0
  77. package/src/elements/gtk-button.ts +60 -13
  78. package/src/elements/gtk-drop-down.ts +10 -1
  79. package/src/elements/gtk-label.ts +415 -0
  80. package/src/gio-menu.spec.ts +125 -0
  81. package/src/globals.d.ts +7 -0
  82. package/src/gtk-box.spec.ts +168 -0
  83. package/src/gtk-button.spec.ts +123 -1
  84. package/src/gtk-label.spec.ts +595 -0
  85. package/src/gtk-value-doors.spec.ts +104 -0
  86. package/src/index.ts +14 -1
  87. package/src/keyboard-operable.spec.ts +2 -1
  88. package/src/namespace/gio.ts +19 -0
  89. package/src/namespace/gtk.ts +14 -0
  90. package/src/shared-tree-builder.ts +268 -0
  91. package/src/shared-trees.spec.ts +296 -32
  92. package/src/source-view/adw-source-view.ts +3 -3
  93. package/src/source-view/asm6502.ts +11 -191
  94. package/src/source-view/index.ts +17 -11
  95. package/src/source-view/theme.ts +16 -16
  96. package/src/split-button.spec.ts +7 -0
  97. package/src/string-list-slot.ts +21 -0
  98. package/src/styles.generated.ts +1 -1
  99. package/src/tags.spec.ts +51 -0
  100. package/src/test.browser.mts +18 -0
  101. package/src/value-lists.spec.ts +93 -0
  102. package/lib/types/source-view/hex.d.ts +0 -21
  103. package/src/source-view/hex.ts +0 -37
@@ -292,6 +292,7 @@
292
292
  --entry-border-hover-color: rgba(0, 0, 6, 0.28);
293
293
  --destructive-bg-color: #e01b24;
294
294
  --destructive-fg-color: #ffffff;
295
+ --destructive-color: oklab(from var(--destructive-bg-color) min(l, 0.5) a b);
295
296
  --success-bg-color: #2ec27e;
296
297
  --success-fg-color: #ffffff;
297
298
  --success-color: oklab(from var(--success-bg-color) min(l, 0.5) a b);
@@ -369,6 +370,7 @@
369
370
  --entry-border-hover-color: rgba(255, 255, 255, 0.26);
370
371
  --destructive-bg-color: #c01c28;
371
372
  --destructive-fg-color: #ffffff;
373
+ --destructive-color: oklab(from var(--destructive-bg-color) max(l, 0.85) a b);
372
374
  --success-bg-color: #26a269;
373
375
  --success-color: oklab(from var(--success-bg-color) max(l, 0.85) a b);
374
376
  --warning-bg-color: #cd9309;
@@ -377,7 +379,7 @@
377
379
  --error-color: oklab(from var(--error-bg-color) max(l, 0.85) a b);
378
380
  --switch-off-bg: rgba(255, 255, 255, 0.2);
379
381
  --switch-knob-bg: #deddda;
380
- --active-toggle-fg-color: rgba(0, 0, 6, 0.8);
382
+ --active-toggle-bg-color: rgb(255 255 255 / 20%);
381
383
  }
382
384
  }
383
385
  .theme-dark {
@@ -416,6 +418,7 @@
416
418
  --entry-border-hover-color: rgba(255, 255, 255, 0.26);
417
419
  --destructive-bg-color: #c01c28;
418
420
  --destructive-fg-color: #ffffff;
421
+ --destructive-color: oklab(from var(--destructive-bg-color) max(l, 0.85) a b);
419
422
  --success-bg-color: #26a269;
420
423
  --success-color: oklab(from var(--success-bg-color) max(l, 0.85) a b);
421
424
  --warning-bg-color: #cd9309;
@@ -424,7 +427,7 @@
424
427
  --error-color: oklab(from var(--error-bg-color) max(l, 0.85) a b);
425
428
  --switch-off-bg: rgba(255, 255, 255, 0.2);
426
429
  --switch-knob-bg: #deddda;
427
- --active-toggle-fg-color: rgba(0, 0, 6, 0.8);
430
+ --active-toggle-bg-color: rgb(255 255 255 / 20%);
428
431
  }
429
432
 
430
433
  .theme-light {
@@ -465,6 +468,7 @@
465
468
  --entry-border-hover-color: rgba(0, 0, 6, 0.28);
466
469
  --destructive-bg-color: #e01b24;
467
470
  --destructive-fg-color: #ffffff;
471
+ --destructive-color: oklab(from var(--destructive-bg-color) min(l, 0.5) a b);
468
472
  --success-bg-color: #2ec27e;
469
473
  --success-fg-color: #ffffff;
470
474
  --success-color: oklab(from var(--success-bg-color) min(l, 0.5) a b);
@@ -506,7 +510,7 @@
506
510
  font-size: var(--font-size-base);
507
511
  }
508
512
 
509
- adw-about-dialog, adw-action-row, adw-alert-dialog, adw-alert-response, adw-avatar, adw-banner, adw-bottom-sheet, adw-bottom-sheet-content, adw-bottom-sheet-sheet, gtk-button, adw-button-content, adw-button-row, adw-card, adw-carousel, adw-carousel-indicator-dots, adw-carousel-indicator-lines, gtk-check-button, adw-clamp, adw-combo-row, adw-data-grid, adw-dialog, gtk-drop-down, gtk-entry, adw-entry-row, adw-expander-row, adw-header-bar, gtk-image, adw-inline-view-switcher, gtk-menu-button, adw-navigation-page, adw-navigation-split-view, adw-navigation-view, adw-overlay-split-view, adw-password-entry-row, gtk-popover, adw-preferences-dialog, adw-preferences-group, adw-preferences-page, gtk-progress-bar, adw-radio, adw-shortcut-label, adw-sidebar, adw-sidebar-item, adw-sidebar-section, adw-source-view, adw-spinner, adw-spin-row, adw-split-button, adw-status-page, gtk-switch, adw-switch-row, adw-tab-page, adw-tab-view, adw-toast-overlay, adw-toggle, adw-toggle-group, adw-toolbar-view, adw-view-stack, adw-view-stack-page, adw-view-switcher, adw-view-switcher-bar, adw-view-switcher-page, adw-window, adw-window-title, adw-wrap-box {
513
+ adw-about-dialog, adw-action-row, gtk-action-bar, adw-alert-dialog, adw-alert-response, adw-avatar, adw-banner, adw-bottom-sheet, adw-bottom-sheet-bottom-bar, adw-bottom-sheet-content, adw-bottom-sheet-sheet, gtk-box, gtk-button, adw-button-content, adw-button-row, adw-card, adw-carousel, adw-carousel-indicator-dots, adw-carousel-indicator-lines, gtk-check-button, adw-clamp, adw-combo-row, adw-data-grid, adw-dialog, gtk-drop-down, gtk-entry, adw-entry-row, adw-expander-row, adw-header-bar, gtk-image, adw-inline-view-switcher, gtk-label, gtk-menu-button, adw-navigation-page, adw-navigation-split-view, adw-navigation-view, adw-overlay-split-view, adw-password-entry-row, gtk-popover, adw-preferences-dialog, adw-preferences-group, adw-preferences-page, gtk-progress-bar, adw-radio, adw-shortcut-label, adw-sidebar, adw-sidebar-item, adw-sidebar-section, adw-source-view, adw-spinner, adw-spin-row, adw-split-button, adw-status-page, gtk-switch, adw-switch-row, adw-tab-page, adw-tab-view, adw-toast-overlay, adw-toggle, adw-toggle-group, adw-toolbar-view, adw-view-stack, adw-view-stack-page, adw-view-switcher, adw-view-switcher-bar, adw-view-switcher-page, adw-window, adw-window-title, adw-wrap-box {
510
514
  box-sizing: border-box;
511
515
  color: var(--window-fg-color);
512
516
  font-family: var(--font-family);
@@ -523,6 +527,20 @@ adw-about-dialog, adw-action-row, adw-alert-dialog, adw-alert-response, adw-avat
523
527
  text-shadow: none;
524
528
  }
525
529
 
530
+ :where(adw-about-dialog, adw-action-row, gtk-action-bar, adw-alert-dialog, adw-alert-response, adw-avatar, adw-banner, adw-bottom-sheet, adw-bottom-sheet-bottom-bar, adw-bottom-sheet-content, adw-bottom-sheet-sheet, gtk-box, gtk-button, adw-button-content, adw-button-row, adw-card, adw-carousel, adw-carousel-indicator-dots, adw-carousel-indicator-lines, gtk-check-button, adw-clamp, adw-combo-row, adw-data-grid, adw-dialog, gtk-drop-down, gtk-entry, adw-entry-row, adw-expander-row, adw-header-bar, gtk-image, adw-inline-view-switcher, gtk-label, gtk-menu-button, adw-navigation-page, adw-navigation-split-view, adw-navigation-view, adw-overlay-split-view, adw-password-entry-row, gtk-popover, adw-preferences-dialog, adw-preferences-group, adw-preferences-page, gtk-progress-bar, adw-radio, adw-shortcut-label, adw-sidebar, adw-sidebar-item, adw-sidebar-section, adw-source-view, adw-spinner, adw-spin-row, adw-split-button, adw-status-page, gtk-switch, adw-switch-row, adw-tab-page, adw-tab-view, adw-toast-overlay, adw-toggle, adw-toggle-group, adw-toolbar-view, adw-view-stack, adw-view-stack-page, adw-view-switcher, adw-view-switcher-bar, adw-view-switcher-page, adw-window, adw-window-title, adw-wrap-box) :is(gtk-box, gtk-label, adw-button-content) {
531
+ color: inherit;
532
+ font-family: inherit;
533
+ font-size: inherit;
534
+ font-weight: inherit;
535
+ font-style: inherit;
536
+ font-variant: inherit;
537
+ line-height: inherit;
538
+ letter-spacing: inherit;
539
+ word-spacing: inherit;
540
+ text-transform: inherit;
541
+ text-shadow: inherit;
542
+ }
543
+
526
544
  adw-about-dialog *,
527
545
  adw-about-dialog *::before,
528
546
  adw-about-dialog *::after {
@@ -535,6 +553,12 @@ adw-action-row *::after {
535
553
  box-sizing: border-box;
536
554
  }
537
555
 
556
+ gtk-action-bar *,
557
+ gtk-action-bar *::before,
558
+ gtk-action-bar *::after {
559
+ box-sizing: border-box;
560
+ }
561
+
538
562
  adw-alert-dialog *,
539
563
  adw-alert-dialog *::before,
540
564
  adw-alert-dialog *::after {
@@ -565,6 +589,12 @@ adw-bottom-sheet *::after {
565
589
  box-sizing: border-box;
566
590
  }
567
591
 
592
+ adw-bottom-sheet-bottom-bar *,
593
+ adw-bottom-sheet-bottom-bar *::before,
594
+ adw-bottom-sheet-bottom-bar *::after {
595
+ box-sizing: border-box;
596
+ }
597
+
568
598
  adw-bottom-sheet-content *,
569
599
  adw-bottom-sheet-content *::before,
570
600
  adw-bottom-sheet-content *::after {
@@ -577,6 +607,12 @@ adw-bottom-sheet-sheet *::after {
577
607
  box-sizing: border-box;
578
608
  }
579
609
 
610
+ gtk-box *,
611
+ gtk-box *::before,
612
+ gtk-box *::after {
613
+ box-sizing: border-box;
614
+ }
615
+
580
616
  gtk-button *,
581
617
  gtk-button *::before,
582
618
  gtk-button *::after {
@@ -691,6 +727,12 @@ adw-inline-view-switcher *::after {
691
727
  box-sizing: border-box;
692
728
  }
693
729
 
730
+ gtk-label *,
731
+ gtk-label *::before,
732
+ gtk-label *::after {
733
+ box-sizing: border-box;
734
+ }
735
+
694
736
  gtk-menu-button *,
695
737
  gtk-menu-button *::before,
696
738
  gtk-menu-button *::after {
@@ -940,7 +982,50 @@ adw-wrap-box *::after {
940
982
  background-color: transparent;
941
983
  }
942
984
 
943
- .dimmed, .adw-data-grid .adw-data-grid-row.header .adw-data-grid-cell, gtk-progress-bar .adw-progress-bar-text {
985
+ gtk-label {
986
+ display: flex;
987
+ align-items: var(--gtk-label-align-items, center);
988
+ white-space: pre;
989
+ caret-color: currentColor;
990
+ user-select: none;
991
+ }
992
+ gtk-label::before, gtk-label::after {
993
+ content: "";
994
+ flex-shrink: 1;
995
+ flex-basis: 0;
996
+ }
997
+ gtk-label::before {
998
+ flex-grow: var(--gtk-label-xalign, 0.5);
999
+ }
1000
+ gtk-label::after {
1001
+ flex-grow: calc(1 - var(--gtk-label-xalign, 0.5));
1002
+ }
1003
+ gtk-label[wrap] {
1004
+ white-space: pre-wrap;
1005
+ }
1006
+ gtk-label .adw-label-text {
1007
+ display: block;
1008
+ max-width: 100%;
1009
+ }
1010
+ gtk-label[wrap-mode=char] .adw-label-text {
1011
+ word-break: break-all;
1012
+ }
1013
+ gtk-label[wrap-mode=word-char] .adw-label-text {
1014
+ overflow-wrap: anywhere;
1015
+ }
1016
+ gtk-label .adw-label-text.adw-label-clamp {
1017
+ display: -webkit-box;
1018
+ -webkit-box-orient: vertical;
1019
+ -webkit-line-clamp: var(--gtk-label-lines, 1);
1020
+ overflow: hidden;
1021
+ text-overflow: var(--gtk-label-ellipsize-overflow, ellipsis);
1022
+ white-space: normal;
1023
+ }
1024
+ gtk-label[selectable] {
1025
+ user-select: text;
1026
+ cursor: text;
1027
+ }
1028
+ .dimmed, .adw-data-grid .adw-data-grid-row.header .adw-data-grid-cell, gtk-progress-bar .adw-progress-bar-text, gtk-label.separator {
944
1029
  opacity: var(--dim-opacity);
945
1030
  }
946
1031
 
@@ -1027,6 +1112,16 @@ adw-wrap-box *::after {
1027
1112
  font-variant-numeric: tabular-nums;
1028
1113
  }
1029
1114
 
1115
+ gtk-box {
1116
+ display: flex;
1117
+ flex-direction: row;
1118
+ align-items: stretch;
1119
+ }
1120
+
1121
+ gtk-box[homogeneous] > * {
1122
+ flex: 1 1 0;
1123
+ }
1124
+
1030
1125
  /************
1031
1126
  * Surfaces *
1032
1127
  ************/
@@ -1368,6 +1463,38 @@ adw-window.devel adw-header-bar {
1368
1463
  background-image: linear-gradient(to bottom, transparent 0%, var(--headerbar-bg-color) 100%), repeating-linear-gradient(116.565deg, color-mix(in srgb, currentColor 5%, transparent) 0 32px, transparent 32px 64px);
1369
1464
  }
1370
1465
 
1466
+ gtk-action-bar {
1467
+ display: flex;
1468
+ align-items: center;
1469
+ gap: 6px;
1470
+ box-sizing: border-box;
1471
+ background-color: var(--headerbar-bg-color);
1472
+ color: var(--headerbar-fg-color);
1473
+ box-shadow: inset 0 1px var(--headerbar-shade-color);
1474
+ padding: 7px 6px 6px 6px;
1475
+ }
1476
+ gtk-action-bar[hidden] {
1477
+ display: none;
1478
+ }
1479
+ gtk-action-bar > .adw-action-bar-start,
1480
+ gtk-action-bar > .adw-action-bar-end {
1481
+ display: flex;
1482
+ align-items: center;
1483
+ gap: 6px;
1484
+ }
1485
+ gtk-action-bar > .adw-action-bar-start {
1486
+ flex: 1 1 0;
1487
+ justify-content: flex-start;
1488
+ }
1489
+ gtk-action-bar > .adw-action-bar-center {
1490
+ display: flex;
1491
+ align-items: center;
1492
+ }
1493
+ gtk-action-bar > .adw-action-bar-end {
1494
+ flex: 1 1 0;
1495
+ justify-content: flex-end;
1496
+ }
1497
+
1371
1498
  adw-window-title {
1372
1499
  display: flex;
1373
1500
  flex-direction: column;
@@ -1376,6 +1503,11 @@ adw-window-title {
1376
1503
  line-height: 1.15;
1377
1504
  min-width: 0;
1378
1505
  }
1506
+ adw-window-title .adw-window-title-title,
1507
+ adw-window-title .adw-window-title-subtitle {
1508
+ padding-left: 12px;
1509
+ padding-right: 12px;
1510
+ }
1379
1511
  adw-window-title .adw-window-title-title {
1380
1512
  font-size: var(--font-size-base);
1381
1513
  font-weight: 700;
@@ -1458,14 +1590,21 @@ gtk-button {
1458
1590
  filter: brightness(0.92);
1459
1591
  }
1460
1592
  .adw-button.destructive-action {
1461
- background-color: var(--destructive-bg-color);
1462
- color: var(--destructive-fg-color);
1593
+ --accent-bg-color: var(--destructive-bg-color);
1594
+ --accent-fg-color: var(--destructive-fg-color);
1595
+ --accent-color: var(--destructive-color);
1596
+ color: var(--destructive-color);
1597
+ background-color: color-mix(in srgb, currentColor 15%, transparent);
1463
1598
  }
1464
1599
  .adw-button.destructive-action:hover {
1465
- filter: brightness(1.06);
1600
+ background-color: color-mix(in srgb, currentColor 20%, transparent);
1466
1601
  }
1467
1602
  .adw-button.destructive-action:active {
1468
- filter: brightness(0.9);
1603
+ background-color: color-mix(in srgb, currentColor 35%, transparent);
1604
+ }
1605
+ .adw-button.text-button {
1606
+ padding-left: 17px;
1607
+ padding-right: 17px;
1469
1608
  }
1470
1609
  .adw-button.icon-only {
1471
1610
  padding: 0;
@@ -1477,7 +1616,8 @@ gtk-button {
1477
1616
  border-radius: 9999px;
1478
1617
  }
1479
1618
  .adw-button.pill {
1480
- padding: 6px 20px;
1619
+ min-height: 44px;
1620
+ padding: 10px 32px;
1481
1621
  border-radius: 9999px;
1482
1622
  }
1483
1623
  .adw-button.raised {
@@ -1509,7 +1649,7 @@ gtk-button {
1509
1649
  background-color: color-mix(in srgb, black 48.75%, currentColor 16.25%);
1510
1650
  }
1511
1651
 
1512
- .adw-button.image-text-button {
1652
+ .adw-button.image-text-button:not(.pill) {
1513
1653
  padding-left: 9px;
1514
1654
  padding-right: 9px;
1515
1655
  }
@@ -1758,9 +1898,9 @@ gtk-popover[data-position=bottom][data-align=end], gtk-popover[data-position=top
1758
1898
  align-items: center;
1759
1899
  justify-content: center;
1760
1900
  min-height: 34px;
1761
- width: 28px;
1901
+ width: 24px;
1762
1902
  margin: 0;
1763
- padding: 0 var(--spacing-xs);
1903
+ padding: 0 4px;
1764
1904
  border: none;
1765
1905
  border-left: 1px solid var(--separator-color);
1766
1906
  border-radius: 0 var(--button-radius) var(--button-radius) 0;
@@ -2629,12 +2769,15 @@ adw-banner .adw-banner-title {
2629
2769
  flex: 1 1 auto;
2630
2770
  min-width: 0;
2631
2771
  font-size: var(--font-size-base);
2772
+ font-weight: 700;
2632
2773
  }
2633
2774
  adw-banner .adw-banner-button {
2634
2775
  flex-shrink: 0;
2776
+ box-sizing: border-box;
2777
+ min-height: 34px;
2635
2778
  border: none;
2636
2779
  border-radius: var(--button-radius);
2637
- padding: 4px 14px;
2780
+ padding: 5px 17px;
2638
2781
  background: var(--button-bg-color);
2639
2782
  color: var(--window-fg-color);
2640
2783
  font-family: var(--font-family);
@@ -2659,40 +2802,45 @@ adw-status-page {
2659
2802
  align-items: center;
2660
2803
  justify-content: center;
2661
2804
  text-align: center;
2662
- gap: var(--spacing-m);
2663
- padding: var(--spacing-xl);
2805
+ gap: 12px;
2806
+ padding: 36px 12px;
2664
2807
  color: var(--window-fg-color);
2665
2808
  }
2666
2809
  adw-status-page .adw-status-page-icon {
2667
- width: 96px;
2668
- height: 96px;
2810
+ width: 128px;
2811
+ height: 128px;
2812
+ margin-bottom: 24px;
2669
2813
  background-color: currentColor;
2670
2814
  opacity: 0.45;
2671
2815
  -webkit-mask-size: contain;
2672
2816
  mask-size: contain;
2673
2817
  }
2674
2818
  adw-status-page .adw-status-page-title {
2675
- font-size: 18pt;
2676
2819
  font-weight: 800;
2820
+ font-size: 181%;
2821
+ max-width: 600px;
2677
2822
  }
2678
2823
  adw-status-page .adw-status-page-description {
2679
2824
  font-size: var(--font-size-base);
2680
2825
  opacity: var(--dim-opacity);
2681
- max-width: 32ch;
2826
+ max-width: 600px;
2682
2827
  }
2683
2828
  adw-status-page .adw-status-page-child {
2684
- margin-top: var(--spacing-s);
2829
+ margin-top: 24px;
2685
2830
  }
2686
2831
  adw-status-page.compact {
2687
- gap: var(--spacing-s);
2688
- padding: var(--spacing-m);
2832
+ padding: 24px 12px;
2689
2833
  }
2690
2834
  adw-status-page.compact .adw-status-page-icon {
2691
- width: 72px;
2692
- height: 72px;
2835
+ width: 96px;
2836
+ height: 96px;
2837
+ margin-bottom: 12px;
2693
2838
  }
2694
2839
  adw-status-page.compact .adw-status-page-title {
2695
- font-size: 14pt;
2840
+ font-size: 136%;
2841
+ }
2842
+ adw-status-page.compact .adw-status-page-child {
2843
+ margin-top: 12px;
2696
2844
  }
2697
2845
 
2698
2846
  adw-switch-row,
@@ -2986,8 +3134,8 @@ adw-button-row {
2986
3134
  align-items: center;
2987
3135
  justify-content: center;
2988
3136
  width: 100%;
2989
- min-height: 50px;
2990
- padding: var(--spacing-xs) var(--spacing-m);
3137
+ min-height: 44px;
3138
+ padding: 0 var(--spacing-m);
2991
3139
  border-bottom: 1px solid var(--card-shade-color);
2992
3140
  color: var(--card-fg-color);
2993
3141
  cursor: pointer;
@@ -3309,6 +3457,9 @@ adw-toolbar-view .adw-toolbar-view-content {
3309
3457
  adw-toolbar-view .adw-toolbar-view-content > :only-child {
3310
3458
  flex: 1 1 auto;
3311
3459
  }
3460
+ adw-toolbar-view .adw-toolbar-view-content > :only-child:is([valign=start], [valign=end], [valign=center]) {
3461
+ flex-grow: 0;
3462
+ }
3312
3463
  adw-toolbar-view .adw-toolbar-view-top.raised,
3313
3464
  adw-toolbar-view .adw-toolbar-view-bottom.raised {
3314
3465
  background-color: var(--headerbar-bg-color);
@@ -3460,6 +3611,8 @@ adw-overlay-split-view {
3460
3611
  overflow: hidden;
3461
3612
  }
3462
3613
  adw-overlay-split-view .adw-osv-sidebar {
3614
+ display: flex;
3615
+ flex-direction: column;
3463
3616
  overflow-y: auto;
3464
3617
  flex-shrink: 0;
3465
3618
  z-index: 10;
@@ -3582,6 +3735,18 @@ adw-navigation-split-view .adw-nsv-content {
3582
3735
  flex: 1 1 auto;
3583
3736
  background-color: var(--window-bg-color);
3584
3737
  }
3738
+ adw-navigation-split-view .adw-nsv-sidebar > adw-navigation-page,
3739
+ adw-navigation-split-view .adw-nsv-content > adw-navigation-page {
3740
+ display: flex;
3741
+ flex-direction: column;
3742
+ flex: 1 1 auto;
3743
+ min-height: 0;
3744
+ }
3745
+ adw-navigation-split-view .adw-nsv-sidebar > adw-navigation-page > *,
3746
+ adw-navigation-split-view .adw-nsv-content > adw-navigation-page > * {
3747
+ flex: 1 1 auto;
3748
+ min-height: 0;
3749
+ }
3585
3750
  adw-navigation-split-view.sidebar-end .adw-nsv-content {
3586
3751
  order: 1;
3587
3752
  }
@@ -3607,6 +3772,7 @@ adw-navigation-split-view.collapsed .adw-nsv-sidebar[data-pane-visible=true] {
3607
3772
  adw-carousel {
3608
3773
  display: block;
3609
3774
  overflow: hidden;
3775
+ contain: inline-size;
3610
3776
  }
3611
3777
  adw-carousel .adw-carousel-track {
3612
3778
  display: flex;
@@ -4334,6 +4500,7 @@ adw-bottom-sheet {
4334
4500
  color: var(--window-fg-color);
4335
4501
  }
4336
4502
  adw-bottom-sheet .adw-bottom-sheet-content {
4503
+ display: grid;
4337
4504
  box-sizing: border-box;
4338
4505
  width: 100%;
4339
4506
  height: 100%;
@@ -4385,9 +4552,41 @@ adw-bottom-sheet .adw-bottom-sheet-drag-handle {
4385
4552
  adw-bottom-sheet .adw-bottom-sheet-sheet-body {
4386
4553
  box-sizing: border-box;
4387
4554
  }
4555
+ adw-bottom-sheet .adw-bottom-sheet-bottom-bar {
4556
+ display: block;
4557
+ box-sizing: border-box;
4558
+ width: 100%;
4559
+ min-width: 0;
4560
+ min-height: 0;
4561
+ padding: 0;
4562
+ border: none;
4563
+ border-radius: 0;
4564
+ font: inherit;
4565
+ font-weight: inherit;
4566
+ color: inherit;
4567
+ background: none;
4568
+ box-shadow: none;
4569
+ cursor: pointer;
4570
+ }
4571
+ adw-bottom-sheet .adw-bottom-sheet-bottom-bar:hover {
4572
+ background-color: color-mix(in srgb, currentColor 5%, transparent);
4573
+ }
4574
+ adw-bottom-sheet .adw-bottom-sheet-bottom-bar:active {
4575
+ background-color: color-mix(in srgb, currentColor 10%, transparent);
4576
+ }
4577
+ adw-bottom-sheet .adw-bottom-sheet-bottom-bar.inert {
4578
+ cursor: default;
4579
+ }
4580
+ adw-bottom-sheet .adw-bottom-sheet-bottom-bar.inert:hover, adw-bottom-sheet .adw-bottom-sheet-bottom-bar.inert:active {
4581
+ background: none;
4582
+ }
4388
4583
  adw-bottom-sheet.open .adw-bottom-sheet-sheet {
4389
4584
  transform: translateY(0);
4390
4585
  }
4586
+ adw-bottom-sheet.showing-bottom-bar .adw-bottom-sheet-sheet {
4587
+ transform: translateY(0);
4588
+ box-shadow: 0 0 0 1px rgba(0, 0, 6, 0.06), 0 2px 8px 2px rgba(0, 0, 6, 0.06), 0 3px 20px 10px rgba(0, 0, 6, 0.05);
4589
+ }
4391
4590
  adw-bottom-sheet:not(.modal) .adw-bottom-sheet-dimming {
4392
4591
  display: none;
4393
4592
  }
@@ -5164,6 +5363,35 @@ adw-dialog[data-presentation=bottom-sheet] .adw-dialog-box {
5164
5363
  transform: translateY(0);
5165
5364
  }
5166
5365
  }
5366
+ [halign=start] {
5367
+ margin-inline-end: auto;
5368
+ }
5369
+
5370
+ [halign=end] {
5371
+ margin-inline-start: auto;
5372
+ }
5373
+
5374
+ [halign=center] {
5375
+ margin-inline: auto;
5376
+ }
5377
+
5378
+ [valign=start] {
5379
+ margin-block-end: auto;
5380
+ }
5381
+
5382
+ [valign=end] {
5383
+ margin-block-start: auto;
5384
+ }
5385
+
5386
+ [valign=center] {
5387
+ margin-block: auto;
5388
+ }
5389
+
5390
+ gtk-box:not([orientation=vertical]) > [hexpand],
5391
+ gtk-box[orientation=vertical] > [vexpand] {
5392
+ flex-grow: 1;
5393
+ }
5394
+
5167
5395
  [hidden] {
5168
5396
  display: none !important;
5169
5397
  }