@mond-design-system/react 3.0.0 → 3.0.2
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/dist/index.cjs +16 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +12 -5
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +5 -3
- package/dist/index.d.ts +5 -3
- package/dist/index.js +16 -2
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.css
CHANGED
|
@@ -1937,9 +1937,16 @@ button.mds-Link__link {
|
|
|
1937
1937
|
z-index: var(--mds-z-tabbar);
|
|
1938
1938
|
display: flex;
|
|
1939
1939
|
align-items: stretch;
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1940
|
+
margin-top: calc(-1 * var(--mds-tabbar-action-lift));
|
|
1941
|
+
height: calc(var(--mds-tabbar-h) + var(--mds-tabbar-action-lift) + var(--mds-safe-bottom));
|
|
1942
|
+
padding: var(--mds-tabbar-action-lift) var(--mds-tabbar-pad-x) calc(var(--mds-tabbar-seat) + var(--mds-safe-bottom));
|
|
1943
|
+
}
|
|
1944
|
+
.mds-TabBar__bar::before {
|
|
1945
|
+
content: "";
|
|
1946
|
+
position: absolute;
|
|
1947
|
+
z-index: -1;
|
|
1948
|
+
inset: var(--mds-tabbar-action-lift) 0 0;
|
|
1949
|
+
background: var(--mds-surface-card);
|
|
1943
1950
|
border-top: var(--mds-border-width) solid var(--mds-border-subtle);
|
|
1944
1951
|
}
|
|
1945
1952
|
.mds-TabBar__item {
|
|
@@ -1986,7 +1993,7 @@ button.mds-Link__link {
|
|
|
1986
1993
|
height: var(--mds-dot);
|
|
1987
1994
|
border-radius: var(--mds-radius-pill);
|
|
1988
1995
|
background: var(--mds-status-danger);
|
|
1989
|
-
box-shadow: 0 0 0 var(--mds-dot-ring) var(--mds-surface-
|
|
1996
|
+
box-shadow: 0 0 0 var(--mds-dot-ring) var(--mds-surface-card);
|
|
1990
1997
|
}
|
|
1991
1998
|
.mds-TabBar__label {
|
|
1992
1999
|
max-width: 100%;
|
|
@@ -2007,7 +2014,7 @@ button.mds-Link__link {
|
|
|
2007
2014
|
display: inline-flex;
|
|
2008
2015
|
align-items: center;
|
|
2009
2016
|
justify-content: center;
|
|
2010
|
-
box-shadow: var(--mds-elevation-
|
|
2017
|
+
box-shadow: var(--mds-elevation-floating);
|
|
2011
2018
|
cursor: pointer;
|
|
2012
2019
|
transition: background-color var(--mds-transition-control);
|
|
2013
2020
|
}
|
package/dist/index.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Text/Text.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Heading/Heading.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Spinner/Spinner.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Icon/Icon.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Button/Button.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Link/Link.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Avatar/Avatar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/AvatarGroup/AvatarGroup.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Badge/Badge.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Chip/Chip.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Chip/ChipGroup.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Chip/ChipBar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/CountButton/CountButton.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Field/Field.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Select/Select.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Overlay/Overlay.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Sheet/Sheet.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/DateTimePicker/DateTimePicker.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Tag/Tag.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Divider/Divider.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Skeleton/Skeleton.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/ProgressBar/ProgressBar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Input/Input.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/PasswordInput/PasswordInput.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Textarea/Textarea.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Checkbox/Checkbox.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Radio/Radio.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Switch/Switch.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/SegmentedControl/SegmentedControl.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/SearchField/SearchField.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/List/List.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/EmptyState/EmptyState.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Tabs/Tabs.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Toast/Toast.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Stack/Stack.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Inline/Inline.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Container/Container.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Card/Card.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Modal/Modal.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/ConfirmDialog/ConfirmDialog.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Screen/Screen.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/AppBar/AppBar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/TabBar/TabBar.module.css?mds-scoped"],"sourcesContent":[".mds-Text__text {\n margin: 0;\n}\n\n/* Type roles — the core shorthands. */\n.mds-Text__variant-body { font: var(--mds-type-body); }\n.mds-Text__variant-label { font: var(--mds-type-label); }\n.mds-Text__variant-note { font: var(--mds-type-note); }\n.mds-Text__variant-meta { font: var(--mds-type-meta); }\n.mds-Text__variant-eyebrow {\n font: var(--mds-type-eyebrow);\n letter-spacing: var(--mds-tracking-eyebrow);\n text-transform: uppercase;\n}\n\n/* Tones — semantic aliases only. */\n.mds-Text__tone-primary { color: var(--mds-text-primary); }\n.mds-Text__tone-secondary { color: var(--mds-text-secondary); }\n.mds-Text__tone-muted { color: var(--mds-text-muted); }\n.mds-Text__tone-inverse { color: var(--mds-text-inverse); }\n.mds-Text__tone-accent { color: var(--mds-text-accent); }\n.mds-Text__tone-on-media { color: var(--mds-text-on-media); }\n.mds-Text__tone-danger { color: var(--mds-status-danger); }\n.mds-Text__tone-warning { color: var(--mds-status-warning); }\n.mds-Text__tone-success { color: var(--mds-status-success); }\n\n.mds-Text__align-left { text-align: left; }\n.mds-Text__align-center { text-align: center; }\n.mds-Text__align-right { text-align: right; }\n\n.mds-Text__truncate {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n",".mds-Heading__heading {\n margin: 0;\n}\n\n.mds-Heading__variant-display {\n font: var(--mds-type-display);\n letter-spacing: var(--mds-tracking-display);\n}\n.mds-Heading__variant-title { font: var(--mds-type-title); }\n.mds-Heading__variant-subtitle { font: var(--mds-type-subtitle); }\n\n.mds-Heading__tone-primary { color: var(--mds-text-primary); }\n.mds-Heading__tone-secondary { color: var(--mds-text-secondary); }\n.mds-Heading__tone-inverse { color: var(--mds-text-inverse); }\n.mds-Heading__tone-accent { color: var(--mds-text-accent); }\n.mds-Heading__tone-on-media { color: var(--mds-text-on-media); }\n","@keyframes mds-Spinner__spin {\n to { transform: rotate(360deg); }\n}\n\n.mds-Spinner__spinner {\n display: inline-block;\n flex: none;\n width: var(--spinner-size);\n height: var(--spinner-size);\n border: var(--spinner-border) solid var(--mds-border-strong);\n border-top-color: currentcolor;\n border-radius: var(--mds-radius-pill);\n animation: mds-Spinner__spin 0.7s linear infinite;\n}\n",".mds-Icon__icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n color: inherit;\n}\n\n/* No step stated: the control around it published one as --mds-icon-slot, and\n md is what a glyph outside any slot is. font-size carries it to an icon set\n that sizes itself from the inside — a ligature font has no width to set. */\n.mds-Icon__size-slot {\n width: var(--mds-icon-slot, var(--mds-icon-md));\n height: var(--mds-icon-slot, var(--mds-icon-md));\n font-size: var(--mds-icon-slot, var(--mds-icon-md));\n}\n\n.mds-Icon__size-sm { width: var(--mds-icon-sm); height: var(--mds-icon-sm); font-size: var(--mds-icon-sm); }\n.mds-Icon__size-md { width: var(--mds-icon-md); height: var(--mds-icon-md); font-size: var(--mds-icon-md); }\n.mds-Icon__size-lg { width: var(--mds-icon-lg); height: var(--mds-icon-lg); font-size: var(--mds-icon-lg); }\n",".mds-Button__button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--mds-gap-tight);\n /* A button's outline is a drawn stroke, not a hairline — the same weight\n the accent border on a Card gets. Filled variants keep it transparent so\n a row of buttons is one height whether or not it is outlined. */\n border: var(--mds-border-emphasis) solid transparent;\n border-radius: var(--mds-radius-control);\n font-family: var(--mds-font-body);\n font-weight: var(--mds-weight-semibold);\n line-height: 1;\n white-space: nowrap;\n cursor: pointer;\n text-decoration: none;\n transition: background-color var(--mds-transition-control), color var(--mds-transition-control);\n}\n\n/* Sizes — height from the control scale, padding from the space scale, glyph\n from the icon scale. */\n.mds-Button__size-sm {\n height: var(--mds-control-h-sm);\n padding: 0 var(--mds-pad-button-sm);\n font-size: var(--mds-text-button-sm);\n --mds-icon-slot: var(--mds-icon-sm);\n}\n\n.mds-Button__size-md {\n height: var(--mds-control-h-md);\n padding: 0 var(--mds-pad-button-md);\n font-size: var(--mds-text-button-md);\n --mds-icon-slot: var(--mds-icon-md);\n}\n\n.mds-Button__size-lg {\n height: var(--mds-control-h-lg);\n padding: 0 var(--mds-pad-button-lg);\n font-size: var(--mds-text-button-lg);\n --mds-icon-slot: var(--mds-icon-lg);\n}\n\n/* How big the glyph is belongs to the button, not to whoever passed it. The\n spinner replaces the left glyph while busy, so it reads the same step and the\n button keeps its width across the change. An icon set that cannot be sized\n from the outside reads --mds-icon-slot for its own default. */\n.mds-Button__slot {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-Button__slot > svg {\n width: 100%;\n height: 100%;\n}\n\n/* Variants */\n.mds-Button__variant-primary {\n background: var(--mds-action-bg);\n color: var(--mds-action-fg);\n}\n\n.mds-Button__variant-primary:hover:not(:disabled) { background: var(--mds-action-bg-hover); }\n.mds-Button__variant-primary:active:not(:disabled) { background: var(--mds-action-bg-active); }\n\n.mds-Button__variant-secondary {\n background: transparent;\n color: var(--mds-button-secondary-fg);\n border-color: var(--mds-button-border);\n}\n\n.mds-Button__variant-ghost {\n background: transparent;\n color: var(--mds-text-primary);\n}\n\n.mds-Button__variant-secondary:hover:not(:disabled),\n.mds-Button__variant-ghost:hover:not(:disabled) {\n background: var(--mds-surface-sunken);\n}\n\n.mds-Button__variant-highlight {\n background: var(--mds-highlight);\n color: var(--mds-highlight-contrast);\n}\n\n.mds-Button__variant-highlight:hover:not(:disabled) { background: var(--mds-highlight-hover); }\n\n.mds-Button__variant-danger {\n background: var(--mds-status-danger);\n color: var(--mds-status-danger-contrast);\n}\n\n.mds-Button__variant-danger:hover:not(:disabled) { filter: brightness(0.94); }\n\n.mds-Button__variant-warning {\n background: var(--mds-status-warning);\n color: var(--mds-status-warning-contrast);\n}\n.mds-Button__variant-warning:hover:not(:disabled) { filter: brightness(0.94); }\n\n/* Unavailable is a color, not a fade — opacity composites unpredictably. */\n.mds-Button__button:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n border-color: transparent;\n cursor: not-allowed;\n}\n\n.mds-Button__fullWidth {\n width: 100%;\n}\n\n/* Icon-only: circle, one glyph, width locked to the control height. */\n.mds-Button__icon-only {\n padding: 0;\n border-radius: var(--mds-radius-pill);\n}\n\n.mds-Button__icon-only.mds-Button__size-sm { width: var(--mds-control-h-sm); }\n.mds-Button__icon-only.mds-Button__size-md { width: var(--mds-control-h-md); }\n.mds-Button__icon-only.mds-Button__size-lg { width: var(--mds-control-h-lg); }\n",".mds-Link__link {\n color: var(--mds-text-accent);\n border-radius: var(--mds-radius-focus); /* focus outline hugs the text */\n transition: color var(--mds-transition-control);\n}\n\n/* `as=\"button\"` renders a native button, which brings its own chrome — strip\n it so the control reads as link text. font: inherit also drops the UA's\n button font, so the size classes below still apply (they are declared\n later, and equal specificity lets order decide). */\nbutton.mds-Link__link {\n border: none;\n background: none;\n padding: 0;\n font: inherit;\n cursor: pointer;\n}\n\n.mds-Link__variant-inline {\n text-decoration: underline;\n text-underline-offset: 0.15em;\n}\n\n.mds-Link__variant-standalone {\n text-decoration: none;\n font-weight: var(--mds-weight-medium);\n}\n\n.mds-Link__link:hover {\n color: var(--mds-accent-hover);\n}\n\n/* Plain rides its context: same color and weight as the surrounding text,\n the hover underline is the only tell. Sits after .link:hover — equal\n specificity, so order decides who wins the hover color. */\n.mds-Link__variant-plain {\n color: inherit;\n font-weight: inherit;\n text-decoration: none;\n}\n\n.mds-Link__variant-plain:hover {\n color: inherit;\n text-decoration: underline;\n text-underline-offset: 0.15em;\n}\n\n.mds-Link__size-xs { font-size: var(--mds-text-xs); }\n.mds-Link__size-sm { font-size: var(--mds-text-sm); }\n.mds-Link__size-base { font-size: var(--mds-text-base); }\n.mds-Link__size-lg { font-size: var(--mds-text-lg); }\n.mds-Link__size-xl { font-size: var(--mds-text-xl); }\n",".mds-Avatar__avatar {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n overflow: hidden;\n border-radius: var(--mds-radius-avatar);\n background: var(--mds-surface-sunken);\n color: var(--mds-text-secondary);\n /* Initials are display type, not body copy — a brand with a distinct\n display face wants to see it here, at the size the circle allows. */\n font-family: var(--mds-font-display);\n font-weight: var(--mds-weight-medium);\n user-select: none;\n}\n\n.mds-Avatar__size-xs { width: var(--mds-avatar-xs); height: var(--mds-avatar-xs); font-size: var(--mds-avatar-text-xs); }\n.mds-Avatar__size-sm { width: var(--mds-avatar-sm); height: var(--mds-avatar-sm); font-size: var(--mds-avatar-text-sm); }\n.mds-Avatar__size-md { width: var(--mds-avatar-md); height: var(--mds-avatar-md); font-size: var(--mds-avatar-text-md); }\n.mds-Avatar__size-lg { width: var(--mds-avatar-lg); height: var(--mds-avatar-lg); font-size: var(--mds-avatar-text-lg); }\n.mds-Avatar__size-xl { width: var(--mds-avatar-xl); height: var(--mds-avatar-xl); font-size: var(--mds-avatar-text-xl); }\n\n/* Identity tints — initials stay --mds-text-primary on every tone; the\n contrast gate holds each pairing in both themes. */\n.mds-Avatar__tone-1 { background: var(--mds-avatar-tone-1); color: var(--mds-text-primary); }\n.mds-Avatar__tone-2 { background: var(--mds-avatar-tone-2); color: var(--mds-text-primary); }\n.mds-Avatar__tone-3 { background: var(--mds-avatar-tone-3); color: var(--mds-text-primary); }\n.mds-Avatar__tone-4 { background: var(--mds-avatar-tone-4); color: var(--mds-text-primary); }\n.mds-Avatar__tone-5 { background: var(--mds-avatar-tone-5); color: var(--mds-text-primary); }\n\n.mds-Avatar__image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.mds-Avatar__initials {\n line-height: 1;\n}\n",".mds-AvatarGroup__group {\n display: inline-flex;\n align-items: center;\n}\n\n/* Overlap by a tight step; ring separates neighbours. */\n.mds-AvatarGroup__item {\n display: inline-flex;\n border-radius: var(--mds-radius-avatar);\n box-shadow: 0 0 0 var(--mds-focus-width) var(--mds-surface-card);\n}\n\n.mds-AvatarGroup__item + .mds-AvatarGroup__item {\n margin-left: calc(-1 * var(--mds-avatar-overlap));\n}\n\n.mds-AvatarGroup__overflow {\n align-items: center;\n justify-content: center;\n flex: none;\n background: var(--mds-surface-sunken);\n color: var(--mds-text-secondary);\n font-family: var(--mds-font-body);\n font-weight: var(--mds-weight-semibold);\n user-select: none;\n}\n\n/* One rule per AvatarSize step. Only the overflow chip carries these — the\n avatars inside .item size themselves — so the type here is the count, a\n notch under the initials ratio because it is two or three characters. */\n.mds-AvatarGroup__size-xs { width: var(--mds-avatar-xs); height: var(--mds-avatar-xs); font-size: calc(var(--mds-avatar-xs) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-sm { width: var(--mds-avatar-sm); height: var(--mds-avatar-sm); font-size: calc(var(--mds-avatar-sm) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-md { width: var(--mds-avatar-md); height: var(--mds-avatar-md); font-size: calc(var(--mds-avatar-md) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-lg { width: var(--mds-avatar-lg); height: var(--mds-avatar-lg); font-size: calc(var(--mds-avatar-lg) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-xl { width: var(--mds-avatar-xl); height: var(--mds-avatar-xl); font-size: calc(var(--mds-avatar-xl) * var(--mds-avatar-count-ratio)); }\n",".mds-Badge__badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 0 var(--mds-pad-badge-x);\n min-width: var(--mds-badge-size);\n height: var(--mds-badge-size);\n border-radius: var(--mds-radius-pill);\n font: var(--mds-type-meta);\n font-weight: var(--mds-weight-semibold);\n white-space: nowrap;\n}\n\n.mds-Badge__tone-neutral {\n background: var(--mds-surface-sunken);\n color: var(--mds-text-primary);\n}\n\n.mds-Badge__tone-accent {\n background: var(--mds-accent-soft);\n color: var(--mds-text-primary);\n}\n\n/* The promoted marker — full highlight fill where the other tones stay soft. */\n.mds-Badge__tone-highlight {\n background: var(--mds-highlight);\n color: var(--mds-highlight-contrast);\n}\n\n.mds-Badge__tone-danger {\n background: var(--mds-status-danger-soft);\n color: var(--mds-text-primary);\n}\n\n.mds-Badge__tone-warning {\n background: var(--mds-status-warning-soft);\n color: var(--mds-text-primary);\n}\n\n.mds-Badge__tone-success {\n background: var(--mds-status-success-soft);\n color: var(--mds-text-primary);\n}\n",".mds-Chip__chip {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n padding: var(--mds-pad-pill-y) var(--mds-pad-pill-x);\n border-radius: var(--mds-radius-chip);\n font: var(--mds-type-pill);\n white-space: nowrap;\n cursor: default;\n transition: var(--mds-transition-control);\n}\n\n/* A chip's glyph is the size of its label. The pill is barely taller than its\n type, so a step off the icon scale does not fit inside one, and the glyph\n the caller passed would otherwise set the chip's height. */\n.mds-Chip__icon {\n --mds-icon-slot: 1em;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-Chip__icon > svg {\n width: 100%;\n height: 100%;\n}\n\n/* Unselected skins. */\n.mds-Chip__variant-soft {\n background: var(--mds-accent-soft);\n border: var(--mds-border-width) solid transparent;\n color: var(--mds-text-accent);\n}\n\n.mds-Chip__variant-outline {\n background: transparent;\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n color: var(--mds-text-secondary);\n}\n\n/* The promoted pill — full highlight fill where soft/outline stay quiet. */\n.mds-Chip__variant-highlight {\n background: var(--mds-highlight);\n border: var(--mds-border-width) solid transparent;\n color: var(--mds-highlight-contrast);\n}\n\n/* After the variants, so a selected chip wins whichever it was built from. */\n.mds-Chip__selected {\n background: var(--mds-accent);\n border-color: transparent;\n color: var(--mds-accent-contrast);\n}\n\n/* Only the button branch gets pointer + hover feedback; a selected chip is\n already at full accent and would only muddy under a filter. */\n.mds-Chip__interactive {\n cursor: pointer;\n}\n\n.mds-Chip__interactive:not(.mds-Chip__selected):hover {\n filter: brightness(0.97);\n}\n\n.mds-Chip__disabled {\n opacity: 0.5;\n}\n",".mds-ChipGroup__group {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n\n.mds-ChipGroup__gap-hairline {\n gap: var(--mds-gap-hairline);\n}\n\n.mds-ChipGroup__gap-tight {\n gap: var(--mds-gap-tight);\n}\n\n.mds-ChipGroup__gap-base {\n gap: var(--mds-gap);\n}\n",".mds-ChipBar__bar {\n display: flex;\n align-items: center;\n overflow-x: auto;\n scrollbar-width: none;\n min-width: 0;\n}\n\n.mds-ChipBar__gap-hairline {\n gap: var(--mds-gap-hairline);\n}\n\n.mds-ChipBar__gap-tight {\n gap: var(--mds-gap-tight);\n}\n\n.mds-ChipBar__gap-base {\n gap: var(--mds-gap);\n}\n\n/* Frames the strip so its overflow reads as a scroll area. */\n.mds-ChipBar__bordered {\n padding: var(--mds-pad-pill-y) var(--mds-pad-pill-x);\n border-radius: var(--mds-radius-pill);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n background: var(--mds-surface-sunken);\n}\n\n/* Fade only the trailing edge; the leading chip stays fully legible at rest.\n `black` is a mask stop, not a colour — only its alpha is read, so it is\n theme-independent by definition and deliberately not a token. */\n.mds-ChipBar__fade {\n mask-image: linear-gradient(to right, black calc(100% - var(--mds-fade-w)), transparent);\n}\n\n/* Each child keeps its intrinsic width so the row never wraps. */\n.mds-ChipBar__item {\n flex: none;\n display: flex;\n}\n",".mds-CountButton__button {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n padding: var(--mds-pad-count-y) var(--mds-pad-count-x);\n margin: calc(-1 * var(--mds-pad-count-y)) calc(-1 * var(--mds-pad-count-x));\n border: none;\n background: transparent;\n border-radius: var(--mds-radius-control);\n color: var(--mds-text-secondary);\n font: var(--mds-type-label);\n cursor: pointer;\n transition: var(--mds-transition-control);\n}\n\n.mds-CountButton__button:hover:not(:disabled) {\n background: var(--mds-surface-sunken);\n}\n\n.mds-CountButton__button:active:not(:disabled) {\n background: var(--mds-surface-selected);\n}\n\n.mds-CountButton__button:disabled {\n cursor: default;\n opacity: 0.6;\n}\n\n/* Active tint — the glyph inherits it via currentColor. */\n.mds-CountButton__tone-accent {\n color: var(--mds-accent);\n}\n\n.mds-CountButton__tone-danger {\n color: var(--mds-status-danger);\n}\n\n/* The glyph is the button's, not the caller's: a row of these sits on one\n baseline, and the spinner takes the glyph's place while the count is in\n flight, so both stand at the same step or the row reflows on a tap. */\n.mds-CountButton__glyph {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n --mds-icon-slot: var(--mds-icon-md);\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-CountButton__glyph > svg {\n width: 100%;\n height: 100%;\n}\n",".mds-Field__field {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-hairline);\n}\n\n.mds-Field__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Field__required {\n color: var(--mds-status-danger);\n margin-left: var(--mds-gap-hairline);\n}\n\n.mds-Field__message {\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n}\n\n.mds-Field__error {\n color: var(--mds-status-danger);\n}\n",".mds-Select__wrap {\n position: relative;\n display: inline-flex;\n width: 100%;\n}\n\n.mds-Select__select {\n appearance: none;\n width: 100%;\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n cursor: pointer;\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-Select__select:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n}\n\n.mds-Select__select[aria-invalid=\"true\"] {\n border-color: var(--mds-status-danger);\n}\n\n/* Room for the chevron. */\n.mds-Select__size-sm { height: var(--mds-control-h-sm); padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-sm) + var(--mds-gap-hairline)) 0 var(--mds-pad-control-sm); font-size: var(--mds-text-control-sm); }\n.mds-Select__size-md { height: var(--mds-control-h-md); padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-sm) + var(--mds-gap-tight)) 0 var(--mds-pad-control-md); font-size: var(--mds-text-control-md); }\n.mds-Select__size-lg { height: var(--mds-control-h-lg); padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-sm) + var(--mds-gap-tight)) 0 var(--mds-pad-control-lg); font-size: var(--mds-text-control-lg); }\n\n.mds-Select__chevron {\n position: absolute;\n right: var(--mds-pad-tight);\n top: 50%;\n transform: translateY(-50%);\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n color: var(--mds-text-secondary);\n pointer-events: none;\n}\n",".mds-Overlay__scrim {\n position: fixed;\n inset: 0;\n /* Height beats the bottom inset-0 implies. The keyboard shrinks the visual\n viewport without shrinking 100dvh; a host that mirrors\n visualViewport.height into --mds-vvh keeps sheet and modal above it. */\n height: var(--mds-vvh, 100dvh);\n display: flex;\n background: var(--mds-scrim);\n opacity: 0;\n transition: opacity var(--mds-dur-base) var(--mds-ease-standard);\n}\n\n.mds-Overlay__scrim[data-open] {\n opacity: 1;\n}\n\n.mds-Overlay__variant-modal {\n z-index: var(--mds-z-modal);\n align-items: center;\n justify-content: center;\n padding: var(--mds-pad-page-x);\n}\n\n.mds-Overlay__variant-sheet {\n z-index: var(--mds-z-sheet);\n align-items: flex-end;\n justify-content: center;\n}\n",".mds-Sheet__panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n /* Portalled to <body>, so nothing in the app tree holds it to the app's own\n column — left at 100% it spans a desktop window while the app beside it is\n a phone-width frame. */\n max-width: var(--mds-frame-width);\n /* Of the scrim, which already tracks the visual viewport (--mds-vvh). */\n max-height: 85%;\n /* Portalled past the app chrome, so nothing else reserves the home-bar\n inset for it. */\n padding-bottom: var(--mds-safe-bottom);\n background: var(--mds-surface-raised);\n border-radius: var(--mds-radius-sheet) var(--mds-radius-sheet) 0 0;\n box-shadow: var(--mds-elevation-sheet);\n transform: translateY(100%);\n transition: var(--mds-transition-sheet);\n}\n\n.mds-Sheet__panel[data-open] {\n transform: none;\n}\n\n.mds-Sheet__header {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n padding: var(--mds-pad-card) var(--mds-pad-card) 0;\n font: var(--mds-type-panel-title);\n color: var(--mds-text-primary);\n}\n\n.mds-Sheet__body {\n flex: 1;\n overflow-y: auto;\n padding: var(--mds-pad-card);\n}\n\n.mds-Sheet__footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--mds-gap);\n padding: 0 var(--mds-pad-card) var(--mds-pad-card);\n}\n\n.mds-Sheet__headerTitle {\n flex: 1;\n min-width: 0;\n}\n\n.mds-Sheet__close {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-tap-min);\n height: var(--mds-tap-min);\n margin: calc((var(--mds-tap-min) - var(--mds-icon-lg)) / -2);\n margin-left: 0;\n border: none;\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: var(--mds-text-secondary);\n cursor: pointer;\n}\n\n.mds-Sheet__closeGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n","/* Trigger — reads like an Input so it sits beside form fields. */\n.mds-DateTimePicker__trigger {\n display: flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n width: 100%;\n height: var(--mds-control-h-md);\n padding: 0 var(--mds-pad-control-md);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-muted);\n font: var(--mds-type-body);\n text-align: left;\n cursor: pointer;\n transition: var(--mds-transition-control);\n}\n\n.mds-DateTimePicker__trigger:disabled {\n cursor: default;\n opacity: 0.5;\n}\n\n.mds-DateTimePicker__hasValue {\n color: var(--mds-text-primary);\n}\n\n.mds-DateTimePicker__triggerLabel {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.mds-DateTimePicker__glyph {\n flex: none;\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n\n.mds-DateTimePicker__timeRow {\n display: flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n margin-bottom: var(--mds-stack-group);\n color: var(--mds-text-secondary);\n}\n\n.mds-DateTimePicker__grow {\n flex: 1;\n}\n\n.mds-DateTimePicker__meridiem {\n flex: none;\n}\n\n.mds-DateTimePicker__colon {\n color: var(--mds-text-muted);\n}\n\n.mds-DateTimePicker__calendarHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: var(--mds-gap-tight);\n}\n\n.mds-DateTimePicker__monthLabel {\n font: var(--mds-type-subtitle);\n color: var(--mds-text-primary);\n}\n\n.mds-DateTimePicker__weekdays {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n margin-bottom: var(--mds-gap-hairline);\n}\n\n.mds-DateTimePicker__weekday {\n text-align: center;\n font: var(--mds-type-meta);\n color: var(--mds-text-muted);\n}\n\n/* Fixed 6-row height so the panel does not jump between 4/5/6-week months. */\n.mds-DateTimePicker__grid {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n grid-auto-rows: var(--mds-tap-min);\n min-height: calc(6 * var(--mds-tap-min));\n align-items: stretch;\n}\n\n.mds-DateTimePicker__day {\n border: none;\n background: transparent;\n border-radius: var(--mds-radius-control);\n color: var(--mds-text-primary);\n font: var(--mds-type-body);\n cursor: pointer;\n transition: var(--mds-transition-control);\n}\n\n.mds-DateTimePicker__day:hover:not(:disabled) {\n background: var(--mds-surface-sunken);\n}\n\n.mds-DateTimePicker__day:disabled {\n color: var(--mds-text-muted);\n opacity: 0.5;\n cursor: default;\n}\n\n.mds-DateTimePicker__today {\n font-weight: var(--mds-weight-semibold);\n color: var(--mds-text-accent);\n}\n\n.mds-DateTimePicker__selected {\n background: var(--mds-accent);\n color: var(--mds-accent-contrast);\n}\n\n.mds-DateTimePicker__selected:hover:not(:disabled) {\n background: var(--mds-accent-hover);\n}\n\n/* Neighbour-month filler: keeps the week shape, draws no attention. */\n.mds-DateTimePicker__outside {\n visibility: hidden;\n}\n",".mds-Tag__tag {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n padding: var(--mds-pad-tag-y) var(--mds-pad-tag-x);\n border-radius: var(--mds-radius-tag);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n background: var(--mds-surface-card);\n color: var(--mds-text-secondary);\n font: var(--mds-type-pill);\n white-space: nowrap;\n}\n\n.mds-Tag__tone-accent {\n background: var(--mds-accent-soft);\n border-color: transparent;\n color: var(--mds-text-primary);\n}\n\n.mds-Tag__remove {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border: none;\n padding: 0;\n margin-right: calc(-1 * var(--mds-gap-hairline));\n width: var(--mds-icon-md);\n height: var(--mds-icon-md);\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: inherit;\n cursor: pointer;\n}\n\n.mds-Tag__remove:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-Tag__removeGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n",".mds-Divider__divider {\n background: var(--mds-border-subtle);\n flex: none;\n}\n\n.mds-Divider__horizontal {\n height: var(--mds-border-width);\n width: 100%;\n}\n\n.mds-Divider__vertical {\n width: var(--mds-border-width);\n align-self: stretch;\n}\n",".mds-Skeleton__skeleton {\n display: block;\n background: var(--mds-surface-sunken);\n animation: mds-Skeleton__pulse var(--mds-dur-pulse) var(--mds-ease-standard) infinite;\n width: var(--skeleton-w, 100%);\n}\n\n.mds-Skeleton__variant-text {\n height: var(--skeleton-h, 1em);\n border-radius: var(--mds-radius-skeleton);\n}\n\n.mds-Skeleton__variant-rect {\n height: var(--skeleton-h, var(--mds-skeleton-h));\n border-radius: var(--mds-radius-media);\n}\n\n.mds-Skeleton__variant-circle {\n width: var(--skeleton-w, var(--mds-avatar-md));\n height: var(--skeleton-h, var(--mds-avatar-md));\n border-radius: var(--mds-radius-pill);\n}\n\n@keyframes mds-Skeleton__pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.55; }\n}\n",".mds-ProgressBar__track {\n display: block;\n width: 100%;\n height: var(--mds-progress-h);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-sunken);\n overflow: hidden;\n}\n\n.mds-ProgressBar__fill {\n display: block;\n height: 100%;\n width: var(--progress, 0%);\n border-radius: inherit;\n background: var(--mds-accent);\n transition: width var(--mds-transition-control);\n}\n\n.mds-ProgressBar__indeterminate .mds-ProgressBar__fill {\n width: 40%;\n animation: mds-ProgressBar__slide var(--mds-dur-pulse) var(--mds-ease-standard) infinite;\n}\n\n@keyframes mds-ProgressBar__slide {\n from { transform: translateX(-100%); }\n to { transform: translateX(250%); }\n}\n",".mds-Input__input {\n width: 100%;\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-Input__input::placeholder {\n color: var(--mds-text-muted);\n}\n\n.mds-Input__input:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n}\n\n.mds-Input__input[aria-invalid=\"true\"] {\n border-color: var(--mds-status-danger);\n}\n\n.mds-Input__size-sm { height: var(--mds-control-h-sm); padding: 0 var(--mds-pad-control-sm); font-size: var(--mds-text-control-sm); }\n.mds-Input__size-md { height: var(--mds-control-h-md); padding: 0 var(--mds-pad-control-md); font-size: var(--mds-text-control-md); }\n.mds-Input__size-lg { height: var(--mds-control-h-lg); padding: 0 var(--mds-pad-control-lg); font-size: var(--mds-text-control-lg); }\n\n/* Icon slots overlay the input's edges; the input pads out of their way.\n The clearance is fixed across sizes — icons don't grow with the field — so\n the slot states that same step and the glyph cannot disagree with the\n padding reserved for it. */\n.mds-Input__iconWrap {\n position: relative;\n display: block;\n width: 100%;\n}\n\n.mds-Input__icon {\n --mds-icon-slot: var(--mds-icon-md);\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n color: var(--mds-text-muted);\n pointer-events: none;\n}\n\n.mds-Input__icon > svg {\n width: 100%;\n height: 100%;\n}\n\n.mds-Input__iconLeft { left: var(--mds-pad-control-md); }\n.mds-Input__iconRight { right: var(--mds-pad-control-md); }\n\n.mds-Input__with-icon-left { padding-left: calc(var(--mds-pad-control-md) + var(--mds-icon-md) + var(--mds-gap-tight)); }\n.mds-Input__with-icon-right { padding-right: calc(var(--mds-pad-control-md) + var(--mds-icon-md) + var(--mds-gap-tight)); }\n",".mds-PasswordInput__wrap {\n position: relative;\n display: block;\n}\n\n.mds-PasswordInput__input {\n width: 100%;\n /* Room for the toggle: its hit target plus the usual inline padding. */\n padding-right: calc(var(--mds-control-h-md) + var(--mds-gap-hairline));\n}\n\n.mds-PasswordInput__toggle {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--mds-control-h-md);\n margin: 0;\n padding: 0;\n border: none;\n background: none;\n color: var(--mds-text-muted);\n font-size: var(--mds-icon-sm);\n cursor: pointer;\n transition: color var(--mds-transition-control);\n}\n\n.mds-PasswordInput__toggle:hover {\n color: var(--mds-text-primary);\n}\n",".mds-Textarea__textarea {\n width: 100%;\n padding: var(--mds-pad-tight) var(--mds-pad-control-md);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n font-size: var(--mds-text-control);\n line-height: var(--mds-leading-normal);\n resize: vertical;\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-Textarea__textarea::placeholder {\n color: var(--mds-text-muted);\n}\n\n.mds-Textarea__textarea:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n resize: none;\n}\n\n.mds-Textarea__textarea[aria-invalid=\"true\"] {\n border-color: var(--mds-status-danger);\n}\n\n.mds-Textarea__wrap {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n gap: var(--mds-gap-hairline);\n}\n\n.mds-Textarea__count {\n font: var(--mds-type-meta);\n color: var(--mds-text-muted);\n}\n",".mds-Checkbox__root {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n cursor: pointer;\n}\n\n.mds-Checkbox__root:has(.mds-Checkbox__box:disabled) {\n cursor: not-allowed;\n}\n\n.mds-Checkbox__box {\n appearance: none;\n flex: none;\n margin: 0;\n width: var(--mds-check-size);\n height: var(--mds-check-size);\n /* em-based checkmark geometry scales with the box. */\n font-size: var(--mds-check-size);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-checkbox);\n background: var(--mds-surface-card);\n display: inline-grid;\n place-content: center;\n cursor: inherit;\n transition: var(--mds-transition-control);\n position: relative;\n}\n\n.mds-Checkbox__box:checked {\n background: var(--mds-action-bg);\n border-color: var(--mds-action-bg);\n}\n\n.mds-Checkbox__box:checked::after {\n content: \"\";\n width: 0.32em;\n height: 0.6em;\n margin-top: -0.12em;\n border: solid var(--mds-action-fg);\n border-width: 0 calc(var(--mds-border-width) * 2) calc(var(--mds-border-width) * 2) 0;\n transform: rotate(45deg);\n}\n\n.mds-Checkbox__box:disabled {\n background: var(--mds-action-disabled-bg);\n border-color: var(--mds-border-strong);\n}\n\n.mds-Checkbox__box:disabled:checked::after {\n border-color: var(--mds-action-disabled-fg);\n}\n\n.mds-Checkbox__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Checkbox__box:disabled ~ .mds-Checkbox__label {\n color: var(--mds-action-disabled-fg);\n}\n\n/* The target measures 44px in both axes without the control taking 44px of\n layout. A bare control is usually dropped into someone else's row — a list\n row's trailing slot — and a min-height on the root forced that whole row\n taller than its content. WCAG 2.5.8 measures the target, not the painted box,\n so the target is an out-of-flow pseudo-element instead. */\n.mds-Checkbox__box::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n width: max(100%, var(--mds-tap-min));\n height: max(100%, var(--mds-tap-min));\n}\n",".mds-Radio__root {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n cursor: pointer;\n}\n\n.mds-Radio__root:has(.mds-Radio__dot:disabled) {\n cursor: not-allowed;\n}\n\n.mds-Radio__dot {\n appearance: none;\n flex: none;\n margin: 0;\n width: var(--mds-check-size);\n height: var(--mds-check-size);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-card);\n display: inline-grid;\n place-content: center;\n cursor: inherit;\n transition: var(--mds-transition-control);\n position: relative;\n}\n\n.mds-Radio__dot:checked {\n border-color: var(--mds-action-bg);\n}\n\n.mds-Radio__dot:checked::after {\n content: \"\";\n width: 50%;\n height: 50%;\n border-radius: var(--mds-radius-pill);\n background: var(--mds-action-bg);\n}\n\n.mds-Radio__dot:disabled {\n background: var(--mds-action-disabled-bg);\n border-color: var(--mds-border-strong);\n}\n\n.mds-Radio__dot:disabled:checked::after {\n background: var(--mds-action-disabled-fg);\n}\n\n.mds-Radio__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Radio__dot:disabled ~ .mds-Radio__label {\n color: var(--mds-action-disabled-fg);\n}\n\n/* The target measures 44px in both axes without the control taking 44px of\n layout. A bare control is usually dropped into someone else's row — a list\n row's trailing slot — and a min-height on the root forced that whole row\n taller than its content. WCAG 2.5.8 measures the target, not the painted box,\n so the target is an out-of-flow pseudo-element instead. */\n.mds-Radio__dot::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n width: max(100%, var(--mds-tap-min));\n height: max(100%, var(--mds-tap-min));\n}\n",".mds-Switch__root {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n cursor: pointer;\n}\n\n.mds-Switch__root:has(.mds-Switch__track:disabled) {\n cursor: not-allowed;\n}\n\n.mds-Switch__track {\n appearance: none;\n flex: none;\n margin: 0;\n width: var(--mds-switch-w);\n height: var(--mds-switch-h);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-border-strong);\n position: relative;\n cursor: inherit;\n transition: background-color var(--mds-transition-control);\n}\n\n.mds-Switch__track::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: var(--mds-switch-inset);\n transform: translateY(-50%);\n width: var(--mds-switch-knob);\n height: var(--mds-switch-knob);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-card);\n transition: transform var(--mds-transition-control);\n}\n\n.mds-Switch__track:checked {\n background: var(--mds-action-bg);\n}\n\n.mds-Switch__track:checked::after {\n transform: translateY(-50%)\n translateX(calc(var(--mds-switch-w) - var(--mds-switch-knob) - 2 * var(--mds-switch-inset)));\n}\n\n.mds-Switch__track:disabled {\n background: var(--mds-action-disabled-bg);\n}\n\n.mds-Switch__track:disabled::after {\n background: var(--mds-action-disabled-fg);\n}\n\n/* Hosts the busy spinner over the track without moving the input. */\n.mds-Switch__trackWrap {\n position: relative;\n display: inline-flex;\n flex: none;\n}\n\n.mds-Switch__spinner {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: var(--mds-text-secondary);\n pointer-events: none;\n}\n\n.mds-Switch__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n/* The label sits beside the wrapper, not the input — climb via :has. */\n.mds-Switch__root:has(.mds-Switch__track:disabled) .mds-Switch__label {\n color: var(--mds-action-disabled-fg);\n}\n\n/* The target measures 44px in both axes without the control taking 44px of\n layout. A bare control is usually dropped into someone else's row — a list\n row's trailing slot — and a min-height on the root forced that whole row\n taller than its content. WCAG 2.5.8 measures the target, not the painted box,\n so the target is an out-of-flow pseudo-element instead. */\n.mds-Switch__track::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n width: max(100%, var(--mds-tap-min));\n height: max(100%, var(--mds-tap-min));\n}\n",".mds-SegmentedControl__group {\n display: inline-flex;\n padding: var(--mds-pad-segment);\n gap: var(--mds-gap-hairline);\n background: var(--mds-surface-sunken);\n border-radius: var(--mds-radius-control);\n}\n\n.mds-SegmentedControl__segment {\n display: inline-flex;\n position: relative;\n cursor: pointer;\n}\n\n.mds-SegmentedControl__fullWidth {\n display: flex;\n}\n\n.mds-SegmentedControl__fullWidth .mds-SegmentedControl__segment {\n flex: 1;\n}\n\n.mds-SegmentedControl__fullWidth .mds-SegmentedControl__face {\n flex: 1;\n}\n\n/* Radio overlays the whole segment, invisible but real — it stays the hit\n target and the focusable element. */\n.mds-SegmentedControl__input {\n appearance: none;\n margin: 0;\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: inherit;\n}\n\n.mds-SegmentedControl__face {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: calc(var(--mds-control-h-md) - 2 * var(--mds-pad-segment));\n padding: 0 var(--mds-pad-pill-x);\n border-radius: var(--mds-radius-segment);\n font: var(--mds-type-pill);\n color: var(--mds-text-secondary);\n white-space: nowrap;\n transition: var(--mds-transition-control);\n}\n\n.mds-SegmentedControl__input:checked + .mds-SegmentedControl__face {\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n box-shadow: var(--mds-elevation-card);\n}\n\n/* Unavailable is a color, not a fade — matches the control convention. */\n.mds-SegmentedControl__input:disabled + .mds-SegmentedControl__face {\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n}\n\n.mds-SegmentedControl__input:disabled:checked + .mds-SegmentedControl__face {\n background: var(--mds-action-disabled-bg);\n box-shadow: none;\n}\n\n.mds-SegmentedControl__segment:has(.mds-SegmentedControl__input:disabled) {\n cursor: not-allowed;\n}\n\n.mds-SegmentedControl__input:focus-visible + .mds-SegmentedControl__face {\n outline: var(--mds-focus-width) solid var(--mds-focus-ring-color);\n outline-offset: var(--mds-focus-offset);\n}\n",".mds-SearchField__wrap {\n position: relative;\n display: inline-flex;\n align-items: center;\n width: 100%;\n}\n\n.mds-SearchField__glass {\n position: absolute;\n left: var(--mds-pad-control-md);\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n color: var(--mds-text-muted);\n pointer-events: none;\n}\n\n.mds-SearchField__input {\n width: 100%;\n height: var(--mds-control-h-md);\n padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-lg) + var(--mds-gap-tight))\n 0 calc(var(--mds-pad-control-md) + var(--mds-icon-sm) + var(--mds-gap-hairline));\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n font-size: var(--mds-text-control);\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-SearchField__input::placeholder {\n color: var(--mds-text-muted);\n}\n\n/* Native clear crosses collide with ours. */\n.mds-SearchField__input::-webkit-search-cancel-button {\n display: none;\n}\n\n.mds-SearchField__clear {\n position: absolute;\n right: var(--mds-pad-tight);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--mds-icon-lg);\n height: var(--mds-icon-lg);\n border: none;\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: var(--mds-text-secondary);\n cursor: pointer;\n}\n\n.mds-SearchField__clear:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-SearchField__clearGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n",".mds-List__group {\n list-style: none;\n margin: 0;\n padding: 0;\n background: var(--mds-surface-card);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n border-radius: var(--mds-radius-card);\n overflow: hidden;\n}\n\n.mds-List__labelledGroup {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-tight);\n}\n\n/* The heading sits over the card, aligned with the rows' text rather than\n with the card's edge — the rows' own padding is what the eye reads as the\n list's left margin, so a heading flush with the border reads as indented\n the other way. */\n.mds-List__label {\n padding-inline: var(--mds-pad-card); /* matches the rows' inline padding */\n font-weight: var(--mds-weight-semibold);\n font-size: var(--mds-text-section);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n color: var(--mds-text-secondary);\n}\n\n/* Separators belong to the group — standalone rows sitting side by side\n keep their own borders instead. */\n.mds-List__group > .mds-List__item + .mds-List__item {\n border-top: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n/* Standalone surfaces. The row paints its own background: a wrapper's paint\n would bring a wrapper's corner radius with it. */\n.mds-List__surface-card,\n.mds-List__surface-sunken,\n.mds-List__surface-accent {\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n border-radius: var(--mds-radius-card);\n}\n\n.mds-List__surface-card { background: var(--mds-surface-card); }\n.mds-List__surface-sunken { background: var(--mds-surface-sunken); }\n\n/* The prompt row: full-strength accent on the left edge, soft fill behind.\n Longhands so a call site's border-color override still lands. */\n.mds-List__surface-accent {\n border-left-width: var(--mds-edge-width);\n border-left-color: var(--mds-accent);\n background: var(--mds-accent-soft);\n}\n\n/* Paints nothing on purpose — transparent, not unset, so a row on a tinted\n parent shows what's behind it. */\n.mds-List__surface-plain {\n background: transparent;\n border: 0;\n border-radius: 0;\n}\n\n.mds-List__row {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n width: 100%;\n min-height: var(--mds-tap-min);\n padding: var(--mds-pad-item-y) var(--mds-pad-card);\n text-align: left;\n color: inherit;\n text-decoration: none;\n}\n\n/* Interactive rows reset button chrome and signal affordance. */\n.mds-List__interactive {\n border: none;\n background: transparent;\n font: inherit;\n cursor: pointer;\n transition: background-color var(--mds-transition-control);\n}\n\n.mds-List__interactive:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-List__leading,\n.mds-List__trailing {\n display: inline-flex;\n flex: none;\n align-items: center;\n}\n\n.mds-List__text {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-hairline);\n min-width: 0;\n flex: 1;\n}\n\n.mds-List__title {\n font: var(--mds-type-item-title);\n color: var(--mds-text-primary);\n}\n\n.mds-List__description {\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n}\n",".mds-EmptyState__root {\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n gap: var(--mds-stack-item);\n padding: var(--mds-pad-empty-y) var(--mds-pad-card);\n}\n\n.mds-EmptyState__icon {\n display: inline-flex;\n color: var(--mds-text-muted);\n}\n\n.mds-EmptyState__action {\n margin-top: var(--mds-gap-tight);\n}\n",".mds-Tabs__list {\n display: flex;\n gap: var(--mds-gap-hairline);\n border-bottom: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n.mds-Tabs__tab {\n border: none;\n background: transparent;\n padding: var(--mds-pad-tab-y) var(--mds-pad-tab-x);\n margin-bottom: calc(-1 * var(--mds-border-width));\n border-bottom: calc(2 * var(--mds-border-width)) solid transparent;\n font: var(--mds-type-label);\n color: var(--mds-text-secondary);\n cursor: pointer;\n white-space: nowrap;\n transition: color var(--mds-transition-control);\n}\n\n.mds-Tabs__tab:hover {\n color: var(--mds-text-primary);\n}\n\n.mds-Tabs__selected {\n color: var(--mds-text-primary);\n border-bottom-color: var(--mds-accent);\n}\n\n.mds-Tabs__panel {\n padding-top: var(--mds-stack-item);\n}\n",".mds-Toast__viewport {\n position: fixed;\n bottom: calc(var(--mds-toast-inset) + var(--mds-safe-bottom));\n left: 50%;\n transform: translateX(-50%);\n z-index: var(--mds-z-toast);\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-tight);\n width: min(var(--mds-toast-w), calc(100vw - 2 * var(--mds-toast-inset)));\n pointer-events: none;\n}\n\n.mds-Toast__toast {\n display: flex;\n align-items: flex-start;\n gap: var(--mds-gap);\n padding: var(--mds-pad-toast-y) var(--mds-pad-toast-x);\n border-radius: var(--mds-radius-card);\n border-left: calc(3 * var(--mds-border-width)) solid var(--mds-border-strong);\n background: var(--mds-surface-raised);\n box-shadow: var(--mds-elevation-modal);\n pointer-events: auto;\n}\n\n.mds-Toast__tone-success { border-left-color: var(--mds-status-success); }\n.mds-Toast__tone-danger { border-left-color: var(--mds-status-danger); }\n\n.mds-Toast__body {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-hairline);\n flex: 1;\n min-width: 0;\n}\n\n.mds-Toast__title {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Toast__description {\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n}\n\n.mds-Toast__close {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-icon-lg);\n height: var(--mds-icon-lg);\n border: none;\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: var(--mds-text-secondary);\n cursor: pointer;\n}\n\n.mds-Toast__close:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-Toast__closeGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n",".mds-Stack__stack {\n display: flex;\n flex-direction: column;\n}\n\n.mds-Stack__gap-hairline { gap: var(--mds-gap-hairline); }\n.mds-Stack__gap-tight { gap: var(--mds-gap-tight); }\n.mds-Stack__gap-base { gap: var(--mds-gap); }\n.mds-Stack__gap-loose { gap: var(--mds-gap-loose); }\n.mds-Stack__gap-section { gap: var(--mds-stack-section); }\n\n.mds-Stack__align-start { align-items: flex-start; }\n.mds-Stack__align-center { align-items: center; }\n.mds-Stack__align-end { align-items: flex-end; }\n.mds-Stack__align-stretch { align-items: stretch; }\n",".mds-Inline__inline {\n display: flex;\n flex-direction: row;\n}\n\n.mds-Inline__gap-hairline { gap: var(--mds-gap-hairline); }\n.mds-Inline__gap-tight { gap: var(--mds-gap-tight); }\n.mds-Inline__gap-base { gap: var(--mds-gap); }\n.mds-Inline__gap-loose { gap: var(--mds-gap-loose); }\n\n.mds-Inline__align-start { align-items: flex-start; }\n.mds-Inline__align-center { align-items: center; }\n.mds-Inline__align-end { align-items: flex-end; }\n.mds-Inline__align-baseline { align-items: baseline; }\n\n.mds-Inline__justify-start { justify-content: flex-start; }\n.mds-Inline__justify-center { justify-content: center; }\n.mds-Inline__justify-end { justify-content: flex-end; }\n.mds-Inline__justify-between { justify-content: space-between; }\n\n.mds-Inline__wrap {\n flex-wrap: wrap;\n}\n",".mds-Container__container {\n width: 100%;\n margin-inline: auto;\n padding-inline: var(--mds-pad-page-x);\n}\n\n.mds-Container__width-content { max-width: var(--mds-content-max); }\n.mds-Container__width-wide { max-width: var(--mds-content-max-wide); }\n",".mds-Card__card {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap);\n background: var(--mds-surface-card);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n border-radius: var(--mds-radius-card);\n overflow: hidden;\n color: inherit;\n text-decoration: none;\n}\n\n.mds-Card__variant-raised {\n border-color: transparent;\n background: var(--mds-surface-raised);\n box-shadow: var(--mds-elevation-raised);\n}\n\n.mds-Card__variant-sunken {\n background: var(--mds-surface-sunken);\n}\n\n/* Slightly heavier than the plain border so the accent reads at the same\n visual weight. */\n.mds-Card__emphasis {\n border: var(--mds-border-emphasis) solid var(--mds-accent);\n}\n\n/* Whole-card button/link resets + affordance. */\n.mds-Card__interactive {\n padding: 0;\n margin: 0;\n font: inherit;\n text-align: left;\n cursor: pointer;\n transition: box-shadow var(--mds-transition-surface), background-color var(--mds-transition-surface);\n}\n\n.mds-Card__interactive:hover {\n box-shadow: var(--mds-elevation-hover);\n}\n\n.mds-Card__header {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n font: var(--mds-type-card-title);\n color: var(--mds-text-primary);\n}\n\n/* A lone child is the header row, so it gets the width AppBar gives its title. */\n.mds-Card__header > :only-child {\n flex: 1;\n min-width: 0;\n}\n\n.mds-Card__body {\n flex: 1;\n}\n\n/* The card clips its overflow, so a row of actions that outgrows one line has\n to fall to the next rather than disappear off the edge. */\n.mds-Card__footer {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: var(--mds-gap);\n}\n\n/* A slot pays for the card edge it sits against; the card's own gap pays for\n the space between two of them. Padding the outer edges from each slot instead\n left a header above a footer with nothing between them, and a card ending on\n its header with no bottom padding at all. */\n.mds-Card__header,\n.mds-Card__body,\n.mds-Card__footer {\n padding: 0 var(--mds-pad-card);\n}\n\n.mds-Card__header:first-child,\n.mds-Card__body:first-child,\n.mds-Card__footer:first-child {\n padding-top: var(--mds-pad-card);\n}\n\n.mds-Card__header:last-child,\n.mds-Card__body:last-child,\n.mds-Card__footer:last-child {\n padding-bottom: var(--mds-pad-card);\n}\n",".mds-Modal__panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: var(--mds-modal-w);\n max-height: 85dvh;\n background: var(--mds-surface-raised);\n border-radius: var(--mds-radius-modal);\n box-shadow: var(--mds-elevation-modal);\n opacity: 0;\n transform: scale(0.96);\n transition:\n opacity var(--mds-dur-base) var(--mds-ease-standard),\n transform var(--mds-dur-base) var(--mds-ease-standard);\n}\n\n.mds-Modal__panel[data-open] {\n opacity: 1;\n transform: none;\n}\n\n.mds-Modal__header {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n padding: var(--mds-pad-card) var(--mds-pad-card) 0;\n font: var(--mds-type-panel-title);\n color: var(--mds-text-primary);\n}\n\n.mds-Modal__body {\n flex: 1;\n overflow-y: auto;\n padding: var(--mds-pad-card);\n}\n\n.mds-Modal__footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--mds-gap);\n padding: 0 var(--mds-pad-card) var(--mds-pad-card);\n}\n",".mds-ConfirmDialog__description {\n margin: 0;\n font: var(--mds-type-body);\n color: var(--mds-text-secondary);\n}\n\n.mds-ConfirmDialog__error {\n margin: 0;\n font: var(--mds-type-body);\n color: var(--mds-status-danger);\n}\n","/* Needs a host with a resolved height — the app root, a device frame, or a\n `flex: 1; min-height: 0` slot. The host owns the viewport (see Screen.tsx);\n claiming the viewport height here would overflow any frame the keyboard has shrunk. */\n.mds-Screen__screen {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n background: var(--mds-surface-page);\n}\n\n/* min-height: 0 is what lets the region shrink inside the flex column and\n keep the scroll, instead of growing the screen and handing the scroll to\n whatever contains it. */\n.mds-Screen__content {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: var(--mds-pad-page-y) var(--mds-pad-page-x);\n}\n\n.mds-Screen__content.mds-Screen__flush {\n padding: 0;\n}\n",".mds-AppBar__bar {\n position: sticky;\n top: 0;\n z-index: var(--mds-z-header);\n display: flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n height: var(--mds-header-h);\n padding-inline: var(--mds-pad-page-x);\n background: var(--mds-surface-page);\n border-bottom: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n.mds-AppBar__title {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n margin: 0;\n font: var(--mds-type-panel-title);\n color: var(--mds-text-primary);\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n/* Title + subtitle stack. Takes over the title's flex share; the title\n inside keeps its own ellipsis. */\n.mds-AppBar__text {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n}\n\n.mds-AppBar__text .mds-AppBar__title {\n flex: none;\n}\n\n.mds-AppBar__subtitle {\n min-width: 0;\n overflow: hidden;\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.mds-AppBar__slot {\n display: flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n}\n\n/* The actions belong at the end even when no title is there to push them:\n auto margin absorbs the free space the missing flex child leaves behind.\n With a title present its flex share is already 1, so this is a no-op. */\n.mds-AppBar__trailing {\n margin-inline-start: auto;\n}\n",".mds-TabBar__bar {\n position: sticky;\n bottom: 0;\n z-index: var(--mds-z-tabbar);\n display: flex;\n align-items: stretch;\n /* The home-bar inset is added to the bar, not spent out of it: the box is\n border-box, so padding alone would take the inset out of the height the\n items stand in and squash them against the edge on a device that has one. */\n height: calc(var(--mds-tabbar-h) + var(--mds-safe-bottom));\n padding: 0 var(--mds-tabbar-pad-x) calc(var(--mds-tabbar-seat) + var(--mds-safe-bottom));\n background: var(--mds-surface-page);\n border-top: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n.mds-TabBar__item {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--mds-gap-hairline);\n margin: 0;\n padding: 0;\n border: none;\n background: none;\n cursor: pointer;\n font: var(--mds-type-tab);\n color: var(--mds-text-muted);\n text-decoration: none;\n transition: color var(--mds-transition-control);\n}\n\n.mds-TabBar__item:hover {\n color: var(--mds-text-secondary);\n}\n\n.mds-TabBar__active,\n.mds-TabBar__active:hover {\n color: var(--mds-text-accent);\n}\n\n/* A tab's glyph is a step of its own, above the icon scale — see\n --mds-tabbar-icon. Published as the slot so an icon that states no size of\n its own takes it, and so does an icon set that can only size itself. */\n.mds-TabBar__icon {\n position: relative; /* anchors the badge dot */\n display: inline-flex;\n --mds-icon-slot: var(--mds-tabbar-icon);\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-TabBar__icon > svg {\n width: 100%;\n height: 100%;\n}\n\n/* Attention dot, pinned to the icon's top-right corner. */\n.mds-TabBar__badge {\n position: absolute;\n top: var(--mds-dot-offset-y);\n right: var(--mds-dot-offset-x);\n width: var(--mds-dot);\n height: var(--mds-dot);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-status-danger);\n /* Ring in the bar's color so the dot stays legible over the glyph. */\n box-shadow: 0 0 0 var(--mds-dot-ring) var(--mds-surface-page);\n}\n\n/* A caption never wraps: the bar's height is fixed, and a translation twice\n the length of the English would push the glyph out of it. */\n.mds-TabBar__label {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* The raised center action. Negative top margin lifts it above the bar's\n edge; the pill radius keeps it a circle at its fixed size. Aligned to the\n top of the bar, not centred: flex centring measures the margin box, so a\n negative margin there moves nothing. */\n.mds-TabBar__action {\n flex: none;\n align-self: flex-start;\n width: var(--mds-tabbar-action);\n height: var(--mds-tabbar-action);\n margin-top: calc(-1 * var(--mds-tabbar-action-lift));\n border: none;\n border-radius: var(--mds-radius-pill);\n background: var(--mds-accent);\n color: var(--mds-accent-contrast);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-shadow: var(--mds-elevation-raised);\n cursor: pointer;\n transition: background-color var(--mds-transition-control);\n}\n\n.mds-TabBar__action:hover {\n background: var(--mds-accent-hover);\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Text/Text.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Heading/Heading.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Spinner/Spinner.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Icon/Icon.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Button/Button.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Link/Link.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Avatar/Avatar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/AvatarGroup/AvatarGroup.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Badge/Badge.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Chip/Chip.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Chip/ChipGroup.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Chip/ChipBar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/CountButton/CountButton.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Field/Field.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Select/Select.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Overlay/Overlay.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Sheet/Sheet.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/DateTimePicker/DateTimePicker.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Tag/Tag.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Divider/Divider.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Skeleton/Skeleton.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/ProgressBar/ProgressBar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Input/Input.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/PasswordInput/PasswordInput.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Textarea/Textarea.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Checkbox/Checkbox.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Radio/Radio.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Switch/Switch.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/SegmentedControl/SegmentedControl.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/SearchField/SearchField.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/List/List.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/EmptyState/EmptyState.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Tabs/Tabs.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Toast/Toast.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Stack/Stack.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Inline/Inline.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Container/Container.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Card/Card.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Modal/Modal.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/ConfirmDialog/ConfirmDialog.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Screen/Screen.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/AppBar/AppBar.module.css?mds-scoped","mds-css:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/TabBar/TabBar.module.css?mds-scoped"],"sourcesContent":[".mds-Text__text {\n margin: 0;\n}\n\n/* Type roles — the core shorthands. */\n.mds-Text__variant-body { font: var(--mds-type-body); }\n.mds-Text__variant-label { font: var(--mds-type-label); }\n.mds-Text__variant-note { font: var(--mds-type-note); }\n.mds-Text__variant-meta { font: var(--mds-type-meta); }\n.mds-Text__variant-eyebrow {\n font: var(--mds-type-eyebrow);\n letter-spacing: var(--mds-tracking-eyebrow);\n text-transform: uppercase;\n}\n\n/* Tones — semantic aliases only. */\n.mds-Text__tone-primary { color: var(--mds-text-primary); }\n.mds-Text__tone-secondary { color: var(--mds-text-secondary); }\n.mds-Text__tone-muted { color: var(--mds-text-muted); }\n.mds-Text__tone-inverse { color: var(--mds-text-inverse); }\n.mds-Text__tone-accent { color: var(--mds-text-accent); }\n.mds-Text__tone-on-media { color: var(--mds-text-on-media); }\n.mds-Text__tone-danger { color: var(--mds-status-danger); }\n.mds-Text__tone-warning { color: var(--mds-status-warning); }\n.mds-Text__tone-success { color: var(--mds-status-success); }\n\n.mds-Text__align-left { text-align: left; }\n.mds-Text__align-center { text-align: center; }\n.mds-Text__align-right { text-align: right; }\n\n.mds-Text__truncate {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n",".mds-Heading__heading {\n margin: 0;\n}\n\n.mds-Heading__variant-display {\n font: var(--mds-type-display);\n letter-spacing: var(--mds-tracking-display);\n}\n.mds-Heading__variant-title { font: var(--mds-type-title); }\n.mds-Heading__variant-subtitle { font: var(--mds-type-subtitle); }\n\n.mds-Heading__tone-primary { color: var(--mds-text-primary); }\n.mds-Heading__tone-secondary { color: var(--mds-text-secondary); }\n.mds-Heading__tone-inverse { color: var(--mds-text-inverse); }\n.mds-Heading__tone-accent { color: var(--mds-text-accent); }\n.mds-Heading__tone-on-media { color: var(--mds-text-on-media); }\n","@keyframes mds-Spinner__spin {\n to { transform: rotate(360deg); }\n}\n\n.mds-Spinner__spinner {\n display: inline-block;\n flex: none;\n width: var(--spinner-size);\n height: var(--spinner-size);\n border: var(--spinner-border) solid var(--mds-border-strong);\n border-top-color: currentcolor;\n border-radius: var(--mds-radius-pill);\n animation: mds-Spinner__spin 0.7s linear infinite;\n}\n",".mds-Icon__icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n color: inherit;\n}\n\n/* No step stated: the control around it published one as --mds-icon-slot, and\n md is what a glyph outside any slot is. font-size carries it to an icon set\n that sizes itself from the inside — a ligature font has no width to set. */\n.mds-Icon__size-slot {\n width: var(--mds-icon-slot, var(--mds-icon-md));\n height: var(--mds-icon-slot, var(--mds-icon-md));\n font-size: var(--mds-icon-slot, var(--mds-icon-md));\n}\n\n.mds-Icon__size-sm { width: var(--mds-icon-sm); height: var(--mds-icon-sm); font-size: var(--mds-icon-sm); }\n.mds-Icon__size-md { width: var(--mds-icon-md); height: var(--mds-icon-md); font-size: var(--mds-icon-md); }\n.mds-Icon__size-lg { width: var(--mds-icon-lg); height: var(--mds-icon-lg); font-size: var(--mds-icon-lg); }\n",".mds-Button__button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--mds-gap-tight);\n /* A button's outline is a drawn stroke, not a hairline — the same weight\n the accent border on a Card gets. Filled variants keep it transparent so\n a row of buttons is one height whether or not it is outlined. */\n border: var(--mds-border-emphasis) solid transparent;\n border-radius: var(--mds-radius-control);\n font-family: var(--mds-font-body);\n font-weight: var(--mds-weight-semibold);\n line-height: 1;\n white-space: nowrap;\n cursor: pointer;\n text-decoration: none;\n transition: background-color var(--mds-transition-control), color var(--mds-transition-control);\n}\n\n/* Sizes — height from the control scale, padding from the space scale, glyph\n from the icon scale. */\n.mds-Button__size-sm {\n height: var(--mds-control-h-sm);\n padding: 0 var(--mds-pad-button-sm);\n font-size: var(--mds-text-button-sm);\n --mds-icon-slot: var(--mds-icon-sm);\n}\n\n.mds-Button__size-md {\n height: var(--mds-control-h-md);\n padding: 0 var(--mds-pad-button-md);\n font-size: var(--mds-text-button-md);\n --mds-icon-slot: var(--mds-icon-md);\n}\n\n.mds-Button__size-lg {\n height: var(--mds-control-h-lg);\n padding: 0 var(--mds-pad-button-lg);\n font-size: var(--mds-text-button-lg);\n --mds-icon-slot: var(--mds-icon-lg);\n}\n\n/* How big the glyph is belongs to the button, not to whoever passed it. The\n spinner replaces the left glyph while busy, so it reads the same step and the\n button keeps its width across the change. An icon set that cannot be sized\n from the outside reads --mds-icon-slot for its own default. */\n.mds-Button__slot {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-Button__slot > svg {\n width: 100%;\n height: 100%;\n}\n\n/* Variants */\n.mds-Button__variant-primary {\n background: var(--mds-action-bg);\n color: var(--mds-action-fg);\n}\n\n.mds-Button__variant-primary:hover:not(:disabled) { background: var(--mds-action-bg-hover); }\n.mds-Button__variant-primary:active:not(:disabled) { background: var(--mds-action-bg-active); }\n\n.mds-Button__variant-secondary {\n background: transparent;\n color: var(--mds-button-secondary-fg);\n border-color: var(--mds-button-border);\n}\n\n.mds-Button__variant-ghost {\n background: transparent;\n color: var(--mds-text-primary);\n}\n\n.mds-Button__variant-secondary:hover:not(:disabled),\n.mds-Button__variant-ghost:hover:not(:disabled) {\n background: var(--mds-surface-sunken);\n}\n\n.mds-Button__variant-highlight {\n background: var(--mds-highlight);\n color: var(--mds-highlight-contrast);\n}\n\n.mds-Button__variant-highlight:hover:not(:disabled) { background: var(--mds-highlight-hover); }\n\n.mds-Button__variant-danger {\n background: var(--mds-status-danger);\n color: var(--mds-status-danger-contrast);\n}\n\n.mds-Button__variant-danger:hover:not(:disabled) { filter: brightness(0.94); }\n\n.mds-Button__variant-warning {\n background: var(--mds-status-warning);\n color: var(--mds-status-warning-contrast);\n}\n.mds-Button__variant-warning:hover:not(:disabled) { filter: brightness(0.94); }\n\n/* Unavailable is a color, not a fade — opacity composites unpredictably. */\n.mds-Button__button:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n border-color: transparent;\n cursor: not-allowed;\n}\n\n.mds-Button__fullWidth {\n width: 100%;\n}\n\n/* Icon-only: circle, one glyph, width locked to the control height. */\n.mds-Button__icon-only {\n padding: 0;\n border-radius: var(--mds-radius-pill);\n}\n\n.mds-Button__icon-only.mds-Button__size-sm { width: var(--mds-control-h-sm); }\n.mds-Button__icon-only.mds-Button__size-md { width: var(--mds-control-h-md); }\n.mds-Button__icon-only.mds-Button__size-lg { width: var(--mds-control-h-lg); }\n",".mds-Link__link {\n color: var(--mds-text-accent);\n border-radius: var(--mds-radius-focus); /* focus outline hugs the text */\n transition: color var(--mds-transition-control);\n}\n\n/* `as=\"button\"` renders a native button, which brings its own chrome — strip\n it so the control reads as link text. font: inherit also drops the UA's\n button font, so the size classes below still apply (they are declared\n later, and equal specificity lets order decide). */\nbutton.mds-Link__link {\n border: none;\n background: none;\n padding: 0;\n font: inherit;\n cursor: pointer;\n}\n\n.mds-Link__variant-inline {\n text-decoration: underline;\n text-underline-offset: 0.15em;\n}\n\n.mds-Link__variant-standalone {\n text-decoration: none;\n font-weight: var(--mds-weight-medium);\n}\n\n.mds-Link__link:hover {\n color: var(--mds-accent-hover);\n}\n\n/* Plain rides its context: same color and weight as the surrounding text,\n the hover underline is the only tell. Sits after .link:hover — equal\n specificity, so order decides who wins the hover color. */\n.mds-Link__variant-plain {\n color: inherit;\n font-weight: inherit;\n text-decoration: none;\n}\n\n.mds-Link__variant-plain:hover {\n color: inherit;\n text-decoration: underline;\n text-underline-offset: 0.15em;\n}\n\n.mds-Link__size-xs { font-size: var(--mds-text-xs); }\n.mds-Link__size-sm { font-size: var(--mds-text-sm); }\n.mds-Link__size-base { font-size: var(--mds-text-base); }\n.mds-Link__size-lg { font-size: var(--mds-text-lg); }\n.mds-Link__size-xl { font-size: var(--mds-text-xl); }\n",".mds-Avatar__avatar {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n overflow: hidden;\n border-radius: var(--mds-radius-avatar);\n background: var(--mds-surface-sunken);\n color: var(--mds-text-secondary);\n /* Initials are display type, not body copy — a brand with a distinct\n display face wants to see it here, at the size the circle allows. */\n font-family: var(--mds-font-display);\n font-weight: var(--mds-weight-medium);\n user-select: none;\n}\n\n.mds-Avatar__size-xs { width: var(--mds-avatar-xs); height: var(--mds-avatar-xs); font-size: var(--mds-avatar-text-xs); }\n.mds-Avatar__size-sm { width: var(--mds-avatar-sm); height: var(--mds-avatar-sm); font-size: var(--mds-avatar-text-sm); }\n.mds-Avatar__size-md { width: var(--mds-avatar-md); height: var(--mds-avatar-md); font-size: var(--mds-avatar-text-md); }\n.mds-Avatar__size-lg { width: var(--mds-avatar-lg); height: var(--mds-avatar-lg); font-size: var(--mds-avatar-text-lg); }\n.mds-Avatar__size-xl { width: var(--mds-avatar-xl); height: var(--mds-avatar-xl); font-size: var(--mds-avatar-text-xl); }\n\n/* Identity tints — initials stay --mds-text-primary on every tone; the\n contrast gate holds each pairing in both themes. */\n.mds-Avatar__tone-1 { background: var(--mds-avatar-tone-1); color: var(--mds-text-primary); }\n.mds-Avatar__tone-2 { background: var(--mds-avatar-tone-2); color: var(--mds-text-primary); }\n.mds-Avatar__tone-3 { background: var(--mds-avatar-tone-3); color: var(--mds-text-primary); }\n.mds-Avatar__tone-4 { background: var(--mds-avatar-tone-4); color: var(--mds-text-primary); }\n.mds-Avatar__tone-5 { background: var(--mds-avatar-tone-5); color: var(--mds-text-primary); }\n\n.mds-Avatar__image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.mds-Avatar__initials {\n line-height: 1;\n}\n",".mds-AvatarGroup__group {\n display: inline-flex;\n align-items: center;\n}\n\n/* Overlap by a tight step; ring separates neighbours. */\n.mds-AvatarGroup__item {\n display: inline-flex;\n border-radius: var(--mds-radius-avatar);\n box-shadow: 0 0 0 var(--mds-focus-width) var(--mds-surface-card);\n}\n\n.mds-AvatarGroup__item + .mds-AvatarGroup__item {\n margin-left: calc(-1 * var(--mds-avatar-overlap));\n}\n\n.mds-AvatarGroup__overflow {\n align-items: center;\n justify-content: center;\n flex: none;\n background: var(--mds-surface-sunken);\n color: var(--mds-text-secondary);\n font-family: var(--mds-font-body);\n font-weight: var(--mds-weight-semibold);\n user-select: none;\n}\n\n/* One rule per AvatarSize step. Only the overflow chip carries these — the\n avatars inside .item size themselves — so the type here is the count, a\n notch under the initials ratio because it is two or three characters. */\n.mds-AvatarGroup__size-xs { width: var(--mds-avatar-xs); height: var(--mds-avatar-xs); font-size: calc(var(--mds-avatar-xs) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-sm { width: var(--mds-avatar-sm); height: var(--mds-avatar-sm); font-size: calc(var(--mds-avatar-sm) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-md { width: var(--mds-avatar-md); height: var(--mds-avatar-md); font-size: calc(var(--mds-avatar-md) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-lg { width: var(--mds-avatar-lg); height: var(--mds-avatar-lg); font-size: calc(var(--mds-avatar-lg) * var(--mds-avatar-count-ratio)); }\n.mds-AvatarGroup__size-xl { width: var(--mds-avatar-xl); height: var(--mds-avatar-xl); font-size: calc(var(--mds-avatar-xl) * var(--mds-avatar-count-ratio)); }\n",".mds-Badge__badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 0 var(--mds-pad-badge-x);\n min-width: var(--mds-badge-size);\n height: var(--mds-badge-size);\n border-radius: var(--mds-radius-pill);\n font: var(--mds-type-meta);\n font-weight: var(--mds-weight-semibold);\n white-space: nowrap;\n}\n\n.mds-Badge__tone-neutral {\n background: var(--mds-surface-sunken);\n color: var(--mds-text-primary);\n}\n\n.mds-Badge__tone-accent {\n background: var(--mds-accent-soft);\n color: var(--mds-text-primary);\n}\n\n/* The promoted marker — full highlight fill where the other tones stay soft. */\n.mds-Badge__tone-highlight {\n background: var(--mds-highlight);\n color: var(--mds-highlight-contrast);\n}\n\n.mds-Badge__tone-danger {\n background: var(--mds-status-danger-soft);\n color: var(--mds-text-primary);\n}\n\n.mds-Badge__tone-warning {\n background: var(--mds-status-warning-soft);\n color: var(--mds-text-primary);\n}\n\n.mds-Badge__tone-success {\n background: var(--mds-status-success-soft);\n color: var(--mds-text-primary);\n}\n",".mds-Chip__chip {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n padding: var(--mds-pad-pill-y) var(--mds-pad-pill-x);\n border-radius: var(--mds-radius-chip);\n font: var(--mds-type-pill);\n white-space: nowrap;\n cursor: default;\n transition: var(--mds-transition-control);\n}\n\n/* A chip's glyph is the size of its label. The pill is barely taller than its\n type, so a step off the icon scale does not fit inside one, and the glyph\n the caller passed would otherwise set the chip's height. */\n.mds-Chip__icon {\n --mds-icon-slot: 1em;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-Chip__icon > svg {\n width: 100%;\n height: 100%;\n}\n\n/* Unselected skins. */\n.mds-Chip__variant-soft {\n background: var(--mds-accent-soft);\n border: var(--mds-border-width) solid transparent;\n color: var(--mds-text-accent);\n}\n\n.mds-Chip__variant-outline {\n background: transparent;\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n color: var(--mds-text-secondary);\n}\n\n/* The promoted pill — full highlight fill where soft/outline stay quiet. */\n.mds-Chip__variant-highlight {\n background: var(--mds-highlight);\n border: var(--mds-border-width) solid transparent;\n color: var(--mds-highlight-contrast);\n}\n\n/* After the variants, so a selected chip wins whichever it was built from. */\n.mds-Chip__selected {\n background: var(--mds-accent);\n border-color: transparent;\n color: var(--mds-accent-contrast);\n}\n\n/* Only the button branch gets pointer + hover feedback; a selected chip is\n already at full accent and would only muddy under a filter. */\n.mds-Chip__interactive {\n cursor: pointer;\n}\n\n.mds-Chip__interactive:not(.mds-Chip__selected):hover {\n filter: brightness(0.97);\n}\n\n.mds-Chip__disabled {\n opacity: 0.5;\n}\n",".mds-ChipGroup__group {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n\n.mds-ChipGroup__gap-hairline {\n gap: var(--mds-gap-hairline);\n}\n\n.mds-ChipGroup__gap-tight {\n gap: var(--mds-gap-tight);\n}\n\n.mds-ChipGroup__gap-base {\n gap: var(--mds-gap);\n}\n",".mds-ChipBar__bar {\n display: flex;\n align-items: center;\n overflow-x: auto;\n scrollbar-width: none;\n min-width: 0;\n}\n\n.mds-ChipBar__gap-hairline {\n gap: var(--mds-gap-hairline);\n}\n\n.mds-ChipBar__gap-tight {\n gap: var(--mds-gap-tight);\n}\n\n.mds-ChipBar__gap-base {\n gap: var(--mds-gap);\n}\n\n/* Frames the strip so its overflow reads as a scroll area. */\n.mds-ChipBar__bordered {\n padding: var(--mds-pad-pill-y) var(--mds-pad-pill-x);\n border-radius: var(--mds-radius-pill);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n background: var(--mds-surface-sunken);\n}\n\n/* Fade only the trailing edge; the leading chip stays fully legible at rest.\n `black` is a mask stop, not a colour — only its alpha is read, so it is\n theme-independent by definition and deliberately not a token. */\n.mds-ChipBar__fade {\n mask-image: linear-gradient(to right, black calc(100% - var(--mds-fade-w)), transparent);\n}\n\n/* Each child keeps its intrinsic width so the row never wraps. */\n.mds-ChipBar__item {\n flex: none;\n display: flex;\n}\n",".mds-CountButton__button {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n padding: var(--mds-pad-count-y) var(--mds-pad-count-x);\n margin: calc(-1 * var(--mds-pad-count-y)) calc(-1 * var(--mds-pad-count-x));\n border: none;\n background: transparent;\n border-radius: var(--mds-radius-control);\n color: var(--mds-text-secondary);\n font: var(--mds-type-label);\n cursor: pointer;\n transition: var(--mds-transition-control);\n}\n\n.mds-CountButton__button:hover:not(:disabled) {\n background: var(--mds-surface-sunken);\n}\n\n.mds-CountButton__button:active:not(:disabled) {\n background: var(--mds-surface-selected);\n}\n\n.mds-CountButton__button:disabled {\n cursor: default;\n opacity: 0.6;\n}\n\n/* Active tint — the glyph inherits it via currentColor. */\n.mds-CountButton__tone-accent {\n color: var(--mds-accent);\n}\n\n.mds-CountButton__tone-danger {\n color: var(--mds-status-danger);\n}\n\n/* The glyph is the button's, not the caller's: a row of these sits on one\n baseline, and the spinner takes the glyph's place while the count is in\n flight, so both stand at the same step or the row reflows on a tap. */\n.mds-CountButton__glyph {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n --mds-icon-slot: var(--mds-icon-md);\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-CountButton__glyph > svg {\n width: 100%;\n height: 100%;\n}\n",".mds-Field__field {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-hairline);\n}\n\n.mds-Field__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Field__required {\n color: var(--mds-status-danger);\n margin-left: var(--mds-gap-hairline);\n}\n\n.mds-Field__message {\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n}\n\n.mds-Field__error {\n color: var(--mds-status-danger);\n}\n",".mds-Select__wrap {\n position: relative;\n display: inline-flex;\n width: 100%;\n}\n\n.mds-Select__select {\n appearance: none;\n width: 100%;\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n cursor: pointer;\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-Select__select:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n}\n\n.mds-Select__select[aria-invalid=\"true\"] {\n border-color: var(--mds-status-danger);\n}\n\n/* Room for the chevron. */\n.mds-Select__size-sm { height: var(--mds-control-h-sm); padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-sm) + var(--mds-gap-hairline)) 0 var(--mds-pad-control-sm); font-size: var(--mds-text-control-sm); }\n.mds-Select__size-md { height: var(--mds-control-h-md); padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-sm) + var(--mds-gap-tight)) 0 var(--mds-pad-control-md); font-size: var(--mds-text-control-md); }\n.mds-Select__size-lg { height: var(--mds-control-h-lg); padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-sm) + var(--mds-gap-tight)) 0 var(--mds-pad-control-lg); font-size: var(--mds-text-control-lg); }\n\n.mds-Select__chevron {\n position: absolute;\n right: var(--mds-pad-tight);\n top: 50%;\n transform: translateY(-50%);\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n color: var(--mds-text-secondary);\n pointer-events: none;\n}\n",".mds-Overlay__scrim {\n position: fixed;\n inset: 0;\n /* Height beats the bottom inset-0 implies. The keyboard shrinks the visual\n viewport without shrinking 100dvh; a host that mirrors\n visualViewport.height into --mds-vvh keeps sheet and modal above it. */\n height: var(--mds-vvh, 100dvh);\n display: flex;\n background: var(--mds-scrim);\n opacity: 0;\n transition: opacity var(--mds-dur-base) var(--mds-ease-standard);\n}\n\n.mds-Overlay__scrim[data-open] {\n opacity: 1;\n}\n\n.mds-Overlay__variant-modal {\n z-index: var(--mds-z-modal);\n align-items: center;\n justify-content: center;\n padding: var(--mds-pad-page-x);\n}\n\n.mds-Overlay__variant-sheet {\n z-index: var(--mds-z-sheet);\n align-items: flex-end;\n justify-content: center;\n}\n",".mds-Sheet__panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n /* Portalled to <body>, so nothing in the app tree holds it to the app's own\n column — left at 100% it spans a desktop window while the app beside it is\n a phone-width frame. */\n max-width: var(--mds-frame-width);\n /* Of the scrim, which already tracks the visual viewport (--mds-vvh). */\n max-height: 85%;\n /* Portalled past the app chrome, so nothing else reserves the home-bar\n inset for it. */\n padding-bottom: var(--mds-safe-bottom);\n background: var(--mds-surface-raised);\n border-radius: var(--mds-radius-sheet) var(--mds-radius-sheet) 0 0;\n box-shadow: var(--mds-elevation-sheet);\n transform: translateY(100%);\n transition: var(--mds-transition-sheet);\n}\n\n.mds-Sheet__panel[data-open] {\n transform: none;\n}\n\n.mds-Sheet__header {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n padding: var(--mds-pad-card) var(--mds-pad-card) 0;\n font: var(--mds-type-panel-title);\n color: var(--mds-text-primary);\n}\n\n.mds-Sheet__body {\n flex: 1;\n overflow-y: auto;\n padding: var(--mds-pad-card);\n}\n\n.mds-Sheet__footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--mds-gap);\n padding: 0 var(--mds-pad-card) var(--mds-pad-card);\n}\n\n.mds-Sheet__headerTitle {\n flex: 1;\n min-width: 0;\n}\n\n.mds-Sheet__close {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-tap-min);\n height: var(--mds-tap-min);\n margin: calc((var(--mds-tap-min) - var(--mds-icon-lg)) / -2);\n margin-left: 0;\n border: none;\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: var(--mds-text-secondary);\n cursor: pointer;\n}\n\n.mds-Sheet__closeGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n","/* Trigger — reads like an Input so it sits beside form fields. */\n.mds-DateTimePicker__trigger {\n display: flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n width: 100%;\n height: var(--mds-control-h-md);\n padding: 0 var(--mds-pad-control-md);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-muted);\n font: var(--mds-type-body);\n text-align: left;\n cursor: pointer;\n transition: var(--mds-transition-control);\n}\n\n.mds-DateTimePicker__trigger:disabled {\n cursor: default;\n opacity: 0.5;\n}\n\n.mds-DateTimePicker__hasValue {\n color: var(--mds-text-primary);\n}\n\n.mds-DateTimePicker__triggerLabel {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.mds-DateTimePicker__glyph {\n flex: none;\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n\n.mds-DateTimePicker__timeRow {\n display: flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n margin-bottom: var(--mds-stack-group);\n color: var(--mds-text-secondary);\n}\n\n.mds-DateTimePicker__grow {\n flex: 1;\n}\n\n.mds-DateTimePicker__meridiem {\n flex: none;\n}\n\n.mds-DateTimePicker__colon {\n color: var(--mds-text-muted);\n}\n\n.mds-DateTimePicker__calendarHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: var(--mds-gap-tight);\n}\n\n.mds-DateTimePicker__monthLabel {\n font: var(--mds-type-subtitle);\n color: var(--mds-text-primary);\n}\n\n.mds-DateTimePicker__weekdays {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n margin-bottom: var(--mds-gap-hairline);\n}\n\n.mds-DateTimePicker__weekday {\n text-align: center;\n font: var(--mds-type-meta);\n color: var(--mds-text-muted);\n}\n\n/* Fixed 6-row height so the panel does not jump between 4/5/6-week months. */\n.mds-DateTimePicker__grid {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n grid-auto-rows: var(--mds-tap-min);\n min-height: calc(6 * var(--mds-tap-min));\n align-items: stretch;\n}\n\n.mds-DateTimePicker__day {\n border: none;\n background: transparent;\n border-radius: var(--mds-radius-control);\n color: var(--mds-text-primary);\n font: var(--mds-type-body);\n cursor: pointer;\n transition: var(--mds-transition-control);\n}\n\n.mds-DateTimePicker__day:hover:not(:disabled) {\n background: var(--mds-surface-sunken);\n}\n\n.mds-DateTimePicker__day:disabled {\n color: var(--mds-text-muted);\n opacity: 0.5;\n cursor: default;\n}\n\n.mds-DateTimePicker__today {\n font-weight: var(--mds-weight-semibold);\n color: var(--mds-text-accent);\n}\n\n.mds-DateTimePicker__selected {\n background: var(--mds-accent);\n color: var(--mds-accent-contrast);\n}\n\n.mds-DateTimePicker__selected:hover:not(:disabled) {\n background: var(--mds-accent-hover);\n}\n\n/* Neighbour-month filler: keeps the week shape, draws no attention. */\n.mds-DateTimePicker__outside {\n visibility: hidden;\n}\n",".mds-Tag__tag {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n padding: var(--mds-pad-tag-y) var(--mds-pad-tag-x);\n border-radius: var(--mds-radius-tag);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n background: var(--mds-surface-card);\n color: var(--mds-text-secondary);\n font: var(--mds-type-pill);\n white-space: nowrap;\n}\n\n.mds-Tag__tone-accent {\n background: var(--mds-accent-soft);\n border-color: transparent;\n color: var(--mds-text-primary);\n}\n\n.mds-Tag__remove {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border: none;\n padding: 0;\n margin-right: calc(-1 * var(--mds-gap-hairline));\n width: var(--mds-icon-md);\n height: var(--mds-icon-md);\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: inherit;\n cursor: pointer;\n}\n\n.mds-Tag__remove:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-Tag__removeGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n",".mds-Divider__divider {\n background: var(--mds-border-subtle);\n flex: none;\n}\n\n.mds-Divider__horizontal {\n height: var(--mds-border-width);\n width: 100%;\n}\n\n.mds-Divider__vertical {\n width: var(--mds-border-width);\n align-self: stretch;\n}\n",".mds-Skeleton__skeleton {\n display: block;\n background: var(--mds-surface-sunken);\n animation: mds-Skeleton__pulse var(--mds-dur-pulse) var(--mds-ease-standard) infinite;\n width: var(--skeleton-w, 100%);\n}\n\n.mds-Skeleton__variant-text {\n height: var(--skeleton-h, 1em);\n border-radius: var(--mds-radius-skeleton);\n}\n\n.mds-Skeleton__variant-rect {\n height: var(--skeleton-h, var(--mds-skeleton-h));\n border-radius: var(--mds-radius-media);\n}\n\n.mds-Skeleton__variant-circle {\n width: var(--skeleton-w, var(--mds-avatar-md));\n height: var(--skeleton-h, var(--mds-avatar-md));\n border-radius: var(--mds-radius-pill);\n}\n\n@keyframes mds-Skeleton__pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.55; }\n}\n",".mds-ProgressBar__track {\n display: block;\n width: 100%;\n height: var(--mds-progress-h);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-sunken);\n overflow: hidden;\n}\n\n.mds-ProgressBar__fill {\n display: block;\n height: 100%;\n width: var(--progress, 0%);\n border-radius: inherit;\n background: var(--mds-accent);\n transition: width var(--mds-transition-control);\n}\n\n.mds-ProgressBar__indeterminate .mds-ProgressBar__fill {\n width: 40%;\n animation: mds-ProgressBar__slide var(--mds-dur-pulse) var(--mds-ease-standard) infinite;\n}\n\n@keyframes mds-ProgressBar__slide {\n from { transform: translateX(-100%); }\n to { transform: translateX(250%); }\n}\n",".mds-Input__input {\n width: 100%;\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-Input__input::placeholder {\n color: var(--mds-text-muted);\n}\n\n.mds-Input__input:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n}\n\n.mds-Input__input[aria-invalid=\"true\"] {\n border-color: var(--mds-status-danger);\n}\n\n.mds-Input__size-sm { height: var(--mds-control-h-sm); padding: 0 var(--mds-pad-control-sm); font-size: var(--mds-text-control-sm); }\n.mds-Input__size-md { height: var(--mds-control-h-md); padding: 0 var(--mds-pad-control-md); font-size: var(--mds-text-control-md); }\n.mds-Input__size-lg { height: var(--mds-control-h-lg); padding: 0 var(--mds-pad-control-lg); font-size: var(--mds-text-control-lg); }\n\n/* Icon slots overlay the input's edges; the input pads out of their way.\n The clearance is fixed across sizes — icons don't grow with the field — so\n the slot states that same step and the glyph cannot disagree with the\n padding reserved for it. */\n.mds-Input__iconWrap {\n position: relative;\n display: block;\n width: 100%;\n}\n\n.mds-Input__icon {\n --mds-icon-slot: var(--mds-icon-md);\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n color: var(--mds-text-muted);\n pointer-events: none;\n}\n\n.mds-Input__icon > svg {\n width: 100%;\n height: 100%;\n}\n\n.mds-Input__iconLeft { left: var(--mds-pad-control-md); }\n.mds-Input__iconRight { right: var(--mds-pad-control-md); }\n\n.mds-Input__with-icon-left { padding-left: calc(var(--mds-pad-control-md) + var(--mds-icon-md) + var(--mds-gap-tight)); }\n.mds-Input__with-icon-right { padding-right: calc(var(--mds-pad-control-md) + var(--mds-icon-md) + var(--mds-gap-tight)); }\n",".mds-PasswordInput__wrap {\n position: relative;\n display: block;\n}\n\n.mds-PasswordInput__input {\n width: 100%;\n /* Room for the toggle: its hit target plus the usual inline padding. */\n padding-right: calc(var(--mds-control-h-md) + var(--mds-gap-hairline));\n}\n\n.mds-PasswordInput__toggle {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--mds-control-h-md);\n margin: 0;\n padding: 0;\n border: none;\n background: none;\n color: var(--mds-text-muted);\n font-size: var(--mds-icon-sm);\n cursor: pointer;\n transition: color var(--mds-transition-control);\n}\n\n.mds-PasswordInput__toggle:hover {\n color: var(--mds-text-primary);\n}\n",".mds-Textarea__textarea {\n width: 100%;\n padding: var(--mds-pad-tight) var(--mds-pad-control-md);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-control);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n font-size: var(--mds-text-control);\n line-height: var(--mds-leading-normal);\n resize: vertical;\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-Textarea__textarea::placeholder {\n color: var(--mds-text-muted);\n}\n\n.mds-Textarea__textarea:disabled {\n background: var(--mds-action-disabled-bg);\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n resize: none;\n}\n\n.mds-Textarea__textarea[aria-invalid=\"true\"] {\n border-color: var(--mds-status-danger);\n}\n\n.mds-Textarea__wrap {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n gap: var(--mds-gap-hairline);\n}\n\n.mds-Textarea__count {\n font: var(--mds-type-meta);\n color: var(--mds-text-muted);\n}\n",".mds-Checkbox__root {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n cursor: pointer;\n}\n\n.mds-Checkbox__root:has(.mds-Checkbox__box:disabled) {\n cursor: not-allowed;\n}\n\n.mds-Checkbox__box {\n appearance: none;\n flex: none;\n margin: 0;\n width: var(--mds-check-size);\n height: var(--mds-check-size);\n /* em-based checkmark geometry scales with the box. */\n font-size: var(--mds-check-size);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-checkbox);\n background: var(--mds-surface-card);\n display: inline-grid;\n place-content: center;\n cursor: inherit;\n transition: var(--mds-transition-control);\n position: relative;\n}\n\n.mds-Checkbox__box:checked {\n background: var(--mds-action-bg);\n border-color: var(--mds-action-bg);\n}\n\n.mds-Checkbox__box:checked::after {\n content: \"\";\n width: 0.32em;\n height: 0.6em;\n margin-top: -0.12em;\n border: solid var(--mds-action-fg);\n border-width: 0 calc(var(--mds-border-width) * 2) calc(var(--mds-border-width) * 2) 0;\n transform: rotate(45deg);\n}\n\n.mds-Checkbox__box:disabled {\n background: var(--mds-action-disabled-bg);\n border-color: var(--mds-border-strong);\n}\n\n.mds-Checkbox__box:disabled:checked::after {\n border-color: var(--mds-action-disabled-fg);\n}\n\n.mds-Checkbox__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Checkbox__box:disabled ~ .mds-Checkbox__label {\n color: var(--mds-action-disabled-fg);\n}\n\n/* The target measures 44px in both axes without the control taking 44px of\n layout. A bare control is usually dropped into someone else's row — a list\n row's trailing slot — and a min-height on the root forced that whole row\n taller than its content. WCAG 2.5.8 measures the target, not the painted box,\n so the target is an out-of-flow pseudo-element instead. */\n.mds-Checkbox__box::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n width: max(100%, var(--mds-tap-min));\n height: max(100%, var(--mds-tap-min));\n}\n",".mds-Radio__root {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n cursor: pointer;\n}\n\n.mds-Radio__root:has(.mds-Radio__dot:disabled) {\n cursor: not-allowed;\n}\n\n.mds-Radio__dot {\n appearance: none;\n flex: none;\n margin: 0;\n width: var(--mds-check-size);\n height: var(--mds-check-size);\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-card);\n display: inline-grid;\n place-content: center;\n cursor: inherit;\n transition: var(--mds-transition-control);\n position: relative;\n}\n\n.mds-Radio__dot:checked {\n border-color: var(--mds-action-bg);\n}\n\n.mds-Radio__dot:checked::after {\n content: \"\";\n width: 50%;\n height: 50%;\n border-radius: var(--mds-radius-pill);\n background: var(--mds-action-bg);\n}\n\n.mds-Radio__dot:disabled {\n background: var(--mds-action-disabled-bg);\n border-color: var(--mds-border-strong);\n}\n\n.mds-Radio__dot:disabled:checked::after {\n background: var(--mds-action-disabled-fg);\n}\n\n.mds-Radio__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Radio__dot:disabled ~ .mds-Radio__label {\n color: var(--mds-action-disabled-fg);\n}\n\n/* The target measures 44px in both axes without the control taking 44px of\n layout. A bare control is usually dropped into someone else's row — a list\n row's trailing slot — and a min-height on the root forced that whole row\n taller than its content. WCAG 2.5.8 measures the target, not the painted box,\n so the target is an out-of-flow pseudo-element instead. */\n.mds-Radio__dot::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n width: max(100%, var(--mds-tap-min));\n height: max(100%, var(--mds-tap-min));\n}\n",".mds-Switch__root {\n display: inline-flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n cursor: pointer;\n}\n\n.mds-Switch__root:has(.mds-Switch__track:disabled) {\n cursor: not-allowed;\n}\n\n.mds-Switch__track {\n appearance: none;\n flex: none;\n margin: 0;\n width: var(--mds-switch-w);\n height: var(--mds-switch-h);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-border-strong);\n position: relative;\n cursor: inherit;\n transition: background-color var(--mds-transition-control);\n}\n\n.mds-Switch__track::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: var(--mds-switch-inset);\n transform: translateY(-50%);\n width: var(--mds-switch-knob);\n height: var(--mds-switch-knob);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-card);\n transition: transform var(--mds-transition-control);\n}\n\n.mds-Switch__track:checked {\n background: var(--mds-action-bg);\n}\n\n.mds-Switch__track:checked::after {\n transform: translateY(-50%)\n translateX(calc(var(--mds-switch-w) - var(--mds-switch-knob) - 2 * var(--mds-switch-inset)));\n}\n\n.mds-Switch__track:disabled {\n background: var(--mds-action-disabled-bg);\n}\n\n.mds-Switch__track:disabled::after {\n background: var(--mds-action-disabled-fg);\n}\n\n/* Hosts the busy spinner over the track without moving the input. */\n.mds-Switch__trackWrap {\n position: relative;\n display: inline-flex;\n flex: none;\n}\n\n.mds-Switch__spinner {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n color: var(--mds-text-secondary);\n pointer-events: none;\n}\n\n.mds-Switch__label {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n/* The label sits beside the wrapper, not the input — climb via :has. */\n.mds-Switch__root:has(.mds-Switch__track:disabled) .mds-Switch__label {\n color: var(--mds-action-disabled-fg);\n}\n\n/* The target measures 44px in both axes without the control taking 44px of\n layout. A bare control is usually dropped into someone else's row — a list\n row's trailing slot — and a min-height on the root forced that whole row\n taller than its content. WCAG 2.5.8 measures the target, not the painted box,\n so the target is an out-of-flow pseudo-element instead. */\n.mds-Switch__track::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n width: max(100%, var(--mds-tap-min));\n height: max(100%, var(--mds-tap-min));\n}\n",".mds-SegmentedControl__group {\n display: inline-flex;\n padding: var(--mds-pad-segment);\n gap: var(--mds-gap-hairline);\n background: var(--mds-surface-sunken);\n border-radius: var(--mds-radius-control);\n}\n\n.mds-SegmentedControl__segment {\n display: inline-flex;\n position: relative;\n cursor: pointer;\n}\n\n.mds-SegmentedControl__fullWidth {\n display: flex;\n}\n\n.mds-SegmentedControl__fullWidth .mds-SegmentedControl__segment {\n flex: 1;\n}\n\n.mds-SegmentedControl__fullWidth .mds-SegmentedControl__face {\n flex: 1;\n}\n\n/* Radio overlays the whole segment, invisible but real — it stays the hit\n target and the focusable element. */\n.mds-SegmentedControl__input {\n appearance: none;\n margin: 0;\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: inherit;\n}\n\n.mds-SegmentedControl__face {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: calc(var(--mds-control-h-md) - 2 * var(--mds-pad-segment));\n padding: 0 var(--mds-pad-pill-x);\n border-radius: var(--mds-radius-segment);\n font: var(--mds-type-pill);\n color: var(--mds-text-secondary);\n white-space: nowrap;\n transition: var(--mds-transition-control);\n}\n\n.mds-SegmentedControl__input:checked + .mds-SegmentedControl__face {\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n box-shadow: var(--mds-elevation-card);\n}\n\n/* Unavailable is a color, not a fade — matches the control convention. */\n.mds-SegmentedControl__input:disabled + .mds-SegmentedControl__face {\n color: var(--mds-action-disabled-fg);\n cursor: not-allowed;\n}\n\n.mds-SegmentedControl__input:disabled:checked + .mds-SegmentedControl__face {\n background: var(--mds-action-disabled-bg);\n box-shadow: none;\n}\n\n.mds-SegmentedControl__segment:has(.mds-SegmentedControl__input:disabled) {\n cursor: not-allowed;\n}\n\n.mds-SegmentedControl__input:focus-visible + .mds-SegmentedControl__face {\n outline: var(--mds-focus-width) solid var(--mds-focus-ring-color);\n outline-offset: var(--mds-focus-offset);\n}\n",".mds-SearchField__wrap {\n position: relative;\n display: inline-flex;\n align-items: center;\n width: 100%;\n}\n\n.mds-SearchField__glass {\n position: absolute;\n left: var(--mds-pad-control-md);\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n color: var(--mds-text-muted);\n pointer-events: none;\n}\n\n.mds-SearchField__input {\n width: 100%;\n height: var(--mds-control-h-md);\n padding: 0 calc(var(--mds-pad-tight) + var(--mds-icon-lg) + var(--mds-gap-tight))\n 0 calc(var(--mds-pad-control-md) + var(--mds-icon-sm) + var(--mds-gap-hairline));\n border: var(--mds-border-width) solid var(--mds-control-border);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-surface-card);\n color: var(--mds-text-primary);\n font-family: var(--mds-font-body);\n font-size: var(--mds-text-control);\n transition: border-color var(--mds-transition-control);\n}\n\n.mds-SearchField__input::placeholder {\n color: var(--mds-text-muted);\n}\n\n/* Native clear crosses collide with ours. */\n.mds-SearchField__input::-webkit-search-cancel-button {\n display: none;\n}\n\n.mds-SearchField__clear {\n position: absolute;\n right: var(--mds-pad-tight);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--mds-icon-lg);\n height: var(--mds-icon-lg);\n border: none;\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: var(--mds-text-secondary);\n cursor: pointer;\n}\n\n.mds-SearchField__clear:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-SearchField__clearGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n",".mds-List__group {\n list-style: none;\n margin: 0;\n padding: 0;\n background: var(--mds-surface-card);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n border-radius: var(--mds-radius-card);\n overflow: hidden;\n}\n\n.mds-List__labelledGroup {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-tight);\n}\n\n/* The heading sits over the card, aligned with the rows' text rather than\n with the card's edge — the rows' own padding is what the eye reads as the\n list's left margin, so a heading flush with the border reads as indented\n the other way. */\n.mds-List__label {\n padding-inline: var(--mds-pad-card); /* matches the rows' inline padding */\n font-weight: var(--mds-weight-semibold);\n font-size: var(--mds-text-section);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n color: var(--mds-text-secondary);\n}\n\n/* Separators belong to the group — standalone rows sitting side by side\n keep their own borders instead. */\n.mds-List__group > .mds-List__item + .mds-List__item {\n border-top: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n/* Standalone surfaces. The row paints its own background: a wrapper's paint\n would bring a wrapper's corner radius with it. */\n.mds-List__surface-card,\n.mds-List__surface-sunken,\n.mds-List__surface-accent {\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n border-radius: var(--mds-radius-card);\n}\n\n.mds-List__surface-card { background: var(--mds-surface-card); }\n.mds-List__surface-sunken { background: var(--mds-surface-sunken); }\n\n/* The prompt row: full-strength accent on the left edge, soft fill behind.\n Longhands so a call site's border-color override still lands. */\n.mds-List__surface-accent {\n border-left-width: var(--mds-edge-width);\n border-left-color: var(--mds-accent);\n background: var(--mds-accent-soft);\n}\n\n/* Paints nothing on purpose — transparent, not unset, so a row on a tinted\n parent shows what's behind it. */\n.mds-List__surface-plain {\n background: transparent;\n border: 0;\n border-radius: 0;\n}\n\n.mds-List__row {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n width: 100%;\n min-height: var(--mds-tap-min);\n padding: var(--mds-pad-item-y) var(--mds-pad-card);\n text-align: left;\n color: inherit;\n text-decoration: none;\n}\n\n/* Interactive rows reset button chrome and signal affordance. */\n.mds-List__interactive {\n border: none;\n background: transparent;\n font: inherit;\n cursor: pointer;\n transition: background-color var(--mds-transition-control);\n}\n\n.mds-List__interactive:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-List__leading,\n.mds-List__trailing {\n display: inline-flex;\n flex: none;\n align-items: center;\n}\n\n.mds-List__text {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-hairline);\n min-width: 0;\n flex: 1;\n}\n\n.mds-List__title {\n font: var(--mds-type-item-title);\n color: var(--mds-text-primary);\n}\n\n.mds-List__description {\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n}\n",".mds-EmptyState__root {\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n gap: var(--mds-stack-item);\n padding: var(--mds-pad-empty-y) var(--mds-pad-card);\n}\n\n.mds-EmptyState__icon {\n display: inline-flex;\n color: var(--mds-text-muted);\n}\n\n.mds-EmptyState__action {\n margin-top: var(--mds-gap-tight);\n}\n",".mds-Tabs__list {\n display: flex;\n gap: var(--mds-gap-hairline);\n border-bottom: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n.mds-Tabs__tab {\n border: none;\n background: transparent;\n padding: var(--mds-pad-tab-y) var(--mds-pad-tab-x);\n margin-bottom: calc(-1 * var(--mds-border-width));\n border-bottom: calc(2 * var(--mds-border-width)) solid transparent;\n font: var(--mds-type-label);\n color: var(--mds-text-secondary);\n cursor: pointer;\n white-space: nowrap;\n transition: color var(--mds-transition-control);\n}\n\n.mds-Tabs__tab:hover {\n color: var(--mds-text-primary);\n}\n\n.mds-Tabs__selected {\n color: var(--mds-text-primary);\n border-bottom-color: var(--mds-accent);\n}\n\n.mds-Tabs__panel {\n padding-top: var(--mds-stack-item);\n}\n",".mds-Toast__viewport {\n position: fixed;\n bottom: calc(var(--mds-toast-inset) + var(--mds-safe-bottom));\n left: 50%;\n transform: translateX(-50%);\n z-index: var(--mds-z-toast);\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-tight);\n width: min(var(--mds-toast-w), calc(100vw - 2 * var(--mds-toast-inset)));\n pointer-events: none;\n}\n\n.mds-Toast__toast {\n display: flex;\n align-items: flex-start;\n gap: var(--mds-gap);\n padding: var(--mds-pad-toast-y) var(--mds-pad-toast-x);\n border-radius: var(--mds-radius-card);\n border-left: calc(3 * var(--mds-border-width)) solid var(--mds-border-strong);\n background: var(--mds-surface-raised);\n box-shadow: var(--mds-elevation-modal);\n pointer-events: auto;\n}\n\n.mds-Toast__tone-success { border-left-color: var(--mds-status-success); }\n.mds-Toast__tone-danger { border-left-color: var(--mds-status-danger); }\n\n.mds-Toast__body {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap-hairline);\n flex: 1;\n min-width: 0;\n}\n\n.mds-Toast__title {\n font: var(--mds-type-label);\n color: var(--mds-text-primary);\n}\n\n.mds-Toast__description {\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n}\n\n.mds-Toast__close {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n width: var(--mds-icon-lg);\n height: var(--mds-icon-lg);\n border: none;\n border-radius: var(--mds-radius-pill);\n background: transparent;\n color: var(--mds-text-secondary);\n cursor: pointer;\n}\n\n.mds-Toast__close:hover {\n background: var(--mds-surface-sunken);\n}\n\n.mds-Toast__closeGlyph {\n width: var(--mds-icon-sm);\n height: var(--mds-icon-sm);\n}\n",".mds-Stack__stack {\n display: flex;\n flex-direction: column;\n}\n\n.mds-Stack__gap-hairline { gap: var(--mds-gap-hairline); }\n.mds-Stack__gap-tight { gap: var(--mds-gap-tight); }\n.mds-Stack__gap-base { gap: var(--mds-gap); }\n.mds-Stack__gap-loose { gap: var(--mds-gap-loose); }\n.mds-Stack__gap-section { gap: var(--mds-stack-section); }\n\n.mds-Stack__align-start { align-items: flex-start; }\n.mds-Stack__align-center { align-items: center; }\n.mds-Stack__align-end { align-items: flex-end; }\n.mds-Stack__align-stretch { align-items: stretch; }\n",".mds-Inline__inline {\n display: flex;\n flex-direction: row;\n}\n\n.mds-Inline__gap-hairline { gap: var(--mds-gap-hairline); }\n.mds-Inline__gap-tight { gap: var(--mds-gap-tight); }\n.mds-Inline__gap-base { gap: var(--mds-gap); }\n.mds-Inline__gap-loose { gap: var(--mds-gap-loose); }\n\n.mds-Inline__align-start { align-items: flex-start; }\n.mds-Inline__align-center { align-items: center; }\n.mds-Inline__align-end { align-items: flex-end; }\n.mds-Inline__align-baseline { align-items: baseline; }\n\n.mds-Inline__justify-start { justify-content: flex-start; }\n.mds-Inline__justify-center { justify-content: center; }\n.mds-Inline__justify-end { justify-content: flex-end; }\n.mds-Inline__justify-between { justify-content: space-between; }\n\n.mds-Inline__wrap {\n flex-wrap: wrap;\n}\n",".mds-Container__container {\n width: 100%;\n margin-inline: auto;\n padding-inline: var(--mds-pad-page-x);\n}\n\n.mds-Container__width-content { max-width: var(--mds-content-max); }\n.mds-Container__width-wide { max-width: var(--mds-content-max-wide); }\n",".mds-Card__card {\n display: flex;\n flex-direction: column;\n gap: var(--mds-gap);\n background: var(--mds-surface-card);\n border: var(--mds-border-width) solid var(--mds-border-subtle);\n border-radius: var(--mds-radius-card);\n overflow: hidden;\n color: inherit;\n text-decoration: none;\n}\n\n.mds-Card__variant-raised {\n border-color: transparent;\n background: var(--mds-surface-raised);\n box-shadow: var(--mds-elevation-raised);\n}\n\n.mds-Card__variant-sunken {\n background: var(--mds-surface-sunken);\n}\n\n/* Slightly heavier than the plain border so the accent reads at the same\n visual weight. */\n.mds-Card__emphasis {\n border: var(--mds-border-emphasis) solid var(--mds-accent);\n}\n\n/* Whole-card button/link resets + affordance. */\n.mds-Card__interactive {\n padding: 0;\n margin: 0;\n font: inherit;\n text-align: left;\n cursor: pointer;\n transition: box-shadow var(--mds-transition-surface), background-color var(--mds-transition-surface);\n}\n\n.mds-Card__interactive:hover {\n box-shadow: var(--mds-elevation-hover);\n}\n\n.mds-Card__header {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n font: var(--mds-type-card-title);\n color: var(--mds-text-primary);\n}\n\n/* A lone child is the header row, so it gets the width AppBar gives its title. */\n.mds-Card__header > :only-child {\n flex: 1;\n min-width: 0;\n}\n\n.mds-Card__body {\n flex: 1;\n}\n\n/* The card clips its overflow, so a row of actions that outgrows one line has\n to fall to the next rather than disappear off the edge. */\n.mds-Card__footer {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: var(--mds-gap);\n}\n\n/* A slot pays for the card edge it sits against; the card's own gap pays for\n the space between two of them. Padding the outer edges from each slot instead\n left a header above a footer with nothing between them, and a card ending on\n its header with no bottom padding at all. */\n.mds-Card__header,\n.mds-Card__body,\n.mds-Card__footer {\n padding: 0 var(--mds-pad-card);\n}\n\n.mds-Card__header:first-child,\n.mds-Card__body:first-child,\n.mds-Card__footer:first-child {\n padding-top: var(--mds-pad-card);\n}\n\n.mds-Card__header:last-child,\n.mds-Card__body:last-child,\n.mds-Card__footer:last-child {\n padding-bottom: var(--mds-pad-card);\n}\n",".mds-Modal__panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: var(--mds-modal-w);\n max-height: 85dvh;\n background: var(--mds-surface-raised);\n border-radius: var(--mds-radius-modal);\n box-shadow: var(--mds-elevation-modal);\n opacity: 0;\n transform: scale(0.96);\n transition:\n opacity var(--mds-dur-base) var(--mds-ease-standard),\n transform var(--mds-dur-base) var(--mds-ease-standard);\n}\n\n.mds-Modal__panel[data-open] {\n opacity: 1;\n transform: none;\n}\n\n.mds-Modal__header {\n display: flex;\n align-items: center;\n gap: var(--mds-gap);\n padding: var(--mds-pad-card) var(--mds-pad-card) 0;\n font: var(--mds-type-panel-title);\n color: var(--mds-text-primary);\n}\n\n.mds-Modal__body {\n flex: 1;\n overflow-y: auto;\n padding: var(--mds-pad-card);\n}\n\n.mds-Modal__footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--mds-gap);\n padding: 0 var(--mds-pad-card) var(--mds-pad-card);\n}\n",".mds-ConfirmDialog__description {\n margin: 0;\n font: var(--mds-type-body);\n color: var(--mds-text-secondary);\n}\n\n.mds-ConfirmDialog__error {\n margin: 0;\n font: var(--mds-type-body);\n color: var(--mds-status-danger);\n}\n","/* Needs a host with a resolved height — the app root, a device frame, or a\n `flex: 1; min-height: 0` slot. The host owns the viewport (see Screen.tsx);\n claiming the viewport height here would overflow any frame the keyboard has shrunk. */\n.mds-Screen__screen {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n background: var(--mds-surface-page);\n}\n\n/* min-height: 0 is what lets the region shrink inside the flex column and\n keep the scroll, instead of growing the screen and handing the scroll to\n whatever contains it. */\n.mds-Screen__content {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding: var(--mds-pad-page-y) var(--mds-pad-page-x);\n}\n\n.mds-Screen__content.mds-Screen__flush {\n padding: 0;\n}\n",".mds-AppBar__bar {\n position: sticky;\n top: 0;\n z-index: var(--mds-z-header);\n display: flex;\n align-items: center;\n gap: var(--mds-gap-tight);\n height: var(--mds-header-h);\n padding-inline: var(--mds-pad-page-x);\n background: var(--mds-surface-page);\n border-bottom: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n.mds-AppBar__title {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n margin: 0;\n font: var(--mds-type-panel-title);\n color: var(--mds-text-primary);\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n/* Title + subtitle stack. Takes over the title's flex share; the title\n inside keeps its own ellipsis. */\n.mds-AppBar__text {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n}\n\n.mds-AppBar__text .mds-AppBar__title {\n flex: none;\n}\n\n.mds-AppBar__subtitle {\n min-width: 0;\n overflow: hidden;\n font: var(--mds-type-note);\n color: var(--mds-text-secondary);\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.mds-AppBar__slot {\n display: flex;\n align-items: center;\n gap: var(--mds-gap-hairline);\n}\n\n/* The actions belong at the end even when no title is there to push them:\n auto margin absorbs the free space the missing flex child leaves behind.\n With a title present its flex share is already 1, so this is a no-op. */\n.mds-AppBar__trailing {\n margin-inline-start: auto;\n}\n",".mds-TabBar__bar {\n position: sticky;\n bottom: 0;\n z-index: var(--mds-z-tabbar);\n display: flex;\n align-items: stretch;\n /* The raised action stands inside this box instead of hanging out of the top\n of it. A child outside its parent is at the mercy of every ancestor's\n overflow and of paint order, and a z-index buys nothing for the part that\n is not in the box. The strip it stands in is transparent and taken back out\n of the flow, so the screen above keeps its height and scrolls under it. */\n margin-top: calc(-1 * var(--mds-tabbar-action-lift));\n /* The home-bar inset is added to the bar, not spent out of it: the box is\n border-box, so padding alone would take the inset out of the height the\n items stand in and squash them against the edge on a device that has one. */\n height: calc(var(--mds-tabbar-h) + var(--mds-tabbar-action-lift) + var(--mds-safe-bottom));\n padding: var(--mds-tabbar-action-lift) var(--mds-tabbar-pad-x) calc(var(--mds-tabbar-seat) + var(--mds-safe-bottom));\n}\n\n/* The bar's surface. Drawn as a layer rather than as the bar's own background\n so it stops below the lifted strip, which has to stay transparent for the\n action to read as rising out of the bar. Behind the items (z-index -1) and\n trapped in the bar's stacking context, so it cannot fall behind the screen.\n Painted on the step above the page: the bar is chrome over the scrolling\n body, and taking the page's own colour leaves it a 1px line across a flat\n field on any brand whose page and card are more than a percent apart. */\n.mds-TabBar__bar::before {\n content: \"\";\n position: absolute;\n z-index: -1;\n inset: var(--mds-tabbar-action-lift) 0 0;\n background: var(--mds-surface-card);\n border-top: var(--mds-border-width) solid var(--mds-border-subtle);\n}\n\n.mds-TabBar__item {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--mds-gap-hairline);\n margin: 0;\n padding: 0;\n border: none;\n background: none;\n cursor: pointer;\n font: var(--mds-type-tab);\n color: var(--mds-text-muted);\n text-decoration: none;\n transition: color var(--mds-transition-control);\n}\n\n.mds-TabBar__item:hover {\n color: var(--mds-text-secondary);\n}\n\n.mds-TabBar__active,\n.mds-TabBar__active:hover {\n color: var(--mds-text-accent);\n}\n\n/* A tab's glyph is a step of its own, above the icon scale — see\n --mds-tabbar-icon. Published as the slot so an icon that states no size of\n its own takes it, and so does an icon set that can only size itself. */\n.mds-TabBar__icon {\n position: relative; /* anchors the badge dot */\n display: inline-flex;\n --mds-icon-slot: var(--mds-tabbar-icon);\n width: var(--mds-icon-slot);\n height: var(--mds-icon-slot);\n font-size: var(--mds-icon-slot);\n}\n\n.mds-TabBar__icon > svg {\n width: 100%;\n height: 100%;\n}\n\n/* Attention dot, pinned to the icon's top-right corner. */\n.mds-TabBar__badge {\n position: absolute;\n top: var(--mds-dot-offset-y);\n right: var(--mds-dot-offset-x);\n width: var(--mds-dot);\n height: var(--mds-dot);\n border-radius: var(--mds-radius-pill);\n background: var(--mds-status-danger);\n /* Ring in the bar's color so the dot stays legible over the glyph. */\n box-shadow: 0 0 0 var(--mds-dot-ring) var(--mds-surface-card);\n}\n\n/* A caption never wraps: the bar's height is fixed, and a translation twice\n the length of the English would push the glyph out of it. */\n.mds-TabBar__label {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* The raised center action. Aligned to the top of the bar's content, then\n pulled up by the lift so it sits flush with the bar's own top edge — above\n the surface, still inside the box. Not centred: centring measures the margin\n box too, so a negative margin there is halved against the free space it\n removes and the action lands short of the edge. */\n.mds-TabBar__action {\n flex: none;\n align-self: flex-start;\n width: var(--mds-tabbar-action);\n height: var(--mds-tabbar-action);\n margin-top: calc(-1 * var(--mds-tabbar-action-lift));\n border: none;\n border-radius: var(--mds-radius-pill);\n background: var(--mds-accent);\n color: var(--mds-accent-contrast);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-shadow: var(--mds-elevation-floating);\n cursor: pointer;\n transition: background-color var(--mds-transition-control);\n}\n\n.mds-TabBar__action:hover {\n background: var(--mds-accent-hover);\n}\n"],"mappings":"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","names":[]}
|
package/dist/index.d.cts
CHANGED
|
@@ -1273,12 +1273,14 @@ declare const OverlayHistoryContext: react.Context<OverlayHistory | null>;
|
|
|
1273
1273
|
interface Presence {
|
|
1274
1274
|
/** Keep the element in the DOM (true during exit animation). */
|
|
1275
1275
|
mounted: boolean;
|
|
1276
|
-
/** Drive the visual state — false during exit. */
|
|
1276
|
+
/** Drive the visual state — false on the frame it enters and during exit. */
|
|
1277
1277
|
visible: boolean;
|
|
1278
1278
|
}
|
|
1279
1279
|
/**
|
|
1280
|
-
*
|
|
1281
|
-
*
|
|
1280
|
+
* Enter/exit animation helper. An element inserted already carrying its open
|
|
1281
|
+
* style has nothing to transition from, so `visible` stays false for the frame
|
|
1282
|
+
* the closed style is painted in and flips on the next one. `mounted` lags
|
|
1283
|
+
* `open` by `durationMs` on close so the exit transition can finish.
|
|
1282
1284
|
*/
|
|
1283
1285
|
declare function usePresence(open: boolean, durationMs: number): Presence;
|
|
1284
1286
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1273,12 +1273,14 @@ declare const OverlayHistoryContext: react.Context<OverlayHistory | null>;
|
|
|
1273
1273
|
interface Presence {
|
|
1274
1274
|
/** Keep the element in the DOM (true during exit animation). */
|
|
1275
1275
|
mounted: boolean;
|
|
1276
|
-
/** Drive the visual state — false during exit. */
|
|
1276
|
+
/** Drive the visual state — false on the frame it enters and during exit. */
|
|
1277
1277
|
visible: boolean;
|
|
1278
1278
|
}
|
|
1279
1279
|
/**
|
|
1280
|
-
*
|
|
1281
|
-
*
|
|
1280
|
+
* Enter/exit animation helper. An element inserted already carrying its open
|
|
1281
|
+
* style has nothing to transition from, so `visible` stays false for the frame
|
|
1282
|
+
* the closed style is painted in and flips on the next one. `mounted` lags
|
|
1283
|
+
* `open` by `durationMs` on close so the exit transition can finish.
|
|
1282
1284
|
*/
|
|
1283
1285
|
declare function usePresence(open: boolean, durationMs: number): Presence;
|
|
1284
1286
|
|
package/dist/index.js
CHANGED
|
@@ -479,20 +479,34 @@ function useOverlay(options) {
|
|
|
479
479
|
}
|
|
480
480
|
function usePresence(open, durationMs) {
|
|
481
481
|
const [mounted, setMounted] = useState(open);
|
|
482
|
+
const [visible, setVisible] = useState(false);
|
|
482
483
|
if (open && !mounted) setMounted(true);
|
|
484
|
+
if (!open && visible) setVisible(false);
|
|
485
|
+
useEffect(() => {
|
|
486
|
+
if (!open) return;
|
|
487
|
+
let second = 0;
|
|
488
|
+
const first = requestAnimationFrame(() => {
|
|
489
|
+
second = requestAnimationFrame(() => setVisible(true));
|
|
490
|
+
});
|
|
491
|
+
return () => {
|
|
492
|
+
cancelAnimationFrame(first);
|
|
493
|
+
cancelAnimationFrame(second);
|
|
494
|
+
};
|
|
495
|
+
}, [open]);
|
|
483
496
|
useEffect(() => {
|
|
484
497
|
if (open) return;
|
|
485
498
|
const timer = setTimeout(() => setMounted(false), durationMs);
|
|
486
499
|
return () => clearTimeout(timer);
|
|
487
500
|
}, [open, durationMs]);
|
|
488
|
-
return { mounted: open || mounted, visible
|
|
501
|
+
return { mounted: open || mounted, visible };
|
|
489
502
|
}
|
|
490
503
|
|
|
491
504
|
// mds-cssmod:/home/runner/work/mond-design-system/mond-design-system/packages/react/src/components/Overlay/Overlay.module.css?mds-scoped
|
|
492
505
|
var Overlay_module_default = { "scrim": "mds-Overlay__scrim", "variant-modal": "mds-Overlay__variant-modal", "variant-sheet": "mds-Overlay__variant-sheet" };
|
|
493
506
|
var OVERLAY_EXIT_MS = 200;
|
|
507
|
+
var SHEET_EXIT_MS = 320;
|
|
494
508
|
function Overlay({ open, onClose, label, variant, role = "dialog", closeOnScrimClick, panelClassName, children }) {
|
|
495
|
-
const { mounted, visible } = usePresence(open, OVERLAY_EXIT_MS);
|
|
509
|
+
const { mounted, visible } = usePresence(open, variant === "sheet" ? SHEET_EXIT_MS : OVERLAY_EXIT_MS);
|
|
496
510
|
const ref = useOverlay({ open, onClose });
|
|
497
511
|
if (!mounted) return null;
|
|
498
512
|
return createPortal(
|