baseline-foundry 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -9
- package/config/experiments/ibm-plex-engine-smoke.json +1 -1
- package/config/experiments/ubuntu-engine-smoke.json +1 -1
- package/config/foundation-theme.json +1 -1
- package/config/tiers/app.json +6 -6
- package/config/tiers/documentation.json +2 -2
- package/config/tiers/editorial.json +1 -1
- package/config/tiers/os.json +6 -6
- package/dist/baseline-grid-overlay.js +2 -2
- package/dist/build.js +4 -4
- package/dist/code-snippet.js +1 -1
- package/dist/css-app-tier.js +10 -5
- package/dist/css-components/article-pagination.js +9 -8
- package/dist/css-components/button-actions.js +24 -4
- package/dist/css-components/cards-options.js +8 -8
- package/dist/css-components/chip-badge-status.d.ts +0 -3
- package/dist/css-components/chip-badge-status.js +24 -9
- package/dist/css-components/content-card.d.ts +7 -7
- package/dist/css-components/content-card.js +17 -16
- package/dist/css-components/control-row.d.ts +1 -1
- package/dist/css-components/control-row.js +1 -1
- package/dist/css-components/document-navigation.js +66 -29
- package/dist/css-components/editorial-content.js +1 -1
- package/dist/css-components/interactive-feedback.js +50 -28
- package/dist/css-components/interactive-tables.js +13 -8
- package/dist/css-components/legacy-navigation.d.ts +0 -1
- package/dist/css-components/legacy-navigation.js +85 -32
- package/dist/css-components/linked-logo-site-layout.d.ts +3 -3
- package/dist/css-components/linked-logo-site-layout.js +17 -20
- package/dist/css-components/list-tree.js +21 -19
- package/dist/css-components/list.js +9 -7
- package/dist/css-components/logo-media.d.ts +6 -6
- package/dist/css-components/logo-media.js +38 -27
- package/dist/css-components/navigation-layout.js +4 -4
- package/dist/css-components/panel.js +12 -8
- package/dist/css-components/search-box-and-filter.d.ts +0 -1
- package/dist/css-components/search-box-and-filter.js +18 -19
- package/dist/css-components/sites-editorial-ports.d.ts +3 -4
- package/dist/css-components/sites-editorial-ports.js +61 -29
- package/dist/css-components/sites-foundation.js +15 -19
- package/dist/css-components/sites-rich-lists.d.ts +5 -5
- package/dist/css-components/sites-rich-lists.js +26 -36
- package/dist/css-components/static-content-ports.d.ts +3 -3
- package/dist/css-components/static-content-ports.js +51 -37
- package/dist/css-components/tab-section.d.ts +3 -3
- package/dist/css-components/tab-section.js +34 -26
- package/dist/css-components/table.js +4 -3
- package/dist/css-components/tabs-choice-breadcrumbs.js +25 -21
- package/dist/css-components/tiered-list-equal-height-row.js +10 -10
- package/dist/css-components.js +189 -111
- package/dist/css-grid.d.ts +1 -1
- package/dist/css-grid.js +18 -8
- package/dist/css.js +94 -18
- package/dist/experiments/ibm-plex-engine-smoke/styles.css +894 -538
- package/dist/experiments/ibm-plex-engine-smoke/surfaces.json +2 -2
- package/dist/experiments/ibm-plex-engine-smoke/tokens.json +1 -1
- package/dist/in-page-navigation.js +1 -1
- package/dist/presets/app-tier/styles.css +928 -568
- package/dist/presets/app-tier/surfaces.json +17 -17
- package/dist/presets/app-tier/tokens.json +7 -7
- package/dist/presets/prose/styles.css +919 -562
- package/dist/presets/prose/surfaces.json +17 -17
- package/dist/presets/prose/tokens.json +1 -1
- package/dist/resizable-aside.js +12 -4
- package/dist/styles.css +919 -562
- package/dist/surfaces.json +17 -17
- package/dist/tiers/app/styles.css +928 -568
- package/dist/tiers/app/surfaces.json +17 -17
- package/dist/tiers/app/tokens.json +7 -7
- package/dist/tiers/documentation/styles.css +920 -563
- package/dist/tiers/documentation/surfaces.json +17 -17
- package/dist/tiers/documentation/tokens.json +2 -2
- package/dist/tiers/editorial/styles.css +919 -562
- package/dist/tiers/editorial/surfaces.json +17 -17
- package/dist/tiers/editorial/tokens.json +1 -1
- package/dist/tiers/os/styles.css +925 -568
- package/dist/tiers/os/surfaces.json +17 -17
- package/dist/tiers/os/tokens.json +7 -7
- package/dist/tokens.json +1 -1
- package/dist/types.d.ts +1 -1
- package/docs/publishing.md +1 -1
- package/package.json +2 -2
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
background-image: linear-gradient(
|
|
29
29
|
to top,
|
|
30
30
|
var(--bf-baseline-grid-color),
|
|
31
|
-
var(--bf-baseline-grid-color)
|
|
32
|
-
transparent
|
|
31
|
+
var(--bf-baseline-grid-color) 0.0625rem,
|
|
32
|
+
transparent 0.0625rem,
|
|
33
33
|
transparent
|
|
34
34
|
);
|
|
35
35
|
background-size: 100% var(--bf-baseline-grid-size);
|
|
@@ -455,7 +455,7 @@ html.u-baseline-grid::after {
|
|
|
455
455
|
:where(.bf-theme) :where(a) {
|
|
456
456
|
color: var(--bf-color-link);
|
|
457
457
|
text-decoration: none;
|
|
458
|
-
text-decoration-thickness:
|
|
458
|
+
text-decoration-thickness: 0.0625rem;
|
|
459
459
|
text-underline-offset: 0.12em;
|
|
460
460
|
}
|
|
461
461
|
|
|
@@ -468,8 +468,22 @@ html.u-baseline-grid::after {
|
|
|
468
468
|
}
|
|
469
469
|
|
|
470
470
|
:where(.bf-theme) :where(a:focus-visible) {
|
|
471
|
-
outline:
|
|
472
|
-
outline-offset:
|
|
471
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
472
|
+
outline-offset: 0.125rem;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
/* Standalone anchors need the same metric-owned text box as adjacent body
|
|
476
|
+
* controls. Raw anchors remain inline so prose links still participate in the
|
|
477
|
+
* surrounding line box. */
|
|
478
|
+
:where(.bf-theme) :where(a.bf-text-link) {
|
|
479
|
+
display: inline-block;
|
|
480
|
+
font-family: var(--bf-body-font-family);
|
|
481
|
+
font-size: var(--bf-body-font-size);
|
|
482
|
+
font-style: var(--bf-body-font-style);
|
|
483
|
+
font-weight: var(--bf-body-font-weight);
|
|
484
|
+
line-height: var(--bf-body-line-height);
|
|
485
|
+
margin-block: 0 var(--bf-body-margin-bottom);
|
|
486
|
+
padding-block: var(--bf-body-nudge-start) 0;
|
|
473
487
|
}
|
|
474
488
|
|
|
475
489
|
:where(.bf-theme) :where(code) {
|
|
@@ -480,7 +494,7 @@ html.u-baseline-grid::after {
|
|
|
480
494
|
:where(.bf-theme) :where(.bf-page) {
|
|
481
495
|
margin-inline: auto;
|
|
482
496
|
max-inline-size: var(--bf-content-max-width);
|
|
483
|
-
padding-inline:
|
|
497
|
+
padding-inline: var(--bf-page-margin);
|
|
484
498
|
}
|
|
485
499
|
|
|
486
500
|
:where(.bf-theme) :where(.bf-page.is-fill) {
|
|
@@ -563,7 +577,14 @@ html.u-baseline-grid::after {
|
|
|
563
577
|
}
|
|
564
578
|
|
|
565
579
|
:where(.bf-theme) :where(.bf-stack.is-flush) {
|
|
566
|
-
--bf-stack-space:
|
|
580
|
+
--bf-stack-space: 0rem;
|
|
581
|
+
}
|
|
582
|
+
|
|
583
|
+
/* A metric-flush stack is an explicit relationship between adjacent text
|
|
584
|
+
* roles. It retains the outer role nudges while cancelling only the preceding
|
|
585
|
+
* end compensation and following start nudge; no guessed negative gap is used. */
|
|
586
|
+
:where(.bf-theme) :where(.bf-stack.is-metric-flush) {
|
|
587
|
+
--bf-stack-space: 0rem;
|
|
567
588
|
}
|
|
568
589
|
|
|
569
590
|
:where(.bf-theme) :where(.bf-stack.is-extra-dense) {
|
|
@@ -591,10 +612,19 @@ html.u-baseline-grid::after {
|
|
|
591
612
|
}
|
|
592
613
|
|
|
593
614
|
:where(.bf-theme) :where(.bf-cluster) {
|
|
615
|
+
--bf-cluster-space: var(--bf-space-2);
|
|
594
616
|
align-items: flex-start;
|
|
595
617
|
display: flex;
|
|
596
618
|
flex-wrap: wrap;
|
|
597
|
-
gap: var(--bf-space
|
|
619
|
+
gap: var(--bf-cluster-space);
|
|
620
|
+
}
|
|
621
|
+
|
|
622
|
+
:where(.bf-theme) :where(.bf-cluster.is-dense) {
|
|
623
|
+
--bf-cluster-space: var(--bf-space-1);
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
:where(.bf-theme) :where(.bf-cluster.is-nowrap) {
|
|
627
|
+
flex-wrap: nowrap;
|
|
598
628
|
}
|
|
599
629
|
|
|
600
630
|
:where(.bf-theme) :where(.bf-cluster.is-split) {
|
|
@@ -716,6 +746,14 @@ html.u-baseline-grid::after {
|
|
|
716
746
|
}
|
|
717
747
|
|
|
718
748
|
|
|
749
|
+
:where(.bf-theme) .bf-stack.is-metric-flush > :where(blockquote, p, h1, h2, h3, h4, h5, h6, .bf-body, .bf-h1, .bf-h2, .bf-h3, .bf-h4, .bf-h5, .bf-h6):has(+ :where(blockquote, p, h1, h2, h3, h4, h5, h6, .bf-body, .bf-h1, .bf-h2, .bf-h3, .bf-h4, .bf-h5, .bf-h6)) {
|
|
750
|
+
margin-block-end: 0;
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
:where(.bf-theme) .bf-stack.is-metric-flush > :where(blockquote, p, h1, h2, h3, h4, h5, h6, .bf-body, .bf-h1, .bf-h2, .bf-h3, .bf-h4, .bf-h5, .bf-h6) + :where(blockquote, p, h1, h2, h3, h4, h5, h6, .bf-body, .bf-h1, .bf-h2, .bf-h3, .bf-h4, .bf-h5, .bf-h6) {
|
|
754
|
+
padding-block-start: 0;
|
|
755
|
+
}
|
|
756
|
+
|
|
719
757
|
/* DEMO ONLY — Cap-derived nudges are unreliable (ascender ≠ cap height).
|
|
720
758
|
The approximation (line-height + 1cap) / 2 drifts at larger sizes.
|
|
721
759
|
Kept as a reference for why metrics-derived nudges are used instead. */
|
|
@@ -771,10 +809,36 @@ html.u-baseline-grid::after {
|
|
|
771
809
|
|
|
772
810
|
:where(.bf-theme) :where(ul, ol) {
|
|
773
811
|
margin-bottom: 0;
|
|
812
|
+
padding-block-end: 0;
|
|
774
813
|
}
|
|
775
814
|
|
|
776
|
-
:where(.bf-theme) :where(.bf-prose
|
|
777
|
-
padding-inline-start: var(--bf-
|
|
815
|
+
:where(.bf-theme) :where(.bf-prose ol) {
|
|
816
|
+
padding-inline-start: calc(var(--bf-leading-mark-group-inset) + var(--bf-leading-mark-offset) - (var(--bf-leading-mark-size) * 0.5));
|
|
817
|
+
}
|
|
818
|
+
|
|
819
|
+
:where(.bf-theme) :where(.bf-prose ol > li) {
|
|
820
|
+
padding-inline-start: calc(var(--bf-leading-mark-size) * 0.5);
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
:where(.bf-theme) :where(.bf-prose ul) {
|
|
824
|
+
list-style: none;
|
|
825
|
+
padding-inline-start: var(--bf-leading-mark-group-inset);
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
:where(.bf-theme) :where(.bf-prose ul > li) {
|
|
829
|
+
padding-inline-start: var(--bf-leading-mark-offset);
|
|
830
|
+
position: relative;
|
|
831
|
+
}
|
|
832
|
+
|
|
833
|
+
:where(.bf-theme) :where(.bf-prose ul > li)::before {
|
|
834
|
+
background: currentColor;
|
|
835
|
+
block-size: var(--bf-list-marker-dot-size);
|
|
836
|
+
border-radius: 50%;
|
|
837
|
+
content: "";
|
|
838
|
+
inline-size: var(--bf-list-marker-dot-size);
|
|
839
|
+
inset-block-start: calc(var(--bf-tick-box-offset) + ((var(--bf-leading-mark-size) - var(--bf-list-marker-dot-size)) * 0.5));
|
|
840
|
+
inset-inline-start: calc((var(--bf-leading-mark-size) - var(--bf-list-marker-dot-size)) * 0.5);
|
|
841
|
+
position: absolute;
|
|
778
842
|
}
|
|
779
843
|
|
|
780
844
|
:where(.bf-theme) :where(.bf-prose li) {
|
|
@@ -784,39 +848,37 @@ html.u-baseline-grid::after {
|
|
|
784
848
|
}
|
|
785
849
|
|
|
786
850
|
:where(.bf-theme) :where(.bf-prose blockquote) {
|
|
787
|
-
|
|
788
|
-
color: var(--bf-color-muted);
|
|
851
|
+
color: var(--bf-color-text-default);
|
|
789
852
|
font-family: var(--bf-body-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
790
853
|
font-size: var(--bf-body-font-size, 1rem);
|
|
791
854
|
font-style: var(--bf-body-font-style, normal);
|
|
792
855
|
font-weight: var(--bf-body-font-weight, 400);
|
|
793
856
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
794
857
|
margin-bottom: var(--bf-body-margin-bottom, 0.125rem);
|
|
795
|
-
max-inline-size:
|
|
858
|
+
max-inline-size: var(--bf-measure);
|
|
796
859
|
padding-block-end: 0rem;
|
|
797
860
|
padding-block-start: var(--bf-body-nudge-start, 0.375rem);
|
|
798
|
-
padding-inline-start: var(--bf-space-3);
|
|
799
861
|
}
|
|
800
862
|
|
|
801
|
-
:where(.bf-theme) :where(
|
|
863
|
+
:where(.bf-theme) :where(hr) {
|
|
802
864
|
background: var(--bf-color-rule);
|
|
803
|
-
block-size:
|
|
865
|
+
block-size: 0.0625rem;
|
|
804
866
|
border: 0;
|
|
805
867
|
inline-size: 100%;
|
|
806
868
|
/* Reserve one half-rem rhythm step after the rule, including its */
|
|
807
869
|
/* thickness, so borderless content does not touch the divider. */
|
|
808
|
-
margin: 0 0 calc(0.5rem -
|
|
870
|
+
margin: 0 0 calc(0.5rem - 0.0625rem);
|
|
809
871
|
}
|
|
810
872
|
|
|
811
873
|
/* Highlight rules share the same scalable emphasis-bar geometry as active
|
|
812
874
|
* navigation, tabs, notifications, and document-navigation markers. */
|
|
813
|
-
:where(.bf-theme) :where(
|
|
875
|
+
:where(.bf-theme) :where(hr.is-highlighted) {
|
|
814
876
|
block-size: var(--bf-bar-thickness);
|
|
815
877
|
margin-block-end: calc(0.5rem - var(--bf-bar-thickness));
|
|
816
878
|
}
|
|
817
879
|
|
|
818
880
|
:where(.bf-theme) :where(.bf-token-row) {
|
|
819
|
-
border-top:
|
|
881
|
+
border-top: 0.0625rem solid var(--bf-color-rule);
|
|
820
882
|
display: grid;
|
|
821
883
|
gap: var(--bf-space-1);
|
|
822
884
|
padding-top: var(--bf-space-2);
|
|
@@ -828,7 +890,7 @@ html.u-baseline-grid::after {
|
|
|
828
890
|
}
|
|
829
891
|
|
|
830
892
|
:where(.bf-theme) {
|
|
831
|
-
--bf-border-width:
|
|
893
|
+
--bf-border-width: 0.0625rem;
|
|
832
894
|
--bf-bar-thickness: 0.1875rem;
|
|
833
895
|
--bf-radius: 0rem;
|
|
834
896
|
--bf-control-block-padding: 0.5rem;
|
|
@@ -846,22 +908,41 @@ html.u-baseline-grid::after {
|
|
|
846
908
|
/* Action surfaces keep comfortable command targets; field surfaces can tighten independently. */
|
|
847
909
|
--bf-disclosure-gap: 1rem;
|
|
848
910
|
--bf-disclosure-icon-inline-size: 1rem;
|
|
911
|
+
--bf-icon-label-inline-offset: calc(var(--bf-disclosure-icon-inline-size) + var(--bf-disclosure-gap));
|
|
912
|
+
--bf-disclosure-label-inline-offset: var(--bf-icon-label-inline-offset);
|
|
913
|
+
/* Every component-owned inline start resolves to one of these three rails.
|
|
914
|
+
Field and action values remain tier inputs; continuation is the shared
|
|
915
|
+
icon/mark-to-copy line. Structural page, grid and navigation-depth offsets
|
|
916
|
+
are deliberately outside this component inset contract. */
|
|
917
|
+
--bf-component-inline-inset-field: var(--bf-control-inline-padding-field);
|
|
918
|
+
--bf-component-inline-inset-action: var(--bf-control-inline-padding-action);
|
|
919
|
+
--bf-component-inline-inset-continuation: var(--bf-disclosure-label-inline-offset);
|
|
849
920
|
--bf-input-block-padding: var(--bf-body-nudge-start, 0.375rem);
|
|
850
921
|
--bf-button-block-padding: var(--bf-body-nudge-start, 0.375rem);
|
|
922
|
+
/* One border-aware occupied-block contract for body-sized, single-line UI.
|
|
923
|
+
Components may paint their block borders differently, but their text line,
|
|
924
|
+
padding and trailing baseline compensation must resolve through this pair. */
|
|
925
|
+
--bf-single-line-row-padding-block: max(0rem, calc(var(--bf-button-block-padding) - var(--bf-border-width)));
|
|
926
|
+
--bf-single-line-row-margin-block-end: calc(0rem + mod(calc(var(--bf-baseline) - mod(calc(var(--bf-body-line-height, 1.5rem) + (var(--bf-button-block-padding) * 2)), var(--bf-baseline))), var(--bf-baseline)));
|
|
927
|
+
--bf-single-line-row-visual-offset: calc(var(--bf-body-nudge-start, 0.375rem) + ((var(--bf-body-line-height, 1.5rem) - var(--bf-control-visual-size)) / 2));
|
|
851
928
|
--bf-slider-track-size: calc(var(--bf-baseline) * 0.25);
|
|
852
929
|
--bf-slider-row-block-size: max(var(--bf-control-box-size-compact), calc(var(--bf-body-nudge-start, 0.375rem) + var(--bf-body-line-height, 1.5rem) + var(--bf-body-nudge-end)));
|
|
853
930
|
--bf-slider-track-offset: calc(var(--bf-body-nudge-start, 0.375rem) + ((var(--bf-body-line-height, 1.5rem) - var(--bf-slider-track-size)) / 2));
|
|
854
931
|
--bf-table-row-border-size: var(--bf-border-width);
|
|
855
|
-
--bf-table-row-padding: var(--bf-body-nudge-start, 0.375rem);
|
|
856
|
-
--bf-table-row-content-size: calc(var(--bf-body-line-height, 1.5rem) + (var(--bf-table-row-padding) * 2) + var(--bf-table-row-border-size));
|
|
932
|
+
--bf-table-row-padding-block-start: var(--bf-body-nudge-start, 0.375rem);
|
|
933
|
+
--bf-table-row-content-size: calc(var(--bf-body-line-height, 1.5rem) + (var(--bf-table-row-padding-block-start) * 2) + var(--bf-table-row-border-size));
|
|
857
934
|
--bf-table-row-block-size: calc(var(--bf-table-row-content-size) + mod(calc(var(--bf-baseline) - mod(var(--bf-table-row-content-size), var(--bf-baseline))), var(--bf-baseline)));
|
|
858
|
-
--bf-table-row-
|
|
859
|
-
--bf-
|
|
860
|
-
--bf-switch-track-offset:
|
|
861
|
-
--bf-tick-
|
|
862
|
-
--bf-
|
|
863
|
-
--bf-
|
|
864
|
-
--bf-
|
|
935
|
+
--bf-table-row-padding-block-end: max(0rem, calc(var(--bf-table-row-block-size) - var(--bf-body-line-height, 1.5rem) - var(--bf-table-row-padding-block-start) - var(--bf-table-row-border-size)));
|
|
936
|
+
--bf-table-row-line-height: var(--bf-body-line-height, 1.5rem);
|
|
937
|
+
--bf-switch-track-offset: var(--bf-single-line-row-visual-offset);
|
|
938
|
+
--bf-tick-box-offset: var(--bf-single-line-row-visual-offset);
|
|
939
|
+
--bf-leading-mark-size: var(--bf-control-visual-size);
|
|
940
|
+
--bf-leading-mark-gap: var(--bf-component-inline-inset-field);
|
|
941
|
+
--bf-leading-mark-offset: calc(var(--bf-leading-mark-size) + var(--bf-leading-mark-gap));
|
|
942
|
+
--bf-leading-mark-group-inset: calc(var(--bf-component-inline-inset-continuation) - var(--bf-leading-mark-offset));
|
|
943
|
+
--bf-tick-label-offset: var(--bf-leading-mark-offset);
|
|
944
|
+
--bf-radio-dot-size: calc((var(--bf-control-visual-size) * 0.375) + var(--bf-border-width));
|
|
945
|
+
--bf-list-marker-dot-size: calc(var(--bf-border-width) * 4);
|
|
865
946
|
--bf-app-drawer-width-icon: 2rem;
|
|
866
947
|
--bf-app-drawer-width-small: 15rem;
|
|
867
948
|
--bf-app-drawer-width-small-max: 20rem;
|
|
@@ -873,7 +954,9 @@ html.u-baseline-grid::after {
|
|
|
873
954
|
--bf-app-aside-width-max: var(--bf-app-drawer-width-medium-max);
|
|
874
955
|
--bf-app-navigation-width: 15rem;
|
|
875
956
|
--bf-app-navigation-width-collapsed: 3rem;
|
|
876
|
-
--bf-
|
|
957
|
+
--bf-icon-label-optical-offset-block: 0.1875rem;
|
|
958
|
+
--bf-disclosure-icon-optical-offset-block: var(--bf-icon-label-optical-offset-block);
|
|
959
|
+
--bf-side-navigation-icon-optical-offset-block: var(--bf-icon-label-optical-offset-block);
|
|
877
960
|
--bf-side-navigation-icon-gap: 0.625rem;
|
|
878
961
|
--bf-navigation-bar-min-block-size: calc(var(--bf-baseline) * 6);
|
|
879
962
|
--bf-authoring-accent: #f6b73c;
|
|
@@ -886,9 +969,10 @@ html.u-baseline-grid::after {
|
|
|
886
969
|
--bf-authoring-accent-focus-ring: rgba(246, 183, 60, 0.55);
|
|
887
970
|
--bf-application-resize-handle-active: var(--bf-authoring-accent-strong);
|
|
888
971
|
--bf-application-resize-handle-focus-ring: var(--bf-authoring-accent-focus-ring);
|
|
889
|
-
--bf-
|
|
890
|
-
--bf-top-navigation-
|
|
891
|
-
--bf-top-navigation-
|
|
972
|
+
--bf-control-inline-padding-action-bordered: max(0rem, calc(var(--bf-component-inline-inset-action) - var(--bf-border-width)));
|
|
973
|
+
--bf-top-navigation-link-padding-inline: var(--bf-component-inline-inset-action);
|
|
974
|
+
--bf-top-navigation-end-slot-inline-size: calc(1rem + var(--bf-component-inline-inset-field));
|
|
975
|
+
--bf-top-navigation-search-toggle-inline-size: calc(1rem + (var(--bf-component-inline-inset-field) * 2));
|
|
892
976
|
--bf-top-navigation-link-padding-block: max(var(--bf-body-nudge-start), calc(var(--bf-baseline) * 1.5));
|
|
893
977
|
--bf-top-navigation-search-max-inline-size: 20rem;
|
|
894
978
|
--bf-top-navigation-logo-tag-inline-size: 1.375rem;
|
|
@@ -903,12 +987,10 @@ html.u-baseline-grid::after {
|
|
|
903
987
|
--bf-icon-size-large: 4rem;
|
|
904
988
|
--bf-icon-size-x-large: 4.5rem;
|
|
905
989
|
--bf-icon-size-xx-large: 6rem;
|
|
906
|
-
--bf-leading-icon-size:
|
|
907
|
-
--bf-leading-icon-gap:
|
|
908
|
-
--bf-leading-icon-offset:
|
|
909
|
-
--bf-ui-chip-padding-inline:
|
|
910
|
-
--bf-ui-chip-padding-block: max(0rem, calc((var(--bf-control-inline-padding-action) * 0.25) - var(--bf-border-width)));
|
|
911
|
-
--bf-ui-chip-block-size: calc(var(--bf-body-line-height, 1.5rem) + (var(--bf-ui-chip-padding-block) * 2) + (var(--bf-border-width) * 2));
|
|
990
|
+
--bf-leading-icon-size: var(--bf-leading-mark-size);
|
|
991
|
+
--bf-leading-icon-gap: var(--bf-leading-mark-gap);
|
|
992
|
+
--bf-leading-icon-offset: var(--bf-single-line-row-visual-offset);
|
|
993
|
+
--bf-ui-chip-padding-inline: var(--bf-component-inline-inset-field);
|
|
912
994
|
--bf-ui-badge-padding-inline: calc(var(--bf-body-line-height, 1.5rem) * 0.25);
|
|
913
995
|
--bf-ui-badge-overhang: calc(var(--bf-ui-badge-padding-inline) * -0.75);
|
|
914
996
|
--bf-grid-max-inline-size: var(--bf-content-max-width);
|
|
@@ -971,6 +1053,7 @@ html.u-baseline-grid::after {
|
|
|
971
1053
|
--bf-color-focus: var(--vf-color-focus, #2e96ff);
|
|
972
1054
|
|
|
973
1055
|
--bf-ui-icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.25 6.25 8 10l3.75-3.75'/%3E%3C/svg%3E");
|
|
1056
|
+
--bf-ui-icon-number-stepper: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.25 5.75 8 2l3.75 3.75M4.25 10.25 8 14l3.75-3.75'/%3E%3C/svg%3E");
|
|
974
1057
|
--bf-ui-icon-close: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.25 4.25 11.75 11.75M11.75 4.25 4.25 11.75' fill='none' stroke='%23111' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
|
|
975
1058
|
--bf-ui-icon-error-grey: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 1.52588e-05C12.4183 1.52588e-05 16 3.58174 16 8.00002C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8.00002C0 3.58174 3.58172 1.52588e-05 8 1.52588e-05ZM10.2821 4.63808L11.3427 5.69874L9.05007 7.99008L11.3427 10.2821L10.2821 11.3427L7.99007 9.05008L5.69873 11.3427L4.63807 10.2821L6.92907 7.99008L4.63807 5.69874L5.69873 4.63808L7.99007 6.92908L10.2821 4.63808ZM1.5 8.00002C1.5 4.41016 4.41015 1.50002 8 1.50002C11.5899 1.50002 14.5 4.41016 14.5 8.00002C14.5 11.5899 11.5899 14.5 8 14.5C4.41015 14.5 1.5 11.5899 1.5 8.00002Z' fill='%23111' fill-rule='evenodd'/%3E%3C/svg%3E");
|
|
976
1059
|
--bf-ui-icon-search: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.964 1a5.964 5.964 0 014.709 9.623l4.303 4.305-1.06 1.06-4.306-4.305A5.964 5.964 0 116.963 1zm0 1.5a4.464 4.464 0 100 8.927 4.464 4.464 0 000-8.927z' fill='%23111' fill-rule='nonzero'/%3E%3C/svg%3E");
|
|
@@ -995,11 +1078,9 @@ html.u-baseline-grid::after {
|
|
|
995
1078
|
}
|
|
996
1079
|
|
|
997
1080
|
:where(.bf-theme.bf-surface-ubuntu-engine-smoke) {
|
|
998
|
-
--bf-control-baseline-reserve: 0rem;
|
|
999
1081
|
--bf-input-block-padding: 0.41rem;
|
|
1000
1082
|
--bf-button-block-padding: 0.41rem;
|
|
1001
|
-
--bf-
|
|
1002
|
-
--bf-border-width: 1px;
|
|
1083
|
+
--bf-border-width: 0.0625rem;
|
|
1003
1084
|
--bf-bar-thickness: 0.1875rem;
|
|
1004
1085
|
--bf-radius: 0rem;
|
|
1005
1086
|
--bf-control-block-padding: 0.5rem;
|
|
@@ -1018,7 +1099,6 @@ html.u-baseline-grid::after {
|
|
|
1018
1099
|
}
|
|
1019
1100
|
|
|
1020
1101
|
|
|
1021
|
-
:where(.bf-theme.is-dark),
|
|
1022
1102
|
:where(.bf-theme.is-dark) {
|
|
1023
1103
|
--bf-color-text-default: var(--vf-color-text-default, var(--bf-color-text, #ffffff));
|
|
1024
1104
|
--bf-color-text-muted: var(--vf-color-text-muted, var(--bf-color-muted, rgba(255, 255, 255, 0.6)));
|
|
@@ -1068,6 +1148,7 @@ html.u-baseline-grid::after {
|
|
|
1068
1148
|
--bf-color-focus: var(--vf-color-focus, #99ccff);
|
|
1069
1149
|
|
|
1070
1150
|
--bf-ui-icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.25 6.25 8 10l3.75-3.75'/%3E%3C/svg%3E");
|
|
1151
|
+
--bf-ui-icon-number-stepper: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.25 5.75 8 2l3.75 3.75M4.25 10.25 8 14l3.75-3.75'/%3E%3C/svg%3E");
|
|
1071
1152
|
--bf-ui-icon-close: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.25 4.25 11.75 11.75M11.75 4.25 4.25 11.75' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
|
|
1072
1153
|
--bf-ui-icon-error-grey: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 1.52588e-05C12.4183 1.52588e-05 16 3.58174 16 8.00002C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8.00002C0 3.58174 3.58172 1.52588e-05 8 1.52588e-05ZM10.2821 4.63808L11.3427 5.69874L9.05007 7.99008L11.3427 10.2821L10.2821 11.3427L7.99007 9.05008L5.69873 11.3427L4.63807 10.2821L6.92907 7.99008L4.63807 5.69874L5.69873 4.63808L7.99007 6.92908L10.2821 4.63808ZM1.5 8.00002C1.5 4.41016 4.41015 1.50002 8 1.50002C11.5899 1.50002 14.5 4.41016 14.5 8.00002C14.5 11.5899 11.5899 14.5 8 14.5C4.41015 14.5 1.5 11.5899 1.5 8.00002Z' fill='%23fff' fill-rule='evenodd'/%3E%3C/svg%3E");
|
|
1073
1154
|
--bf-ui-icon-search: url("data:image/svg+xml,%3Csvg width='16' height='16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.964 1a5.964 5.964 0 014.709 9.623l4.303 4.305-1.06 1.06-4.306-4.305A5.964 5.964 0 116.963 1zm0 1.5a4.464 4.464 0 100 8.927 4.464 4.464 0 000-8.927z' fill='%23fff' fill-rule='nonzero'/%3E%3C/svg%3E");
|
|
@@ -1161,6 +1242,10 @@ html.u-baseline-grid::after {
|
|
|
1161
1242
|
grid-template-columns: minmax(0, 1fr);
|
|
1162
1243
|
}
|
|
1163
1244
|
|
|
1245
|
+
:where(.bf-theme) :where(.bf-field.is-range.is-stacked) > :where(.bf-control, .bf-form-help) {
|
|
1246
|
+
grid-column: 1;
|
|
1247
|
+
}
|
|
1248
|
+
|
|
1164
1249
|
:where(.bf-theme) :where(.bf-field.is-range.is-stacked) > :where(.bf-control) {
|
|
1165
1250
|
min-inline-size: 0;
|
|
1166
1251
|
}
|
|
@@ -1178,7 +1263,7 @@ html.u-baseline-grid::after {
|
|
|
1178
1263
|
margin: 0;
|
|
1179
1264
|
min-inline-size: 0;
|
|
1180
1265
|
padding-block-end: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
1181
|
-
padding-inline: var(--bf-
|
|
1266
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
1182
1267
|
padding-block-start: var(--bf-panel-padding-block);
|
|
1183
1268
|
}
|
|
1184
1269
|
|
|
@@ -1205,7 +1290,7 @@ html.u-baseline-grid::after {
|
|
|
1205
1290
|
min-inline-size: 0;
|
|
1206
1291
|
margin-bottom: calc(0rem + mod(calc(var(--bf-baseline) - mod(calc(var(--bf-body-line-height, 1.5rem) + (var(--bf-input-block-padding) * 2)), var(--bf-baseline))), var(--bf-baseline)));
|
|
1207
1292
|
padding-block: max(0rem, calc(var(--bf-input-block-padding) - var(--bf-border-width)));
|
|
1208
|
-
padding-inline: var(--bf-
|
|
1293
|
+
padding-inline: var(--bf-component-inline-inset-field);
|
|
1209
1294
|
}
|
|
1210
1295
|
|
|
1211
1296
|
:where(.bf-theme) :where(input[type='color'].bf-color-input) {
|
|
@@ -1224,8 +1309,8 @@ html.u-baseline-grid::after {
|
|
|
1224
1309
|
|
|
1225
1310
|
:where(.bf-theme) :where(.bf-input, input[type='text'], input[type='number'], input[type='search'], input[type='password'], input[type='email'], input[type='url'], textarea, select):focus-visible {
|
|
1226
1311
|
background-color: var(--bf-color-background-active);
|
|
1227
|
-
outline:
|
|
1228
|
-
outline-offset:
|
|
1312
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
1313
|
+
outline-offset: 0.125rem;
|
|
1229
1314
|
}
|
|
1230
1315
|
|
|
1231
1316
|
:where(.bf-theme) :where(.bf-input, input[type='text'], input[type='number'], input[type='search'], input[type='password'], input[type='email'], input[type='url'], textarea, select):disabled {
|
|
@@ -1278,7 +1363,7 @@ html.u-baseline-grid::after {
|
|
|
1278
1363
|
margin-inline-end: var(--bf-field-gap);
|
|
1279
1364
|
min-block-size: var(--bf-control-box-size-compact);
|
|
1280
1365
|
padding-block: max(0rem, calc(var(--bf-control-block-padding-compact) - var(--bf-border-width)));
|
|
1281
|
-
padding-inline: var(--bf-control-inline-padding-action);
|
|
1366
|
+
padding-inline: var(--bf-control-inline-padding-action-bordered);
|
|
1282
1367
|
}
|
|
1283
1368
|
|
|
1284
1369
|
:where(.bf-theme) :where(input[type='file'])::file-selector-button:hover {
|
|
@@ -1287,16 +1372,31 @@ html.u-baseline-grid::after {
|
|
|
1287
1372
|
|
|
1288
1373
|
:where(.bf-theme) :where(select) {
|
|
1289
1374
|
background-image: var(--bf-ui-icon-chevron-down);
|
|
1290
|
-
background-position: right var(--bf-
|
|
1375
|
+
background-position: right var(--bf-component-inline-inset-field) center;
|
|
1291
1376
|
background-repeat: no-repeat;
|
|
1292
1377
|
background-size: 1rem 1rem;
|
|
1293
|
-
|
|
1378
|
+
overflow: hidden;
|
|
1379
|
+
padding-inline-end: calc(var(--bf-component-inline-inset-field) * 2.5);
|
|
1380
|
+
text-overflow: ellipsis;
|
|
1381
|
+
white-space: nowrap;
|
|
1294
1382
|
}
|
|
1295
1383
|
|
|
1296
1384
|
:where(.bf-theme) :where(input[type='number'], .bf-slider-input) {
|
|
1297
1385
|
font-variant-numeric: tabular-nums;
|
|
1298
1386
|
}
|
|
1299
1387
|
|
|
1388
|
+
/* Number fields retain their native input semantics and keyboard stepping,
|
|
1389
|
+
while one field-owned background paints the compact pair. Sharing select's
|
|
1390
|
+
1rem canvas and end position avoids a second browser-reserved spin slot. */
|
|
1391
|
+
:where(.bf-theme) :where(input[type='number']) {
|
|
1392
|
+
appearance: textfield;
|
|
1393
|
+
background-image: var(--bf-ui-icon-number-stepper);
|
|
1394
|
+
background-position: right var(--bf-component-inline-inset-field) center;
|
|
1395
|
+
background-repeat: no-repeat;
|
|
1396
|
+
background-size: 1rem 1rem;
|
|
1397
|
+
padding-inline-end: calc(var(--bf-component-inline-inset-field) * 2.5);
|
|
1398
|
+
}
|
|
1399
|
+
|
|
1300
1400
|
:where(.bf-theme) :where(.bf-slider-input) {
|
|
1301
1401
|
flex: 0 1 5rem;
|
|
1302
1402
|
inline-size: min(100%, 5rem);
|
|
@@ -1308,12 +1408,14 @@ html.u-baseline-grid::after {
|
|
|
1308
1408
|
|
|
1309
1409
|
:where(.bf-theme) :where(input[type='number'])::-webkit-inner-spin-button,
|
|
1310
1410
|
:where(.bf-theme) :where(input[type='number'])::-webkit-outer-spin-button {
|
|
1411
|
+
appearance: none;
|
|
1311
1412
|
margin: 0;
|
|
1312
1413
|
}
|
|
1313
1414
|
|
|
1314
1415
|
:where(.bf-theme) :where(.bf-checkbox, .bf-radio) {
|
|
1416
|
+
display: grid;
|
|
1315
1417
|
margin: 0;
|
|
1316
|
-
|
|
1418
|
+
padding-inline-start: var(--bf-leading-mark-group-inset);
|
|
1317
1419
|
position: relative;
|
|
1318
1420
|
}
|
|
1319
1421
|
|
|
@@ -1334,12 +1436,11 @@ html.u-baseline-grid::after {
|
|
|
1334
1436
|
font-weight: var(--bf-body-font-weight, 400);
|
|
1335
1437
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
1336
1438
|
color: var(--bf-color-text-default);
|
|
1439
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
1337
1440
|
cursor: pointer;
|
|
1338
1441
|
display: block;
|
|
1339
|
-
margin
|
|
1340
|
-
|
|
1341
|
-
padding-block-end: var(--bf-body-nudge-end);
|
|
1342
|
-
padding-block-start: var(--bf-body-nudge-start, 0.375rem);
|
|
1442
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
1443
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
1343
1444
|
padding-inline-start: var(--bf-tick-label-offset);
|
|
1344
1445
|
position: relative;
|
|
1345
1446
|
}
|
|
@@ -1370,7 +1471,7 @@ html.u-baseline-grid::after {
|
|
|
1370
1471
|
border-left: calc(var(--bf-border-width) * 2) solid var(--bf-color-background-default);
|
|
1371
1472
|
inline-size: calc(var(--bf-control-visual-size) * 0.6);
|
|
1372
1473
|
inset-inline-start: calc(var(--bf-control-visual-size) * 0.2);
|
|
1373
|
-
inset-block-start: calc(var(--bf-tick-box-offset) + (var(--bf-control-visual-size) * 0.18));
|
|
1474
|
+
inset-block-start: calc(var(--bf-tick-box-offset) + (var(--bf-control-visual-size) * 0.18) + (var(--bf-border-width) * 2));
|
|
1374
1475
|
opacity: 0;
|
|
1375
1476
|
transform: rotate(-45deg);
|
|
1376
1477
|
}
|
|
@@ -1408,20 +1509,19 @@ html.u-baseline-grid::after {
|
|
|
1408
1509
|
}
|
|
1409
1510
|
|
|
1410
1511
|
:where(.bf-theme) :where(.bf-checkbox-input:focus-visible + .bf-checkbox-label)::before {
|
|
1411
|
-
outline:
|
|
1412
|
-
outline-offset:
|
|
1512
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
1513
|
+
outline-offset: 0.125rem;
|
|
1413
1514
|
}
|
|
1414
1515
|
|
|
1415
1516
|
:where(.bf-theme) :where(.bf-radio-input:focus-visible + .bf-radio-label)::before {
|
|
1416
|
-
outline:
|
|
1417
|
-
outline-offset:
|
|
1517
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
1518
|
+
outline-offset: 0.125rem;
|
|
1418
1519
|
}
|
|
1419
1520
|
|
|
1420
1521
|
:where(.bf-theme) :where(.bf-switch) {
|
|
1421
1522
|
align-items: flex-start;
|
|
1422
1523
|
display: inline-flex;
|
|
1423
1524
|
gap: var(--bf-field-gap);
|
|
1424
|
-
min-block-size: var(--bf-switch-row-block-size);
|
|
1425
1525
|
position: relative;
|
|
1426
1526
|
}
|
|
1427
1527
|
|
|
@@ -1470,8 +1570,8 @@ html.u-baseline-grid::after {
|
|
|
1470
1570
|
}
|
|
1471
1571
|
|
|
1472
1572
|
:where(.bf-theme) :where(.bf-switch-input:focus-visible + .bf-switch-slider) {
|
|
1473
|
-
outline:
|
|
1474
|
-
outline-offset:
|
|
1573
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
1574
|
+
outline-offset: 0.125rem;
|
|
1475
1575
|
}
|
|
1476
1576
|
|
|
1477
1577
|
:where(.bf-theme) :where(.bf-switch-input:disabled + .bf-switch-slider) {
|
|
@@ -1485,11 +1585,11 @@ html.u-baseline-grid::after {
|
|
|
1485
1585
|
font-weight: var(--bf-body-font-weight, 400);
|
|
1486
1586
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
1487
1587
|
color: var(--bf-color-text-default);
|
|
1588
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
1488
1589
|
cursor: pointer;
|
|
1489
1590
|
display: inline-block;
|
|
1490
|
-
margin: 0 0 var(--bf-
|
|
1491
|
-
padding-block
|
|
1492
|
-
padding-block-start: var(--bf-body-nudge-start, 0.375rem);
|
|
1591
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
1592
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
1493
1593
|
}
|
|
1494
1594
|
|
|
1495
1595
|
:where(.bf-theme) :where(.bf-validation-message) {
|
|
@@ -1498,11 +1598,12 @@ html.u-baseline-grid::after {
|
|
|
1498
1598
|
font-style: var(--bf-body-font-style, normal);
|
|
1499
1599
|
font-weight: var(--bf-body-font-weight, 400);
|
|
1500
1600
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
1601
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
1501
1602
|
color: var(--bf-color-text-muted);
|
|
1502
|
-
margin: 0 0 var(--bf-
|
|
1503
|
-
|
|
1504
|
-
padding-block
|
|
1505
|
-
padding-inline-start:
|
|
1603
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
1604
|
+
margin-inline-start: var(--bf-leading-mark-group-inset);
|
|
1605
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
1606
|
+
padding-inline-start: var(--bf-leading-mark-offset);
|
|
1506
1607
|
position: relative;
|
|
1507
1608
|
}
|
|
1508
1609
|
|
|
@@ -1637,7 +1738,7 @@ html.u-baseline-grid::after {
|
|
|
1637
1738
|
border: var(--bf-border-width) solid var(--bf-color-border-high-contrast);
|
|
1638
1739
|
block-size: var(--bf-control-visual-size);
|
|
1639
1740
|
border-radius: 50%;
|
|
1640
|
-
box-shadow: 0 0 calc(var(--bf-control-visual-size) * 0.25)
|
|
1741
|
+
box-shadow: 0 0 calc(var(--bf-control-visual-size) * 0.25) 0.0625rem rgba(0, 0, 0, 0.2);
|
|
1641
1742
|
inline-size: var(--bf-control-visual-size);
|
|
1642
1743
|
margin-top: calc((var(--bf-slider-track-size) - var(--bf-control-visual-size)) / 2);
|
|
1643
1744
|
}
|
|
@@ -1663,7 +1764,7 @@ html.u-baseline-grid::after {
|
|
|
1663
1764
|
border: var(--bf-border-width) solid var(--bf-color-border-high-contrast);
|
|
1664
1765
|
block-size: var(--bf-control-visual-size);
|
|
1665
1766
|
border-radius: 50%;
|
|
1666
|
-
box-shadow: 0 0 calc(var(--bf-control-visual-size) * 0.25)
|
|
1767
|
+
box-shadow: 0 0 calc(var(--bf-control-visual-size) * 0.25) 0.0625rem rgba(0, 0, 0, 0.2);
|
|
1667
1768
|
inline-size: var(--bf-control-visual-size);
|
|
1668
1769
|
}
|
|
1669
1770
|
|
|
@@ -1762,9 +1863,9 @@ html.u-baseline-grid::after {
|
|
|
1762
1863
|
color: var(--bf-color-text-default);
|
|
1763
1864
|
cursor: pointer;
|
|
1764
1865
|
display: inline-block;
|
|
1765
|
-
margin-bottom:
|
|
1766
|
-
padding-block:
|
|
1767
|
-
padding-inline: var(--bf-control-inline-padding-action);
|
|
1866
|
+
margin-bottom: var(--bf-single-line-row-margin-block-end);
|
|
1867
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
1868
|
+
padding-inline: var(--bf-control-inline-padding-action-bordered);
|
|
1768
1869
|
text-align: center;
|
|
1769
1870
|
text-decoration: none;
|
|
1770
1871
|
}
|
|
@@ -1782,6 +1883,13 @@ html.u-baseline-grid::after {
|
|
|
1782
1883
|
background-color: var(--bf-color-background-hover);
|
|
1783
1884
|
}
|
|
1784
1885
|
|
|
1886
|
+
/* Anchor buttons are controls, not prose links. Qualifying the element and
|
|
1887
|
+
* its interaction states prevents the generic anchor underline from leaking
|
|
1888
|
+
* through while leaving the explicit is-link variant unchanged. */
|
|
1889
|
+
:where(.bf-theme) :where(a.bf-button:not(.is-link):is(:hover, :active)) {
|
|
1890
|
+
text-decoration: none;
|
|
1891
|
+
}
|
|
1892
|
+
|
|
1785
1893
|
:where(.bf-theme) :where(.bf-button:not(.is-base):is(:active, [aria-pressed='true'])) {
|
|
1786
1894
|
background-color: var(--bf-color-background-active);
|
|
1787
1895
|
}
|
|
@@ -1791,8 +1899,8 @@ html.u-baseline-grid::after {
|
|
|
1791
1899
|
}
|
|
1792
1900
|
|
|
1793
1901
|
:where(.bf-theme) :where(.bf-button, .bf-button.is-base):focus-visible {
|
|
1794
|
-
outline:
|
|
1795
|
-
outline-offset:
|
|
1902
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
1903
|
+
outline-offset: 0.125rem;
|
|
1796
1904
|
}
|
|
1797
1905
|
|
|
1798
1906
|
/* ------------------------------------------------------------------ */
|
|
@@ -1864,7 +1972,7 @@ html.u-baseline-grid::after {
|
|
|
1864
1972
|
background-color: transparent;
|
|
1865
1973
|
color: var(--bf-color-link-default);
|
|
1866
1974
|
text-decoration: underline;
|
|
1867
|
-
text-decoration-thickness:
|
|
1975
|
+
text-decoration-thickness: 0.0625rem;
|
|
1868
1976
|
text-underline-offset: 0.075em;
|
|
1869
1977
|
}
|
|
1870
1978
|
|
|
@@ -1891,6 +1999,19 @@ html.u-baseline-grid::after {
|
|
|
1891
1999
|
justify-content: center;
|
|
1892
2000
|
}
|
|
1893
2001
|
|
|
2002
|
+
/* An icon-only flex button has no text line box to preserve the occupied
|
|
2003
|
+
* control rhythm. A zero-width metric strut restores the active body line
|
|
2004
|
+
* without imposing a target block size or changing icon/label spacing. */
|
|
2005
|
+
:where(.bf-theme) :where(.bf-button.is-icon:not(:has(.bf-button-label))) {
|
|
2006
|
+
column-gap: 0;
|
|
2007
|
+
}
|
|
2008
|
+
|
|
2009
|
+
:where(.bf-theme) :where(.bf-button.is-icon:not(:has(.bf-button-label)))::before {
|
|
2010
|
+
block-size: var(--bf-body-line-height);
|
|
2011
|
+
content: "";
|
|
2012
|
+
inline-size: 0;
|
|
2013
|
+
}
|
|
2014
|
+
|
|
1894
2015
|
:where(.bf-theme) :where(.bf-button-label) {
|
|
1895
2016
|
min-inline-size: 0;
|
|
1896
2017
|
}
|
|
@@ -2051,7 +2172,7 @@ html.u-baseline-grid::after {
|
|
|
2051
2172
|
border-inline-start: var(--bf-bar-thickness) solid var(--bf-notice-border);
|
|
2052
2173
|
color: var(--bf-color-text-default);
|
|
2053
2174
|
display: flow-root;
|
|
2054
|
-
margin
|
|
2175
|
+
margin: 0;
|
|
2055
2176
|
max-inline-size: 100%;
|
|
2056
2177
|
padding-block: var(--bf-space-2);
|
|
2057
2178
|
padding-inline: var(--bf-space-2);
|
|
@@ -2097,16 +2218,15 @@ html.u-baseline-grid::after {
|
|
|
2097
2218
|
/* ------------------------------------------------------------------ */
|
|
2098
2219
|
/* Static content ports — Vanilla data spotlight and divided section. */
|
|
2099
2220
|
/* Their children retain role-owned rhythm; these layout */
|
|
2100
|
-
/* wrappers add only structural columns, rules, and
|
|
2221
|
+
/* wrappers add only structural columns, rules, and internal gaps. */
|
|
2101
2222
|
/* ------------------------------------------------------------------ */
|
|
2102
2223
|
|
|
2103
2224
|
/* Data spotlight: Vanilla's equal-height wrap becomes an intrinsic grid.
|
|
2104
2225
|
Each item begins with a public highlighted rule using the shared emphasis
|
|
2105
|
-
thickness.
|
|
2106
|
-
shallow inter-row rhythm when the pattern narrows. */
|
|
2226
|
+
thickness. The items container owns every inter-row gap. */
|
|
2107
2227
|
:where(.bf-theme) :where(.bf-data-spotlight) {
|
|
2108
2228
|
container-type: inline-size;
|
|
2109
|
-
margin
|
|
2229
|
+
margin: 0;
|
|
2110
2230
|
min-inline-size: 0;
|
|
2111
2231
|
}
|
|
2112
2232
|
|
|
@@ -2119,15 +2239,13 @@ html.u-baseline-grid::after {
|
|
|
2119
2239
|
display: grid;
|
|
2120
2240
|
grid-template-columns: minmax(0, 1fr);
|
|
2121
2241
|
min-inline-size: 0;
|
|
2242
|
+
row-gap: var(--bf-section-space-shallow);
|
|
2122
2243
|
}
|
|
2123
2244
|
|
|
2124
2245
|
:where(.bf-theme) :where(.bf-data-spotlight-item) {
|
|
2125
2246
|
min-inline-size: 0;
|
|
2126
2247
|
overflow-wrap: anywhere;
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
:where(.bf-theme) :where(.bf-data-spotlight-item:not(:last-child)) {
|
|
2130
|
-
padding-block-end: var(--bf-section-space-shallow);
|
|
2248
|
+
padding: 0;
|
|
2131
2249
|
}
|
|
2132
2250
|
|
|
2133
2251
|
:where(.bf-theme) :where(.bf-data-spotlight-stat) {
|
|
@@ -2180,6 +2298,14 @@ html.u-baseline-grid::after {
|
|
|
2180
2298
|
@container (width >= 38.75rem) {
|
|
2181
2299
|
:where(.bf-theme) :where(.bf-data-spotlight-items) {
|
|
2182
2300
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
2301
|
+
row-gap: var(--bf-space-1);
|
|
2302
|
+
}
|
|
2303
|
+
|
|
2304
|
+
:where(.bf-theme) :where(.bf-data-spotlight-items)::after {
|
|
2305
|
+
block-size: calc(var(--bf-section-space-shallow) - (var(--bf-space-1) * 2));
|
|
2306
|
+
content: "";
|
|
2307
|
+
grid-column: 1 / -1;
|
|
2308
|
+
grid-row: 6;
|
|
2183
2309
|
}
|
|
2184
2310
|
|
|
2185
2311
|
:where(.bf-theme) :where(.bf-data-spotlight-header, .bf-data-spotlight-item) {
|
|
@@ -2188,10 +2314,6 @@ html.u-baseline-grid::after {
|
|
|
2188
2314
|
grid-template-rows: subgrid;
|
|
2189
2315
|
}
|
|
2190
2316
|
|
|
2191
|
-
:where(.bf-theme) :where(.bf-data-spotlight-item) {
|
|
2192
|
-
padding-block-end: 0;
|
|
2193
|
-
}
|
|
2194
|
-
|
|
2195
2317
|
:where(.bf-theme) :where(.bf-data-spotlight.is-three-blocks) :where(.bf-data-spotlight-header) {
|
|
2196
2318
|
block-size: 0;
|
|
2197
2319
|
overflow: visible;
|
|
@@ -2199,7 +2321,13 @@ html.u-baseline-grid::after {
|
|
|
2199
2321
|
|
|
2200
2322
|
:where(.bf-theme) :where(.bf-data-spotlight.is-three-blocks) :where(.bf-data-spotlight-item:first-of-type),
|
|
2201
2323
|
:where(.bf-theme) :where(.bf-data-spotlight.is-four-blocks) :where(.bf-data-spotlight-item:nth-child(-n + 2)) {
|
|
2202
|
-
|
|
2324
|
+
grid-row: span 5;
|
|
2325
|
+
}
|
|
2326
|
+
|
|
2327
|
+
:where(.bf-theme) :where(.bf-data-spotlight.is-two-blocks) :where(.bf-data-spotlight-item:nth-of-type(2)),
|
|
2328
|
+
:where(.bf-theme) :where(.bf-data-spotlight.is-three-blocks) :where(.bf-data-spotlight-item:nth-of-type(n + 2)),
|
|
2329
|
+
:where(.bf-theme) :where(.bf-data-spotlight.is-four-blocks) :where(.bf-data-spotlight-item:nth-of-type(n + 3)) {
|
|
2330
|
+
grid-row: 7 / span 5;
|
|
2203
2331
|
}
|
|
2204
2332
|
}
|
|
2205
2333
|
|
|
@@ -2212,15 +2340,18 @@ html.u-baseline-grid::after {
|
|
|
2212
2340
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
2213
2341
|
}
|
|
2214
2342
|
|
|
2343
|
+
:where(.bf-theme) :where(.bf-data-spotlight-items)::after {
|
|
2344
|
+
content: none;
|
|
2345
|
+
}
|
|
2346
|
+
|
|
2215
2347
|
:where(.bf-theme) :where(.bf-data-spotlight.is-two-blocks) :where(.bf-data-spotlight-header) {
|
|
2216
2348
|
block-size: 0;
|
|
2217
2349
|
grid-column: span 2;
|
|
2218
2350
|
overflow: visible;
|
|
2219
2351
|
}
|
|
2220
2352
|
|
|
2221
|
-
:where(.bf-theme) :where(.bf-data-spotlight
|
|
2222
|
-
|
|
2223
|
-
padding-block-end: 0;
|
|
2353
|
+
:where(.bf-theme) :where(.bf-data-spotlight-item) {
|
|
2354
|
+
grid-row: span 5;
|
|
2224
2355
|
}
|
|
2225
2356
|
}
|
|
2226
2357
|
|
|
@@ -2229,7 +2360,7 @@ html.u-baseline-grid::after {
|
|
|
2229
2360
|
headings, copy, and content items keep their own metric-derived rhythm. */
|
|
2230
2361
|
:where(.bf-theme) :where(.bf-divided-section) {
|
|
2231
2362
|
container-type: inline-size;
|
|
2232
|
-
margin
|
|
2363
|
+
margin: 0;
|
|
2233
2364
|
min-inline-size: 0;
|
|
2234
2365
|
}
|
|
2235
2366
|
|
|
@@ -2248,37 +2379,41 @@ html.u-baseline-grid::after {
|
|
|
2248
2379
|
}
|
|
2249
2380
|
|
|
2250
2381
|
:where(.bf-theme) :where(.bf-divided-section-list) {
|
|
2251
|
-
|
|
2252
|
-
|
|
2382
|
+
--bf-divided-section-rule-to-content: calc(0.5rem - var(--bf-border-width));
|
|
2383
|
+
--bf-stack-space: 1.5rem;
|
|
2253
2384
|
list-style: none;
|
|
2254
2385
|
margin: 0;
|
|
2255
2386
|
padding: 0;
|
|
2256
2387
|
}
|
|
2257
2388
|
|
|
2389
|
+
/* Preserve the pre-0.1.5 list markup; canonical composition also carries
|
|
2390
|
+
bf-stack so the container remains the explicit owner of item spacing. */
|
|
2391
|
+
:where(.bf-theme) :where(.bf-divided-section-list:not(.bf-stack)) {
|
|
2392
|
+
align-content: start;
|
|
2393
|
+
display: grid;
|
|
2394
|
+
gap: var(--bf-stack-space);
|
|
2395
|
+
}
|
|
2396
|
+
|
|
2258
2397
|
:where(.bf-theme) :where(.bf-divided-section-item) {
|
|
2259
2398
|
align-content: start;
|
|
2260
2399
|
display: grid;
|
|
2400
|
+
margin: 0;
|
|
2261
2401
|
min-inline-size: 0;
|
|
2262
2402
|
overflow-wrap: anywhere;
|
|
2403
|
+
padding: 0;
|
|
2404
|
+
position: relative;
|
|
2263
2405
|
}
|
|
2264
2406
|
|
|
2265
|
-
:where(.bf-theme) :where(.bf-divided-section-item
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
|
|
2269
|
-
:
|
|
2270
|
-
|
|
2271
|
-
|
|
2272
|
-
}
|
|
2273
|
-
|
|
2274
|
-
@container (width >= 38.75rem) {
|
|
2275
|
-
:where(.bf-theme) :where(.bf-divided-section.is-split-medium) :where(.bf-divided-section-layout) {
|
|
2276
|
-
column-gap: var(--bf-grid-gap-inline);
|
|
2277
|
-
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
2278
|
-
}
|
|
2407
|
+
:where(.bf-theme) :where(.bf-divided-section-item + .bf-divided-section-item)::before {
|
|
2408
|
+
background: var(--bf-color-border-low-contrast);
|
|
2409
|
+
block-size: var(--bf-border-width);
|
|
2410
|
+
content: "";
|
|
2411
|
+
inset-block-start: calc((var(--bf-divided-section-rule-to-content) + var(--bf-border-width)) * -1);
|
|
2412
|
+
inset-inline: 0;
|
|
2413
|
+
position: absolute;
|
|
2279
2414
|
}
|
|
2280
2415
|
|
|
2281
|
-
@container (width >=
|
|
2416
|
+
@container (width >= 45rem) {
|
|
2282
2417
|
:where(.bf-theme) :where(.bf-divided-section) :where(.bf-divided-section-layout) {
|
|
2283
2418
|
column-gap: var(--bf-grid-gap-inline);
|
|
2284
2419
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
@@ -2363,12 +2498,13 @@ html.u-baseline-grid::after {
|
|
|
2363
2498
|
border: var(--bf-border-width) solid var(--bf-color-border-default);
|
|
2364
2499
|
border-inline-start: var(--bf-bar-thickness) solid var(--bf-notification-accent);
|
|
2365
2500
|
color: var(--bf-color-text-default);
|
|
2366
|
-
margin-block: 0
|
|
2501
|
+
margin-block: 0;
|
|
2367
2502
|
max-inline-size: 100%;
|
|
2368
2503
|
min-inline-size: 0;
|
|
2369
2504
|
overflow-wrap: anywhere;
|
|
2370
|
-
padding-block: calc(var(--bf-space-
|
|
2371
|
-
padding-
|
|
2505
|
+
padding-block-end: max(0rem, calc(var(--bf-space-half) - var(--bf-border-width)));
|
|
2506
|
+
padding-block-start: 0;
|
|
2507
|
+
padding-inline: calc(var(--bf-icon-label-inline-offset) - var(--bf-bar-thickness)) var(--bf-space-1);
|
|
2372
2508
|
position: relative;
|
|
2373
2509
|
}
|
|
2374
2510
|
|
|
@@ -2391,14 +2527,14 @@ html.u-baseline-grid::after {
|
|
|
2391
2527
|
:where(.bf-theme) :where(.bf-notification.is-borderless) {
|
|
2392
2528
|
border: 0;
|
|
2393
2529
|
padding-block: 0;
|
|
2394
|
-
padding-inline: calc(var(--bf-
|
|
2530
|
+
padding-inline: calc(var(--bf-icon-size-default) + var(--bf-space-1)) 0;
|
|
2395
2531
|
}
|
|
2396
2532
|
|
|
2397
2533
|
:where(.bf-theme) :where(.bf-notification-icon) {
|
|
2398
2534
|
background-color: var(--bf-notification-accent);
|
|
2399
2535
|
background-image: none;
|
|
2400
|
-
inset-block-start: calc(
|
|
2401
|
-
inset-inline-start: var(--bf-space-
|
|
2536
|
+
inset-block-start: calc(((var(--bf-h6-line-height) - var(--bf-icon-size-default)) / 2) + var(--bf-h6-nudge-start) - var(--bf-border-width));
|
|
2537
|
+
inset-inline-start: calc(var(--bf-icon-label-inline-offset) - var(--bf-bar-thickness) - var(--bf-icon-size-default) - var(--bf-space-1));
|
|
2402
2538
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zm0 1.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13zm-.75 5.25h1.5v5h-1.5v-5zM8 3.5a1 1 0 1 1 0 2 1 1 0 0 1 0-2z'/%3E%3C/svg%3E");
|
|
2403
2539
|
mask-position: center;
|
|
2404
2540
|
mask-repeat: no-repeat;
|
|
@@ -2419,22 +2555,52 @@ html.u-baseline-grid::after {
|
|
|
2419
2555
|
}
|
|
2420
2556
|
|
|
2421
2557
|
:where(.bf-theme) :where(.bf-notification.is-borderless > .bf-notification-icon) {
|
|
2422
|
-
inset-block-start: calc(((var(--bf-
|
|
2558
|
+
inset-block-start: calc(((var(--bf-h6-line-height) - var(--bf-icon-size-default)) / 2) + var(--bf-h6-nudge-start));
|
|
2423
2559
|
inset-inline-start: 0;
|
|
2424
2560
|
}
|
|
2425
2561
|
|
|
2562
|
+
:where(.bf-theme) :where(.bf-notification.is-inline > .bf-notification-icon) {
|
|
2563
|
+
inset-block-start: calc(((var(--bf-body-line-height) - var(--bf-icon-size-default)) / 2) + var(--bf-body-nudge-start) - var(--bf-border-width));
|
|
2564
|
+
}
|
|
2565
|
+
|
|
2426
2566
|
:where(.bf-theme) :where(.bf-notification-content, .bf-notification-meta) {
|
|
2427
2567
|
max-inline-size: 100%;
|
|
2428
2568
|
min-inline-size: 0;
|
|
2429
2569
|
}
|
|
2430
2570
|
|
|
2431
2571
|
:where(.bf-theme) :where(.bf-notification-content) {
|
|
2432
|
-
|
|
2433
|
-
|
|
2434
|
-
padding-
|
|
2572
|
+
/* Neutralise the shell's top border so the first metric role starts on-grid. */
|
|
2573
|
+
margin-block: calc(var(--bf-border-width) * -1) 0;
|
|
2574
|
+
padding-block-start: 0;
|
|
2575
|
+
padding-inline-end: calc(var(--bf-icon-size-default) + var(--bf-space-1));
|
|
2576
|
+
}
|
|
2577
|
+
|
|
2578
|
+
:where(.bf-theme) :where(.bf-notification.is-borderless .bf-notification-content) {
|
|
2579
|
+
--bf-stack-space: 0rem;
|
|
2580
|
+
margin-block-start: 0;
|
|
2435
2581
|
}
|
|
2436
2582
|
|
|
2437
|
-
|
|
2583
|
+
/* Metadata-bearing notifications use a full baseline between title and copy,
|
|
2584
|
+
and pair it with the full end inset. This keeps both the metadata boundary
|
|
2585
|
+
and the complete shell on-grid; simpler messages retain compact rhythm. */
|
|
2586
|
+
:where(.bf-theme) :where(.bf-notification:has(> .bf-notification-meta)) {
|
|
2587
|
+
padding-block-end: calc(var(--bf-space-1) - var(--bf-border-width));
|
|
2588
|
+
}
|
|
2589
|
+
|
|
2590
|
+
:where(.bf-theme) :where(.bf-notification.is-inline) {
|
|
2591
|
+
padding-block-end: calc(var(--bf-space-1) - var(--bf-border-width));
|
|
2592
|
+
}
|
|
2593
|
+
|
|
2594
|
+
/* Return the cancelled H6/body metric edges to the shell boundary. The
|
|
2595
|
+
* Documentation tier deliberately gives those roles different metrics, so
|
|
2596
|
+
* deriving this inset keeps every bordered notification on-grid without
|
|
2597
|
+
* reopening the visible title/copy gap. Keep this after the shell variants so
|
|
2598
|
+
* the metric relationship owns their final compensation. */
|
|
2599
|
+
:where(.bf-theme) :where(.bf-notification:has(> .bf-notification-content.is-metric-flush):not(.is-borderless)) {
|
|
2600
|
+
padding-block-end: calc(var(--bf-space-1) - var(--bf-border-width) + var(--bf-baseline) - var(--bf-h6-nudge-start) - var(--bf-body-margin-bottom));
|
|
2601
|
+
}
|
|
2602
|
+
|
|
2603
|
+
:where(.bf-theme) :where(.bf-notification-message, .bf-notification-timestamp) {
|
|
2438
2604
|
font-family: var(--bf-body-font-family);
|
|
2439
2605
|
font-size: var(--bf-body-font-size);
|
|
2440
2606
|
font-style: var(--bf-body-font-style);
|
|
@@ -2442,20 +2608,11 @@ html.u-baseline-grid::after {
|
|
|
2442
2608
|
max-inline-size: 100%;
|
|
2443
2609
|
}
|
|
2444
2610
|
|
|
2445
|
-
:where(.bf-theme) :where(.bf-notification-title) {
|
|
2446
|
-
font-weight: 600;
|
|
2447
|
-
margin-block: 0;
|
|
2448
|
-
padding-block: 0;
|
|
2449
|
-
}
|
|
2450
|
-
|
|
2451
2611
|
:where(.bf-theme) :where(.bf-notification-message) {
|
|
2452
2612
|
font-weight: var(--bf-body-font-weight);
|
|
2453
|
-
margin-block: 0;
|
|
2454
|
-
padding-block: 0;
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
:where(.bf-theme) :where(.bf-notification.is-inline .bf-notification-title, .bf-notification.is-inline .bf-notification-message) {
|
|
2458
|
-
display: inline;
|
|
2613
|
+
margin-block: 0 var(--bf-body-margin-bottom);
|
|
2614
|
+
padding-block-end: 0;
|
|
2615
|
+
padding-block-start: var(--bf-body-nudge-start);
|
|
2459
2616
|
}
|
|
2460
2617
|
|
|
2461
2618
|
:where(.bf-theme) :where(.bf-notification-close) {
|
|
@@ -2465,8 +2622,8 @@ html.u-baseline-grid::after {
|
|
|
2465
2622
|
margin-block-end: 0;
|
|
2466
2623
|
padding: 0;
|
|
2467
2624
|
position: absolute;
|
|
2468
|
-
inset-block-start:
|
|
2469
|
-
inset-inline-end:
|
|
2625
|
+
inset-block-start: 0;
|
|
2626
|
+
inset-inline-end: 0;
|
|
2470
2627
|
}
|
|
2471
2628
|
|
|
2472
2629
|
:where(.bf-theme) :where(.bf-notification.is-borderless .bf-notification-close) {
|
|
@@ -2481,7 +2638,7 @@ html.u-baseline-grid::after {
|
|
|
2481
2638
|
flex-wrap: wrap;
|
|
2482
2639
|
gap: var(--bf-space-1) var(--bf-space-2);
|
|
2483
2640
|
justify-content: space-between;
|
|
2484
|
-
margin-block-end:
|
|
2641
|
+
margin-block-end: 0;
|
|
2485
2642
|
padding-block-start: calc(var(--bf-space-1) - var(--bf-border-width));
|
|
2486
2643
|
padding-inline-end: var(--bf-space-2);
|
|
2487
2644
|
}
|
|
@@ -2494,7 +2651,7 @@ html.u-baseline-grid::after {
|
|
|
2494
2651
|
:where(.bf-theme) :where(.bf-notification-timestamp) {
|
|
2495
2652
|
color: var(--bf-color-text-muted);
|
|
2496
2653
|
font-weight: var(--bf-body-font-weight);
|
|
2497
|
-
margin-block: 0
|
|
2654
|
+
margin-block: 0 var(--bf-body-margin-bottom);
|
|
2498
2655
|
padding-block: var(--bf-body-nudge-start) 0;
|
|
2499
2656
|
}
|
|
2500
2657
|
|
|
@@ -2509,7 +2666,7 @@ html.u-baseline-grid::after {
|
|
|
2509
2666
|
|
|
2510
2667
|
:where(.bf-theme) :where(.bf-notification-actions > .bf-button.is-link) {
|
|
2511
2668
|
flex: 0 0 auto;
|
|
2512
|
-
margin-block-end:
|
|
2669
|
+
margin-block-end: var(--bf-body-margin-bottom);
|
|
2513
2670
|
padding-block: var(--bf-body-nudge-start) 0;
|
|
2514
2671
|
}
|
|
2515
2672
|
|
|
@@ -2529,10 +2686,10 @@ html.u-baseline-grid::after {
|
|
|
2529
2686
|
cursor: inherit;
|
|
2530
2687
|
display: inline-block;
|
|
2531
2688
|
font: inherit;
|
|
2532
|
-
margin: -
|
|
2689
|
+
margin: -0.125rem calc(var(--bf-space-half) * -1);
|
|
2533
2690
|
max-inline-size: 100%;
|
|
2534
2691
|
overflow: hidden;
|
|
2535
|
-
padding:
|
|
2692
|
+
padding: 0.125rem var(--bf-space-half);
|
|
2536
2693
|
text-align: inherit;
|
|
2537
2694
|
text-decoration: inherit;
|
|
2538
2695
|
text-overflow: inherit;
|
|
@@ -2543,7 +2700,7 @@ html.u-baseline-grid::after {
|
|
|
2543
2700
|
:where(.bf-theme) :where(.bf-table.is-sortable th[aria-sort]:hover, .bf-table-sort-button:focus-visible) {
|
|
2544
2701
|
color: var(--bf-color-link-default);
|
|
2545
2702
|
text-decoration: underline;
|
|
2546
|
-
text-decoration-thickness:
|
|
2703
|
+
text-decoration-thickness: 0.0625rem;
|
|
2547
2704
|
text-underline-offset: 0.075em;
|
|
2548
2705
|
}
|
|
2549
2706
|
|
|
@@ -2552,11 +2709,11 @@ html.u-baseline-grid::after {
|
|
|
2552
2709
|
}
|
|
2553
2710
|
|
|
2554
2711
|
:where(.bf-theme) :where(.bf-table-sort-button:focus-visible) {
|
|
2555
|
-
outline:
|
|
2556
|
-
outline-offset: -
|
|
2712
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
2713
|
+
outline-offset: -0.125rem;
|
|
2557
2714
|
}
|
|
2558
2715
|
|
|
2559
|
-
:where(.bf-theme) :where(.bf-table.is-sortable th[aria-sort
|
|
2716
|
+
:where(.bf-theme) :where(.bf-table.is-sortable th[aria-sort])::after {
|
|
2560
2717
|
background-image: var(--bf-ui-icon-chevron-down);
|
|
2561
2718
|
background-position: center;
|
|
2562
2719
|
background-repeat: no-repeat;
|
|
@@ -2566,9 +2723,14 @@ html.u-baseline-grid::after {
|
|
|
2566
2723
|
display: inline-block;
|
|
2567
2724
|
inline-size: var(--bf-icon-size-default);
|
|
2568
2725
|
margin-inline-start: var(--bf-space-half);
|
|
2726
|
+
opacity: 0;
|
|
2569
2727
|
vertical-align: calc((1cap - var(--bf-icon-size-default)) / 2);
|
|
2570
2728
|
}
|
|
2571
2729
|
|
|
2730
|
+
:where(.bf-theme) :where(.bf-table.is-sortable th[aria-sort='ascending'], .bf-table.is-sortable th[aria-sort='descending'])::after {
|
|
2731
|
+
opacity: 1;
|
|
2732
|
+
}
|
|
2733
|
+
|
|
2572
2734
|
:where(.bf-theme) :where(.bf-table.is-sortable th[aria-sort='ascending'])::after {
|
|
2573
2735
|
transform: rotate(180deg);
|
|
2574
2736
|
}
|
|
@@ -2605,9 +2767,9 @@ html.u-baseline-grid::after {
|
|
|
2605
2767
|
}
|
|
2606
2768
|
|
|
2607
2769
|
:where(.bf-theme) :where(.bf-table-mobile-card-frame > .bf-table.is-mobile-card > thead) {
|
|
2608
|
-
block-size:
|
|
2770
|
+
block-size: 0.0625rem;
|
|
2609
2771
|
clip-path: inset(50%);
|
|
2610
|
-
inline-size:
|
|
2772
|
+
inline-size: 0.0625rem;
|
|
2611
2773
|
overflow: hidden;
|
|
2612
2774
|
position: absolute;
|
|
2613
2775
|
white-space: nowrap;
|
|
@@ -2678,7 +2840,7 @@ html.u-baseline-grid::after {
|
|
|
2678
2840
|
:where(.bf-theme) :where(.bf-logo-section) {
|
|
2679
2841
|
container-name: bf-logo-section;
|
|
2680
2842
|
container-type: inline-size;
|
|
2681
|
-
margin
|
|
2843
|
+
margin: 0;
|
|
2682
2844
|
min-inline-size: 0;
|
|
2683
2845
|
}
|
|
2684
2846
|
|
|
@@ -2712,8 +2874,8 @@ html.u-baseline-grid::after {
|
|
|
2712
2874
|
}
|
|
2713
2875
|
|
|
2714
2876
|
:where(.bf-theme) :where(.bf-logo-section-link:focus-visible) {
|
|
2715
|
-
outline:
|
|
2716
|
-
outline-offset:
|
|
2877
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
2878
|
+
outline-offset: 0.125rem;
|
|
2717
2879
|
}
|
|
2718
2880
|
|
|
2719
2881
|
:where(.bf-theme) :where(.bf-logo-section-logo) {
|
|
@@ -2740,7 +2902,7 @@ html.u-baseline-grid::after {
|
|
|
2740
2902
|
inline-size: 100%;
|
|
2741
2903
|
}
|
|
2742
2904
|
|
|
2743
|
-
/* Vanilla's small breakpoint is
|
|
2905
|
+
/* Vanilla's small breakpoint is 38.75rem. The items descendant, rather than the
|
|
2744
2906
|
query container itself, responds when its allocated space reaches it. */
|
|
2745
2907
|
@container bf-logo-section (width >= 38.75rem) {
|
|
2746
2908
|
:where(.bf-theme) :where(.bf-logo-section-items) {
|
|
@@ -2764,19 +2926,21 @@ html.u-baseline-grid::after {
|
|
|
2764
2926
|
|
|
2765
2927
|
/* ------------------------------------------------------------------ */
|
|
2766
2928
|
/* Media object — semantic media/content slots with a container-owned */
|
|
2767
|
-
/* structural collapse
|
|
2929
|
+
/* structural collapse. Content roles retain their metric boxes. */
|
|
2768
2930
|
/* ------------------------------------------------------------------ */
|
|
2769
2931
|
|
|
2770
2932
|
:where(.bf-theme) :where(.bf-media-object) {
|
|
2771
|
-
|
|
2933
|
+
container-name: bf-media-object;
|
|
2934
|
+
container-type: inline-size;
|
|
2935
|
+
margin: 0;
|
|
2772
2936
|
min-inline-size: 0;
|
|
2773
2937
|
}
|
|
2774
2938
|
|
|
2775
2939
|
:where(.bf-theme) :where(.bf-media-object-layout) {
|
|
2776
|
-
display: grid;
|
|
2777
2940
|
align-items: start;
|
|
2778
|
-
column-gap: var(--bf-
|
|
2779
|
-
|
|
2941
|
+
column-gap: var(--bf-grid-gap-inline);
|
|
2942
|
+
display: grid;
|
|
2943
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
2780
2944
|
min-inline-size: 0;
|
|
2781
2945
|
}
|
|
2782
2946
|
|
|
@@ -2788,6 +2952,10 @@ html.u-baseline-grid::after {
|
|
|
2788
2952
|
min-inline-size: 0;
|
|
2789
2953
|
}
|
|
2790
2954
|
|
|
2955
|
+
:where(.bf-theme) :where(.bf-media-object-media) {
|
|
2956
|
+
grid-column: 1 / span 2;
|
|
2957
|
+
}
|
|
2958
|
+
|
|
2791
2959
|
:where(.bf-theme) :where(.bf-media-object-media > :where(img, picture, svg, video)) {
|
|
2792
2960
|
block-size: 100%;
|
|
2793
2961
|
display: block;
|
|
@@ -2802,6 +2970,7 @@ html.u-baseline-grid::after {
|
|
|
2802
2970
|
}
|
|
2803
2971
|
|
|
2804
2972
|
:where(.bf-theme) :where(.bf-media-object-content) {
|
|
2973
|
+
grid-column: 3 / -1;
|
|
2805
2974
|
min-inline-size: 0;
|
|
2806
2975
|
overflow-wrap: anywhere;
|
|
2807
2976
|
}
|
|
@@ -2841,8 +3010,12 @@ html.u-baseline-grid::after {
|
|
|
2841
3010
|
}
|
|
2842
3011
|
|
|
2843
3012
|
:where(.bf-theme) :where(.bf-media-object-meta-list) {
|
|
3013
|
+
--bf-stack-space: var(--bf-space-1);
|
|
3014
|
+
align-content: start;
|
|
3015
|
+
display: grid;
|
|
3016
|
+
gap: var(--bf-stack-space);
|
|
2844
3017
|
list-style: none;
|
|
2845
|
-
margin:
|
|
3018
|
+
margin: 0;
|
|
2846
3019
|
padding: 0;
|
|
2847
3020
|
}
|
|
2848
3021
|
|
|
@@ -2855,22 +3028,22 @@ html.u-baseline-grid::after {
|
|
|
2855
3028
|
overflow-wrap: anywhere;
|
|
2856
3029
|
}
|
|
2857
3030
|
|
|
2858
|
-
:where(.bf-theme) :where(.bf-media-object-meta + .bf-media-object-meta) {
|
|
2859
|
-
margin-block-start: var(--bf-space-1);
|
|
2860
|
-
}
|
|
2861
|
-
|
|
2862
3031
|
:where(.bf-theme) :where(.bf-media-object-meta .bf-icon) {
|
|
2863
3032
|
margin-block-start: var(--bf-body-nudge-start);
|
|
2864
3033
|
}
|
|
2865
3034
|
|
|
2866
|
-
|
|
2867
|
-
|
|
2868
|
-
|
|
2869
|
-
}
|
|
3035
|
+
@container bf-media-object (width >= 38.75rem) {
|
|
3036
|
+
:where(.bf-theme) :where(.bf-media-object-layout) {
|
|
3037
|
+
grid-template-columns: repeat(8, minmax(0, 1fr));
|
|
3038
|
+
}
|
|
2870
3039
|
|
|
2871
|
-
:where(.bf-theme) :where(.bf-media-object
|
|
2872
|
-
|
|
2873
|
-
|
|
3040
|
+
:where(.bf-theme) :where(.bf-media-object-media) {
|
|
3041
|
+
grid-column: 1 / span 2;
|
|
3042
|
+
}
|
|
3043
|
+
|
|
3044
|
+
:where(.bf-theme) :where(.bf-media-object-content) {
|
|
3045
|
+
grid-column: 3 / -1;
|
|
3046
|
+
}
|
|
2874
3047
|
}
|
|
2875
3048
|
|
|
2876
3049
|
|
|
@@ -2881,20 +3054,13 @@ html.u-baseline-grid::after {
|
|
|
2881
3054
|
:where(.bf-theme) :where(.bf-linked-logo-section) {
|
|
2882
3055
|
container-name: bf-linked-logo-section;
|
|
2883
3056
|
container-type: inline-size;
|
|
2884
|
-
margin
|
|
3057
|
+
margin: 0;
|
|
2885
3058
|
min-inline-size: 0;
|
|
2886
3059
|
}
|
|
2887
3060
|
|
|
2888
|
-
:where(.bf-theme) :where(.bf-linked-logo-section.is-shallow) {
|
|
2889
|
-
margin-block-end: var(--bf-section-space-shallow);
|
|
2890
|
-
}
|
|
2891
|
-
|
|
2892
|
-
:where(.bf-theme) :where(.bf-linked-logo-section.is-deep) {
|
|
2893
|
-
margin-block-end: var(--bf-section-space-deep);
|
|
2894
|
-
}
|
|
2895
|
-
|
|
2896
3061
|
:where(.bf-theme) :where(.bf-linked-logo-section-layout) {
|
|
2897
3062
|
display: grid;
|
|
3063
|
+
gap: var(--bf-section-space-shallow);
|
|
2898
3064
|
grid-template-columns: minmax(0, 1fr);
|
|
2899
3065
|
min-inline-size: 0;
|
|
2900
3066
|
}
|
|
@@ -2927,7 +3093,7 @@ html.u-baseline-grid::after {
|
|
|
2927
3093
|
max-inline-size: none;
|
|
2928
3094
|
}
|
|
2929
3095
|
|
|
2930
|
-
:where(.bf-theme) :where(.bf-linked-logo-section-card) {
|
|
3096
|
+
:where(.bf-theme) :where(a.bf-linked-logo-section-card) {
|
|
2931
3097
|
align-content: start;
|
|
2932
3098
|
align-items: stretch;
|
|
2933
3099
|
color: inherit;
|
|
@@ -2939,7 +3105,7 @@ html.u-baseline-grid::after {
|
|
|
2939
3105
|
text-decoration: none;
|
|
2940
3106
|
}
|
|
2941
3107
|
|
|
2942
|
-
:where(.bf-theme) :where(.bf-linked-logo-section-card:hover) :where(.bf-linked-logo-section-card-copy) {
|
|
3108
|
+
:where(.bf-theme) :where(a.bf-linked-logo-section-card:hover) :where(.bf-linked-logo-section-card-copy) {
|
|
2943
3109
|
text-decoration: underline;
|
|
2944
3110
|
}
|
|
2945
3111
|
|
|
@@ -2958,7 +3124,7 @@ html.u-baseline-grid::after {
|
|
|
2958
3124
|
of baselines tall. Keep the visual ratio exact and put only the residual
|
|
2959
3125
|
rhythm compensation after the mark; the copy keeps its own semantic
|
|
2960
3126
|
spacing and the occupied card still lands on the tier grid. */
|
|
2961
|
-
@supports (margin-block-end: round(up,
|
|
3127
|
+
@supports (margin-block-end: round(up, 0.0625rem, 0.0625rem)) {
|
|
2962
3128
|
:where(.bf-theme) :where(.bf-linked-logo-section-mark) {
|
|
2963
3129
|
margin-block-end: calc(
|
|
2964
3130
|
round(up, calc(100cqi * 9 / 16), var(--bf-baseline))
|
|
@@ -2990,21 +3156,25 @@ html.u-baseline-grid::after {
|
|
|
2990
3156
|
overflow-wrap: anywhere;
|
|
2991
3157
|
}
|
|
2992
3158
|
|
|
2993
|
-
/*
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
3159
|
+
/* The linked-logo block moves from one to two cards per row at the 4-column
|
|
3160
|
+
medium grid. The balanced 50/50 section split uses the shared readable
|
|
3161
|
+
threshold; the 25/75 content rail and four-card density retain their
|
|
3162
|
+
separately measured wide threshold. The root establishes the query context;
|
|
3163
|
+
only descendants change. */
|
|
2997
3164
|
@container bf-linked-logo-section (width >= 38.75rem) {
|
|
2998
3165
|
:where(.bf-theme) :where(.bf-linked-logo-section-logos) :where(.bf-logo-section-items) {
|
|
2999
3166
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3000
3167
|
}
|
|
3001
3168
|
}
|
|
3002
3169
|
|
|
3003
|
-
@container bf-linked-logo-section (width >=
|
|
3170
|
+
@container bf-linked-logo-section (width >= 45rem) {
|
|
3004
3171
|
:where(.bf-theme) :where(.bf-linked-logo-section.is-50-50) :where(.bf-linked-logo-section-layout) {
|
|
3005
3172
|
column-gap: var(--bf-grid-gap-inline);
|
|
3006
3173
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3007
3174
|
}
|
|
3175
|
+
}
|
|
3176
|
+
|
|
3177
|
+
@container bf-linked-logo-section (width >= 64.75rem) {
|
|
3008
3178
|
|
|
3009
3179
|
:where(.bf-theme) :where(.bf-linked-logo-section.is-25-75) :where(.bf-linked-logo-section-layout) {
|
|
3010
3180
|
column-gap: var(--bf-grid-gap-inline);
|
|
@@ -3107,35 +3277,27 @@ html.u-baseline-grid::after {
|
|
|
3107
3277
|
}
|
|
3108
3278
|
|
|
3109
3279
|
/* A section title may be the route action without looking like body copy. */
|
|
3110
|
-
:where(.bf-theme) :where(.bf-basic-section-title-link, .bf-basic-section-title-link:visited) {
|
|
3280
|
+
:where(.bf-theme) :where(a.bf-basic-section-title-link, a.bf-basic-section-title-link:visited) {
|
|
3111
3281
|
color: var(--bf-color-link-default);
|
|
3112
3282
|
text-decoration: none;
|
|
3113
3283
|
}
|
|
3114
3284
|
|
|
3115
|
-
:where(.bf-theme) :where(.bf-basic-section-title-link:hover) {
|
|
3285
|
+
:where(.bf-theme) :where(a.bf-basic-section-title-link:hover) {
|
|
3116
3286
|
text-decoration: underline;
|
|
3117
3287
|
text-decoration-thickness: var(--bf-border-width);
|
|
3118
3288
|
text-underline-offset: 0.12em;
|
|
3119
3289
|
}
|
|
3120
3290
|
|
|
3121
|
-
/*
|
|
3122
|
-
|
|
3291
|
+
/* A balanced section switches at the shared readable 50/50 threshold. The
|
|
3292
|
+
layout descendant reacts to the root container; the query never tries to
|
|
3123
3293
|
restyle the container that established it. */
|
|
3124
|
-
@container bf-basic-section (width >=
|
|
3125
|
-
:where(.bf-theme) :where(.bf-basic-section
|
|
3294
|
+
@container bf-basic-section (width >= 45rem) {
|
|
3295
|
+
:where(.bf-theme) :where(.bf-basic-section-layout) {
|
|
3126
3296
|
column-gap: var(--bf-grid-gap-inline);
|
|
3127
3297
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3128
3298
|
}
|
|
3129
3299
|
}
|
|
3130
3300
|
|
|
3131
|
-
@container bf-basic-section (width >= 64.75rem) {
|
|
3132
|
-
:where(.bf-theme) :where(.bf-basic-section:not(.is-split-medium)) :where(.bf-basic-section-layout) {
|
|
3133
|
-
column-gap: var(--bf-grid-gap-inline);
|
|
3134
|
-
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3135
|
-
}
|
|
3136
|
-
|
|
3137
|
-
}
|
|
3138
|
-
|
|
3139
3301
|
/* CTA section: Vanilla's 25/75 variant is an offset content rail. The full
|
|
3140
3302
|
variant stays naturally full-width. Typography and action presentation are
|
|
3141
3303
|
supplied by real heading elements and bf-cta-block. */
|
|
@@ -3149,19 +3311,23 @@ html.u-baseline-grid::after {
|
|
|
3149
3311
|
display: grid;
|
|
3150
3312
|
grid-template-columns: minmax(0, 1fr);
|
|
3151
3313
|
min-inline-size: 0;
|
|
3152
|
-
padding-block: calc(var(--bf-section-space-deep) / 2);
|
|
3153
3314
|
}
|
|
3154
3315
|
|
|
3155
3316
|
:where(.bf-theme) :where(.bf-cta-section-content) {
|
|
3317
|
+
--bf-stack-space: var(--bf-section-space-shallow);
|
|
3318
|
+
align-content: start;
|
|
3319
|
+
display: grid;
|
|
3320
|
+
gap: var(--bf-stack-space);
|
|
3156
3321
|
min-inline-size: 0;
|
|
3157
3322
|
overflow-wrap: anywhere;
|
|
3158
3323
|
}
|
|
3159
3324
|
|
|
3160
|
-
|
|
3161
|
-
|
|
3162
|
-
|
|
3163
|
-
|
|
3325
|
+
:where(.bf-theme) :where(.bf-cta-section-copy) {
|
|
3326
|
+
min-inline-size: 0;
|
|
3327
|
+
overflow-wrap: anywhere;
|
|
3328
|
+
}
|
|
3164
3329
|
|
|
3330
|
+
@container bf-cta-section (width >= 64.75rem) {
|
|
3165
3331
|
:where(.bf-theme) :where(.bf-cta-section.is-offset) :where(.bf-cta-section-layout) {
|
|
3166
3332
|
column-gap: var(--bf-grid-gap-inline);
|
|
3167
3333
|
grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
|
|
@@ -3229,15 +3395,15 @@ html.u-baseline-grid::after {
|
|
|
3229
3395
|
/* semantic gaps and every text child keeps metric compensation. */
|
|
3230
3396
|
/* ------------------------------------------------------------------ */
|
|
3231
3397
|
|
|
3232
|
-
/* Hero:
|
|
3233
|
-
|
|
3234
|
-
|
|
3398
|
+
/* Hero: the compact arrival space belongs inside its entry rule. The outer
|
|
3399
|
+
stack owns the section exit, and the rule replaces one pixel of padding so
|
|
3400
|
+
it never changes the rhythm. */
|
|
3235
3401
|
:where(.bf-theme) :where(.bf-hero) {
|
|
3236
3402
|
border-block-start: var(--bf-border-width) solid var(--bf-color-border-low-contrast);
|
|
3237
3403
|
container-name: bf-hero;
|
|
3238
3404
|
container-type: inline-size;
|
|
3239
3405
|
min-inline-size: 0;
|
|
3240
|
-
padding-block-end:
|
|
3406
|
+
padding-block-end: 0;
|
|
3241
3407
|
padding-block-start: calc(var(--bf-space-2) - var(--bf-border-width));
|
|
3242
3408
|
}
|
|
3243
3409
|
|
|
@@ -3250,6 +3416,7 @@ html.u-baseline-grid::after {
|
|
|
3250
3416
|
|
|
3251
3417
|
:where(.bf-theme) :where(.bf-hero-layout) {
|
|
3252
3418
|
display: grid;
|
|
3419
|
+
gap: var(--bf-section-space-shallow);
|
|
3253
3420
|
grid-template-columns: minmax(0, 1fr);
|
|
3254
3421
|
min-inline-size: 0;
|
|
3255
3422
|
}
|
|
@@ -3259,9 +3426,9 @@ html.u-baseline-grid::after {
|
|
|
3259
3426
|
overflow-wrap: anywhere;
|
|
3260
3427
|
}
|
|
3261
3428
|
|
|
3262
|
-
/*
|
|
3263
|
-
|
|
3264
|
-
|
|
3429
|
+
/* Legacy copy slots remain valid for signpost variants. The default arrival
|
|
3430
|
+
composition separates a title area from its supporting content area, and
|
|
3431
|
+
the demo composes each area with the public stack density modifiers. */
|
|
3265
3432
|
:where(.bf-theme) :where(.bf-hero-copy) {
|
|
3266
3433
|
align-content: start;
|
|
3267
3434
|
display: grid;
|
|
@@ -3288,7 +3455,7 @@ html.u-baseline-grid::after {
|
|
|
3288
3455
|
allocated a fluid grid track. Snap only the media block to the active tier
|
|
3289
3456
|
baseline so the following semantic text remains on-grid; its inline track
|
|
3290
3457
|
and the surrounding Vanilla proportions remain unchanged. */
|
|
3291
|
-
@supports (block-size: calc-size(auto, round(up, size,
|
|
3458
|
+
@supports (block-size: calc-size(auto, round(up, size, 0.0625rem))) {
|
|
3292
3459
|
:where(.bf-theme) :where(.bf-hero-media > .bf-aspect, .bf-hero-signpost > :where(img, picture, video, canvas, svg)) {
|
|
3293
3460
|
block-size: calc-size(auto, round(up, size, var(--bf-baseline)));
|
|
3294
3461
|
}
|
|
@@ -3311,14 +3478,10 @@ html.u-baseline-grid::after {
|
|
|
3311
3478
|
inline-size: 100%;
|
|
3312
3479
|
}
|
|
3313
3480
|
|
|
3314
|
-
/*
|
|
3315
|
-
|
|
3316
|
-
correctly. */
|
|
3317
|
-
/* The section boundary itself follows Vanilla's page-level desktop switch;
|
|
3318
|
-
the composition below continues to react to the allocated container. */
|
|
3481
|
+
/* The section boundary follows the page-level desktop switch, while the
|
|
3482
|
+
two-column composition uses its measured intrinsic allocation below. */
|
|
3319
3483
|
@media (width >= 64.75rem) {
|
|
3320
3484
|
:where(.bf-theme) :where(.bf-hero) {
|
|
3321
|
-
padding-block-end: var(--bf-section-space);
|
|
3322
3485
|
padding-block-start: calc(var(--bf-space-3) - var(--bf-border-width));
|
|
3323
3486
|
}
|
|
3324
3487
|
|
|
@@ -3327,7 +3490,7 @@ html.u-baseline-grid::after {
|
|
|
3327
3490
|
}
|
|
3328
3491
|
}
|
|
3329
3492
|
|
|
3330
|
-
@container bf-hero (width >=
|
|
3493
|
+
@container bf-hero (width >= 45rem) {
|
|
3331
3494
|
:where(.bf-theme) :where(.bf-hero-layout) {
|
|
3332
3495
|
column-gap: var(--bf-grid-gap-inline);
|
|
3333
3496
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
@@ -3347,9 +3510,10 @@ html.u-baseline-grid::after {
|
|
|
3347
3510
|
}
|
|
3348
3511
|
}
|
|
3349
3512
|
|
|
3350
|
-
/*
|
|
3351
|
-
|
|
3352
|
-
|
|
3513
|
+
/* The named variants retain their proportion but share the readable split
|
|
3514
|
+
threshold with the default hero. The modifier changes only structural
|
|
3515
|
+
tracks; it does not introduce an earlier cramped layout. */
|
|
3516
|
+
@container bf-hero (width >= 45rem) {
|
|
3353
3517
|
:where(.bf-theme) :where(.bf-hero.is-split-medium) :where(.bf-hero-layout) {
|
|
3354
3518
|
column-gap: var(--bf-grid-gap-inline);
|
|
3355
3519
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
@@ -3369,14 +3533,10 @@ html.u-baseline-grid::after {
|
|
|
3369
3533
|
:where(.bf-theme) :where(.bf-quote-wrapper) {
|
|
3370
3534
|
container-name: bf-quote-wrapper;
|
|
3371
3535
|
container-type: inline-size;
|
|
3372
|
-
margin
|
|
3536
|
+
margin: 0;
|
|
3373
3537
|
min-inline-size: 0;
|
|
3374
3538
|
}
|
|
3375
3539
|
|
|
3376
|
-
:where(.bf-theme) :where(.bf-quote-wrapper.is-shallow) {
|
|
3377
|
-
margin-block-end: var(--bf-section-space-shallow);
|
|
3378
|
-
}
|
|
3379
|
-
|
|
3380
3540
|
:where(.bf-theme) :where(.bf-quote-wrapper-header, .bf-quote-wrapper-layout, .bf-quote-wrapper-signpost, .bf-quote-wrapper-content, .bf-quote-wrapper-citation, .bf-quote-wrapper-media) {
|
|
3381
3541
|
min-inline-size: 0;
|
|
3382
3542
|
overflow-wrap: anywhere;
|
|
@@ -3423,7 +3583,7 @@ html.u-baseline-grid::after {
|
|
|
3423
3583
|
/* The quote rail can also be a fractional grid track. Keep its media from
|
|
3424
3584
|
introducing a sub-baseline row while leaving quotation and citation rhythm
|
|
3425
3585
|
entirely baseline-compensated while its stack owns semantic gaps. */
|
|
3426
|
-
@supports (block-size: calc-size(auto, round(up, size,
|
|
3586
|
+
@supports (block-size: calc-size(auto, round(up, size, 0.0625rem))) {
|
|
3427
3587
|
:where(.bf-theme) :where(.bf-quote-wrapper-signpost > :where(img, picture, svg), .bf-quote-wrapper-media > .bf-aspect) {
|
|
3428
3588
|
block-size: calc-size(auto, round(up, size, var(--bf-baseline)));
|
|
3429
3589
|
}
|
|
@@ -3462,8 +3622,47 @@ html.u-baseline-grid::after {
|
|
|
3462
3622
|
}
|
|
3463
3623
|
|
|
3464
3624
|
@container bf-quote-wrapper (width >= 64.75rem) {
|
|
3625
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-header) {
|
|
3626
|
+
grid-template-columns: repeat(8, minmax(0, 1fr));
|
|
3627
|
+
}
|
|
3628
|
+
|
|
3629
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-header) > :first-child {
|
|
3630
|
+
grid-column: 1 / span 6;
|
|
3631
|
+
}
|
|
3632
|
+
|
|
3633
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-header-link) {
|
|
3634
|
+
grid-column: 7 / -1;
|
|
3635
|
+
}
|
|
3636
|
+
|
|
3637
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-layout) {
|
|
3638
|
+
grid-template-columns: repeat(8, minmax(0, 1fr));
|
|
3639
|
+
}
|
|
3640
|
+
|
|
3641
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-signpost) {
|
|
3642
|
+
grid-column: 1 / span 2;
|
|
3643
|
+
}
|
|
3644
|
+
|
|
3645
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-content, .bf-quote-wrapper-content:only-child) {
|
|
3646
|
+
display: grid;
|
|
3647
|
+
grid-column: 3 / -1;
|
|
3648
|
+
grid-template-columns: subgrid;
|
|
3649
|
+
}
|
|
3650
|
+
|
|
3465
3651
|
:where(.bf-theme) :where(.bf-quote-wrapper-quote-row) {
|
|
3466
|
-
grid-
|
|
3652
|
+
grid-column: 1 / -1;
|
|
3653
|
+
grid-template-columns: subgrid;
|
|
3654
|
+
}
|
|
3655
|
+
|
|
3656
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-prose) {
|
|
3657
|
+
grid-column: 1 / span 4;
|
|
3658
|
+
}
|
|
3659
|
+
|
|
3660
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-citation) {
|
|
3661
|
+
grid-column: 5 / -1;
|
|
3662
|
+
}
|
|
3663
|
+
|
|
3664
|
+
:where(.bf-theme) :where(.bf-quote-wrapper-content) > :where(.bf-cta-block, .bf-quote-wrapper-media) {
|
|
3665
|
+
grid-column: 1 / -1;
|
|
3467
3666
|
}
|
|
3468
3667
|
}
|
|
3469
3668
|
|
|
@@ -3476,19 +3675,13 @@ html.u-baseline-grid::after {
|
|
|
3476
3675
|
container-name: bf-rich-list;
|
|
3477
3676
|
container-type: inline-size;
|
|
3478
3677
|
min-inline-size: 0;
|
|
3479
|
-
padding-block-end: calc(var(--bf-section-space) / 2);
|
|
3480
|
-
}
|
|
3481
|
-
|
|
3482
|
-
:where(.bf-theme) :where(.bf-rich-list.is-shallow) {
|
|
3483
|
-
padding-block-end: var(--bf-section-space-shallow);
|
|
3484
|
-
}
|
|
3485
|
-
|
|
3486
|
-
:where(.bf-theme) :where(.bf-rich-list.is-deep) {
|
|
3487
|
-
padding-block-end: calc(var(--bf-section-space-deep) / 2);
|
|
3488
3678
|
}
|
|
3489
3679
|
|
|
3490
3680
|
:where(.bf-theme) :where(.bf-rich-list-layout) {
|
|
3681
|
+
--bf-stack-space: var(--bf-space-1);
|
|
3682
|
+
align-content: start;
|
|
3491
3683
|
display: grid;
|
|
3684
|
+
gap: var(--bf-stack-space);
|
|
3492
3685
|
grid-template-columns: minmax(0, 1fr);
|
|
3493
3686
|
min-inline-size: 0;
|
|
3494
3687
|
}
|
|
@@ -3503,14 +3696,11 @@ html.u-baseline-grid::after {
|
|
|
3503
3696
|
overflow-wrap: anywhere;
|
|
3504
3697
|
}
|
|
3505
3698
|
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
|
|
3509
|
-
|
|
3510
|
-
|
|
3511
|
-
:where(.bf-theme) :where(.bf-rich-list.is-deep) {
|
|
3512
|
-
padding-block-end: var(--bf-section-space-deep);
|
|
3513
|
-
}
|
|
3699
|
+
:where(.bf-theme) :where(.bf-rich-list-support, .bf-rich-list-content) {
|
|
3700
|
+
--bf-stack-space: var(--bf-space-1);
|
|
3701
|
+
align-content: start;
|
|
3702
|
+
display: grid;
|
|
3703
|
+
gap: var(--bf-stack-space);
|
|
3514
3704
|
}
|
|
3515
3705
|
|
|
3516
3706
|
/* ------------------------------------------------------------------ */
|
|
@@ -3537,7 +3727,7 @@ html.u-baseline-grid::after {
|
|
|
3537
3727
|
/* A full-width ratio inside a fluid Sites rail otherwise leaves the next
|
|
3538
3728
|
heading on a fractional pixel. The visual alone absorbs the trailing
|
|
3539
3729
|
compensation; semantic children retain their own margins unchanged. */
|
|
3540
|
-
@supports (block-size: calc-size(auto, round(up, size,
|
|
3730
|
+
@supports (block-size: calc-size(auto, round(up, size, 0.0625rem))) {
|
|
3541
3731
|
:where(.bf-theme) :where(.bf-rich-list-visual > .bf-aspect) {
|
|
3542
3732
|
block-size: calc-size(auto, round(up, size, var(--bf-baseline)));
|
|
3543
3733
|
}
|
|
@@ -3576,8 +3766,12 @@ html.u-baseline-grid::after {
|
|
|
3576
3766
|
|
|
3577
3767
|
/* Prefixes are logical here even though the shared list predates BF's
|
|
3578
3768
|
logical-property rule. This keeps ticks, bullets and numbers RTL-safe. */
|
|
3769
|
+
:where(.bf-theme) :where(.bf-rich-list-list:has(> .bf-list-item:is(.is-ticked, .is-crossed)), .bf-rich-list-list.is-bulleted, ol.bf-rich-list-list) {
|
|
3770
|
+
padding-inline-start: var(--bf-leading-mark-group-inset);
|
|
3771
|
+
}
|
|
3772
|
+
|
|
3579
3773
|
:where(.bf-theme) :where(.bf-rich-list-list) > .bf-list-item:is(.is-ticked, .is-crossed) {
|
|
3580
|
-
padding-inline-start:
|
|
3774
|
+
padding-inline-start: var(--bf-leading-mark-offset);
|
|
3581
3775
|
}
|
|
3582
3776
|
|
|
3583
3777
|
:where(.bf-theme) :where(.bf-rich-list-list) > .bf-list-item:is(.is-ticked, .is-crossed)::before {
|
|
@@ -3587,7 +3781,7 @@ html.u-baseline-grid::after {
|
|
|
3587
3781
|
}
|
|
3588
3782
|
|
|
3589
3783
|
:where(.bf-theme) :where(.bf-rich-list-list.is-bulleted) > :where(.bf-list-item) {
|
|
3590
|
-
padding-inline-start:
|
|
3784
|
+
padding-inline-start: var(--bf-leading-mark-offset);
|
|
3591
3785
|
}
|
|
3592
3786
|
|
|
3593
3787
|
:where(.bf-theme) :where(.bf-rich-list-list.is-bulleted) > :where(.bf-list-item)::before {
|
|
@@ -3606,7 +3800,7 @@ html.u-baseline-grid::after {
|
|
|
3606
3800
|
|
|
3607
3801
|
:where(.bf-theme) :where(ol.bf-rich-list-list) > :where(.bf-list-item) {
|
|
3608
3802
|
counter-increment: bf-rich-horizontal-counter;
|
|
3609
|
-
padding-inline-start:
|
|
3803
|
+
padding-inline-start: var(--bf-leading-mark-offset);
|
|
3610
3804
|
}
|
|
3611
3805
|
|
|
3612
3806
|
:where(.bf-theme) :where(ol.bf-rich-list-list) > :where(.bf-list-item)::before {
|
|
@@ -3653,7 +3847,7 @@ html.u-baseline-grid::after {
|
|
|
3653
3847
|
}
|
|
3654
3848
|
}
|
|
3655
3849
|
|
|
3656
|
-
@container bf-rich-list (width >=
|
|
3850
|
+
@container bf-rich-list (width >= 45rem) {
|
|
3657
3851
|
:where(.bf-theme) :where(.bf-rich-list.is-horizontal.is-50-50) > :where(.bf-rich-list-layout) {
|
|
3658
3852
|
column-gap: var(--bf-grid-gap-inline);
|
|
3659
3853
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
@@ -3667,7 +3861,7 @@ html.u-baseline-grid::after {
|
|
|
3667
3861
|
grid-column: 2;
|
|
3668
3862
|
}
|
|
3669
3863
|
|
|
3670
|
-
:where(.bf-theme) :where(.bf-rich-list.is-horizontal) > :where(.bf-rich-list-layout) > :where(.bf-rich-list-cta) {
|
|
3864
|
+
:where(.bf-theme) :where(.bf-rich-list.is-horizontal.is-50-50) > :where(.bf-rich-list-layout) > :where(.bf-rich-list-cta) {
|
|
3671
3865
|
grid-column: 2;
|
|
3672
3866
|
}
|
|
3673
3867
|
}
|
|
@@ -3682,7 +3876,6 @@ html.u-baseline-grid::after {
|
|
|
3682
3876
|
|
|
3683
3877
|
:where(.bf-theme) :where(.bf-rich-list.is-vertical) :where(.bf-rich-list-media) {
|
|
3684
3878
|
container-type: inline-size;
|
|
3685
|
-
padding-block-end: var(--bf-section-space-shallow);
|
|
3686
3879
|
}
|
|
3687
3880
|
|
|
3688
3881
|
:where(.bf-theme) :where(.bf-rich-list.is-vertical.is-flipped) :where(.bf-rich-list-media) {
|
|
@@ -3701,7 +3894,7 @@ html.u-baseline-grid::after {
|
|
|
3701
3894
|
/* The media object deliberately stretches across fluid 1/2 and 2/3 ratios.
|
|
3702
3895
|
Snap that resulting block, rather than resetting content spacing, so each
|
|
3703
3896
|
tier's baseline survives both portrait and landscape allocations. */
|
|
3704
|
-
@supports (block-size: calc-size(auto, round(up, size,
|
|
3897
|
+
@supports (block-size: calc-size(auto, round(up, size, 0.0625rem))) {
|
|
3705
3898
|
:where(.bf-theme) :where(.bf-rich-list-media-frame) {
|
|
3706
3899
|
block-size: calc-size(auto, round(up, size, var(--bf-baseline)));
|
|
3707
3900
|
}
|
|
@@ -3744,11 +3937,7 @@ html.u-baseline-grid::after {
|
|
|
3744
3937
|
/* Auto height has no shallow media wrapper in Vanilla. At narrow widths it
|
|
3745
3938
|
remains a normal 3:2 frame; at the wide split it stretches with the content
|
|
3746
3939
|
rail, clamped between the equivalent 16:9 and 2:3 heights. */
|
|
3747
|
-
|
|
3748
|
-
padding-block-end: 0;
|
|
3749
|
-
}
|
|
3750
|
-
|
|
3751
|
-
@container bf-rich-list (width >= 64.75rem) {
|
|
3940
|
+
@container bf-rich-list (width >= 45rem) {
|
|
3752
3941
|
:where(.bf-theme) :where(.bf-rich-list.is-vertical) > :where(.bf-rich-list-layout) {
|
|
3753
3942
|
align-items: stretch;
|
|
3754
3943
|
column-gap: var(--bf-grid-gap-inline);
|
|
@@ -3797,7 +3986,7 @@ html.u-baseline-grid::after {
|
|
|
3797
3986
|
min-block-size: 56.25cqi;
|
|
3798
3987
|
}
|
|
3799
3988
|
|
|
3800
|
-
@supports (min-block-size: round(up,
|
|
3989
|
+
@supports (min-block-size: round(up, 0.0625rem, 0.0625rem)) {
|
|
3801
3990
|
:where(.bf-theme) :where(.bf-rich-list-media.is-auto-height) :where(.bf-rich-list-media-frame) {
|
|
3802
3991
|
max-block-size: round(down, 150cqi, var(--bf-baseline));
|
|
3803
3992
|
min-block-size: round(up, 56.25cqi, var(--bf-baseline));
|
|
@@ -3815,6 +4004,7 @@ html.u-baseline-grid::after {
|
|
|
3815
4004
|
|
|
3816
4005
|
|
|
3817
4006
|
:where(.bf-theme) :where(.bf-panel) {
|
|
4007
|
+
--bf-panel-content-padding-inline: var(--bf-component-inline-inset-continuation);
|
|
3818
4008
|
background: var(--bf-color-background-default);
|
|
3819
4009
|
color: var(--bf-color-text-default);
|
|
3820
4010
|
display: flex;
|
|
@@ -3837,6 +4027,9 @@ html.u-baseline-grid::after {
|
|
|
3837
4027
|
overscroll-behavior: contain;
|
|
3838
4028
|
}
|
|
3839
4029
|
|
|
4030
|
+
/* Panel chrome and content consume the live page-grid gutter through a local
|
|
4031
|
+
* derived property, so their internal text rails follow the same
|
|
4032
|
+
* viewport brackets as surrounding page content. */
|
|
3840
4033
|
:where(.bf-theme) :where(.bf-panel-header) {
|
|
3841
4034
|
align-items: start;
|
|
3842
4035
|
display: flex;
|
|
@@ -3845,7 +4038,7 @@ html.u-baseline-grid::after {
|
|
|
3845
4038
|
justify-content: space-between;
|
|
3846
4039
|
padding-block-end: var(--bf-panel-padding-block);
|
|
3847
4040
|
padding-block-start: var(--bf-panel-padding-block);
|
|
3848
|
-
padding-inline: var(--bf-panel-padding-inline);
|
|
4041
|
+
padding-inline: var(--bf-panel-content-padding-inline, var(--bf-panel-padding-inline));
|
|
3849
4042
|
}
|
|
3850
4043
|
|
|
3851
4044
|
/* A navigation brand keeps the Canonical tag attached to the panel's top edge
|
|
@@ -3855,7 +4048,7 @@ html.u-baseline-grid::after {
|
|
|
3855
4048
|
gap: 0;
|
|
3856
4049
|
padding-block: 0;
|
|
3857
4050
|
padding-inline-end: 0;
|
|
3858
|
-
padding-inline-start: var(--bf-panel-padding-inline);
|
|
4051
|
+
padding-inline-start: var(--bf-panel-content-padding-inline, var(--bf-panel-padding-inline));
|
|
3859
4052
|
}
|
|
3860
4053
|
|
|
3861
4054
|
:where(.bf-theme) :where(.bf-panel-header.is-navigation-brand) > :where(.bf-top-navigation-logo.is-canonical-tagged) {
|
|
@@ -3886,10 +4079,10 @@ html.u-baseline-grid::after {
|
|
|
3886
4079
|
flex-wrap: wrap;
|
|
3887
4080
|
gap: var(--bf-field-gap);
|
|
3888
4081
|
justify-content: space-between;
|
|
3889
|
-
min-block-size: calc(var(--bf-control-box-size-compact) +
|
|
4082
|
+
min-block-size: calc(var(--bf-control-box-size-compact) + var(--bf-panel-padding-block));
|
|
3890
4083
|
padding-block-end: var(--bf-panel-padding-block);
|
|
3891
|
-
padding-block-start:
|
|
3892
|
-
padding-inline: var(--bf-panel-padding-inline);
|
|
4084
|
+
padding-block-start: 0;
|
|
4085
|
+
padding-inline: var(--bf-panel-content-padding-inline, var(--bf-panel-padding-inline));
|
|
3893
4086
|
}
|
|
3894
4087
|
|
|
3895
4088
|
:where(.bf-theme) :where(.bf-panel-footer.is-sticky) {
|
|
@@ -3951,8 +4144,8 @@ html.u-baseline-grid::after {
|
|
|
3951
4144
|
}
|
|
3952
4145
|
|
|
3953
4146
|
:where(.bf-theme) :where(.bf-panel-toggle:focus-visible) {
|
|
3954
|
-
outline:
|
|
3955
|
-
outline-offset:
|
|
4147
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
4148
|
+
outline-offset: 0.125rem;
|
|
3956
4149
|
}
|
|
3957
4150
|
|
|
3958
4151
|
:where(.bf-theme) :where(.bf-panel-content) {
|
|
@@ -3960,7 +4153,7 @@ html.u-baseline-grid::after {
|
|
|
3960
4153
|
min-block-size: 0;
|
|
3961
4154
|
padding-block-end: var(--bf-panel-padding-block);
|
|
3962
4155
|
padding-block-start: var(--bf-panel-padding-block);
|
|
3963
|
-
padding-inline: var(--bf-panel-padding-inline);
|
|
4156
|
+
padding-inline: var(--bf-panel-content-padding-inline, var(--bf-panel-padding-inline));
|
|
3964
4157
|
}
|
|
3965
4158
|
|
|
3966
4159
|
:where(.bf-theme) :where(.bf-panel-content.is-flush) {
|
|
@@ -3985,7 +4178,7 @@ html.u-baseline-grid::after {
|
|
|
3985
4178
|
overflow: auto;
|
|
3986
4179
|
padding-block-end: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
3987
4180
|
padding-block-start: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
3988
|
-
padding-inline: var(--bf-
|
|
4181
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
3989
4182
|
}
|
|
3990
4183
|
|
|
3991
4184
|
:where(.bf-theme) :where(.bf-card.is-highlighted) {
|
|
@@ -4010,7 +4203,7 @@ html.u-baseline-grid::after {
|
|
|
4010
4203
|
|
|
4011
4204
|
:where(.bf-theme) :where(a.bf-card:hover, a.bf-card.is-highlighted:hover, a.bf-card.is-overlay:hover, a.bf-card.is-muted:hover) {
|
|
4012
4205
|
border-color: var(--bf-color-focus);
|
|
4013
|
-
transform: translateY(-
|
|
4206
|
+
transform: translateY(-0.0625rem);
|
|
4014
4207
|
}
|
|
4015
4208
|
|
|
4016
4209
|
:where(.bf-theme) :where(a.bf-card:focus:not(:focus-visible), a.bf-card.is-highlighted:focus:not(:focus-visible), a.bf-card.is-overlay:focus:not(:focus-visible), a.bf-card.is-muted:focus:not(:focus-visible)) {
|
|
@@ -4018,8 +4211,8 @@ html.u-baseline-grid::after {
|
|
|
4018
4211
|
}
|
|
4019
4212
|
|
|
4020
4213
|
:where(.bf-theme) :where(a.bf-card:focus-visible, a.bf-card.is-highlighted:focus-visible, a.bf-card.is-overlay:focus-visible, a.bf-card.is-muted:focus-visible) {
|
|
4021
|
-
outline:
|
|
4022
|
-
outline-offset: -
|
|
4214
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
4215
|
+
outline-offset: -0.125rem;
|
|
4023
4216
|
}
|
|
4024
4217
|
|
|
4025
4218
|
:where(.bf-theme) :where(.bf-card.is-preview) {
|
|
@@ -4102,7 +4295,7 @@ html.u-baseline-grid::after {
|
|
|
4102
4295
|
min-inline-size: 0;
|
|
4103
4296
|
padding-block-end: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
4104
4297
|
padding-block-start: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
4105
|
-
padding-inline: var(--bf-
|
|
4298
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
4106
4299
|
text-align: left;
|
|
4107
4300
|
}
|
|
4108
4301
|
|
|
@@ -4115,7 +4308,7 @@ html.u-baseline-grid::after {
|
|
|
4115
4308
|
:where(.bf-theme) :where(button.bf-option-card:hover:not(:disabled)) {
|
|
4116
4309
|
background: var(--bf-color-background-hover);
|
|
4117
4310
|
border-color: var(--bf-color-focus);
|
|
4118
|
-
transform: translateY(-
|
|
4311
|
+
transform: translateY(-0.0625rem);
|
|
4119
4312
|
}
|
|
4120
4313
|
|
|
4121
4314
|
:where(.bf-theme) :where(.bf-option-card.is-active),
|
|
@@ -4126,8 +4319,8 @@ html.u-baseline-grid::after {
|
|
|
4126
4319
|
}
|
|
4127
4320
|
|
|
4128
4321
|
:where(.bf-theme) :where(button.bf-option-card:focus-visible) {
|
|
4129
|
-
outline:
|
|
4130
|
-
outline-offset: -
|
|
4322
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
4323
|
+
outline-offset: -0.125rem;
|
|
4131
4324
|
}
|
|
4132
4325
|
|
|
4133
4326
|
:where(.bf-theme) :where(.bf-option-card-label) {
|
|
@@ -4175,7 +4368,7 @@ html.u-baseline-grid::after {
|
|
|
4175
4368
|
/* Snap the grid-row wrapper after intrinsic image/copy measurement. Because
|
|
4176
4369
|
the card flexes inside it, peers retain Vanilla's equal-height row while
|
|
4177
4370
|
the card edge and the following row both land on BF baselines. */
|
|
4178
|
-
@supports (block-size: calc-size(auto, round(up, size,
|
|
4371
|
+
@supports (block-size: calc-size(auto, round(up, size, 0.0625rem))) {
|
|
4179
4372
|
:where(.bf-theme) :where(.bf-content-card-wrapper) {
|
|
4180
4373
|
block-size: calc-size(auto, round(up, size, var(--bf-baseline)));
|
|
4181
4374
|
}
|
|
@@ -4352,7 +4545,7 @@ html.u-baseline-grid::after {
|
|
|
4352
4545
|
text-transform: var(--bf-h1-text-transform);
|
|
4353
4546
|
}
|
|
4354
4547
|
|
|
4355
|
-
:where(.bf-theme) :where(.bf-content-card-main-link) {
|
|
4548
|
+
:where(.bf-theme) :where(a.bf-content-card-main-link) {
|
|
4356
4549
|
-webkit-box-orient: vertical;
|
|
4357
4550
|
-webkit-line-clamp: 3;
|
|
4358
4551
|
color: inherit;
|
|
@@ -4372,7 +4565,7 @@ html.u-baseline-grid::after {
|
|
|
4372
4565
|
z-index: 1;
|
|
4373
4566
|
}
|
|
4374
4567
|
|
|
4375
|
-
:where(.bf-theme) :where(.bf-content-card-main-link:is(:hover, :focus, :active, :visited)) {
|
|
4568
|
+
:where(.bf-theme) :where(a.bf-content-card-main-link:is(:hover, :focus, :active, :visited)) {
|
|
4376
4569
|
color: inherit;
|
|
4377
4570
|
text-decoration: none;
|
|
4378
4571
|
}
|
|
@@ -4382,8 +4575,8 @@ html.u-baseline-grid::after {
|
|
|
4382
4575
|
}
|
|
4383
4576
|
|
|
4384
4577
|
:where(.bf-theme) :where(.bf-content-card:has(.bf-content-card-main-link:focus-visible)) {
|
|
4385
|
-
outline:
|
|
4386
|
-
outline-offset:
|
|
4578
|
+
outline: 0.1875rem solid var(--bf-color-focus);
|
|
4579
|
+
outline-offset: 0.125rem;
|
|
4387
4580
|
}
|
|
4388
4581
|
|
|
4389
4582
|
/* All nested actions sit above the expanded main-link hit area. This includes
|
|
@@ -4459,6 +4652,7 @@ html.u-baseline-grid::after {
|
|
|
4459
4652
|
min-inline-size: 0;
|
|
4460
4653
|
overflow-x: auto;
|
|
4461
4654
|
padding-block-end: var(--bf-space-1);
|
|
4655
|
+
padding-block-start: calc(0.5rem - var(--bf-border-width));
|
|
4462
4656
|
padding-inline: var(--bf-space-2);
|
|
4463
4657
|
position: relative;
|
|
4464
4658
|
scrollbar-width: none;
|
|
@@ -4496,11 +4690,11 @@ html.u-baseline-grid::after {
|
|
|
4496
4690
|
|
|
4497
4691
|
/* Internal geometry responds to the card's allocated width. The card root is
|
|
4498
4692
|
only the container; the frame/media/body descendants own queried styles. */
|
|
4499
|
-
/* Vanilla switches the viewport at
|
|
4693
|
+
/* Vanilla switches the viewport at 38.75rem/64.75rem. A four-column card is much
|
|
4500
4694
|
narrower than that viewport after grid margins and gutters, so its internal
|
|
4501
|
-
horizontal layout uses Vanilla's
|
|
4502
|
-
eight-column 50/50 split starts at the roughly
|
|
4503
|
-
|
|
4695
|
+
horizontal layout uses Vanilla's 28.75rem minimum viable allocation. The
|
|
4696
|
+
eight-column 50/50 split starts at the roughly 60rem allocation left by the
|
|
4697
|
+
64.75rem viewport. This preserves the rendered switch in embedded BF grids. */
|
|
4504
4698
|
@container bf-content-card (width < 28.75rem) {
|
|
4505
4699
|
:where(.bf-theme) :where(.bf-content-card-frame:not(:has(.bf-content-card-footer))) {
|
|
4506
4700
|
min-block-size: 0;
|
|
@@ -4652,18 +4846,16 @@ html.u-baseline-grid::after {
|
|
|
4652
4846
|
|
|
4653
4847
|
:where(.bf-theme) :where(.bf-tabs) {
|
|
4654
4848
|
display: grid;
|
|
4849
|
+
gap: var(--bf-space-2);
|
|
4655
4850
|
min-inline-size: 0;
|
|
4656
4851
|
}
|
|
4657
4852
|
|
|
4658
4853
|
:where(.bf-theme) :where(.bf-tabs-list) {
|
|
4659
|
-
|
|
4854
|
+
box-shadow: inset 0 calc(var(--bf-border-width) * -1) 0 var(--bf-color-border-default);
|
|
4660
4855
|
display: flex;
|
|
4661
4856
|
gap: 0;
|
|
4662
4857
|
list-style: none;
|
|
4663
|
-
|
|
4664
|
-
than leaving each link's control compensation between its active rule and
|
|
4665
|
-
the list rule. */
|
|
4666
|
-
margin: 0 0 calc((var(--bf-baseline) * 2) - var(--bf-border-width));
|
|
4858
|
+
margin: 0;
|
|
4667
4859
|
min-inline-size: 0;
|
|
4668
4860
|
overflow-x: auto;
|
|
4669
4861
|
padding: 0;
|
|
@@ -4685,16 +4877,16 @@ html.u-baseline-grid::after {
|
|
|
4685
4877
|
align-items: center;
|
|
4686
4878
|
background: transparent;
|
|
4687
4879
|
border: 0;
|
|
4688
|
-
border-
|
|
4880
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
4689
4881
|
color: var(--bf-color-text-muted);
|
|
4690
4882
|
cursor: pointer;
|
|
4691
|
-
display:
|
|
4883
|
+
display: flex;
|
|
4692
4884
|
gap: calc(var(--bf-baseline) * 0.5);
|
|
4693
4885
|
justify-content: center;
|
|
4694
4886
|
margin-bottom: 0;
|
|
4695
|
-
padding-block-end: calc(var(--bf-
|
|
4696
|
-
padding-block-start: var(--bf-
|
|
4697
|
-
padding-inline: var(--bf-
|
|
4887
|
+
padding-block-end: calc(var(--bf-single-line-row-padding-block) + var(--bf-single-line-row-margin-block-end));
|
|
4888
|
+
padding-block-start: var(--bf-single-line-row-padding-block);
|
|
4889
|
+
padding-inline: var(--bf-component-inline-inset-action);
|
|
4698
4890
|
text-decoration: none;
|
|
4699
4891
|
}
|
|
4700
4892
|
|
|
@@ -4703,18 +4895,22 @@ html.u-baseline-grid::after {
|
|
|
4703
4895
|
color: var(--bf-color-text-default);
|
|
4704
4896
|
}
|
|
4705
4897
|
|
|
4898
|
+
:where(.bf-theme) :where(a.bf-tabs-link:hover) {
|
|
4899
|
+
text-decoration: none;
|
|
4900
|
+
}
|
|
4901
|
+
|
|
4706
4902
|
:where(.bf-theme) :where(.bf-tabs-link:focus:not(:focus-visible)) {
|
|
4707
4903
|
outline: none;
|
|
4708
4904
|
}
|
|
4709
4905
|
|
|
4710
4906
|
:where(.bf-theme) :where(.bf-tabs-link:focus-visible) {
|
|
4711
4907
|
color: var(--bf-color-text-default);
|
|
4712
|
-
outline:
|
|
4713
|
-
outline-offset: -
|
|
4908
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
4909
|
+
outline-offset: -0.125rem;
|
|
4714
4910
|
}
|
|
4715
4911
|
|
|
4716
4912
|
:where(.bf-theme) :where(.bf-tabs-link.is-active, .bf-tabs-link[aria-selected='true']) {
|
|
4717
|
-
|
|
4913
|
+
box-shadow: inset 0 calc(var(--bf-bar-thickness) * -1) 0 var(--bf-color-text-default);
|
|
4718
4914
|
color: var(--bf-color-text-default);
|
|
4719
4915
|
}
|
|
4720
4916
|
|
|
@@ -4764,10 +4960,10 @@ html.u-baseline-grid::after {
|
|
|
4764
4960
|
display: grid;
|
|
4765
4961
|
gap: calc(var(--bf-baseline) * 0.75);
|
|
4766
4962
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
4767
|
-
margin: 0 0
|
|
4963
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
4768
4964
|
min-inline-size: 0;
|
|
4769
|
-
padding-block:
|
|
4770
|
-
padding-inline: var(--bf-
|
|
4965
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
4966
|
+
padding-inline: var(--bf-component-inline-inset-field);
|
|
4771
4967
|
}
|
|
4772
4968
|
|
|
4773
4969
|
:where(.bf-theme) :where(.bf-choice-row:hover) {
|
|
@@ -4775,8 +4971,8 @@ html.u-baseline-grid::after {
|
|
|
4775
4971
|
}
|
|
4776
4972
|
|
|
4777
4973
|
:where(.bf-theme) :where(.bf-choice-row:has(:focus-visible)) {
|
|
4778
|
-
outline:
|
|
4779
|
-
outline-offset: -
|
|
4974
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
4975
|
+
outline-offset: -0.125rem;
|
|
4780
4976
|
}
|
|
4781
4977
|
|
|
4782
4978
|
:where(.bf-theme) :where(.bf-choice-row input[type='radio']) {
|
|
@@ -4823,7 +5019,7 @@ html.u-baseline-grid::after {
|
|
|
4823
5019
|
gap: var(--bf-field-gap);
|
|
4824
5020
|
padding-block-end: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
4825
5021
|
padding-block-start: var(--bf-panel-padding-block);
|
|
4826
|
-
padding-inline: var(--bf-
|
|
5022
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
4827
5023
|
}
|
|
4828
5024
|
|
|
4829
5025
|
:where(.bf-theme) :where(.bf-inline-options-heading) {
|
|
@@ -4897,11 +5093,11 @@ html.u-baseline-grid::after {
|
|
|
4897
5093
|
cursor: pointer;
|
|
4898
5094
|
display: inline-flex;
|
|
4899
5095
|
justify-content: center;
|
|
4900
|
-
margin-bottom:
|
|
5096
|
+
margin-bottom: var(--bf-single-line-row-margin-block-end);
|
|
4901
5097
|
max-inline-size: 100%;
|
|
4902
5098
|
overflow: hidden;
|
|
4903
|
-
padding-block:
|
|
4904
|
-
padding-inline: var(--bf-control-inline-padding-action);
|
|
5099
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
5100
|
+
padding-inline: var(--bf-control-inline-padding-action-bordered);
|
|
4905
5101
|
text-align: center;
|
|
4906
5102
|
text-decoration: none;
|
|
4907
5103
|
text-overflow: ellipsis;
|
|
@@ -4927,8 +5123,8 @@ html.u-baseline-grid::after {
|
|
|
4927
5123
|
}
|
|
4928
5124
|
|
|
4929
5125
|
:where(.bf-theme) :where(.bf-segmented-control-button:focus-visible, .bf-tab-buttons-button:focus-visible) {
|
|
4930
|
-
outline:
|
|
4931
|
-
outline-offset: -
|
|
5126
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
5127
|
+
outline-offset: -0.125rem;
|
|
4932
5128
|
z-index: 2;
|
|
4933
5129
|
}
|
|
4934
5130
|
|
|
@@ -4962,8 +5158,10 @@ html.u-baseline-grid::after {
|
|
|
4962
5158
|
font-weight: var(--bf-body-font-weight, 400);
|
|
4963
5159
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
4964
5160
|
color: var(--bf-color-text-muted);
|
|
4965
|
-
margin: 0;
|
|
5161
|
+
margin: 0 0 var(--bf-body-margin-bottom);
|
|
4966
5162
|
min-inline-size: 0;
|
|
5163
|
+
padding-block-end: 0;
|
|
5164
|
+
padding-block-start: var(--bf-body-nudge-start);
|
|
4967
5165
|
}
|
|
4968
5166
|
|
|
4969
5167
|
:where(.bf-theme) :where(.bf-breadcrumbs-item) + :where(.bf-breadcrumbs-item)::before {
|
|
@@ -4994,26 +5192,35 @@ html.u-baseline-grid::after {
|
|
|
4994
5192
|
:where(.bf-theme) :where(.bf-tab-section) {
|
|
4995
5193
|
container-name: bf-tab-section;
|
|
4996
5194
|
container-type: inline-size;
|
|
4997
|
-
margin
|
|
5195
|
+
margin: 0;
|
|
4998
5196
|
min-inline-size: 0;
|
|
4999
5197
|
}
|
|
5000
5198
|
|
|
5001
|
-
:where(.bf-theme) :where(.bf-tab-section
|
|
5002
|
-
|
|
5199
|
+
:where(.bf-theme) :where(.bf-tab-section-layout) {
|
|
5200
|
+
display: grid;
|
|
5201
|
+
grid-template-columns: minmax(0, 1fr);
|
|
5202
|
+
min-inline-size: 0;
|
|
5003
5203
|
}
|
|
5004
5204
|
|
|
5005
|
-
:where(.bf-theme) :where(.bf-tab-section
|
|
5006
|
-
|
|
5205
|
+
:where(.bf-theme) :where(.bf-tab-section-rule) {
|
|
5206
|
+
grid-column: 1 / -1;
|
|
5007
5207
|
}
|
|
5008
5208
|
|
|
5009
|
-
:where(.bf-theme) :where(.bf-tab-section-
|
|
5209
|
+
:where(.bf-theme) :where(.bf-tab-section-body) {
|
|
5210
|
+
--bf-stack-space: var(--bf-section-space-shallow);
|
|
5211
|
+
align-content: start;
|
|
5010
5212
|
display: grid;
|
|
5213
|
+
gap: var(--bf-stack-space);
|
|
5011
5214
|
grid-template-columns: minmax(0, 1fr);
|
|
5012
5215
|
min-inline-size: 0;
|
|
5013
5216
|
}
|
|
5014
5217
|
|
|
5015
|
-
:where(.bf-theme) :where(.bf-tab-section-
|
|
5016
|
-
|
|
5218
|
+
:where(.bf-theme) :where(.bf-tab-section-copy) {
|
|
5219
|
+
align-content: start;
|
|
5220
|
+
display: grid;
|
|
5221
|
+
grid-template-columns: minmax(0, 1fr);
|
|
5222
|
+
min-inline-size: 0;
|
|
5223
|
+
row-gap: var(--bf-space-1);
|
|
5017
5224
|
}
|
|
5018
5225
|
|
|
5019
5226
|
:where(.bf-theme) :where(.bf-tab-section-header, .bf-tab-section-intro, .bf-tab-section-tabs) {
|
|
@@ -5021,51 +5228,50 @@ html.u-baseline-grid::after {
|
|
|
5021
5228
|
overflow-wrap: anywhere;
|
|
5022
5229
|
}
|
|
5023
5230
|
|
|
5024
|
-
|
|
5025
|
-
|
|
5026
|
-
child's semantic margins. */
|
|
5027
|
-
:where(.bf-theme) :where(.bf-tab-section:not(.is-50-50)) > :where(.bf-tab-section-layout) > :where(.bf-tab-section-tabs),
|
|
5028
|
-
:where(.bf-theme) :where(.bf-tab-section.is-50-50) > :where(.bf-tab-section-layout:has(> .bf-tab-section-intro)) > :where(.bf-tab-section-tabs) {
|
|
5029
|
-
padding-block-start: var(--bf-section-space-shallow);
|
|
5231
|
+
:where(.bf-theme) :where(.bf-tab-section-tabs) {
|
|
5232
|
+
align-self: start;
|
|
5030
5233
|
}
|
|
5031
5234
|
|
|
5032
|
-
@container bf-tab-section (width >=
|
|
5033
|
-
:where(.bf-theme) :where(.bf-tab-section
|
|
5235
|
+
@container bf-tab-section (width >= 45rem) {
|
|
5236
|
+
:where(.bf-theme) :where(.bf-tab-section-body) {
|
|
5034
5237
|
column-gap: var(--bf-grid-gap-inline);
|
|
5035
5238
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
5036
5239
|
}
|
|
5037
5240
|
|
|
5038
|
-
:where(.bf-theme) :where(.bf-tab-section
|
|
5241
|
+
:where(.bf-theme) :where(.bf-tab-section-copy) {
|
|
5039
5242
|
grid-column: 1 / -1;
|
|
5243
|
+
grid-template-columns: subgrid;
|
|
5040
5244
|
}
|
|
5041
5245
|
|
|
5042
5246
|
/* With supporting copy or actions, Vanilla's heading row is 50/50 for all
|
|
5043
5247
|
three section layouts. The following tab rail retains its own requested
|
|
5044
5248
|
full, half or three-quarter span. */
|
|
5045
|
-
:where(.bf-theme) :where(.bf-tab-section-
|
|
5249
|
+
:where(.bf-theme) :where(.bf-tab-section-copy:has(> .bf-tab-section-intro)) > :where(.bf-tab-section-header) {
|
|
5046
5250
|
grid-column: 1 / 3;
|
|
5047
5251
|
}
|
|
5048
5252
|
|
|
5049
|
-
:where(.bf-theme) :where(.bf-tab-section
|
|
5253
|
+
:where(.bf-theme) :where(.bf-tab-section-copy) > :where(.bf-tab-section-intro) {
|
|
5050
5254
|
grid-column: 3 / -1;
|
|
5051
5255
|
}
|
|
5052
5256
|
|
|
5053
|
-
:where(.bf-theme) :where(.bf-tab-section
|
|
5257
|
+
:where(.bf-theme) :where(.bf-tab-section-body) > :where(.bf-tab-section-tabs) {
|
|
5054
5258
|
grid-column: 1 / -1;
|
|
5055
5259
|
}
|
|
5056
5260
|
|
|
5057
5261
|
/* An unadorned 50/50 section lets auto-placement put the heading and tabs
|
|
5058
5262
|
in the same row. If an intro exists, it occupies that right-hand cell and
|
|
5059
5263
|
the tabs move to the following row, matching the upstream rendering. */
|
|
5060
|
-
:where(.bf-theme) :where(.bf-tab-section.is-50-50)
|
|
5264
|
+
:where(.bf-theme) :where(.bf-tab-section.is-50-50) :where(.bf-tab-section-copy:not(:has(> .bf-tab-section-intro))) {
|
|
5061
5265
|
grid-column: 1 / 3;
|
|
5266
|
+
grid-row: 1;
|
|
5062
5267
|
}
|
|
5063
5268
|
|
|
5064
|
-
:where(.bf-theme) :where(.bf-tab-section.is-50-50)
|
|
5269
|
+
:where(.bf-theme) :where(.bf-tab-section.is-50-50) :where(.bf-tab-section-copy:not(:has(> .bf-tab-section-intro))) + :where(.bf-tab-section-tabs) {
|
|
5065
5270
|
grid-column: 3 / -1;
|
|
5271
|
+
grid-row: 1;
|
|
5066
5272
|
}
|
|
5067
5273
|
|
|
5068
|
-
:where(.bf-theme) :where(.bf-tab-section.is-25-75)
|
|
5274
|
+
:where(.bf-theme) :where(.bf-tab-section.is-25-75) :where(.bf-tab-section-body) > :where(.bf-tab-section-tabs) {
|
|
5069
5275
|
grid-column: 2 / -1;
|
|
5070
5276
|
}
|
|
5071
5277
|
}
|
|
@@ -5076,11 +5282,11 @@ html.u-baseline-grid::after {
|
|
|
5076
5282
|
container-type: inline-size;
|
|
5077
5283
|
display: grid;
|
|
5078
5284
|
grid-template-columns: auto minmax(0, 1fr);
|
|
5079
|
-
margin
|
|
5285
|
+
margin: 0;
|
|
5080
5286
|
min-inline-size: 0;
|
|
5081
5287
|
}
|
|
5082
5288
|
|
|
5083
|
-
:where(.bf-theme) :where(.bf-article-pagination-link) {
|
|
5289
|
+
:where(.bf-theme) :where(a.bf-article-pagination-link) {
|
|
5084
5290
|
background-color: var(--bf-color-background-default);
|
|
5085
5291
|
border: var(--bf-border-width) solid transparent;
|
|
5086
5292
|
box-sizing: border-box;
|
|
@@ -5096,8 +5302,9 @@ html.u-baseline-grid::after {
|
|
|
5096
5302
|
text-decoration: none;
|
|
5097
5303
|
}
|
|
5098
5304
|
|
|
5099
|
-
:where(.bf-theme) :where(.bf-article-pagination-link:hover) {
|
|
5305
|
+
:where(.bf-theme) :where(a.bf-article-pagination-link:hover) {
|
|
5100
5306
|
background-color: var(--bf-color-background-hover);
|
|
5307
|
+
text-decoration: none;
|
|
5101
5308
|
}
|
|
5102
5309
|
|
|
5103
5310
|
:where(.bf-theme) :where(.bf-article-pagination-link:focus:not(:focus-visible)) {
|
|
@@ -5105,8 +5312,8 @@ html.u-baseline-grid::after {
|
|
|
5105
5312
|
}
|
|
5106
5313
|
|
|
5107
5314
|
:where(.bf-theme) :where(.bf-article-pagination-link:focus-visible) {
|
|
5108
|
-
outline:
|
|
5109
|
-
outline-offset:
|
|
5315
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
5316
|
+
outline-offset: 0.125rem;
|
|
5110
5317
|
}
|
|
5111
5318
|
|
|
5112
5319
|
:where(.bf-theme) :where(.bf-article-pagination-link.is-previous) {
|
|
@@ -5208,12 +5415,12 @@ html.u-baseline-grid::after {
|
|
|
5208
5415
|
|
|
5209
5416
|
:where(.bf-theme) :where(.bf-article-pagination-link.is-previous:not(:only-child) .bf-article-pagination-label),
|
|
5210
5417
|
:where(.bf-theme) :where(.bf-article-pagination-link.is-previous:not(:only-child) .bf-article-pagination-title) {
|
|
5211
|
-
block-size:
|
|
5418
|
+
block-size: 0.0625rem;
|
|
5212
5419
|
border: 0;
|
|
5213
5420
|
clip: rect(0 0 0 0);
|
|
5214
5421
|
clip-path: inset(50%);
|
|
5215
|
-
inline-size:
|
|
5216
|
-
margin: -
|
|
5422
|
+
inline-size: 0.0625rem;
|
|
5423
|
+
margin: -0.0625rem;
|
|
5217
5424
|
overflow: hidden;
|
|
5218
5425
|
padding: 0;
|
|
5219
5426
|
position: absolute;
|
|
@@ -5231,6 +5438,10 @@ html.u-baseline-grid::after {
|
|
|
5231
5438
|
padding: 0;
|
|
5232
5439
|
}
|
|
5233
5440
|
|
|
5441
|
+
:where(.bf-theme) :where(.bf-list:has(> .bf-list-item:is(.is-ticked, .is-crossed)), ol.bf-list.is-divided) {
|
|
5442
|
+
padding-inline-start: var(--bf-leading-mark-group-inset);
|
|
5443
|
+
}
|
|
5444
|
+
|
|
5234
5445
|
:where(.bf-theme) :where(.bf-list-item) {
|
|
5235
5446
|
font-family: var(--bf-body-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
5236
5447
|
font-size: var(--bf-body-font-size, 1rem);
|
|
@@ -5246,8 +5457,10 @@ html.u-baseline-grid::after {
|
|
|
5246
5457
|
}
|
|
5247
5458
|
|
|
5248
5459
|
:where(.bf-theme) :where(.bf-list.is-divided) > :where(.bf-list-item) {
|
|
5249
|
-
|
|
5250
|
-
|
|
5460
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
5461
|
+
box-shadow: inset 0 0.0625rem 0 var(--bf-color-border-low-contrast);
|
|
5462
|
+
margin-block-end: var(--bf-single-line-row-margin-block-end);
|
|
5463
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
5251
5464
|
}
|
|
5252
5465
|
|
|
5253
5466
|
:where(.bf-theme) :where(.bf-list.is-divided) > :where(.bf-list-item:first-child) {
|
|
@@ -5255,7 +5468,7 @@ html.u-baseline-grid::after {
|
|
|
5255
5468
|
}
|
|
5256
5469
|
|
|
5257
5470
|
:where(.bf-theme) :where(.bf-list-item.is-ticked, .bf-list-item.is-crossed) {
|
|
5258
|
-
padding-inline-start:
|
|
5471
|
+
padding-inline-start: var(--bf-leading-mark-offset);
|
|
5259
5472
|
position: relative;
|
|
5260
5473
|
}
|
|
5261
5474
|
|
|
@@ -5280,10 +5493,6 @@ html.u-baseline-grid::after {
|
|
|
5280
5493
|
background-image: var(--bf-ui-icon-error-grey);
|
|
5281
5494
|
}
|
|
5282
5495
|
|
|
5283
|
-
:where(.bf-theme) :where(.bf-list.is-divided) > :where(.bf-list-item.is-ticked, .bf-list-item.is-crossed)::before {
|
|
5284
|
-
top: calc(var(--bf-leading-icon-offset) + (var(--bf-baseline) * 0.5));
|
|
5285
|
-
}
|
|
5286
|
-
|
|
5287
5496
|
:where(.bf-theme) :where(ol.bf-list.is-divided) {
|
|
5288
5497
|
counter-reset: bf-list-counter;
|
|
5289
5498
|
}
|
|
@@ -5365,11 +5574,11 @@ html.u-baseline-grid::after {
|
|
|
5365
5574
|
background: var(--bf-color-background-alt);
|
|
5366
5575
|
color: var(--bf-color-link-default);
|
|
5367
5576
|
display: block;
|
|
5368
|
-
left: -
|
|
5577
|
+
left: -62.4375rem;
|
|
5369
5578
|
max-inline-size: calc(100vw - var(--bf-baseline));
|
|
5370
5579
|
position: absolute;
|
|
5371
5580
|
text-decoration: none;
|
|
5372
|
-
top: -
|
|
5581
|
+
top: -62.4375rem;
|
|
5373
5582
|
}
|
|
5374
5583
|
|
|
5375
5584
|
:where(.bf-theme) :where(.bf-skip-link:hover) {
|
|
@@ -5378,7 +5587,7 @@ html.u-baseline-grid::after {
|
|
|
5378
5587
|
|
|
5379
5588
|
:where(.bf-theme) :where(.bf-skip-link:focus, .bf-skip-link:focus-visible) {
|
|
5380
5589
|
left: calc(var(--bf-baseline) * 0.5);
|
|
5381
|
-
outline:
|
|
5590
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
5382
5591
|
outline-offset: 0;
|
|
5383
5592
|
padding-block: calc(var(--bf-baseline) * 1.5);
|
|
5384
5593
|
padding-inline: calc(var(--bf-baseline) * 1.5);
|
|
@@ -5429,15 +5638,16 @@ html.u-baseline-grid::after {
|
|
|
5429
5638
|
line-height: var(--bf-table-row-line-height);
|
|
5430
5639
|
margin: 0;
|
|
5431
5640
|
overflow: hidden;
|
|
5432
|
-
padding-block: var(--bf-table-row-padding);
|
|
5433
|
-
padding-
|
|
5641
|
+
padding-block-end: var(--bf-table-row-padding-block-end);
|
|
5642
|
+
padding-block-start: var(--bf-table-row-padding-block-start);
|
|
5643
|
+
padding-inline: var(--bf-component-inline-inset-field);
|
|
5434
5644
|
text-align: left;
|
|
5435
5645
|
text-overflow: ellipsis;
|
|
5436
5646
|
vertical-align: top;
|
|
5437
5647
|
}
|
|
5438
5648
|
|
|
5439
5649
|
:where(.bf-theme) :where(th.is-icon-placeholder, td.is-icon-placeholder, .bf-table-cell.is-icon-placeholder) {
|
|
5440
|
-
padding-inline-start: calc(
|
|
5650
|
+
padding-inline-start: calc(var(--bf-component-inline-inset-field) + var(--bf-leading-icon-size) + var(--bf-leading-icon-gap));
|
|
5441
5651
|
}
|
|
5442
5652
|
|
|
5443
5653
|
:where(.bf-theme) :where(th.is-icon-placeholder, td.is-icon-placeholder, .bf-table-cell.is-icon-placeholder) > :where(.bf-icon:first-child) {
|
|
@@ -5495,15 +5705,17 @@ html.u-baseline-grid::after {
|
|
|
5495
5705
|
gap: 0;
|
|
5496
5706
|
inline-size: fit-content;
|
|
5497
5707
|
justify-self: start;
|
|
5498
|
-
margin: 0 var(--bf-ui-chip-padding-inline) var(--bf-
|
|
5708
|
+
margin: 0 var(--bf-ui-chip-padding-inline) var(--bf-single-line-row-margin-block-end) 0;
|
|
5499
5709
|
max-inline-size: 100%;
|
|
5500
|
-
|
|
5501
|
-
padding-
|
|
5502
|
-
padding-inline: var(--bf-ui-chip-padding-inline);
|
|
5710
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
5711
|
+
padding-inline: max(0rem, calc(var(--bf-ui-chip-padding-inline) - var(--bf-border-width)));
|
|
5503
5712
|
position: relative;
|
|
5504
5713
|
text-decoration: none;
|
|
5505
5714
|
user-select: none;
|
|
5506
|
-
|
|
5715
|
+
/* Inline-flex exposes the first text child's baseline. The surrounding
|
|
5716
|
+
border-aware row contract now matches buttons instead of inventing a
|
|
5717
|
+
second chip-only occupied height. */
|
|
5718
|
+
vertical-align: baseline;
|
|
5507
5719
|
white-space: nowrap;
|
|
5508
5720
|
}
|
|
5509
5721
|
|
|
@@ -5543,6 +5755,15 @@ html.u-baseline-grid::after {
|
|
|
5543
5755
|
--bf-ui-chip-background-active: var(--bf-color-background-information-active);
|
|
5544
5756
|
}
|
|
5545
5757
|
|
|
5758
|
+
:where(.bf-theme) :where(.bf-chip.is-borderless) {
|
|
5759
|
+
--bf-ui-chip-border: transparent;
|
|
5760
|
+
--bf-ui-chip-border-hover: transparent;
|
|
5761
|
+
--bf-ui-chip-border-active: transparent;
|
|
5762
|
+
--bf-ui-chip-background: transparent;
|
|
5763
|
+
--bf-ui-chip-background-hover: transparent;
|
|
5764
|
+
--bf-ui-chip-background-active: transparent;
|
|
5765
|
+
}
|
|
5766
|
+
|
|
5546
5767
|
:where(.bf-theme) :where(.bf-chip, .bf-chip.is-positive, .bf-chip.is-caution, .bf-chip.is-negative, .bf-chip.is-information):hover {
|
|
5547
5768
|
background-color: var(--bf-ui-chip-background-hover);
|
|
5548
5769
|
border-color: var(--bf-ui-chip-border-hover);
|
|
@@ -5627,16 +5848,20 @@ html.u-baseline-grid::after {
|
|
|
5627
5848
|
--bf-ui-status-background: color-mix(in srgb, var(--bf-color-background-alt) 70%, black);
|
|
5628
5849
|
--bf-ui-status-color: var(--bf-color-button-positive-text);
|
|
5629
5850
|
background-color: var(--bf-ui-status-background);
|
|
5851
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
5630
5852
|
color: var(--bf-ui-status-color);
|
|
5631
5853
|
display: inline-block;
|
|
5854
|
+
inline-size: fit-content;
|
|
5855
|
+
justify-self: start;
|
|
5632
5856
|
font-family: var(--bf-body-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
5633
5857
|
font-size: var(--bf-body-font-size, 1rem);
|
|
5634
5858
|
font-style: var(--bf-body-font-style, normal);
|
|
5635
5859
|
font-weight: var(--bf-body-font-weight, 400);
|
|
5636
5860
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
5637
|
-
margin: 0;
|
|
5638
|
-
|
|
5639
|
-
|
|
5861
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
5862
|
+
/* Status paint is physically symmetric and shares the same occupied block
|
|
5863
|
+
as a button; typography still comes from the body role. */
|
|
5864
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
5640
5865
|
padding-inline: var(--bf-ui-chip-padding-inline);
|
|
5641
5866
|
text-align: center;
|
|
5642
5867
|
text-decoration: none;
|
|
@@ -5674,7 +5899,7 @@ html.u-baseline-grid::after {
|
|
|
5674
5899
|
margin: 0;
|
|
5675
5900
|
padding: 0;
|
|
5676
5901
|
position: relative;
|
|
5677
|
-
text-indent: -
|
|
5902
|
+
text-indent: -624.9375rem;
|
|
5678
5903
|
}
|
|
5679
5904
|
|
|
5680
5905
|
:where(.bf-theme) :where(.bf-chip-dismiss) {
|
|
@@ -5686,7 +5911,7 @@ html.u-baseline-grid::after {
|
|
|
5686
5911
|
:where(.bf-theme) :where(.bf-chip-dismiss, .bf-search-box-reset, .bf-search-and-filter-clear)::before,
|
|
5687
5912
|
:where(.bf-theme) :where(.bf-chip-dismiss, .bf-search-box-reset, .bf-search-and-filter-clear)::after {
|
|
5688
5913
|
background: currentColor;
|
|
5689
|
-
block-size:
|
|
5914
|
+
block-size: 0.125rem;
|
|
5690
5915
|
content: "";
|
|
5691
5916
|
inline-size: 0.75rem;
|
|
5692
5917
|
left: 50%;
|
|
@@ -5704,7 +5929,7 @@ html.u-baseline-grid::after {
|
|
|
5704
5929
|
|
|
5705
5930
|
|
|
5706
5931
|
:where(.bf-theme) :where(.bf-search-box) {
|
|
5707
|
-
--bf-search-box-action-inline-size: calc(1rem + (var(--bf-
|
|
5932
|
+
--bf-search-box-action-inline-size: calc(1rem + (var(--bf-component-inline-inset-field) * 2));
|
|
5708
5933
|
--bf-search-box-trailing-inline-size: calc((var(--bf-search-box-action-inline-size) * 2) + var(--bf-border-width));
|
|
5709
5934
|
display: flex;
|
|
5710
5935
|
inline-size: 100%;
|
|
@@ -5721,12 +5946,12 @@ html.u-baseline-grid::after {
|
|
|
5721
5946
|
|
|
5722
5947
|
:where(.bf-theme) :where(.bf-search-box-reset, .bf-search-box-button) {
|
|
5723
5948
|
align-items: center;
|
|
5724
|
-
block-size:
|
|
5949
|
+
block-size: auto;
|
|
5725
5950
|
display: inline-flex;
|
|
5726
5951
|
inline-size: var(--bf-search-box-action-inline-size);
|
|
5952
|
+
inset-block: 0;
|
|
5727
5953
|
justify-content: center;
|
|
5728
5954
|
position: absolute;
|
|
5729
|
-
top: 0;
|
|
5730
5955
|
}
|
|
5731
5956
|
|
|
5732
5957
|
:where(.bf-theme) :where(.bf-search-box-reset) {
|
|
@@ -5743,7 +5968,7 @@ html.u-baseline-grid::after {
|
|
|
5743
5968
|
inset-inline-end: var(--bf-border-width);
|
|
5744
5969
|
margin: 0;
|
|
5745
5970
|
padding: 0;
|
|
5746
|
-
text-indent: -
|
|
5971
|
+
text-indent: -624.9375rem;
|
|
5747
5972
|
}
|
|
5748
5973
|
|
|
5749
5974
|
:where(.bf-theme) :where(.bf-search-box-button)::before {
|
|
@@ -5770,8 +5995,8 @@ html.u-baseline-grid::after {
|
|
|
5770
5995
|
}
|
|
5771
5996
|
|
|
5772
5997
|
:where(.bf-theme) :where(.bf-search-box-reset:focus-visible, .bf-search-box-button:focus-visible) {
|
|
5773
|
-
outline:
|
|
5774
|
-
outline-offset: -
|
|
5998
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
5999
|
+
outline-offset: -0.125rem;
|
|
5775
6000
|
}
|
|
5776
6001
|
|
|
5777
6002
|
:where(.bf-theme) :where(.bf-search-and-filter) {
|
|
@@ -5786,7 +6011,7 @@ html.u-baseline-grid::after {
|
|
|
5786
6011
|
:where(.bf-theme) :where(.bf-search-and-filter-search-container) {
|
|
5787
6012
|
align-items: stretch;
|
|
5788
6013
|
background: transparent;
|
|
5789
|
-
box-shadow: inset 0 -
|
|
6014
|
+
box-shadow: inset 0 -0.0625rem 0 var(--bf-color-border-high-contrast);
|
|
5790
6015
|
display: flex;
|
|
5791
6016
|
flex-wrap: wrap;
|
|
5792
6017
|
gap: var(--bf-field-gap);
|
|
@@ -5802,7 +6027,7 @@ html.u-baseline-grid::after {
|
|
|
5802
6027
|
}
|
|
5803
6028
|
|
|
5804
6029
|
:where(.bf-theme) :where(.bf-search-and-filter-box) {
|
|
5805
|
-
--bf-search-and-filter-action-inline-size: calc(1rem + (var(--bf-
|
|
6030
|
+
--bf-search-and-filter-action-inline-size: calc(1rem + (var(--bf-component-inline-inset-field) * 2));
|
|
5806
6031
|
--bf-search-and-filter-trailing-inline-size: calc(var(--bf-search-and-filter-action-inline-size) * 2);
|
|
5807
6032
|
display: inline-flex;
|
|
5808
6033
|
flex: 1 1 12rem;
|
|
@@ -5819,17 +6044,17 @@ html.u-baseline-grid::after {
|
|
|
5819
6044
|
:where(.bf-theme) :where(.bf-search-and-filter-search-button) {
|
|
5820
6045
|
appearance: none;
|
|
5821
6046
|
background: transparent;
|
|
5822
|
-
block-size:
|
|
6047
|
+
block-size: auto;
|
|
5823
6048
|
border: 0;
|
|
5824
6049
|
color: var(--bf-color-text-default);
|
|
5825
6050
|
cursor: pointer;
|
|
5826
6051
|
inline-size: var(--bf-search-and-filter-action-inline-size);
|
|
6052
|
+
inset-block: 0;
|
|
5827
6053
|
inset-inline-end: 0;
|
|
5828
6054
|
margin: 0;
|
|
5829
6055
|
padding: 0;
|
|
5830
6056
|
position: absolute;
|
|
5831
|
-
text-indent: -
|
|
5832
|
-
top: 0;
|
|
6057
|
+
text-indent: -624.9375rem;
|
|
5833
6058
|
}
|
|
5834
6059
|
|
|
5835
6060
|
:where(.bf-theme) :where(.bf-search-and-filter-search-button)::before {
|
|
@@ -5856,16 +6081,16 @@ html.u-baseline-grid::after {
|
|
|
5856
6081
|
}
|
|
5857
6082
|
|
|
5858
6083
|
:where(.bf-theme) :where(.bf-search-and-filter-search-button:focus-visible, .bf-search-and-filter-selected-count:focus-visible) {
|
|
5859
|
-
outline:
|
|
5860
|
-
outline-offset: -
|
|
6084
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6085
|
+
outline-offset: -0.125rem;
|
|
5861
6086
|
}
|
|
5862
6087
|
|
|
5863
6088
|
:where(.bf-theme) :where(.bf-search-and-filter-clear) {
|
|
5864
|
-
block-size:
|
|
6089
|
+
block-size: auto;
|
|
5865
6090
|
inline-size: var(--bf-search-and-filter-action-inline-size);
|
|
6091
|
+
inset-block: 0;
|
|
5866
6092
|
inset-inline-end: var(--bf-search-and-filter-action-inline-size);
|
|
5867
6093
|
position: absolute;
|
|
5868
|
-
top: 0;
|
|
5869
6094
|
}
|
|
5870
6095
|
|
|
5871
6096
|
:where(.bf-theme) :where(.bf-search-and-filter-selected-count) {
|
|
@@ -5895,12 +6120,12 @@ html.u-baseline-grid::after {
|
|
|
5895
6120
|
background-color: var(--bf-color-background-inputs);
|
|
5896
6121
|
border: var(--bf-border-width) solid var(--bf-color-border-default);
|
|
5897
6122
|
border-top: 0;
|
|
5898
|
-
box-shadow: 0
|
|
6123
|
+
box-shadow: 0 1.5rem 4.5rem rgba(0, 0, 0, 0.38);
|
|
5899
6124
|
display: grid;
|
|
5900
6125
|
gap: var(--bf-field-gap);
|
|
5901
6126
|
opacity: 1;
|
|
5902
6127
|
padding-bottom: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
5903
|
-
padding-inline: var(--bf-
|
|
6128
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
5904
6129
|
padding-top: var(--bf-panel-padding-block);
|
|
5905
6130
|
position: absolute;
|
|
5906
6131
|
top: 100%;
|
|
@@ -5945,12 +6170,6 @@ html.u-baseline-grid::after {
|
|
|
5945
6170
|
}
|
|
5946
6171
|
|
|
5947
6172
|
:where(.bf-theme) :where(.bf-filter-panel-section-heading) {
|
|
5948
|
-
font-family: var(--bf-h6-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
5949
|
-
font-size: var(--bf-h6-font-size, 1rem);
|
|
5950
|
-
font-style: var(--bf-h6-font-style, normal);
|
|
5951
|
-
font-weight: var(--bf-h6-font-weight, 400);
|
|
5952
|
-
line-height: var(--bf-h6-line-height, 1.5rem);
|
|
5953
|
-
color: var(--bf-color-text-muted);
|
|
5954
6173
|
margin: 0;
|
|
5955
6174
|
padding-block: 0;
|
|
5956
6175
|
}
|
|
@@ -5997,7 +6216,7 @@ html.u-baseline-grid::after {
|
|
|
5997
6216
|
:where(.bf-theme) :where(.bf-list-tree) {
|
|
5998
6217
|
list-style: none;
|
|
5999
6218
|
margin: 0;
|
|
6000
|
-
padding-left:
|
|
6219
|
+
padding-left: 0;
|
|
6001
6220
|
}
|
|
6002
6221
|
|
|
6003
6222
|
:where(.bf-theme) :where(.bf-list-tree) :where(.bf-list-tree) {
|
|
@@ -6011,27 +6230,29 @@ html.u-baseline-grid::after {
|
|
|
6011
6230
|
}
|
|
6012
6231
|
|
|
6013
6232
|
:where(.bf-theme) :where(.bf-list-tree-item) {
|
|
6233
|
+
display: grid;
|
|
6014
6234
|
margin: 0;
|
|
6015
|
-
padding-left:
|
|
6235
|
+
padding-left: 0;
|
|
6016
6236
|
position: relative;
|
|
6017
6237
|
}
|
|
6018
6238
|
|
|
6019
|
-
:where(.bf-theme) :where(.bf-list-tree-link) {
|
|
6239
|
+
:where(.bf-theme) :where(a.bf-list-tree-link) {
|
|
6020
6240
|
font-family: var(--bf-body-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
6021
6241
|
font-size: var(--bf-body-font-size, 1rem);
|
|
6022
6242
|
font-style: var(--bf-body-font-style, normal);
|
|
6023
6243
|
font-weight: var(--bf-body-font-weight, 400);
|
|
6024
6244
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
6025
6245
|
color: var(--bf-color-text-default);
|
|
6246
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
6026
6247
|
cursor: pointer;
|
|
6027
6248
|
display: block;
|
|
6028
|
-
margin: 0;
|
|
6029
|
-
|
|
6030
|
-
padding-
|
|
6249
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
6250
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
6251
|
+
padding-inline: var(--bf-component-inline-inset-continuation) var(--bf-component-inline-inset-action);
|
|
6031
6252
|
text-decoration: none;
|
|
6032
6253
|
}
|
|
6033
6254
|
|
|
6034
|
-
:where(.bf-theme) :where(.bf-list-tree-link
|
|
6255
|
+
:where(.bf-theme) :where(a.bf-list-tree-link:hover) {
|
|
6035
6256
|
color: var(--bf-color-link-default);
|
|
6036
6257
|
text-decoration: underline;
|
|
6037
6258
|
}
|
|
@@ -6045,8 +6266,8 @@ html.u-baseline-grid::after {
|
|
|
6045
6266
|
}
|
|
6046
6267
|
|
|
6047
6268
|
:where(.bf-theme) :where(.bf-list-tree-link):focus-visible {
|
|
6048
|
-
outline:
|
|
6049
|
-
outline-offset: -
|
|
6269
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6270
|
+
outline-offset: -0.125rem;
|
|
6050
6271
|
}
|
|
6051
6272
|
|
|
6052
6273
|
:where(.bf-theme) :where(.bf-list-tree-toggle) {
|
|
@@ -6058,14 +6279,14 @@ html.u-baseline-grid::after {
|
|
|
6058
6279
|
align-items: center;
|
|
6059
6280
|
background: transparent;
|
|
6060
6281
|
border: 0;
|
|
6282
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
6061
6283
|
color: var(--bf-color-text-default);
|
|
6062
6284
|
cursor: pointer;
|
|
6063
|
-
display:
|
|
6064
|
-
gap:
|
|
6065
|
-
margin: 0 0
|
|
6066
|
-
|
|
6067
|
-
padding-
|
|
6068
|
-
padding-inline: calc(var(--bf-baseline) * 0.25) calc(var(--bf-baseline) * 0.5);
|
|
6285
|
+
display: flex;
|
|
6286
|
+
gap: var(--bf-disclosure-gap);
|
|
6287
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
6288
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
6289
|
+
padding-inline: 0 calc(var(--bf-baseline) * 0.5);
|
|
6069
6290
|
text-align: left;
|
|
6070
6291
|
width: 100%;
|
|
6071
6292
|
}
|
|
@@ -6079,8 +6300,8 @@ html.u-baseline-grid::after {
|
|
|
6079
6300
|
}
|
|
6080
6301
|
|
|
6081
6302
|
:where(.bf-theme) :where(.bf-list-tree-toggle):focus-visible {
|
|
6082
|
-
outline:
|
|
6083
|
-
outline-offset: -
|
|
6303
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6304
|
+
outline-offset: -0.125rem;
|
|
6084
6305
|
}
|
|
6085
6306
|
|
|
6086
6307
|
:where(.bf-theme) :where(.bf-list-tree-toggle)::before {
|
|
@@ -6092,20 +6313,42 @@ html.u-baseline-grid::after {
|
|
|
6092
6313
|
content: "";
|
|
6093
6314
|
flex: 0 0 1rem;
|
|
6094
6315
|
inline-size: 1rem;
|
|
6095
|
-
transform: rotate(-90deg);
|
|
6316
|
+
transform: translateY(var(--bf-disclosure-icon-optical-offset-block)) rotate(-90deg);
|
|
6096
6317
|
}
|
|
6097
6318
|
|
|
6098
6319
|
:where(.bf-theme) :where(.bf-list-tree-toggle[aria-expanded='true'])::before {
|
|
6099
|
-
transform: rotate(0deg);
|
|
6320
|
+
transform: translateY(var(--bf-disclosure-icon-optical-offset-block)) rotate(0deg);
|
|
6100
6321
|
}
|
|
6101
6322
|
|
|
6102
6323
|
|
|
6103
6324
|
:where(.bf-theme) :where(.bf-side-navigation, .bf-side-navigation.is-icons, .bf-side-navigation.is-accordion, .bf-side-navigation.is-raw-html) {
|
|
6325
|
+
/* Plain navigation commands use the action rail. Icon-led rows move only their mark canvas,
|
|
6326
|
+
so their copy reaches the shared continuation rail without a fourth
|
|
6327
|
+
component inset. Navigation depth is added separately below. */
|
|
6328
|
+
/* Navigation copy uses one continuation rail whether a row has a leading
|
|
6329
|
+
disclosure/icon slot or not. The mark canvas is derived backwards from
|
|
6330
|
+
that rail, so iconless rows never introduce a fourth text start. */
|
|
6331
|
+
--bf-side-navigation-content-inset: var(--bf-component-inline-inset-continuation);
|
|
6332
|
+
--bf-side-navigation-disclosure-inset: max(0rem, calc(var(--bf-component-inline-inset-continuation) - var(--bf-disclosure-icon-inline-size) - var(--bf-disclosure-gap)));
|
|
6333
|
+
--bf-side-navigation-depth-step: var(--bf-space-2);
|
|
6334
|
+
--bf-side-navigation-group-gap: 1.5rem;
|
|
6104
6335
|
color: var(--bf-color-text-inactive);
|
|
6105
6336
|
display: block;
|
|
6106
6337
|
inline-size: 100%;
|
|
6107
6338
|
}
|
|
6108
6339
|
|
|
6340
|
+
:where(.bf-theme) :where(.bf-side-navigation-groups) {
|
|
6341
|
+
align-content: start;
|
|
6342
|
+
display: grid;
|
|
6343
|
+
gap: var(--bf-side-navigation-group-gap);
|
|
6344
|
+
}
|
|
6345
|
+
|
|
6346
|
+
:where(.bf-theme) :where(.bf-side-navigation-group) {
|
|
6347
|
+
display: grid;
|
|
6348
|
+
gap: 0rem;
|
|
6349
|
+
min-inline-size: 0;
|
|
6350
|
+
}
|
|
6351
|
+
|
|
6109
6352
|
:where(.bf-theme) :where(.bf-side-navigation-drawer) {
|
|
6110
6353
|
background: var(--bf-color-background-default);
|
|
6111
6354
|
bottom: 0;
|
|
@@ -6122,7 +6365,7 @@ html.u-baseline-grid::after {
|
|
|
6122
6365
|
}
|
|
6123
6366
|
|
|
6124
6367
|
:where(.bf-theme) :where(.bf-side-navigation, .bf-side-navigation.is-icons, .bf-side-navigation.is-accordion, .bf-side-navigation.is-raw-html):where(.is-drawer-expanded) :where(.bf-side-navigation-drawer) {
|
|
6125
|
-
box-shadow: 0
|
|
6368
|
+
box-shadow: 0 1.5rem 4.5rem rgba(0, 0, 0, 0.38);
|
|
6126
6369
|
transform: translateX(0);
|
|
6127
6370
|
}
|
|
6128
6371
|
|
|
@@ -6152,7 +6395,7 @@ html.u-baseline-grid::after {
|
|
|
6152
6395
|
border-bottom: var(--bf-border-width) solid var(--bf-color-border-low-contrast);
|
|
6153
6396
|
margin-bottom: calc(var(--bf-baseline) * 2);
|
|
6154
6397
|
padding-bottom: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
6155
|
-
padding-inline: var(--bf-
|
|
6398
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
6156
6399
|
padding-top: var(--bf-panel-padding-block);
|
|
6157
6400
|
position: sticky;
|
|
6158
6401
|
top: 0;
|
|
@@ -6175,9 +6418,9 @@ html.u-baseline-grid::after {
|
|
|
6175
6418
|
display: inline-flex;
|
|
6176
6419
|
gap: calc(var(--bf-baseline) * 0.5);
|
|
6177
6420
|
justify-content: center;
|
|
6178
|
-
margin: 0 0
|
|
6179
|
-
padding-block:
|
|
6180
|
-
padding-inline: var(--bf-control-inline-padding-action);
|
|
6421
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
6422
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
6423
|
+
padding-inline: var(--bf-control-inline-padding-action-bordered);
|
|
6181
6424
|
text-decoration: none;
|
|
6182
6425
|
}
|
|
6183
6426
|
|
|
@@ -6212,8 +6455,8 @@ html.u-baseline-grid::after {
|
|
|
6212
6455
|
}
|
|
6213
6456
|
|
|
6214
6457
|
:where(.bf-theme) :where(.bf-side-navigation-toggle:focus-visible) {
|
|
6215
|
-
outline:
|
|
6216
|
-
outline-offset: -
|
|
6458
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6459
|
+
outline-offset: -0.125rem;
|
|
6217
6460
|
}
|
|
6218
6461
|
|
|
6219
6462
|
:where(.bf-theme) :where(.bf-side-navigation-heading, .bf-side-navigation-heading.is-linked) {
|
|
@@ -6225,22 +6468,22 @@ html.u-baseline-grid::after {
|
|
|
6225
6468
|
display: block;
|
|
6226
6469
|
margin: 0 0 var(--bf-body-margin-bottom);
|
|
6227
6470
|
padding-block: var(--bf-body-nudge-start) 0;
|
|
6471
|
+
padding-inline: var(--bf-side-navigation-content-inset);
|
|
6228
6472
|
}
|
|
6229
6473
|
|
|
6230
|
-
:where(.bf-theme) :where(.bf-side-navigation-
|
|
6231
|
-
|
|
6232
|
-
list-style: none;
|
|
6233
|
-
margin: 0 0 calc(var(--bf-baseline) * 2);
|
|
6234
|
-
padding: 0 0 calc((var(--bf-baseline) * 2) - var(--bf-border-width));
|
|
6474
|
+
:where(.bf-theme) :where(.bf-side-navigation-heading.is-linked) {
|
|
6475
|
+
padding-inline: 0;
|
|
6235
6476
|
}
|
|
6236
6477
|
|
|
6237
|
-
:where(.bf-theme) :where(.bf-side-navigation-list
|
|
6238
|
-
|
|
6239
|
-
|
|
6240
|
-
|
|
6478
|
+
:where(.bf-theme) :where(.bf-side-navigation-list) {
|
|
6479
|
+
display: grid;
|
|
6480
|
+
list-style: none;
|
|
6481
|
+
margin: 0;
|
|
6482
|
+
padding: 0;
|
|
6241
6483
|
}
|
|
6242
6484
|
|
|
6243
6485
|
:where(.bf-theme) :where(.bf-side-navigation-item, .bf-side-navigation-item.is-title) {
|
|
6486
|
+
display: grid;
|
|
6244
6487
|
margin: 0;
|
|
6245
6488
|
position: relative;
|
|
6246
6489
|
}
|
|
@@ -6254,21 +6497,23 @@ html.u-baseline-grid::after {
|
|
|
6254
6497
|
align-items: center;
|
|
6255
6498
|
background: transparent;
|
|
6256
6499
|
border: 0;
|
|
6500
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
6257
6501
|
color: var(--bf-color-text-inactive);
|
|
6258
6502
|
display: flex;
|
|
6259
6503
|
gap: calc(var(--bf-baseline) * 0.5);
|
|
6260
6504
|
inline-size: 100%;
|
|
6261
6505
|
justify-content: flex-start;
|
|
6262
|
-
margin: 0;
|
|
6263
|
-
|
|
6264
|
-
padding-
|
|
6265
|
-
|
|
6506
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
6507
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
6508
|
+
padding-inline: var(--bf-side-navigation-content-inset);
|
|
6509
|
+
--bf-side-navigation-row-inset: var(--bf-side-navigation-content-inset);
|
|
6266
6510
|
position: relative;
|
|
6267
6511
|
text-align: left;
|
|
6268
6512
|
text-decoration: none;
|
|
6269
6513
|
}
|
|
6270
6514
|
|
|
6271
6515
|
:where(.bf-theme) :where(.bf-side-navigation-accordion-button) {
|
|
6516
|
+
--bf-side-navigation-row-inset: var(--bf-side-navigation-disclosure-inset);
|
|
6272
6517
|
gap: var(--bf-disclosure-gap);
|
|
6273
6518
|
}
|
|
6274
6519
|
|
|
@@ -6277,22 +6522,21 @@ html.u-baseline-grid::after {
|
|
|
6277
6522
|
font-weight: 600;
|
|
6278
6523
|
}
|
|
6279
6524
|
|
|
6280
|
-
:where(.bf-theme) :where(.bf-side-navigation-heading, .bf-side-navigation-heading.is-linked),
|
|
6281
6525
|
:where(.bf-theme) :where(.bf-side-navigation-list) > :where(.bf-side-navigation-item, .bf-side-navigation-item.is-title) > :where(.bf-side-navigation-link, .bf-side-navigation-text, .bf-side-navigation-accordion-button) {
|
|
6282
|
-
padding-inline-start: var(--bf-
|
|
6526
|
+
padding-inline-start: var(--bf-side-navigation-row-inset, var(--bf-side-navigation-content-inset));
|
|
6283
6527
|
}
|
|
6284
6528
|
|
|
6285
6529
|
:where(.bf-theme) :where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6286
6530
|
:where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6287
6531
|
> :where(.bf-side-navigation-link, .bf-side-navigation-text, .bf-side-navigation-accordion-button) {
|
|
6288
|
-
padding-inline-start: calc(var(--bf-
|
|
6532
|
+
padding-inline-start: calc(var(--bf-side-navigation-row-inset, var(--bf-side-navigation-content-inset)) + var(--bf-side-navigation-depth-step));
|
|
6289
6533
|
}
|
|
6290
6534
|
|
|
6291
6535
|
:where(.bf-theme) :where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6292
6536
|
:where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6293
6537
|
:where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6294
6538
|
> :where(.bf-side-navigation-link, .bf-side-navigation-text, .bf-side-navigation-accordion-button) {
|
|
6295
|
-
padding-inline-start: calc(var(--bf-
|
|
6539
|
+
padding-inline-start: calc(var(--bf-side-navigation-row-inset, var(--bf-side-navigation-content-inset)) + (var(--bf-side-navigation-depth-step) * 2));
|
|
6296
6540
|
}
|
|
6297
6541
|
|
|
6298
6542
|
:where(.bf-theme) :where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
@@ -6300,7 +6544,7 @@ html.u-baseline-grid::after {
|
|
|
6300
6544
|
:where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6301
6545
|
:where(.bf-side-navigation-item, .bf-side-navigation-item.is-title)
|
|
6302
6546
|
> :where(.bf-side-navigation-link, .bf-side-navigation-text, .bf-side-navigation-accordion-button) {
|
|
6303
|
-
padding-inline-start: calc(var(--bf-
|
|
6547
|
+
padding-inline-start: calc(var(--bf-side-navigation-row-inset, var(--bf-side-navigation-content-inset)) + (var(--bf-side-navigation-depth-step) * 3));
|
|
6304
6548
|
}
|
|
6305
6549
|
|
|
6306
6550
|
:where(.bf-theme) :where(.bf-side-navigation-link:hover, .bf-side-navigation-accordion-button:hover) {
|
|
@@ -6309,13 +6553,17 @@ html.u-baseline-grid::after {
|
|
|
6309
6553
|
text-decoration: none;
|
|
6310
6554
|
}
|
|
6311
6555
|
|
|
6556
|
+
:where(.bf-theme) :where(a.bf-side-navigation-link:is(:hover, :active)) {
|
|
6557
|
+
text-decoration: none;
|
|
6558
|
+
}
|
|
6559
|
+
|
|
6312
6560
|
:where(.bf-theme) :where(.bf-side-navigation-link:focus:not(:focus-visible), .bf-side-navigation-accordion-button:focus:not(:focus-visible)) {
|
|
6313
6561
|
outline: none;
|
|
6314
6562
|
}
|
|
6315
6563
|
|
|
6316
6564
|
:where(.bf-theme) :where(.bf-side-navigation-link:focus-visible, .bf-side-navigation-accordion-button:focus-visible) {
|
|
6317
|
-
outline:
|
|
6318
|
-
outline-offset: -
|
|
6565
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6566
|
+
outline-offset: -0.125rem;
|
|
6319
6567
|
}
|
|
6320
6568
|
|
|
6321
6569
|
:where(.bf-theme) :where(.bf-side-navigation-link.is-active, .bf-side-navigation-link[aria-current='page'], .bf-side-navigation-link[aria-current='true']) {
|
|
@@ -6486,13 +6734,17 @@ html.u-baseline-grid::after {
|
|
|
6486
6734
|
text-decoration: none;
|
|
6487
6735
|
}
|
|
6488
6736
|
|
|
6737
|
+
:where(.bf-theme) :where(a.bf-top-navigation-link:is(:hover, :active)) {
|
|
6738
|
+
text-decoration: none;
|
|
6739
|
+
}
|
|
6740
|
+
|
|
6489
6741
|
:where(.bf-theme) :where(.bf-top-navigation-link:focus:not(:focus-visible), .bf-top-navigation-menu-toggle:focus:not(:focus-visible), .bf-top-navigation-search-toggle:focus:not(:focus-visible)) {
|
|
6490
6742
|
outline: none;
|
|
6491
6743
|
}
|
|
6492
6744
|
|
|
6493
6745
|
:where(.bf-theme) :where(.bf-top-navigation-link:focus-visible, .bf-top-navigation-menu-toggle:focus-visible, .bf-top-navigation-search-toggle:focus-visible) {
|
|
6494
|
-
outline:
|
|
6495
|
-
outline-offset: -
|
|
6746
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6747
|
+
outline-offset: -0.125rem;
|
|
6496
6748
|
}
|
|
6497
6749
|
|
|
6498
6750
|
:where(.bf-theme) :where(.bf-top-navigation-item.is-selected) > :where(.bf-top-navigation-link),
|
|
@@ -6616,8 +6868,8 @@ html.u-baseline-grid::after {
|
|
|
6616
6868
|
}
|
|
6617
6869
|
|
|
6618
6870
|
:where(.bf-theme) :where(.bf-top-navigation-dropdown-item:focus-visible) {
|
|
6619
|
-
outline:
|
|
6620
|
-
outline-offset: -
|
|
6871
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
6872
|
+
outline-offset: -0.125rem;
|
|
6621
6873
|
}
|
|
6622
6874
|
|
|
6623
6875
|
:where(.bf-theme) :where(.bf-top-navigation-search-label) {
|
|
@@ -6788,11 +7040,12 @@ html.u-baseline-grid::after {
|
|
|
6788
7040
|
content: "";
|
|
6789
7041
|
flex: 0 0 var(--bf-disclosure-icon-inline-size);
|
|
6790
7042
|
inline-size: var(--bf-disclosure-icon-inline-size);
|
|
7043
|
+
transform: translateY(var(--bf-disclosure-icon-optical-offset-block));
|
|
6791
7044
|
transition: transform 120ms ease;
|
|
6792
7045
|
}
|
|
6793
7046
|
|
|
6794
7047
|
:where(.bf-theme) :where(.bf-side-navigation-accordion-button[aria-expanded='false'], .bf-side-navigation-expand[aria-expanded='false'])::before {
|
|
6795
|
-
transform: rotate(-90deg);
|
|
7048
|
+
transform: translateY(var(--bf-disclosure-icon-optical-offset-block)) rotate(-90deg);
|
|
6796
7049
|
}
|
|
6797
7050
|
|
|
6798
7051
|
:where(.bf-theme) :where(.bf-side-navigation-expand) {
|
|
@@ -6857,14 +7110,34 @@ html.u-baseline-grid::after {
|
|
|
6857
7110
|
}
|
|
6858
7111
|
|
|
6859
7112
|
:where(.bf-theme) :where(.bf-side-navigation.is-icons) :where(.bf-side-navigation-link, .bf-side-navigation-text, .bf-side-navigation-accordion-button) {
|
|
7113
|
+
--bf-side-navigation-row-inset: max(0rem, calc(var(--bf-component-inline-inset-continuation) - 1rem - var(--bf-side-navigation-icon-gap)));
|
|
6860
7114
|
align-items: baseline;
|
|
6861
7115
|
column-gap: var(--bf-side-navigation-icon-gap);
|
|
6862
7116
|
}
|
|
6863
7117
|
|
|
7118
|
+
/* Icon navigation keeps one stable label edge. Rows may omit a decorative
|
|
7119
|
+
icon without collapsing the shared icon track and pulling their copy left. */
|
|
7120
|
+
:where(.bf-theme) :where(.bf-side-navigation.is-icons) :where(.bf-side-navigation-link, .bf-side-navigation-text):not(:has(> .bf-side-navigation-icon))::before {
|
|
7121
|
+
content: "";
|
|
7122
|
+
flex: 0 0 1rem;
|
|
7123
|
+
inline-size: 1rem;
|
|
7124
|
+
}
|
|
7125
|
+
|
|
7126
|
+
/* A collapsed icon rail cannot communicate an iconless destination. Remove
|
|
7127
|
+
the alignment spacer with the hidden label so it cannot become a blank
|
|
7128
|
+
visual affordance in that state. */
|
|
7129
|
+
:where(.bf-theme) :where(.bf-navigation.is-collapsed) :where(.bf-side-navigation.is-icons) :where(.bf-side-navigation-link, .bf-side-navigation-text):not(:has(> .bf-side-navigation-icon))::before {
|
|
7130
|
+
content: none;
|
|
7131
|
+
}
|
|
7132
|
+
|
|
6864
7133
|
/* Icon-navigation headings share the label edge, not the icon edge. This
|
|
6865
7134
|
keeps section names aligned with both the menu copy and a tagged wordmark. */
|
|
6866
|
-
:where(.bf-theme) :where(.bf-side-navigation.is-icons) :where(.bf-side-navigation-heading
|
|
6867
|
-
padding-inline-start:
|
|
7135
|
+
:where(.bf-theme) :where(.bf-side-navigation.is-icons) :where(.bf-side-navigation-heading:not(.is-linked)) {
|
|
7136
|
+
padding-inline-start: var(--bf-component-inline-inset-continuation);
|
|
7137
|
+
}
|
|
7138
|
+
|
|
7139
|
+
:where(.bf-theme) :where(.bf-side-navigation.is-icons) :where(.bf-side-navigation-heading.is-linked) > :where(.bf-side-navigation-link) {
|
|
7140
|
+
padding-inline-start: var(--bf-component-inline-inset-continuation);
|
|
6868
7141
|
}
|
|
6869
7142
|
|
|
6870
7143
|
:where(.bf-theme) :where(.bf-side-navigation-icon) > svg {
|
|
@@ -6908,7 +7181,7 @@ html.u-baseline-grid::after {
|
|
|
6908
7181
|
:where(.bf-theme) :where(.bf-contextual-menu-dropdown) {
|
|
6909
7182
|
background: var(--bf-color-background-default);
|
|
6910
7183
|
border: var(--bf-border-width) solid var(--bf-color-border-default);
|
|
6911
|
-
box-shadow: 0
|
|
7184
|
+
box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.28);
|
|
6912
7185
|
display: none;
|
|
6913
7186
|
list-style: none;
|
|
6914
7187
|
margin: 0;
|
|
@@ -6942,7 +7215,7 @@ html.u-baseline-grid::after {
|
|
|
6942
7215
|
}
|
|
6943
7216
|
|
|
6944
7217
|
:where(.bf-theme) :where(.bf-contextual-menu-group) + :where(.bf-contextual-menu-group) {
|
|
6945
|
-
box-shadow: inset 0
|
|
7218
|
+
box-shadow: inset 0 0.0625rem 0 var(--bf-color-border-default);
|
|
6946
7219
|
}
|
|
6947
7220
|
|
|
6948
7221
|
:where(.bf-theme) :where(.bf-contextual-menu-link) {
|
|
@@ -6960,7 +7233,7 @@ html.u-baseline-grid::after {
|
|
|
6960
7233
|
margin: 0;
|
|
6961
7234
|
overflow: hidden;
|
|
6962
7235
|
padding-block: var(--bf-control-block-padding-compact);
|
|
6963
|
-
padding-inline: var(--bf-
|
|
7236
|
+
padding-inline: var(--bf-component-inline-inset-action);
|
|
6964
7237
|
text-align: left;
|
|
6965
7238
|
text-decoration: none;
|
|
6966
7239
|
text-overflow: ellipsis;
|
|
@@ -6986,8 +7259,8 @@ html.u-baseline-grid::after {
|
|
|
6986
7259
|
}
|
|
6987
7260
|
|
|
6988
7261
|
:where(.bf-theme) :where(.bf-contextual-menu-link):focus-visible {
|
|
6989
|
-
outline:
|
|
6990
|
-
outline-offset: -
|
|
7262
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
7263
|
+
outline-offset: -0.125rem;
|
|
6991
7264
|
}
|
|
6992
7265
|
|
|
6993
7266
|
:where(.bf-theme) :where(.bf-contextual-menu-link.is-disabled, .bf-contextual-menu-link[disabled]) {
|
|
@@ -7015,7 +7288,7 @@ html.u-baseline-grid::after {
|
|
|
7015
7288
|
font-weight: var(--bf-body-font-weight, 400);
|
|
7016
7289
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
7017
7290
|
background-color: var(--bf-color-background-alt);
|
|
7018
|
-
box-shadow: inset 0 0 0 var(--bf-border-width) var(--bf-color-border-default), 0
|
|
7291
|
+
box-shadow: inset 0 0 0 var(--bf-border-width) var(--bf-color-border-default), 0 0.75rem 2rem rgba(0, 0, 0, 0.24);
|
|
7019
7292
|
color: var(--bf-color-text-default);
|
|
7020
7293
|
inline-size: max-content;
|
|
7021
7294
|
left: 0;
|
|
@@ -7024,7 +7297,7 @@ html.u-baseline-grid::after {
|
|
|
7024
7297
|
opacity: 0;
|
|
7025
7298
|
padding-block-end: var(--bf-body-nudge-end);
|
|
7026
7299
|
padding-block-start: var(--bf-body-nudge-start, 0.375rem);
|
|
7027
|
-
padding-inline: var(--bf-
|
|
7300
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
7028
7301
|
pointer-events: none;
|
|
7029
7302
|
position: absolute;
|
|
7030
7303
|
top: 100%;
|
|
@@ -7168,10 +7441,10 @@ html.u-baseline-grid::after {
|
|
|
7168
7441
|
display: inline-flex;
|
|
7169
7442
|
gap: calc(var(--bf-baseline) * 0.5);
|
|
7170
7443
|
justify-content: center;
|
|
7171
|
-
margin-bottom:
|
|
7444
|
+
margin-bottom: var(--bf-single-line-row-margin-block-end);
|
|
7172
7445
|
min-inline-size: var(--bf-control-box-size);
|
|
7173
7446
|
padding-block: max(0rem, calc(var(--bf-button-block-padding) - var(--bf-border-width)));
|
|
7174
|
-
padding-inline: var(--bf-control-inline-padding-action);
|
|
7447
|
+
padding-inline: var(--bf-control-inline-padding-action-bordered);
|
|
7175
7448
|
text-align: center;
|
|
7176
7449
|
text-decoration: none;
|
|
7177
7450
|
}
|
|
@@ -7185,8 +7458,8 @@ html.u-baseline-grid::after {
|
|
|
7185
7458
|
}
|
|
7186
7459
|
|
|
7187
7460
|
:where(.bf-theme) :where(.bf-pagination-link:focus-visible, .bf-pagination-link.is-previous:focus-visible, .bf-pagination-link.is-next:focus-visible) {
|
|
7188
|
-
outline:
|
|
7189
|
-
outline-offset:
|
|
7461
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
7462
|
+
outline-offset: 0.125rem;
|
|
7190
7463
|
}
|
|
7191
7464
|
|
|
7192
7465
|
:where(.bf-theme) :where(.bf-pagination-link.is-active, .bf-pagination-link[aria-current='page'], .bf-pagination-link[aria-current='true']) {
|
|
@@ -7265,14 +7538,15 @@ html.u-baseline-grid::after {
|
|
|
7265
7538
|
appearance: none;
|
|
7266
7539
|
background: transparent;
|
|
7267
7540
|
border: 0;
|
|
7541
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
7268
7542
|
color: var(--bf-color-text-default);
|
|
7269
7543
|
cursor: pointer;
|
|
7270
7544
|
display: flex;
|
|
7271
7545
|
gap: var(--bf-disclosure-gap);
|
|
7272
7546
|
inline-size: 100%;
|
|
7273
7547
|
justify-content: flex-start;
|
|
7274
|
-
|
|
7275
|
-
padding-block: var(--bf-
|
|
7548
|
+
margin-block-end: var(--bf-single-line-row-margin-block-end);
|
|
7549
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
7276
7550
|
padding-inline: 0;
|
|
7277
7551
|
text-align: left;
|
|
7278
7552
|
}
|
|
@@ -7282,8 +7556,8 @@ html.u-baseline-grid::after {
|
|
|
7282
7556
|
}
|
|
7283
7557
|
|
|
7284
7558
|
:where(.bf-theme) :where(.bf-accordion-tab):focus-visible {
|
|
7285
|
-
outline:
|
|
7286
|
-
outline-offset:
|
|
7559
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
7560
|
+
outline-offset: 0.125rem;
|
|
7287
7561
|
}
|
|
7288
7562
|
|
|
7289
7563
|
:where(.bf-theme) :where(.bf-accordion-tab)::before {
|
|
@@ -7296,18 +7570,19 @@ html.u-baseline-grid::after {
|
|
|
7296
7570
|
display: inline-block;
|
|
7297
7571
|
flex: none;
|
|
7298
7572
|
inline-size: var(--bf-disclosure-icon-inline-size);
|
|
7573
|
+
transform: translateY(var(--bf-disclosure-icon-optical-offset-block));
|
|
7299
7574
|
transition: transform 120ms ease;
|
|
7300
7575
|
}
|
|
7301
7576
|
|
|
7302
7577
|
:where(.bf-theme) :where(.bf-accordion-tab[aria-expanded='false'])::before {
|
|
7303
|
-
transform: rotate(-90deg);
|
|
7578
|
+
transform: translateY(var(--bf-disclosure-icon-optical-offset-block)) rotate(-90deg);
|
|
7304
7579
|
}
|
|
7305
7580
|
|
|
7306
7581
|
:where(.bf-theme) :where(.bf-accordion-panel) {
|
|
7307
7582
|
margin: 0;
|
|
7308
7583
|
overflow: hidden;
|
|
7309
7584
|
padding-block-start: var(--bf-baseline);
|
|
7310
|
-
padding-inline-start:
|
|
7585
|
+
padding-inline-start: var(--bf-component-inline-inset-continuation);
|
|
7311
7586
|
}
|
|
7312
7587
|
|
|
7313
7588
|
:where(.bf-theme) :where(.bf-accordion-panel[aria-hidden='true']) {
|
|
@@ -7373,7 +7648,7 @@ html.u-baseline-grid::after {
|
|
|
7373
7648
|
:where(.bf-theme) :where(.bf-modal-header, .bf-modal-body, .bf-modal-footer) {
|
|
7374
7649
|
padding-block-end: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
7375
7650
|
padding-block-start: calc(var(--bf-panel-padding-block) - var(--bf-border-width));
|
|
7376
|
-
padding-inline: var(--bf-
|
|
7651
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
7377
7652
|
}
|
|
7378
7653
|
|
|
7379
7654
|
:where(.bf-theme) :where(.bf-modal-header) {
|
|
@@ -7447,7 +7722,7 @@ html.u-baseline-grid::after {
|
|
|
7447
7722
|
:where(.bf-theme) :where(.bf-code-snippet-header) {
|
|
7448
7723
|
align-items: start;
|
|
7449
7724
|
background: var(--bf-color-background-active);
|
|
7450
|
-
box-shadow: inset 0 -
|
|
7725
|
+
box-shadow: inset 0 -0.0625rem 0 var(--bf-color-border-default);
|
|
7451
7726
|
display: flex;
|
|
7452
7727
|
flex-wrap: wrap;
|
|
7453
7728
|
justify-content: space-between;
|
|
@@ -7469,7 +7744,7 @@ html.u-baseline-grid::after {
|
|
|
7469
7744
|
margin: 0;
|
|
7470
7745
|
overflow-wrap: anywhere;
|
|
7471
7746
|
padding-block: var(--bf-panel-padding-block);
|
|
7472
|
-
padding-inline: var(--bf-
|
|
7747
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
7473
7748
|
}
|
|
7474
7749
|
|
|
7475
7750
|
:where(.bf-theme) :where(.bf-code-snippet-dropdowns) {
|
|
@@ -7484,7 +7759,7 @@ html.u-baseline-grid::after {
|
|
|
7484
7759
|
:where(.bf-theme) :where(.bf-code-snippet-header.is-stacked) :where(.bf-code-snippet-dropdowns) {
|
|
7485
7760
|
justify-content: stretch;
|
|
7486
7761
|
margin-inline-start: 0;
|
|
7487
|
-
box-shadow: inset 0
|
|
7762
|
+
box-shadow: inset 0 0.0625rem 0 var(--bf-color-border-default);
|
|
7488
7763
|
width: 100%;
|
|
7489
7764
|
}
|
|
7490
7765
|
|
|
@@ -7503,12 +7778,12 @@ html.u-baseline-grid::after {
|
|
|
7503
7778
|
min-block-size: calc(var(--bf-body-line-height, 1.5rem) + (var(--bf-panel-padding-block) * 2));
|
|
7504
7779
|
min-inline-size: 0;
|
|
7505
7780
|
padding-block: var(--bf-panel-padding-block);
|
|
7506
|
-
padding-inline: var(--bf-
|
|
7781
|
+
padding-inline: var(--bf-component-inline-inset-action);
|
|
7507
7782
|
text-align: start;
|
|
7508
7783
|
}
|
|
7509
7784
|
|
|
7510
7785
|
:where(.bf-theme) :where(.bf-code-snippet-dropdown) + :where(.bf-code-snippet-dropdown) {
|
|
7511
|
-
box-shadow: inset
|
|
7786
|
+
box-shadow: inset 0.0625rem 0 0 var(--bf-color-border-default);
|
|
7512
7787
|
}
|
|
7513
7788
|
|
|
7514
7789
|
:where(.bf-theme) :where(.bf-code-snippet-dropdown):focus:not(:focus-visible) {
|
|
@@ -7516,8 +7791,8 @@ html.u-baseline-grid::after {
|
|
|
7516
7791
|
}
|
|
7517
7792
|
|
|
7518
7793
|
:where(.bf-theme) :where(.bf-code-snippet-dropdown):focus-visible {
|
|
7519
|
-
outline:
|
|
7520
|
-
outline-offset: -
|
|
7794
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
7795
|
+
outline-offset: -0.125rem;
|
|
7521
7796
|
}
|
|
7522
7797
|
|
|
7523
7798
|
:where(.bf-theme) :where(.bf-code-snippet-block, .bf-code-snippet-block.is-icon, .bf-code-snippet-block.is-numbered) {
|
|
@@ -7532,7 +7807,7 @@ html.u-baseline-grid::after {
|
|
|
7532
7807
|
min-inline-size: 0;
|
|
7533
7808
|
overflow-x: auto;
|
|
7534
7809
|
padding-block: var(--bf-panel-padding-block);
|
|
7535
|
-
padding-inline: var(--bf-
|
|
7810
|
+
padding-inline: var(--bf-component-inline-inset-continuation);
|
|
7536
7811
|
tab-size: 2;
|
|
7537
7812
|
white-space: pre;
|
|
7538
7813
|
}
|
|
@@ -7548,7 +7823,7 @@ html.u-baseline-grid::after {
|
|
|
7548
7823
|
|
|
7549
7824
|
:where(.bf-theme) :where(.bf-code-snippet-block.is-icon) {
|
|
7550
7825
|
cursor: copy;
|
|
7551
|
-
padding-inline-start: calc(var(--bf-
|
|
7826
|
+
padding-inline-start: calc(var(--bf-component-inline-inset-continuation) + (var(--bf-baseline) * 3));
|
|
7552
7827
|
position: relative;
|
|
7553
7828
|
}
|
|
7554
7829
|
|
|
@@ -7560,7 +7835,7 @@ html.u-baseline-grid::after {
|
|
|
7560
7835
|
line-height: var(--bf-h6-line-height, 1.5rem);
|
|
7561
7836
|
color: var(--bf-color-text-muted);
|
|
7562
7837
|
content: "$";
|
|
7563
|
-
inset-inline-start: var(--bf-
|
|
7838
|
+
inset-inline-start: var(--bf-component-inline-inset-continuation);
|
|
7564
7839
|
inset-block-start: var(--bf-panel-padding-block);
|
|
7565
7840
|
position: absolute;
|
|
7566
7841
|
}
|
|
@@ -7575,7 +7850,7 @@ html.u-baseline-grid::after {
|
|
|
7575
7850
|
|
|
7576
7851
|
:where(.bf-theme) :where(.bf-code-snippet-block.is-icon.is-copied) {
|
|
7577
7852
|
background: color-mix(in srgb, var(--bf-color-background-alt) 78%, var(--bf-color-background-information-default));
|
|
7578
|
-
box-shadow: inset 0 0 0
|
|
7853
|
+
box-shadow: inset 0 0 0 0.0625rem var(--bf-color-border-information);
|
|
7579
7854
|
}
|
|
7580
7855
|
|
|
7581
7856
|
:where(.bf-theme) :where(.bf-code-snippet-block.is-icon):focus:not(:focus-visible) {
|
|
@@ -7583,8 +7858,8 @@ html.u-baseline-grid::after {
|
|
|
7583
7858
|
}
|
|
7584
7859
|
|
|
7585
7860
|
:where(.bf-theme) :where(.bf-code-snippet-block.is-icon):focus-visible {
|
|
7586
|
-
outline:
|
|
7587
|
-
outline-offset: -
|
|
7861
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
7862
|
+
outline-offset: -0.125rem;
|
|
7588
7863
|
}
|
|
7589
7864
|
|
|
7590
7865
|
:where(.bf-theme) :where(.bf-code-snippet-block.is-numbered) {
|
|
@@ -7646,6 +7921,32 @@ html.u-baseline-grid::after {
|
|
|
7646
7921
|
z-index: 40;
|
|
7647
7922
|
}
|
|
7648
7923
|
|
|
7924
|
+
/* A responsive application brand occupies the persistent bar only while the
|
|
7925
|
+
* full navigation brand is unavailable. The same public tagged-logo contract
|
|
7926
|
+
* is used in both locations; state CSS guarantees that only one copy is
|
|
7927
|
+
* visible and exposed at a time. */
|
|
7928
|
+
:where(.bf-theme) :where(.bf-navigation-bar.is-responsive) :where(.bf-panel-header.is-navigation-brand) {
|
|
7929
|
+
align-items: start;
|
|
7930
|
+
column-gap: calc(var(--bf-baseline) * 2);
|
|
7931
|
+
padding-inline-end: var(--bf-panel-content-padding-inline, var(--bf-panel-padding-inline));
|
|
7932
|
+
}
|
|
7933
|
+
|
|
7934
|
+
:where(.bf-theme) :where(.bf-navigation-bar.is-responsive) {
|
|
7935
|
+
margin-block-end: calc(var(--bf-border-width) * -1);
|
|
7936
|
+
}
|
|
7937
|
+
|
|
7938
|
+
:where(.bf-theme) :where(.bf-navigation-bar.is-responsive) :where(.bf-panel-header.is-navigation-brand) > :where(.bf-top-navigation-logo.is-canonical-tagged) {
|
|
7939
|
+
flex: 1 1 12rem;
|
|
7940
|
+
inline-size: auto;
|
|
7941
|
+
min-inline-size: 0;
|
|
7942
|
+
}
|
|
7943
|
+
|
|
7944
|
+
:where(.bf-theme) :where(.bf-application:has(> .bf-navigation:not(.is-collapsed)))
|
|
7945
|
+
> :where(.bf-navigation-bar.is-responsive)
|
|
7946
|
+
:where(.bf-top-navigation-logo) {
|
|
7947
|
+
visibility: hidden;
|
|
7948
|
+
}
|
|
7949
|
+
|
|
7649
7950
|
:where(.bf-theme) :where(.bf-navigation) {
|
|
7650
7951
|
grid-column: 1 / -1;
|
|
7651
7952
|
grid-row: 1 / -1;
|
|
@@ -7692,7 +7993,7 @@ html.u-baseline-grid::after {
|
|
|
7692
7993
|
}
|
|
7693
7994
|
|
|
7694
7995
|
:where(.bf-theme) :where(.bf-navigation:not(.is-collapsed)) > :where(.bf-navigation-drawer) {
|
|
7695
|
-
box-shadow: 0
|
|
7996
|
+
box-shadow: 0 1.5rem 4.5rem rgba(0, 0, 0, 0.38);
|
|
7696
7997
|
transform: translateX(0);
|
|
7697
7998
|
visibility: visible;
|
|
7698
7999
|
}
|
|
@@ -7702,10 +8003,10 @@ html.u-baseline-grid::after {
|
|
|
7702
8003
|
}
|
|
7703
8004
|
|
|
7704
8005
|
:where(.bf-theme) :where(.bf-navigation.is-collapsed) :where(.bf-side-navigation-label) {
|
|
7705
|
-
block-size:
|
|
8006
|
+
block-size: 0.0625rem;
|
|
7706
8007
|
clip-path: inset(50%);
|
|
7707
|
-
inline-size:
|
|
7708
|
-
max-inline-size:
|
|
8008
|
+
inline-size: 0.0625rem;
|
|
8009
|
+
max-inline-size: 0.0625rem;
|
|
7709
8010
|
opacity: 0;
|
|
7710
8011
|
overflow: hidden;
|
|
7711
8012
|
pointer-events: none;
|
|
@@ -7723,8 +8024,8 @@ html.u-baseline-grid::after {
|
|
|
7723
8024
|
padding-inline: calc(var(--bf-baseline) * 1.25);
|
|
7724
8025
|
}
|
|
7725
8026
|
|
|
7726
|
-
:where(.bf-theme) :where(.bf-navigation.is-collapsed) :where(.bf-side-navigation-list) {
|
|
7727
|
-
|
|
8027
|
+
:where(.bf-theme) :where(.bf-navigation.is-collapsed) :where(.bf-side-navigation-list)::after {
|
|
8028
|
+
content: none;
|
|
7728
8029
|
}
|
|
7729
8030
|
|
|
7730
8031
|
:where(.bf-theme) :where(.bf-navigation.is-collapsed) :where(.bf-side-navigation-item.is-title > .bf-side-navigation-link, .bf-side-navigation-item.is-title > .bf-side-navigation-text) {
|
|
@@ -7737,6 +8038,14 @@ html.u-baseline-grid::after {
|
|
|
7737
8038
|
grid-template-rows: minmax(0, 1fr);
|
|
7738
8039
|
}
|
|
7739
8040
|
|
|
8041
|
+
:where(.bf-theme) :where(.bf-application:has(> .bf-navigation)):has(> .bf-aside.is-pinned:not(.is-collapsed)) {
|
|
8042
|
+
grid-template-areas:
|
|
8043
|
+
"navigation-bar navigation-bar"
|
|
8044
|
+
"main aside";
|
|
8045
|
+
grid-template-columns: minmax(0, 1fr) minmax(0, var(--bf-application-aside-width));
|
|
8046
|
+
grid-template-rows: min-content minmax(0, 1fr);
|
|
8047
|
+
}
|
|
8048
|
+
|
|
7740
8049
|
:where(.bf-theme) :where(.bf-main) {
|
|
7741
8050
|
grid-area: main;
|
|
7742
8051
|
min-block-size: 0;
|
|
@@ -7775,7 +8084,7 @@ html.u-baseline-grid::after {
|
|
|
7775
8084
|
:where(.bf-theme) :where(.bf-aside.is-overlay, .bf-aside.is-drawer) {
|
|
7776
8085
|
align-self: stretch;
|
|
7777
8086
|
block-size: auto;
|
|
7778
|
-
box-shadow: 0
|
|
8087
|
+
box-shadow: 0 1.5rem 4.5rem rgba(0, 0, 0, 0.38);
|
|
7779
8088
|
bottom: 0;
|
|
7780
8089
|
grid-column: 1 / -1;
|
|
7781
8090
|
grid-row: 1 / -1;
|
|
@@ -7865,14 +8174,14 @@ html.u-baseline-grid::after {
|
|
|
7865
8174
|
|
|
7866
8175
|
:where(.bf-theme) :where(.bf-application-aside-resize-handle)::after {
|
|
7867
8176
|
background: var(--bf-color-border-default);
|
|
7868
|
-
border-radius:
|
|
8177
|
+
border-radius: 62.4375rem;
|
|
7869
8178
|
content: "";
|
|
7870
8179
|
inset-block: var(--bf-panel-padding-block);
|
|
7871
|
-
inset-inline-start: calc(50% -
|
|
8180
|
+
inset-inline-start: calc(50% - 0.0625rem);
|
|
7872
8181
|
opacity: 0.95;
|
|
7873
8182
|
position: absolute;
|
|
7874
8183
|
transition: background-color 120ms ease, opacity 120ms ease;
|
|
7875
|
-
width:
|
|
8184
|
+
width: 0.125rem;
|
|
7876
8185
|
}
|
|
7877
8186
|
|
|
7878
8187
|
:where(.bf-theme) :where(.bf-application-aside-resize-handle):hover::after,
|
|
@@ -7882,8 +8191,8 @@ html.u-baseline-grid::after {
|
|
|
7882
8191
|
}
|
|
7883
8192
|
|
|
7884
8193
|
:where(.bf-theme) :where(.bf-application-aside-resize-handle):focus-visible {
|
|
7885
|
-
outline:
|
|
7886
|
-
outline-offset: -
|
|
8194
|
+
outline: 0.125rem solid var(--bf-application-resize-handle-focus-ring);
|
|
8195
|
+
outline-offset: -0.125rem;
|
|
7887
8196
|
}
|
|
7888
8197
|
|
|
7889
8198
|
@media (min-width: 64.75rem) {
|
|
@@ -7902,6 +8211,16 @@ html.u-baseline-grid::after {
|
|
|
7902
8211
|
grid-template-columns: minmax(0, var(--bf-application-navigation-width)) minmax(0, 1fr) minmax(0, var(--bf-application-aside-width));
|
|
7903
8212
|
}
|
|
7904
8213
|
|
|
8214
|
+
:where(.bf-theme) :where(.bf-application:has(> .bf-navigation:not(.is-collapsed))) > :where(.bf-navigation-bar.is-responsive) {
|
|
8215
|
+
block-size: 0;
|
|
8216
|
+
border: 0;
|
|
8217
|
+
min-block-size: 0;
|
|
8218
|
+
overflow: hidden;
|
|
8219
|
+
pointer-events: none;
|
|
8220
|
+
position: absolute;
|
|
8221
|
+
visibility: hidden;
|
|
8222
|
+
}
|
|
8223
|
+
|
|
7905
8224
|
:where(.bf-theme) :where(.bf-application:has(> .bf-navigation.is-collapsed)) {
|
|
7906
8225
|
--bf-application-navigation-width: var(--bf-application-navigation-width-collapsed);
|
|
7907
8226
|
}
|
|
@@ -7947,8 +8266,8 @@ html.u-baseline-grid::after {
|
|
|
7947
8266
|
}
|
|
7948
8267
|
|
|
7949
8268
|
/* The tagged treatment is opt-in. The Circle of Friends is aligned to the
|
|
7950
|
-
* first title line, then the
|
|
7951
|
-
* Its
|
|
8269
|
+
* first title line, then the 2.375rem tag extends upward to the navigation edge.
|
|
8270
|
+
* Its 1.375rem inline size preserves the established 38:22 (~1.73) tag ratio; the
|
|
7952
8271
|
* tag must not stretch to the full occupied navigation row. */
|
|
7953
8272
|
:where(.bf-theme) :where(.bf-top-navigation-logo.is-canonical-tagged) {
|
|
7954
8273
|
min-inline-size: 0;
|
|
@@ -8002,8 +8321,8 @@ html.u-baseline-grid::after {
|
|
|
8002
8321
|
line-height: var(--bf-top-navigation-logo-title-line-height, var(--bf-body-line-height, 1.5));
|
|
8003
8322
|
overflow: visible;
|
|
8004
8323
|
overflow-wrap: anywhere;
|
|
8005
|
-
/* The first title line and the
|
|
8006
|
-
* tag block-end minus the
|
|
8324
|
+
/* The first title line and the 1rem mark share the mark's fixed centre:
|
|
8325
|
+
* tag block-end minus the 0.375rem inset minus half the mark. Symmetric title
|
|
8007
8326
|
* padding keeps the occupied row stable across all four type-density tiers. */
|
|
8008
8327
|
padding-block: calc(
|
|
8009
8328
|
var(--bf-top-navigation-logo-tag-block-size)
|
|
@@ -8089,11 +8408,15 @@ html.u-baseline-grid::after {
|
|
|
8089
8408
|
:where(.bf-theme) :where(.bf-in-page-navigation) {
|
|
8090
8409
|
container-name: bf-in-page-navigation;
|
|
8091
8410
|
container-type: inline-size;
|
|
8092
|
-
margin
|
|
8411
|
+
margin: 0;
|
|
8093
8412
|
min-inline-size: 0;
|
|
8094
8413
|
}
|
|
8095
8414
|
|
|
8096
8415
|
:where(.bf-theme) :where(.bf-in-page-navigation-nav) {
|
|
8416
|
+
--bf-stack-space: var(--bf-space-1);
|
|
8417
|
+
align-content: start;
|
|
8418
|
+
display: grid;
|
|
8419
|
+
gap: var(--bf-stack-space);
|
|
8097
8420
|
max-block-size: 100dvb;
|
|
8098
8421
|
min-inline-size: 0;
|
|
8099
8422
|
overflow: auto;
|
|
@@ -8109,12 +8432,17 @@ html.u-baseline-grid::after {
|
|
|
8109
8432
|
line-height: var(--bf-h6-line-height, 1.5rem);
|
|
8110
8433
|
color: var(--bf-color-text-muted);
|
|
8111
8434
|
display: block;
|
|
8112
|
-
margin: 0
|
|
8113
|
-
padding-block:
|
|
8435
|
+
margin-block: 0 var(--bf-h6-margin-bottom);
|
|
8436
|
+
padding-block-end: 0;
|
|
8437
|
+
padding-block-start: var(--bf-h6-nudge-start);
|
|
8114
8438
|
}
|
|
8115
8439
|
|
|
8116
8440
|
:where(.bf-theme) :where(.bf-in-page-navigation-list) {
|
|
8441
|
+
--bf-stack-space: var(--bf-space-1);
|
|
8442
|
+
align-content: start;
|
|
8117
8443
|
border-inline-start: var(--bf-bar-thickness) solid var(--bf-color-border-low-contrast);
|
|
8444
|
+
display: grid;
|
|
8445
|
+
gap: var(--bf-stack-space);
|
|
8118
8446
|
list-style: none;
|
|
8119
8447
|
margin: 0;
|
|
8120
8448
|
min-inline-size: 0;
|
|
@@ -8122,13 +8450,16 @@ html.u-baseline-grid::after {
|
|
|
8122
8450
|
}
|
|
8123
8451
|
|
|
8124
8452
|
:where(.bf-theme) :where(.bf-in-page-navigation-item) {
|
|
8453
|
+
align-content: start;
|
|
8454
|
+
display: grid;
|
|
8455
|
+
gap: var(--bf-stack-space);
|
|
8125
8456
|
margin: 0;
|
|
8126
8457
|
min-inline-size: 0;
|
|
8127
8458
|
padding: 0;
|
|
8128
8459
|
position: relative;
|
|
8129
8460
|
}
|
|
8130
8461
|
|
|
8131
|
-
:where(.bf-theme) :where(.bf-in-page-navigation-link) {
|
|
8462
|
+
:where(.bf-theme) :where(a.bf-in-page-navigation-link) {
|
|
8132
8463
|
font-family: var(--bf-body-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
8133
8464
|
font-size: var(--bf-body-font-size, 1rem);
|
|
8134
8465
|
font-style: var(--bf-body-font-style, normal);
|
|
@@ -8141,7 +8472,7 @@ html.u-baseline-grid::after {
|
|
|
8141
8472
|
min-inline-size: 0;
|
|
8142
8473
|
overflow: hidden;
|
|
8143
8474
|
overflow-wrap: anywhere;
|
|
8144
|
-
padding-block:
|
|
8475
|
+
padding-block: var(--bf-body-nudge-start) var(--bf-body-nudge-end);
|
|
8145
8476
|
padding-inline: var(--bf-space-2) 0;
|
|
8146
8477
|
position: relative;
|
|
8147
8478
|
text-decoration: none;
|
|
@@ -8149,7 +8480,7 @@ html.u-baseline-grid::after {
|
|
|
8149
8480
|
-webkit-box-orient: vertical;
|
|
8150
8481
|
}
|
|
8151
8482
|
|
|
8152
|
-
:where(.bf-theme) :where(.bf-in-page-navigation-link:hover) {
|
|
8483
|
+
:where(.bf-theme) :where(a.bf-in-page-navigation-link:hover) {
|
|
8153
8484
|
color: var(--bf-color-text-default);
|
|
8154
8485
|
text-decoration: none;
|
|
8155
8486
|
}
|
|
@@ -8159,8 +8490,8 @@ html.u-baseline-grid::after {
|
|
|
8159
8490
|
}
|
|
8160
8491
|
|
|
8161
8492
|
:where(.bf-theme) :where(.bf-in-page-navigation-link:focus-visible) {
|
|
8162
|
-
outline:
|
|
8163
|
-
outline-offset:
|
|
8493
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
8494
|
+
outline-offset: 0.125rem;
|
|
8164
8495
|
}
|
|
8165
8496
|
|
|
8166
8497
|
:where(.bf-theme) :where(.bf-in-page-navigation-link.is-active, .bf-in-page-navigation-link[aria-current]) {
|
|
@@ -8216,8 +8547,8 @@ html.u-baseline-grid::after {
|
|
|
8216
8547
|
}
|
|
8217
8548
|
|
|
8218
8549
|
:where(.bf-theme) :where(.bf-in-page-navigation-toggle:focus-visible) {
|
|
8219
|
-
outline:
|
|
8220
|
-
outline-offset: -
|
|
8550
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
8551
|
+
outline-offset: -0.125rem;
|
|
8221
8552
|
}
|
|
8222
8553
|
|
|
8223
8554
|
:where(.bf-theme) :where(.bf-in-page-navigation-toggle > .bf-icon) {
|
|
@@ -8231,6 +8562,7 @@ html.u-baseline-grid::after {
|
|
|
8231
8562
|
border-block-end: var(--bf-border-width) solid var(--bf-color-border-low-contrast);
|
|
8232
8563
|
display: grid;
|
|
8233
8564
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
8565
|
+
row-gap: 0;
|
|
8234
8566
|
max-block-size: none;
|
|
8235
8567
|
overflow: visible;
|
|
8236
8568
|
position: static;
|
|
@@ -8243,6 +8575,7 @@ html.u-baseline-grid::after {
|
|
|
8243
8575
|
:where(.bf-theme) :where(.bf-in-page-navigation-list) {
|
|
8244
8576
|
border: 0;
|
|
8245
8577
|
display: flex;
|
|
8578
|
+
gap: 0;
|
|
8246
8579
|
grid-column: 1;
|
|
8247
8580
|
grid-row: 1;
|
|
8248
8581
|
margin: 0;
|
|
@@ -8307,7 +8640,8 @@ html.u-baseline-grid::after {
|
|
|
8307
8640
|
:where(.bf-theme) :where(.bf-in-page-navigation.is-expanded > .bf-in-page-navigation-nav > .bf-in-page-navigation-list, .bf-in-page-navigation:has(.bf-in-page-navigation-toggle[aria-expanded='true']) > .bf-in-page-navigation-nav > .bf-in-page-navigation-list) {
|
|
8308
8641
|
background: var(--bf-color-background-alt);
|
|
8309
8642
|
border-inline-start: var(--bf-bar-thickness) solid var(--bf-color-border-low-contrast);
|
|
8310
|
-
display:
|
|
8643
|
+
display: grid;
|
|
8644
|
+
gap: var(--bf-stack-space);
|
|
8311
8645
|
grid-column: 1 / -1;
|
|
8312
8646
|
grid-row: 2;
|
|
8313
8647
|
/* The mobile nav owns a bottom rule; reserve its thickness within the
|
|
@@ -8318,20 +8652,21 @@ html.u-baseline-grid::after {
|
|
|
8318
8652
|
}
|
|
8319
8653
|
|
|
8320
8654
|
:where(.bf-theme) :where(.bf-in-page-navigation.is-expanded .bf-in-page-navigation-item, .bf-in-page-navigation:has(.bf-in-page-navigation-toggle[aria-expanded='true']) .bf-in-page-navigation-item) {
|
|
8321
|
-
display:
|
|
8655
|
+
display: grid;
|
|
8322
8656
|
max-inline-size: none;
|
|
8323
8657
|
}
|
|
8324
8658
|
|
|
8325
8659
|
:where(.bf-theme) :where(.bf-in-page-navigation.is-expanded .bf-in-page-navigation-link, .bf-in-page-navigation:has(.bf-in-page-navigation-toggle[aria-expanded='true']) .bf-in-page-navigation-link) {
|
|
8326
8660
|
display: -webkit-box;
|
|
8327
8661
|
overflow-wrap: anywhere;
|
|
8328
|
-
padding-block:
|
|
8662
|
+
padding-block: var(--bf-body-nudge-start) var(--bf-body-nudge-end);
|
|
8329
8663
|
padding-inline: var(--bf-space-2) 0;
|
|
8330
8664
|
white-space: normal;
|
|
8331
8665
|
}
|
|
8332
8666
|
|
|
8333
8667
|
:where(.bf-theme) :where(.bf-in-page-navigation.is-expanded .bf-in-page-navigation-list .bf-in-page-navigation-list, .bf-in-page-navigation:has(.bf-in-page-navigation-toggle[aria-expanded='true']) .bf-in-page-navigation-list .bf-in-page-navigation-list) {
|
|
8334
|
-
display:
|
|
8668
|
+
display: grid;
|
|
8669
|
+
gap: var(--bf-stack-space);
|
|
8335
8670
|
}
|
|
8336
8671
|
|
|
8337
8672
|
:where(.bf-theme) :where(.bf-in-page-navigation.is-expanded .bf-in-page-navigation-link.is-active, .bf-in-page-navigation.is-expanded .bf-in-page-navigation-link[aria-current], .bf-in-page-navigation:has(.bf-in-page-navigation-toggle[aria-expanded='true']) .bf-in-page-navigation-link.is-active, .bf-in-page-navigation:has(.bf-in-page-navigation-toggle[aria-expanded='true']) .bf-in-page-navigation-link[aria-current])::before {
|
|
@@ -8414,35 +8749,47 @@ html.u-baseline-grid::after {
|
|
|
8414
8749
|
/* ------------------------------------------------------------------ */
|
|
8415
8750
|
|
|
8416
8751
|
:where(.bf-theme) :where(.bf-table-of-contents) {
|
|
8752
|
+
--bf-table-of-contents-section-gap: var(--bf-section-space-shallow);
|
|
8753
|
+
align-content: start;
|
|
8417
8754
|
container-name: bf-table-of-contents;
|
|
8418
8755
|
container-type: inline-size;
|
|
8419
|
-
|
|
8756
|
+
display: grid;
|
|
8757
|
+
gap: var(--bf-table-of-contents-section-gap);
|
|
8758
|
+
margin: 0;
|
|
8420
8759
|
min-inline-size: 0;
|
|
8421
8760
|
}
|
|
8422
8761
|
|
|
8423
8762
|
:where(.bf-theme) :where(.bf-table-of-contents-section) {
|
|
8763
|
+
--bf-stack-space: 0rem;
|
|
8764
|
+
align-content: start;
|
|
8765
|
+
display: grid;
|
|
8766
|
+
gap: var(--bf-stack-space);
|
|
8424
8767
|
margin: 0;
|
|
8425
8768
|
min-inline-size: 0;
|
|
8426
|
-
padding
|
|
8769
|
+
padding: 0;
|
|
8770
|
+
position: relative;
|
|
8427
8771
|
}
|
|
8428
8772
|
|
|
8429
|
-
:where(.bf-theme) :where(.bf-table-of-contents-section + .bf-table-of-contents-section) {
|
|
8430
|
-
|
|
8431
|
-
|
|
8773
|
+
:where(.bf-theme) :where(.bf-table-of-contents-section + .bf-table-of-contents-section)::before {
|
|
8774
|
+
background: var(--bf-color-border-low-contrast);
|
|
8775
|
+
block-size: var(--bf-border-width);
|
|
8776
|
+
content: "";
|
|
8777
|
+
inset-block-start: 0;
|
|
8778
|
+
inset-inline: 0;
|
|
8779
|
+
position: absolute;
|
|
8432
8780
|
}
|
|
8433
8781
|
|
|
8434
8782
|
:where(.bf-theme) :where(.bf-table-of-contents-heading) {
|
|
8435
|
-
|
|
8436
|
-
|
|
8437
|
-
|
|
8438
|
-
font-weight: var(--bf-h6-font-weight, 400);
|
|
8439
|
-
line-height: var(--bf-h6-line-height, 1.5rem);
|
|
8440
|
-
color: var(--bf-color-text-muted);
|
|
8441
|
-
margin: 0 0 var(--bf-space-1);
|
|
8442
|
-
padding-block: var(--bf-h6-nudge-start) var(--bf-h6-nudge-end);
|
|
8783
|
+
color: var(--bf-color-text-default);
|
|
8784
|
+
margin: 0;
|
|
8785
|
+
padding-block-end: 0;
|
|
8443
8786
|
}
|
|
8444
8787
|
|
|
8445
8788
|
:where(.bf-theme) :where(.bf-table-of-contents-list) {
|
|
8789
|
+
--bf-stack-space: 0rem;
|
|
8790
|
+
align-content: start;
|
|
8791
|
+
display: grid;
|
|
8792
|
+
gap: var(--bf-stack-space);
|
|
8446
8793
|
list-style: none;
|
|
8447
8794
|
margin: 0;
|
|
8448
8795
|
min-inline-size: 0;
|
|
@@ -8450,26 +8797,30 @@ html.u-baseline-grid::after {
|
|
|
8450
8797
|
}
|
|
8451
8798
|
|
|
8452
8799
|
:where(.bf-theme) :where(.bf-table-of-contents-item) {
|
|
8800
|
+
align-content: start;
|
|
8801
|
+
display: grid;
|
|
8802
|
+
gap: var(--bf-stack-space);
|
|
8453
8803
|
margin: 0;
|
|
8454
8804
|
min-inline-size: 0;
|
|
8455
8805
|
padding: 0;
|
|
8456
8806
|
}
|
|
8457
8807
|
|
|
8458
|
-
:where(.bf-theme) :where(.bf-table-of-contents-link) {
|
|
8808
|
+
:where(.bf-theme) :where(a.bf-table-of-contents-link) {
|
|
8459
8809
|
font-family: var(--bf-body-font-family, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);
|
|
8460
8810
|
font-size: var(--bf-body-font-size, 1rem);
|
|
8461
8811
|
font-style: var(--bf-body-font-style, normal);
|
|
8462
8812
|
font-weight: var(--bf-body-font-weight, 400);
|
|
8463
8813
|
line-height: var(--bf-body-line-height, 1.5rem);
|
|
8814
|
+
border-block: var(--bf-border-width) solid transparent;
|
|
8464
8815
|
color: var(--bf-color-link-default);
|
|
8465
8816
|
display: block;
|
|
8466
|
-
margin: 0;
|
|
8817
|
+
margin: 0 0 var(--bf-single-line-row-margin-block-end);
|
|
8467
8818
|
overflow-wrap: anywhere;
|
|
8468
|
-
padding-block:
|
|
8819
|
+
padding-block: var(--bf-single-line-row-padding-block);
|
|
8469
8820
|
text-decoration: none;
|
|
8470
8821
|
}
|
|
8471
8822
|
|
|
8472
|
-
:where(.bf-theme) :where(.bf-table-of-contents-link:hover) {
|
|
8823
|
+
:where(.bf-theme) :where(a.bf-table-of-contents-link:hover) {
|
|
8473
8824
|
color: var(--bf-color-text-default);
|
|
8474
8825
|
text-decoration: underline;
|
|
8475
8826
|
}
|
|
@@ -8479,8 +8830,8 @@ html.u-baseline-grid::after {
|
|
|
8479
8830
|
}
|
|
8480
8831
|
|
|
8481
8832
|
:where(.bf-theme) :where(.bf-table-of-contents-link:focus-visible) {
|
|
8482
|
-
outline:
|
|
8483
|
-
outline-offset:
|
|
8833
|
+
outline: 0.125rem solid var(--bf-color-focus);
|
|
8834
|
+
outline-offset: 0.125rem;
|
|
8484
8835
|
}
|
|
8485
8836
|
|
|
8486
8837
|
:where(.bf-theme) :where(.bf-table-of-contents-link.is-active, .bf-table-of-contents-link[aria-current]) {
|
|
@@ -8560,9 +8911,9 @@ html.u-baseline-grid::after {
|
|
|
8560
8911
|
padding: 0;
|
|
8561
8912
|
}
|
|
8562
8913
|
|
|
8563
|
-
:where(.bf-theme) :where(.bf-tiered-list-header) >
|
|
8564
|
-
:where(.bf-theme) :where(.bf-tiered-list-item) >
|
|
8565
|
-
:where(.bf-theme) :where(.bf-tiered-list-cta) >
|
|
8914
|
+
:where(.bf-theme) :where(.bf-tiered-list-header) > hr,
|
|
8915
|
+
:where(.bf-theme) :where(.bf-tiered-list-item) > hr,
|
|
8916
|
+
:where(.bf-theme) :where(.bf-tiered-list-cta) > hr {
|
|
8566
8917
|
grid-column: 1 / -1;
|
|
8567
8918
|
}
|
|
8568
8919
|
|
|
@@ -8577,8 +8928,8 @@ html.u-baseline-grid::after {
|
|
|
8577
8928
|
grid-template-columns: repeat(8, minmax(0, 1fr));
|
|
8578
8929
|
}
|
|
8579
8930
|
|
|
8580
|
-
:where(.bf-theme) :where(.bf-tiered-list:not(.is-list-full-width):not(.is-flush):not(.is-triple)) :where(.bf-tiered-list-item) >
|
|
8581
|
-
:where(.bf-theme) :where(.bf-tiered-list:not(.is-list-full-width):not(.is-flush):not(.is-triple)) :where(.bf-tiered-list-cta) >
|
|
8931
|
+
:where(.bf-theme) :where(.bf-tiered-list:not(.is-list-full-width):not(.is-flush):not(.is-triple)) :where(.bf-tiered-list-item) > hr,
|
|
8932
|
+
:where(.bf-theme) :where(.bf-tiered-list:not(.is-list-full-width):not(.is-flush):not(.is-triple)) :where(.bf-tiered-list-cta) > hr {
|
|
8582
8933
|
grid-column: 3 / span 6;
|
|
8583
8934
|
}
|
|
8584
8935
|
|
|
@@ -8593,9 +8944,9 @@ html.u-baseline-grid::after {
|
|
|
8593
8944
|
}
|
|
8594
8945
|
|
|
8595
8946
|
/* ------------------------------------------------------------------ */
|
|
8596
|
-
/* Header split (≥
|
|
8947
|
+
/* Header split (≥ 45rem): the shared readable 50/50 title/content split. */
|
|
8597
8948
|
/* ------------------------------------------------------------------ */
|
|
8598
|
-
@container (width >=
|
|
8949
|
+
@container (width >= 45rem) {
|
|
8599
8950
|
:where(.bf-theme) :where(.bf-tiered-list:not(.is-description-full-width)) :where(.bf-tiered-list-header) {
|
|
8600
8951
|
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
|
|
8601
8952
|
}
|
|
@@ -8619,7 +8970,7 @@ html.u-baseline-grid::after {
|
|
|
8619
8970
|
queries cannot style their own container, so responsive descendants span
|
|
8620
8971
|
these tracks instead of relying on an ineligible self-query. */
|
|
8621
8972
|
grid-template-columns: repeat(8, minmax(0, 1fr));
|
|
8622
|
-
margin
|
|
8973
|
+
margin: 0;
|
|
8623
8974
|
position: relative;
|
|
8624
8975
|
}
|
|
8625
8976
|
|
|
@@ -8636,7 +8987,7 @@ html.u-baseline-grid::after {
|
|
|
8636
8987
|
/* Responsive aspect media can make a shared subgrid track land between
|
|
8637
8988
|
baselines. Snap that media box itself; the surrounding composition still
|
|
8638
8989
|
does not own or erase any child's semantic margins. */
|
|
8639
|
-
@supports (block-size: calc-size(auto, round(up, size,
|
|
8990
|
+
@supports (block-size: calc-size(auto, round(up, size, 0.0625rem))) {
|
|
8640
8991
|
:where(.bf-theme) :where(.bf-equal-height-row-item) > :where(.bf-aspect) {
|
|
8641
8992
|
block-size: calc-size(auto, round(up, size, var(--bf-baseline)));
|
|
8642
8993
|
}
|
|
@@ -8715,7 +9066,7 @@ html.u-baseline-grid::after {
|
|
|
8715
9066
|
:where(.bf-theme) :where(.bf-equal-height-row.is-divider-3:not(.is-divider-1))::before,
|
|
8716
9067
|
:where(.bf-theme) :where(.bf-equal-height-row.is-divider-3:not(.is-divider-2))::after {
|
|
8717
9068
|
background-color: var(--bf-color-border-low-contrast);
|
|
8718
|
-
block-size:
|
|
9069
|
+
block-size: 0.0625rem;
|
|
8719
9070
|
content: "";
|
|
8720
9071
|
display: none;
|
|
8721
9072
|
grid-column: 1 / -1;
|
|
@@ -8788,8 +9139,8 @@ html.u-baseline-grid::after {
|
|
|
8788
9139
|
/* ------------------------------------------------------------------ */
|
|
8789
9140
|
/* Gutter and margin escalation — viewport-based, all tiers */
|
|
8790
9141
|
/* Grid spec v0.3 §2.3: gutters set by global viewport breakpoint. */
|
|
8791
|
-
/* Baseline Foundry models the spec's
|
|
8792
|
-
/* default <
|
|
9142
|
+
/* Baseline Foundry models the spec's 28.75rem x-small row as part of the */
|
|
9143
|
+
/* default <38.75rem bracket because the values do not change at 28.75rem. */
|
|
8793
9144
|
/* ------------------------------------------------------------------ */
|
|
8794
9145
|
|
|
8795
9146
|
:where(.bf-theme) {
|
|
@@ -8860,9 +9211,7 @@ html.u-baseline-grid::after {
|
|
|
8860
9211
|
margin-inline-start: 0;
|
|
8861
9212
|
}
|
|
8862
9213
|
|
|
8863
|
-
|
|
8864
|
-
max-inline-size: none;
|
|
8865
|
-
}
|
|
9214
|
+
|
|
8866
9215
|
|
|
8867
9216
|
:where(.bf-theme) :where(.bf-panel-content, .bf-accordion-panel) :where(.bf-fixed-width) {
|
|
8868
9217
|
padding-inline: 0;
|
|
@@ -8872,6 +9221,13 @@ html.u-baseline-grid::after {
|
|
|
8872
9221
|
padding-inline: 0;
|
|
8873
9222
|
}
|
|
8874
9223
|
|
|
9224
|
+
/* A page is the outer grid row and therefore owns its horizontal gutter.
|
|
9225
|
+
* Fixed-width regions nested anywhere inside it retain their cap and
|
|
9226
|
+
* centering behavior without introducing a second page inset. */
|
|
9227
|
+
:where(.bf-theme) :where(.bf-page) :where(.bf-fixed-width) {
|
|
9228
|
+
padding-inline: 0;
|
|
9229
|
+
}
|
|
9230
|
+
|
|
8875
9231
|
/* ------------------------------------------------------------------ */
|
|
8876
9232
|
/* Grid base — 4 columns, all tiers */
|
|
8877
9233
|
/* ------------------------------------------------------------------ */
|
|
@@ -8893,7 +9249,7 @@ html.u-baseline-grid::after {
|
|
|
8893
9249
|
|
|
8894
9250
|
:where(.bf-theme) :where(.bf-grid.is-guide) > * {
|
|
8895
9251
|
background: color-mix(in srgb, var(--bf-color-accent) 18%, var(--bf-color-background-default));
|
|
8896
|
-
box-shadow: inset 0 0 0
|
|
9252
|
+
box-shadow: inset 0 0 0 0.0625rem color-mix(in srgb, var(--bf-color-accent) 50%, var(--bf-color-rule));
|
|
8897
9253
|
min-block-size: calc(var(--bf-baseline) * 4);
|
|
8898
9254
|
}
|
|
8899
9255
|
|