@revikornmann/muka-ui 0.26.0 → 0.27.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Avatar/Avatar.css +79 -30
- package/dist/cjs/components/Avatar/Avatar.js +24 -2
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Avatar/AvatarGroup.js +4 -3
- package/dist/cjs/components/Avatar/AvatarGroup.js.map +1 -1
- package/dist/cjs/components/Button/Button.css +33 -0
- package/dist/cjs/components/Button/Button.js +2 -2
- package/dist/cjs/components/DataPieChart/DataPieChart.js +5 -2
- package/dist/cjs/components/DataPieChart/DataPieChart.js.map +1 -1
- package/dist/cjs/components/DataPieChart/index.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.css +37 -14
- package/dist/cjs/components/Tabs/Tabs.js +30 -10
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/esm/components/Avatar/Avatar.css +79 -30
- package/dist/esm/components/Avatar/Avatar.js +25 -3
- package/dist/esm/components/Avatar/Avatar.js.map +1 -1
- package/dist/esm/components/Avatar/AvatarGroup.js +4 -3
- package/dist/esm/components/Avatar/AvatarGroup.js.map +1 -1
- package/dist/esm/components/Button/Button.css +33 -0
- package/dist/esm/components/Button/Button.js +2 -2
- package/dist/esm/components/DataPieChart/DataPieChart.js +4 -1
- package/dist/esm/components/DataPieChart/DataPieChart.js.map +1 -1
- package/dist/esm/components/DataPieChart/index.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.css +37 -14
- package/dist/esm/components/Tabs/Tabs.js +30 -10
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/styles/components/Avatar.css +79 -30
- package/dist/styles/components/Button.css +33 -0
- package/dist/styles/components/Tabs.css +37 -14
- package/dist/styles/index.css +555 -407
- package/dist/styles/muka-dark.css +555 -407
- package/dist/styles/muka-light.css +555 -407
- package/dist/styles/tokens-bouwplan-dark.css +48 -5
- package/dist/styles/tokens-bouwplan-light.css +48 -5
- package/dist/styles/tokens-fscl-dark.css +48 -5
- package/dist/styles/tokens-fscl-light.css +48 -5
- package/dist/styles/tokens-grip-dark.css +48 -5
- package/dist/styles/tokens-grip-light.css +48 -5
- package/dist/styles/tokens-muka-dark.css +48 -5
- package/dist/styles/tokens-muka-light.css +48 -5
- package/dist/styles/tokens-wireframe-dark.css +48 -5
- package/dist/styles/tokens-wireframe-light.css +48 -5
- package/dist/styles/wireframe-dark.css +555 -407
- package/dist/styles/wireframe-light.css +555 -407
- package/dist/types/components/Avatar/Avatar.d.ts +8 -3
- package/dist/types/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/types/components/Avatar/AvatarGroup.d.ts +10 -5
- package/dist/types/components/Avatar/AvatarGroup.d.ts.map +1 -1
- package/dist/types/components/Avatar/index.d.ts +1 -1
- package/dist/types/components/Avatar/index.d.ts.map +1 -1
- package/dist/types/components/Button/Button.d.ts +3 -3
- package/dist/types/components/Button/Button.d.ts.map +1 -1
- package/dist/types/components/DataPieChart/DataPieChart.d.ts +13 -2
- package/dist/types/components/DataPieChart/DataPieChart.d.ts.map +1 -1
- package/dist/types/components/DataPieChart/index.d.ts +1 -1
- package/dist/types/components/DataPieChart/index.d.ts.map +1 -1
- package/dist/types/components/Tabs/Tabs.d.ts +17 -2
- package/dist/types/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +2 -2
- package/dist/types/components/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/tokens/t1-primitives/color.json +10 -0
- package/tokens/t2-alias/base.json +14 -0
- package/tokens/t2-alias/brand/bouwplan/dark.json +5 -0
- package/tokens/t2-alias/brand/bouwplan/light.json +5 -0
- package/tokens/t2-alias/brand/fscl/dark.json +5 -0
- package/tokens/t2-alias/brand/fscl/light.json +5 -0
- package/tokens/t2-alias/brand/grip/dark.json +14 -0
- package/tokens/t2-alias/brand/grip/light.json +14 -0
- package/tokens/t2-alias/brand/muka/dark.json +14 -0
- package/tokens/t2-alias/brand/muka/light.json +14 -0
- package/tokens/t2-alias/brand/wireframe/dark.json +14 -0
- package/tokens/t2-alias/brand/wireframe/light.json +14 -0
- package/tokens/t3-semantics/ui.json +49 -2
- package/tokens/t4-components/avatar.json +82 -18
- package/tokens/t4-components/button.json +56 -0
- package/tokens/t4-components/tabs.json +41 -1
package/dist/styles/index.css
CHANGED
|
@@ -410,6 +410,8 @@ body {
|
|
|
410
410
|
--color-red-10: #dc3d43;
|
|
411
411
|
--color-red-11: #cd2b31;
|
|
412
412
|
--color-red-12: #381316;
|
|
413
|
+
--color-redStrong-1: #bd1524;
|
|
414
|
+
--color-redStrong-2: #ab001a;
|
|
413
415
|
--color-ruby-1: #fffcfd;
|
|
414
416
|
--color-ruby-2: #fff7f8;
|
|
415
417
|
--color-ruby-3: #ffeef1;
|
|
@@ -1208,6 +1210,9 @@ body {
|
|
|
1208
1210
|
--color-state-error-default: #e5484d;
|
|
1209
1211
|
--color-state-error-contrast: #cd2b31;
|
|
1210
1212
|
--color-state-error-background: #ffefef;
|
|
1213
|
+
--color-state-error-solid-default: #cd2b31;
|
|
1214
|
+
--color-state-error-solid-hover: #bd1524;
|
|
1215
|
+
--color-state-error-solid-pressed: #ab001a;
|
|
1211
1216
|
--color-state-info-default: #3e63dd;
|
|
1212
1217
|
--color-state-info-contrast: #3a5ccc;
|
|
1213
1218
|
--color-state-info-background: #edf2fe;
|
|
@@ -1308,6 +1313,9 @@ body {
|
|
|
1308
1313
|
--alias-color-state-error-contrast: #cd2b31;
|
|
1309
1314
|
--alias-color-state-error-default: #e5484d;
|
|
1310
1315
|
--alias-color-state-error-muted: #ffefef;
|
|
1316
|
+
--alias-color-state-error-solid-default: #cd2b31;
|
|
1317
|
+
--alias-color-state-error-solid-hover: #bd1524;
|
|
1318
|
+
--alias-color-state-error-solid-pressed: #ab001a;
|
|
1311
1319
|
--alias-color-state-error-surface-level0: #fff8f8;
|
|
1312
1320
|
--alias-color-state-error-surface-level1: #ffefef;
|
|
1313
1321
|
--alias-color-state-error-surface-level2: #ffe5e5;
|
|
@@ -1604,6 +1612,18 @@ body {
|
|
|
1604
1612
|
--button-color-primary-shadow-hover: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1605
1613
|
--button-color-primary-shadow-pressed: none;
|
|
1606
1614
|
--button-color-primary-shadow-disabled: none;
|
|
1615
|
+
--button-color-destructive-background-default: #cd2b31;
|
|
1616
|
+
--button-color-destructive-background-hover: #bd1524;
|
|
1617
|
+
--button-color-destructive-background-pressed: #ab001a;
|
|
1618
|
+
--button-color-destructive-background-disabled: #eae7ec;
|
|
1619
|
+
--button-color-destructive-foreground-default: #fdfcfd;
|
|
1620
|
+
--button-color-destructive-foreground-hover: #fdfcfd;
|
|
1621
|
+
--button-color-destructive-foreground-pressed: #fdfcfd;
|
|
1622
|
+
--button-color-destructive-foreground-disabled: #d0cdd7;
|
|
1623
|
+
--button-color-destructive-shadow-default: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1624
|
+
--button-color-destructive-shadow-hover: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1625
|
+
--button-color-destructive-shadow-pressed: none;
|
|
1626
|
+
--button-color-destructive-shadow-disabled: none;
|
|
1607
1627
|
--button-color-secondary-background-default: #f2eff3;
|
|
1608
1628
|
--button-color-secondary-background-hover: #f2eff3;
|
|
1609
1629
|
--button-color-secondary-background-pressed: #eae7ec;
|
|
@@ -1968,7 +1988,7 @@ body {
|
|
|
1968
1988
|
--contextmenu-trigger-outline-color: #3e63dd;
|
|
1969
1989
|
--contextmenu-trigger-outline-offset: 0.25rem;
|
|
1970
1990
|
--tabs-trigger-color-default-background: #f2eff3;
|
|
1971
|
-
--tabs-trigger-color-default-foreground: #
|
|
1991
|
+
--tabs-trigger-color-default-foreground: #8e8c99;
|
|
1972
1992
|
--tabs-trigger-color-default-border: #d0cdd7;
|
|
1973
1993
|
--tabs-trigger-color-hover-background: #f2eff3;
|
|
1974
1994
|
--tabs-trigger-color-hover-foreground: #211f26;
|
|
@@ -1983,8 +2003,16 @@ body {
|
|
|
1983
2003
|
--tabs-trigger-padding-y: 0.5rem;
|
|
1984
2004
|
--tabs-trigger-height: 3rem;
|
|
1985
2005
|
--tabs-trigger-radius: 0.75rem;
|
|
2006
|
+
--tabs-trigger-min-height-sm: 2.5rem;
|
|
2007
|
+
--tabs-trigger-min-height-md: 3.5rem;
|
|
2008
|
+
--tabs-trigger-min-height-lg: 5rem;
|
|
1986
2009
|
--tabs-panel-background: #fdfcfd;
|
|
1987
2010
|
--tabs-panel-border: #d0cdd7;
|
|
2011
|
+
--tabs-indicator-color: #3e63dd;
|
|
2012
|
+
--tabs-indicator-height-sm: 2px;
|
|
2013
|
+
--tabs-indicator-height-md: 3px;
|
|
2014
|
+
--tabs-indicator-height-lg: 4px;
|
|
2015
|
+
--tabs-list-padding-x: 1rem;
|
|
1988
2016
|
--separator-color-default: #eae7ec;
|
|
1989
2017
|
--separator-color-contrast: #d0cdd7;
|
|
1990
2018
|
--separator-width: 0.0625rem;
|
|
@@ -2017,6 +2045,9 @@ body {
|
|
|
2017
2045
|
--progress-size-circle-strokeWidth-sm: 0.25rem;
|
|
2018
2046
|
--progress-size-circle-strokeWidth-md: 0.5rem;
|
|
2019
2047
|
--progress-size-circle-strokeWidth-lg: 0.75rem;
|
|
2048
|
+
--avatar-size-4xs: 1rem;
|
|
2049
|
+
--avatar-size-3xs: 1.5rem;
|
|
2050
|
+
--avatar-size-2xs: 2rem;
|
|
2020
2051
|
--avatar-size-xs: 2.5rem;
|
|
2021
2052
|
--avatar-size-sm: 3rem;
|
|
2022
2053
|
--avatar-size-md: 4rem;
|
|
@@ -2026,26 +2057,38 @@ body {
|
|
|
2026
2057
|
--avatar-color-background-loading: #eae7ec;
|
|
2027
2058
|
--avatar-color-foreground-default: #211f26;
|
|
2028
2059
|
--avatar-color-foreground-muted: #d0cdd7;
|
|
2029
|
-
--avatar-color-border-default: #eae7ec;
|
|
2030
2060
|
--avatar-color-status-online: #027864;
|
|
2031
2061
|
--avatar-color-status-offline: #d0cdd7;
|
|
2032
2062
|
--avatar-color-status-busy: #e5484d;
|
|
2033
2063
|
--avatar-color-status-away: #ffc53d;
|
|
2034
2064
|
--avatar-radius-circle: 999rem;
|
|
2035
2065
|
--avatar-radius-square: 0.75rem;
|
|
2066
|
+
--avatar-radius-square-sm: 0.375rem;
|
|
2067
|
+
--avatar-font-size-3xs: 0.75rem;
|
|
2068
|
+
--avatar-font-size-2xs: 0.75rem;
|
|
2036
2069
|
--avatar-font-size-xs: 0.75rem;
|
|
2037
2070
|
--avatar-font-size-sm: 0.875rem;
|
|
2038
2071
|
--avatar-font-size-md: 1.125rem;
|
|
2039
2072
|
--avatar-font-size-lg: 1.25rem;
|
|
2040
2073
|
--avatar-font-size-xl: 1.5rem;
|
|
2074
|
+
--avatar-status-size-3xs: 0.5rem;
|
|
2075
|
+
--avatar-status-size-2xs: 0.5rem;
|
|
2041
2076
|
--avatar-status-size-xs: 0.5rem;
|
|
2042
2077
|
--avatar-status-size-sm: 0.75rem;
|
|
2043
2078
|
--avatar-status-size-md: 1rem;
|
|
2044
2079
|
--avatar-status-size-lg: 1.25rem;
|
|
2045
2080
|
--avatar-status-size-xl: 1.5rem;
|
|
2046
|
-
--avatar-
|
|
2047
|
-
--avatar-group-
|
|
2048
|
-
--avatar-group-
|
|
2081
|
+
--avatar-group-ring-width: 0.125rem;
|
|
2082
|
+
--avatar-group-ring-color: #fdfcfd;
|
|
2083
|
+
--avatar-group-overlap-tight-sm: 2rem;
|
|
2084
|
+
--avatar-group-overlap-tight-2xs: 1.25rem;
|
|
2085
|
+
--avatar-group-overlap-tight-3xs: 1rem;
|
|
2086
|
+
--avatar-group-overlap-compact-sm: 1.5rem;
|
|
2087
|
+
--avatar-group-overlap-compact-2xs: 1rem;
|
|
2088
|
+
--avatar-group-overlap-compact-3xs: 0.75rem;
|
|
2089
|
+
--avatar-group-overlap-spacious-sm: 1rem;
|
|
2090
|
+
--avatar-group-overlap-spacious-2xs: 0.75rem;
|
|
2091
|
+
--avatar-group-overlap-spacious-3xs: 0.5rem;
|
|
2049
2092
|
--toast-color-info-background: #211f26;
|
|
2050
2093
|
--toast-color-info-foreground: #fdfcfd;
|
|
2051
2094
|
--toast-color-info-accent: #edf2fe;
|
|
@@ -3799,88 +3842,6 @@ body {
|
|
|
3799
3842
|
}
|
|
3800
3843
|
|
|
3801
3844
|
|
|
3802
|
-
/* TextLink */
|
|
3803
|
-
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
3804
|
-
|
|
3805
|
-
.muka-text-link {
|
|
3806
|
-
display: inline;
|
|
3807
|
-
cursor: pointer;
|
|
3808
|
-
text-decoration: underline;
|
|
3809
|
-
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
3810
|
-
text-underline-offset: 0.2em;
|
|
3811
|
-
text-decoration-thickness: from-font;
|
|
3812
|
-
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
3813
|
-
border-radius: var(--border-radius-sm);
|
|
3814
|
-
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
3815
|
-
}
|
|
3816
|
-
|
|
3817
|
-
/* ─── Sizes ───────────────────────────────────────────────
|
|
3818
|
-
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
3819
|
-
.muka-text-link--sm {
|
|
3820
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
3821
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
3822
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
3823
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
3824
|
-
}
|
|
3825
|
-
|
|
3826
|
-
.muka-text-link--base {
|
|
3827
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
3828
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
3829
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
3830
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
3831
|
-
}
|
|
3832
|
-
|
|
3833
|
-
.muka-text-link--lg {
|
|
3834
|
-
font-family: var(--text-body-lg-regular-fontFamily);
|
|
3835
|
-
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
3836
|
-
font-size: var(--text-body-lg-regular-fontSize);
|
|
3837
|
-
line-height: var(--text-body-lg-regular-lineHeight);
|
|
3838
|
-
}
|
|
3839
|
-
|
|
3840
|
-
/* ─── Variant: default (accent) ───────────────────────────
|
|
3841
|
-
Visited repeats the default colour on purpose: the design treats visited and
|
|
3842
|
-
default the same, and pinning it stops the browser's purple from showing. */
|
|
3843
|
-
.muka-text-link--default,
|
|
3844
|
-
.muka-text-link--default:visited {
|
|
3845
|
-
color: var(--color-text-action-default);
|
|
3846
|
-
}
|
|
3847
|
-
|
|
3848
|
-
.muka-text-link--default:hover,
|
|
3849
|
-
.muka-text-link--default:focus-visible {
|
|
3850
|
-
color: var(--color-text-action-hover);
|
|
3851
|
-
}
|
|
3852
|
-
|
|
3853
|
-
.muka-text-link--default:active {
|
|
3854
|
-
color: var(--color-text-action-pressed);
|
|
3855
|
-
}
|
|
3856
|
-
|
|
3857
|
-
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
3858
|
-
Hover, focus and pressed all darken to the default text colour. */
|
|
3859
|
-
.muka-text-link--subtle,
|
|
3860
|
-
.muka-text-link--subtle:visited {
|
|
3861
|
-
color: var(--color-text-subtle-default);
|
|
3862
|
-
}
|
|
3863
|
-
|
|
3864
|
-
.muka-text-link--subtle:hover,
|
|
3865
|
-
.muka-text-link--subtle:focus-visible,
|
|
3866
|
-
.muka-text-link--subtle:active {
|
|
3867
|
-
color: var(--color-text-default-default);
|
|
3868
|
-
}
|
|
3869
|
-
|
|
3870
|
-
/* ─── Focus ───────────────────────────────────────────────
|
|
3871
|
-
Same ring as every other focusable Muka component. */
|
|
3872
|
-
.muka-text-link:focus-visible {
|
|
3873
|
-
outline: 2px solid var(--color-border-focus);
|
|
3874
|
-
outline-offset: 2px;
|
|
3875
|
-
}
|
|
3876
|
-
|
|
3877
|
-
@media (prefers-reduced-motion: reduce) {
|
|
3878
|
-
.muka-text-link {
|
|
3879
|
-
transition: none;
|
|
3880
|
-
}
|
|
3881
|
-
}
|
|
3882
|
-
|
|
3883
|
-
|
|
3884
3845
|
/* Textarea */
|
|
3885
3846
|
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
3886
3847
|
|
|
@@ -4045,6 +4006,88 @@ body {
|
|
|
4045
4006
|
}
|
|
4046
4007
|
|
|
4047
4008
|
|
|
4009
|
+
/* TextLink */
|
|
4010
|
+
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
4011
|
+
|
|
4012
|
+
.muka-text-link {
|
|
4013
|
+
display: inline;
|
|
4014
|
+
cursor: pointer;
|
|
4015
|
+
text-decoration: underline;
|
|
4016
|
+
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
4017
|
+
text-underline-offset: 0.2em;
|
|
4018
|
+
text-decoration-thickness: from-font;
|
|
4019
|
+
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
4020
|
+
border-radius: var(--border-radius-sm);
|
|
4021
|
+
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
4022
|
+
}
|
|
4023
|
+
|
|
4024
|
+
/* ─── Sizes ───────────────────────────────────────────────
|
|
4025
|
+
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
4026
|
+
.muka-text-link--sm {
|
|
4027
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
4028
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
4029
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
4030
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
4031
|
+
}
|
|
4032
|
+
|
|
4033
|
+
.muka-text-link--base {
|
|
4034
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
4035
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
4036
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
4037
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
4038
|
+
}
|
|
4039
|
+
|
|
4040
|
+
.muka-text-link--lg {
|
|
4041
|
+
font-family: var(--text-body-lg-regular-fontFamily);
|
|
4042
|
+
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
4043
|
+
font-size: var(--text-body-lg-regular-fontSize);
|
|
4044
|
+
line-height: var(--text-body-lg-regular-lineHeight);
|
|
4045
|
+
}
|
|
4046
|
+
|
|
4047
|
+
/* ─── Variant: default (accent) ───────────────────────────
|
|
4048
|
+
Visited repeats the default colour on purpose: the design treats visited and
|
|
4049
|
+
default the same, and pinning it stops the browser's purple from showing. */
|
|
4050
|
+
.muka-text-link--default,
|
|
4051
|
+
.muka-text-link--default:visited {
|
|
4052
|
+
color: var(--color-text-action-default);
|
|
4053
|
+
}
|
|
4054
|
+
|
|
4055
|
+
.muka-text-link--default:hover,
|
|
4056
|
+
.muka-text-link--default:focus-visible {
|
|
4057
|
+
color: var(--color-text-action-hover);
|
|
4058
|
+
}
|
|
4059
|
+
|
|
4060
|
+
.muka-text-link--default:active {
|
|
4061
|
+
color: var(--color-text-action-pressed);
|
|
4062
|
+
}
|
|
4063
|
+
|
|
4064
|
+
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
4065
|
+
Hover, focus and pressed all darken to the default text colour. */
|
|
4066
|
+
.muka-text-link--subtle,
|
|
4067
|
+
.muka-text-link--subtle:visited {
|
|
4068
|
+
color: var(--color-text-subtle-default);
|
|
4069
|
+
}
|
|
4070
|
+
|
|
4071
|
+
.muka-text-link--subtle:hover,
|
|
4072
|
+
.muka-text-link--subtle:focus-visible,
|
|
4073
|
+
.muka-text-link--subtle:active {
|
|
4074
|
+
color: var(--color-text-default-default);
|
|
4075
|
+
}
|
|
4076
|
+
|
|
4077
|
+
/* ─── Focus ───────────────────────────────────────────────
|
|
4078
|
+
Same ring as every other focusable Muka component. */
|
|
4079
|
+
.muka-text-link:focus-visible {
|
|
4080
|
+
outline: 2px solid var(--color-border-focus);
|
|
4081
|
+
outline-offset: 2px;
|
|
4082
|
+
}
|
|
4083
|
+
|
|
4084
|
+
@media (prefers-reduced-motion: reduce) {
|
|
4085
|
+
.muka-text-link {
|
|
4086
|
+
transition: none;
|
|
4087
|
+
}
|
|
4088
|
+
}
|
|
4089
|
+
|
|
4090
|
+
|
|
4048
4091
|
/* Tabs */
|
|
4049
4092
|
/* Tabs Component Styles - Clean underline style tabs matching Figma */
|
|
4050
4093
|
|
|
@@ -4076,12 +4119,17 @@ body {
|
|
|
4076
4119
|
border-bottom: 1px solid var(--tabs-trigger-color-default-border);
|
|
4077
4120
|
}
|
|
4078
4121
|
|
|
4122
|
+
/* Padding: inset the tabs; the divider (border) still spans the full width */
|
|
4123
|
+
.muka-tabs--padding-default .muka-tabs__list {
|
|
4124
|
+
padding-inline: var(--tabs-list-padding-x);
|
|
4125
|
+
}
|
|
4126
|
+
|
|
4079
4127
|
/* Tab Trigger — clean underline style */
|
|
4080
4128
|
.muka-tabs__trigger {
|
|
4081
4129
|
display: inline-flex;
|
|
4082
4130
|
align-items: center;
|
|
4083
4131
|
justify-content: center;
|
|
4084
|
-
gap: var(--spacing-
|
|
4132
|
+
gap: var(--spacing-1);
|
|
4085
4133
|
background: transparent;
|
|
4086
4134
|
border: none;
|
|
4087
4135
|
cursor: pointer;
|
|
@@ -4094,8 +4142,8 @@ body {
|
|
|
4094
4142
|
color: var(--tabs-trigger-color-default-foreground);
|
|
4095
4143
|
|
|
4096
4144
|
/* Default MD size values */
|
|
4097
|
-
height:
|
|
4098
|
-
padding:
|
|
4145
|
+
min-height: var(--tabs-trigger-min-height-md);
|
|
4146
|
+
padding: var(--spacing-3);
|
|
4099
4147
|
font-family: var(--text-label-md-regular-fontFamily);
|
|
4100
4148
|
font-weight: var(--text-label-md-regular-fontWeight);
|
|
4101
4149
|
font-size: var(--text-label-md-regular-fontSize);
|
|
@@ -4104,8 +4152,8 @@ body {
|
|
|
4104
4152
|
|
|
4105
4153
|
/* Size Variants */
|
|
4106
4154
|
.muka-tabs--size-sm .muka-tabs__trigger {
|
|
4107
|
-
height:
|
|
4108
|
-
padding: 0 var(--spacing-2
|
|
4155
|
+
min-height: var(--tabs-trigger-min-height-sm);
|
|
4156
|
+
padding: 0 var(--spacing-2);
|
|
4109
4157
|
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4110
4158
|
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4111
4159
|
font-size: var(--text-label-sm-regular-fontSize);
|
|
@@ -4113,8 +4161,8 @@ body {
|
|
|
4113
4161
|
}
|
|
4114
4162
|
|
|
4115
4163
|
.muka-tabs--size-lg .muka-tabs__trigger {
|
|
4116
|
-
height:
|
|
4117
|
-
padding:
|
|
4164
|
+
min-height: var(--tabs-trigger-min-height-lg);
|
|
4165
|
+
padding: var(--spacing-4);
|
|
4118
4166
|
font-family: var(--text-label-lg-regular-fontFamily);
|
|
4119
4167
|
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
4120
4168
|
font-size: var(--text-label-lg-regular-fontSize);
|
|
@@ -4138,8 +4186,8 @@ body {
|
|
|
4138
4186
|
bottom: -1px; /* Overlap the 1px border */
|
|
4139
4187
|
left: 0;
|
|
4140
4188
|
right: 0;
|
|
4141
|
-
height:
|
|
4142
|
-
background-color: var(--tabs-
|
|
4189
|
+
height: var(--tabs-indicator-height-md);
|
|
4190
|
+
background-color: var(--tabs-indicator-color);
|
|
4143
4191
|
border-bottom-left-radius: 1px;
|
|
4144
4192
|
border-bottom-right-radius: 1px;
|
|
4145
4193
|
border-top-left-radius: 3px;
|
|
@@ -4147,6 +4195,13 @@ body {
|
|
|
4147
4195
|
z-index: 3;
|
|
4148
4196
|
}
|
|
4149
4197
|
|
|
4198
|
+
.muka-tabs--size-sm .muka-tabs__trigger--current::after {
|
|
4199
|
+
height: var(--tabs-indicator-height-sm);
|
|
4200
|
+
}
|
|
4201
|
+
.muka-tabs--size-lg .muka-tabs__trigger--current::after {
|
|
4202
|
+
height: var(--tabs-indicator-height-lg);
|
|
4203
|
+
}
|
|
4204
|
+
|
|
4150
4205
|
.muka-tabs__trigger--disabled {
|
|
4151
4206
|
color: var(--tabs-trigger-color-disabled-foreground);
|
|
4152
4207
|
cursor: not-allowed;
|
|
@@ -4157,18 +4212,29 @@ body {
|
|
|
4157
4212
|
outline-offset: -2px;
|
|
4158
4213
|
}
|
|
4159
4214
|
|
|
4160
|
-
/*
|
|
4161
|
-
|
|
4215
|
+
/* Label: Figma pads the label 8px either side, so with the 4px gap a leading
|
|
4216
|
+
item sits 12px from the text */
|
|
4217
|
+
.muka-tabs__label {
|
|
4218
|
+
padding: 0 var(--spacing-2);
|
|
4219
|
+
}
|
|
4220
|
+
|
|
4221
|
+
/* Leading item: icon, avatar, avatar group or data pie chart */
|
|
4222
|
+
.muka-tabs__leading {
|
|
4162
4223
|
display: flex;
|
|
4163
4224
|
align-items: center;
|
|
4164
4225
|
justify-content: center;
|
|
4226
|
+
flex-shrink: 0;
|
|
4165
4227
|
}
|
|
4166
4228
|
.muka-tabs__trigger .muka-icon {
|
|
4167
4229
|
color: inherit;
|
|
4168
4230
|
}
|
|
4169
|
-
|
|
4170
|
-
.muka-tabs--size-
|
|
4171
|
-
.muka-tabs--size-
|
|
4231
|
+
/* Icon sizes only: avatars and pie charts are sized through their size prop */
|
|
4232
|
+
.muka-tabs--size-sm .muka-tabs__leading > svg,
|
|
4233
|
+
.muka-tabs--size-sm .muka-tabs__leading > .muka-icon svg { width: 16px; height: 16px; }
|
|
4234
|
+
.muka-tabs--size-md .muka-tabs__leading > svg,
|
|
4235
|
+
.muka-tabs--size-md .muka-tabs__leading > .muka-icon svg { width: 20px; height: 20px; }
|
|
4236
|
+
.muka-tabs--size-lg .muka-tabs__leading > svg,
|
|
4237
|
+
.muka-tabs--size-lg .muka-tabs__leading > .muka-icon svg { width: 24px; height: 24px; }
|
|
4172
4238
|
|
|
4173
4239
|
/* Responsive Scroll behavior on small screens */
|
|
4174
4240
|
@media (max-width: 768px) {
|
|
@@ -10755,6 +10821,38 @@ li.muka-listitem {
|
|
|
10755
10821
|
}
|
|
10756
10822
|
|
|
10757
10823
|
|
|
10824
|
+
/* DatePicker */
|
|
10825
|
+
/* DatePicker — compact native date field. */
|
|
10826
|
+
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
10827
|
+
|
|
10828
|
+
/* Adopt the field typography on the native date input. */
|
|
10829
|
+
.muka-datepicker__field .muka-input__native {
|
|
10830
|
+
font-family: var(--text-input-md-fontFamily);
|
|
10831
|
+
font-size: var(--text-input-md-fontSize);
|
|
10832
|
+
line-height: var(--text-input-md-lineHeight);
|
|
10833
|
+
}
|
|
10834
|
+
|
|
10835
|
+
.muka-datepicker__field--sm .muka-input__native {
|
|
10836
|
+
font-family: var(--text-input-sm-fontFamily);
|
|
10837
|
+
font-size: var(--text-input-sm-fontSize);
|
|
10838
|
+
line-height: var(--text-input-sm-lineHeight);
|
|
10839
|
+
}
|
|
10840
|
+
|
|
10841
|
+
/* Tint the browser calendar indicator to match the field foreground. */
|
|
10842
|
+
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
10843
|
+
cursor: pointer;
|
|
10844
|
+
opacity: 0.6;
|
|
10845
|
+
}
|
|
10846
|
+
|
|
10847
|
+
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
10848
|
+
opacity: 1;
|
|
10849
|
+
}
|
|
10850
|
+
|
|
10851
|
+
.muka-datepicker__field .muka-input__native:disabled {
|
|
10852
|
+
cursor: not-allowed;
|
|
10853
|
+
}
|
|
10854
|
+
|
|
10855
|
+
|
|
10758
10856
|
/* Dialog */
|
|
10759
10857
|
/* Dialog Component Styles */
|
|
10760
10858
|
|
|
@@ -11023,38 +11121,6 @@ li.muka-listitem {
|
|
|
11023
11121
|
}
|
|
11024
11122
|
|
|
11025
11123
|
|
|
11026
|
-
/* DatePicker */
|
|
11027
|
-
/* DatePicker — compact native date field. */
|
|
11028
|
-
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
11029
|
-
|
|
11030
|
-
/* Adopt the field typography on the native date input. */
|
|
11031
|
-
.muka-datepicker__field .muka-input__native {
|
|
11032
|
-
font-family: var(--text-input-md-fontFamily);
|
|
11033
|
-
font-size: var(--text-input-md-fontSize);
|
|
11034
|
-
line-height: var(--text-input-md-lineHeight);
|
|
11035
|
-
}
|
|
11036
|
-
|
|
11037
|
-
.muka-datepicker__field--sm .muka-input__native {
|
|
11038
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
11039
|
-
font-size: var(--text-input-sm-fontSize);
|
|
11040
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
11041
|
-
}
|
|
11042
|
-
|
|
11043
|
-
/* Tint the browser calendar indicator to match the field foreground. */
|
|
11044
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
11045
|
-
cursor: pointer;
|
|
11046
|
-
opacity: 0.6;
|
|
11047
|
-
}
|
|
11048
|
-
|
|
11049
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
11050
|
-
opacity: 1;
|
|
11051
|
-
}
|
|
11052
|
-
|
|
11053
|
-
.muka-datepicker__field .muka-input__native:disabled {
|
|
11054
|
-
cursor: not-allowed;
|
|
11055
|
-
}
|
|
11056
|
-
|
|
11057
|
-
|
|
11058
11124
|
/* DataTable */
|
|
11059
11125
|
/* DataTable Component Styles - Using Muka Design Tokens */
|
|
11060
11126
|
|
|
@@ -12372,17 +12438,139 @@ li.muka-listitem {
|
|
|
12372
12438
|
}
|
|
12373
12439
|
|
|
12374
12440
|
|
|
12375
|
-
/*
|
|
12376
|
-
/*
|
|
12441
|
+
/* ChatPhotoGrid */
|
|
12442
|
+
/* ChatPhotoGrid Component Styles */
|
|
12377
12443
|
|
|
12378
|
-
/*
|
|
12379
|
-
|
|
12380
|
-
|
|
12381
|
-
|
|
12382
|
-
|
|
12383
|
-
|
|
12384
|
-
|
|
12385
|
-
|
|
12444
|
+
/*
|
|
12445
|
+
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12446
|
+
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12447
|
+
*/
|
|
12448
|
+
.muka-chat-photo-grid {
|
|
12449
|
+
display: grid;
|
|
12450
|
+
gap: var(--chatphotogrid-gap);
|
|
12451
|
+
width: 100%;
|
|
12452
|
+
min-width: 0;
|
|
12453
|
+
overflow: hidden;
|
|
12454
|
+
border-radius: var(--chatphotogrid-radius);
|
|
12455
|
+
}
|
|
12456
|
+
|
|
12457
|
+
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12458
|
+
|
|
12459
|
+
.muka-chat-photo-grid__tile {
|
|
12460
|
+
position: relative;
|
|
12461
|
+
display: block;
|
|
12462
|
+
overflow: hidden;
|
|
12463
|
+
min-width: 0;
|
|
12464
|
+
padding: 0;
|
|
12465
|
+
margin: 0;
|
|
12466
|
+
border: none;
|
|
12467
|
+
background-color: var(--chatphotogrid-color-placeholder);
|
|
12468
|
+
aspect-ratio: 1 / 1;
|
|
12469
|
+
}
|
|
12470
|
+
|
|
12471
|
+
button.muka-chat-photo-grid__tile {
|
|
12472
|
+
cursor: pointer;
|
|
12473
|
+
appearance: none;
|
|
12474
|
+
}
|
|
12475
|
+
|
|
12476
|
+
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12477
|
+
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12478
|
+
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12479
|
+
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12480
|
+
}
|
|
12481
|
+
|
|
12482
|
+
.muka-chat-photo-grid__image {
|
|
12483
|
+
display: block;
|
|
12484
|
+
width: 100%;
|
|
12485
|
+
height: 100%;
|
|
12486
|
+
object-fit: cover;
|
|
12487
|
+
}
|
|
12488
|
+
|
|
12489
|
+
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12490
|
+
|
|
12491
|
+
.muka-chat-photo-grid__overflow {
|
|
12492
|
+
position: absolute;
|
|
12493
|
+
inset: 0;
|
|
12494
|
+
display: flex;
|
|
12495
|
+
align-items: center;
|
|
12496
|
+
justify-content: center;
|
|
12497
|
+
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12498
|
+
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12499
|
+
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12500
|
+
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12501
|
+
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12502
|
+
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12503
|
+
}
|
|
12504
|
+
|
|
12505
|
+
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12506
|
+
|
|
12507
|
+
.muka-chat-photo-grid--1 {
|
|
12508
|
+
grid-template-columns: 1fr;
|
|
12509
|
+
}
|
|
12510
|
+
|
|
12511
|
+
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12512
|
+
aspect-ratio: 4 / 3;
|
|
12513
|
+
}
|
|
12514
|
+
|
|
12515
|
+
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12516
|
+
aspect-ratio: 3 / 4;
|
|
12517
|
+
}
|
|
12518
|
+
|
|
12519
|
+
.muka-chat-photo-grid--2 {
|
|
12520
|
+
grid-template-columns: repeat(2, 1fr);
|
|
12521
|
+
}
|
|
12522
|
+
|
|
12523
|
+
.muka-chat-photo-grid--3 {
|
|
12524
|
+
grid-template-columns: repeat(3, 1fr);
|
|
12525
|
+
}
|
|
12526
|
+
|
|
12527
|
+
.muka-chat-photo-grid--4 {
|
|
12528
|
+
grid-template-columns: repeat(2, 1fr);
|
|
12529
|
+
}
|
|
12530
|
+
|
|
12531
|
+
/* 5 photos: a 2-up row above a 3-up row, on a shared 6-column track */
|
|
12532
|
+
.muka-chat-photo-grid--5 {
|
|
12533
|
+
grid-template-columns: repeat(6, 1fr);
|
|
12534
|
+
}
|
|
12535
|
+
|
|
12536
|
+
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(-n + 2) {
|
|
12537
|
+
grid-column: span 3;
|
|
12538
|
+
}
|
|
12539
|
+
|
|
12540
|
+
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(n + 3) {
|
|
12541
|
+
grid-column: span 2;
|
|
12542
|
+
}
|
|
12543
|
+
|
|
12544
|
+
.muka-chat-photo-grid--6,
|
|
12545
|
+
.muka-chat-photo-grid--overflow {
|
|
12546
|
+
grid-template-columns: repeat(3, 1fr);
|
|
12547
|
+
}
|
|
12548
|
+
|
|
12549
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
12550
|
+
|
|
12551
|
+
@media print {
|
|
12552
|
+
.muka-chat-photo-grid {
|
|
12553
|
+
break-inside: avoid;
|
|
12554
|
+
}
|
|
12555
|
+
|
|
12556
|
+
.muka-chat-photo-grid__image {
|
|
12557
|
+
print-color-adjust: exact;
|
|
12558
|
+
-webkit-print-color-adjust: exact;
|
|
12559
|
+
}
|
|
12560
|
+
}
|
|
12561
|
+
|
|
12562
|
+
|
|
12563
|
+
/* Checkbox */
|
|
12564
|
+
/* Checkbox Component Styles - Using Muka Design Tokens */
|
|
12565
|
+
|
|
12566
|
+
/* Wrapper - clickable label container */
|
|
12567
|
+
.muka-checkbox {
|
|
12568
|
+
display: inline-flex;
|
|
12569
|
+
align-items: center;
|
|
12570
|
+
gap: var(--spacing-4);
|
|
12571
|
+
cursor: pointer;
|
|
12572
|
+
user-select: none;
|
|
12573
|
+
}
|
|
12386
12574
|
|
|
12387
12575
|
.muka-checkbox--disabled {
|
|
12388
12576
|
cursor: not-allowed;
|
|
@@ -12539,128 +12727,6 @@ li.muka-listitem {
|
|
|
12539
12727
|
}
|
|
12540
12728
|
|
|
12541
12729
|
|
|
12542
|
-
/* ChatPhotoGrid */
|
|
12543
|
-
/* ChatPhotoGrid Component Styles */
|
|
12544
|
-
|
|
12545
|
-
/*
|
|
12546
|
-
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12547
|
-
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12548
|
-
*/
|
|
12549
|
-
.muka-chat-photo-grid {
|
|
12550
|
-
display: grid;
|
|
12551
|
-
gap: var(--chatphotogrid-gap);
|
|
12552
|
-
width: 100%;
|
|
12553
|
-
min-width: 0;
|
|
12554
|
-
overflow: hidden;
|
|
12555
|
-
border-radius: var(--chatphotogrid-radius);
|
|
12556
|
-
}
|
|
12557
|
-
|
|
12558
|
-
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12559
|
-
|
|
12560
|
-
.muka-chat-photo-grid__tile {
|
|
12561
|
-
position: relative;
|
|
12562
|
-
display: block;
|
|
12563
|
-
overflow: hidden;
|
|
12564
|
-
min-width: 0;
|
|
12565
|
-
padding: 0;
|
|
12566
|
-
margin: 0;
|
|
12567
|
-
border: none;
|
|
12568
|
-
background-color: var(--chatphotogrid-color-placeholder);
|
|
12569
|
-
aspect-ratio: 1 / 1;
|
|
12570
|
-
}
|
|
12571
|
-
|
|
12572
|
-
button.muka-chat-photo-grid__tile {
|
|
12573
|
-
cursor: pointer;
|
|
12574
|
-
appearance: none;
|
|
12575
|
-
}
|
|
12576
|
-
|
|
12577
|
-
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12578
|
-
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12579
|
-
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12580
|
-
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12581
|
-
}
|
|
12582
|
-
|
|
12583
|
-
.muka-chat-photo-grid__image {
|
|
12584
|
-
display: block;
|
|
12585
|
-
width: 100%;
|
|
12586
|
-
height: 100%;
|
|
12587
|
-
object-fit: cover;
|
|
12588
|
-
}
|
|
12589
|
-
|
|
12590
|
-
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12591
|
-
|
|
12592
|
-
.muka-chat-photo-grid__overflow {
|
|
12593
|
-
position: absolute;
|
|
12594
|
-
inset: 0;
|
|
12595
|
-
display: flex;
|
|
12596
|
-
align-items: center;
|
|
12597
|
-
justify-content: center;
|
|
12598
|
-
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12599
|
-
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12600
|
-
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12601
|
-
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12602
|
-
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12603
|
-
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12604
|
-
}
|
|
12605
|
-
|
|
12606
|
-
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12607
|
-
|
|
12608
|
-
.muka-chat-photo-grid--1 {
|
|
12609
|
-
grid-template-columns: 1fr;
|
|
12610
|
-
}
|
|
12611
|
-
|
|
12612
|
-
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12613
|
-
aspect-ratio: 4 / 3;
|
|
12614
|
-
}
|
|
12615
|
-
|
|
12616
|
-
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12617
|
-
aspect-ratio: 3 / 4;
|
|
12618
|
-
}
|
|
12619
|
-
|
|
12620
|
-
.muka-chat-photo-grid--2 {
|
|
12621
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12622
|
-
}
|
|
12623
|
-
|
|
12624
|
-
.muka-chat-photo-grid--3 {
|
|
12625
|
-
grid-template-columns: repeat(3, 1fr);
|
|
12626
|
-
}
|
|
12627
|
-
|
|
12628
|
-
.muka-chat-photo-grid--4 {
|
|
12629
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12630
|
-
}
|
|
12631
|
-
|
|
12632
|
-
/* 5 photos: a 2-up row above a 3-up row, on a shared 6-column track */
|
|
12633
|
-
.muka-chat-photo-grid--5 {
|
|
12634
|
-
grid-template-columns: repeat(6, 1fr);
|
|
12635
|
-
}
|
|
12636
|
-
|
|
12637
|
-
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(-n + 2) {
|
|
12638
|
-
grid-column: span 3;
|
|
12639
|
-
}
|
|
12640
|
-
|
|
12641
|
-
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(n + 3) {
|
|
12642
|
-
grid-column: span 2;
|
|
12643
|
-
}
|
|
12644
|
-
|
|
12645
|
-
.muka-chat-photo-grid--6,
|
|
12646
|
-
.muka-chat-photo-grid--overflow {
|
|
12647
|
-
grid-template-columns: repeat(3, 1fr);
|
|
12648
|
-
}
|
|
12649
|
-
|
|
12650
|
-
/* ─── Print ────────────────────────────────────────────── */
|
|
12651
|
-
|
|
12652
|
-
@media print {
|
|
12653
|
-
.muka-chat-photo-grid {
|
|
12654
|
-
break-inside: avoid;
|
|
12655
|
-
}
|
|
12656
|
-
|
|
12657
|
-
.muka-chat-photo-grid__image {
|
|
12658
|
-
print-color-adjust: exact;
|
|
12659
|
-
-webkit-print-color-adjust: exact;
|
|
12660
|
-
}
|
|
12661
|
-
}
|
|
12662
|
-
|
|
12663
|
-
|
|
12664
12730
|
/* ChatMessageStack */
|
|
12665
12731
|
/* ChatMessageStack Component Styles */
|
|
12666
12732
|
|
|
@@ -13603,10 +13669,43 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13603
13669
|
opacity: 1; /* Remove opacity since we have proper disabled tokens */
|
|
13604
13670
|
}
|
|
13605
13671
|
|
|
13606
|
-
/*
|
|
13607
|
-
.
|
|
13608
|
-
|
|
13609
|
-
|
|
13672
|
+
/* Destructive variant - primary's structure on the solid error fill, for
|
|
13673
|
+
irreversible actions. Hover and pressed step away from the label color, so
|
|
13674
|
+
contrast never drops (darker in light themes, lighter in dark themes).
|
|
13675
|
+
Disabled is neutral grey rather than primary's brand-tinted fill. */
|
|
13676
|
+
.muka-button--destructive {
|
|
13677
|
+
background-color: var(--button-color-destructive-background-default);
|
|
13678
|
+
color: var(--button-color-destructive-foreground-default);
|
|
13679
|
+
box-shadow: var(--button-color-destructive-shadow-default);
|
|
13680
|
+
}
|
|
13681
|
+
|
|
13682
|
+
.muka-button--destructive:hover:not(:disabled) {
|
|
13683
|
+
background-color: var(--button-color-destructive-background-hover);
|
|
13684
|
+
color: var(--button-color-destructive-foreground-hover);
|
|
13685
|
+
box-shadow: var(--button-color-destructive-shadow-hover);
|
|
13686
|
+
}
|
|
13687
|
+
|
|
13688
|
+
.muka-button--destructive:active:not(:disabled),
|
|
13689
|
+
.muka-button--destructive.muka-button--pressed:not(:disabled),
|
|
13690
|
+
.muka-button--destructive[data-state="open"]:not(:disabled),
|
|
13691
|
+
.muka-button--destructive[aria-pressed="true"]:not(:disabled) {
|
|
13692
|
+
background-color: var(--button-color-destructive-background-pressed);
|
|
13693
|
+
color: var(--button-color-destructive-foreground-pressed);
|
|
13694
|
+
box-shadow: var(--button-color-destructive-shadow-pressed);
|
|
13695
|
+
}
|
|
13696
|
+
|
|
13697
|
+
.muka-button--destructive:disabled {
|
|
13698
|
+
background-color: var(--button-color-destructive-background-disabled);
|
|
13699
|
+
color: var(--button-color-destructive-foreground-disabled);
|
|
13700
|
+
box-shadow: var(--button-color-destructive-shadow-disabled);
|
|
13701
|
+
cursor: not-allowed;
|
|
13702
|
+
opacity: 1;
|
|
13703
|
+
}
|
|
13704
|
+
|
|
13705
|
+
/* Secondary variant - supporting actions, no border, only bottom inner shadow */
|
|
13706
|
+
.muka-button--secondary {
|
|
13707
|
+
background-color: var(--button-color-secondary-background-default);
|
|
13708
|
+
color: var(--button-color-secondary-foreground-default);
|
|
13610
13709
|
box-shadow: var(--button-color-secondary-shadow-default);
|
|
13611
13710
|
}
|
|
13612
13711
|
|
|
@@ -13913,6 +14012,114 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13913
14012
|
}
|
|
13914
14013
|
|
|
13915
14014
|
|
|
14015
|
+
/* BadgeNumber */
|
|
14016
|
+
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
14017
|
+
|
|
14018
|
+
.muka-badge-number {
|
|
14019
|
+
display: inline-flex;
|
|
14020
|
+
align-items: center;
|
|
14021
|
+
justify-content: center;
|
|
14022
|
+
border-radius: var(--border-radius-full);
|
|
14023
|
+
white-space: nowrap;
|
|
14024
|
+
user-select: none;
|
|
14025
|
+
box-sizing: border-box;
|
|
14026
|
+
}
|
|
14027
|
+
|
|
14028
|
+
/*
|
|
14029
|
+
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
14030
|
+
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
14031
|
+
* is handled by the fixed height + align-items: center.
|
|
14032
|
+
*/
|
|
14033
|
+
.muka-badge-number--2xs {
|
|
14034
|
+
height: var(--badge-number-size-2xs);
|
|
14035
|
+
min-width: var(--badge-number-size-2xs);
|
|
14036
|
+
padding: 0 var(--badge-number-padding-2xs);
|
|
14037
|
+
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14038
|
+
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14039
|
+
font-size: var(--text-label-xs-bold-fontSize);
|
|
14040
|
+
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14041
|
+
}
|
|
14042
|
+
|
|
14043
|
+
.muka-badge-number--xs {
|
|
14044
|
+
height: var(--badge-number-size-xs);
|
|
14045
|
+
min-width: var(--badge-number-size-xs);
|
|
14046
|
+
padding: 0 var(--badge-number-padding-xs);
|
|
14047
|
+
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14048
|
+
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14049
|
+
font-size: var(--text-label-sm-bold-fontSize);
|
|
14050
|
+
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14051
|
+
}
|
|
14052
|
+
|
|
14053
|
+
.muka-badge-number--sm {
|
|
14054
|
+
height: var(--badge-number-size-sm);
|
|
14055
|
+
min-width: var(--badge-number-size-sm);
|
|
14056
|
+
padding: 0 var(--badge-number-padding-sm);
|
|
14057
|
+
font-family: var(--text-label-md-bold-fontFamily);
|
|
14058
|
+
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14059
|
+
font-size: var(--text-label-md-bold-fontSize);
|
|
14060
|
+
line-height: var(--text-label-md-bold-lineHeight);
|
|
14061
|
+
}
|
|
14062
|
+
|
|
14063
|
+
.muka-badge-number--md {
|
|
14064
|
+
height: var(--badge-number-size-md);
|
|
14065
|
+
min-width: var(--badge-number-size-md);
|
|
14066
|
+
padding: 0 var(--badge-number-padding-md);
|
|
14067
|
+
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14068
|
+
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14069
|
+
font-size: var(--text-label-lg-bold-fontSize);
|
|
14070
|
+
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14071
|
+
}
|
|
14072
|
+
|
|
14073
|
+
.muka-badge-number--lg {
|
|
14074
|
+
height: var(--badge-number-size-lg);
|
|
14075
|
+
min-width: var(--badge-number-size-lg);
|
|
14076
|
+
padding: 0 var(--badge-number-padding-lg);
|
|
14077
|
+
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14078
|
+
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14079
|
+
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14080
|
+
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14081
|
+
}
|
|
14082
|
+
|
|
14083
|
+
.muka-badge-number__label {
|
|
14084
|
+
/*
|
|
14085
|
+
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14086
|
+
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14087
|
+
* is unaffected because the badge height is fixed and content is centered.
|
|
14088
|
+
*/
|
|
14089
|
+
line-height: normal;
|
|
14090
|
+
}
|
|
14091
|
+
|
|
14092
|
+
/* Neutral variant */
|
|
14093
|
+
.muka-badge-number--neutral {
|
|
14094
|
+
background-color: var(--color-surface-level1);
|
|
14095
|
+
color: var(--color-text-default-default);
|
|
14096
|
+
}
|
|
14097
|
+
|
|
14098
|
+
/* Info variant */
|
|
14099
|
+
.muka-badge-number--info {
|
|
14100
|
+
background-color: var(--color-state-info-contrast);
|
|
14101
|
+
color: var(--color-text-default-inverse);
|
|
14102
|
+
}
|
|
14103
|
+
|
|
14104
|
+
/* Success variant */
|
|
14105
|
+
.muka-badge-number--success {
|
|
14106
|
+
background-color: var(--color-state-success-contrast);
|
|
14107
|
+
color: var(--color-text-default-inverse);
|
|
14108
|
+
}
|
|
14109
|
+
|
|
14110
|
+
/* Warning variant */
|
|
14111
|
+
.muka-badge-number--warning {
|
|
14112
|
+
background-color: var(--color-state-warning-contrast);
|
|
14113
|
+
color: var(--color-text-default-inverse);
|
|
14114
|
+
}
|
|
14115
|
+
|
|
14116
|
+
/* Error variant */
|
|
14117
|
+
.muka-badge-number--error {
|
|
14118
|
+
background-color: var(--color-state-error-contrast);
|
|
14119
|
+
color: var(--color-text-default-inverse);
|
|
14120
|
+
}
|
|
14121
|
+
|
|
14122
|
+
|
|
13916
14123
|
/* BottomBar */
|
|
13917
14124
|
/* BottomBar Component Styles */
|
|
13918
14125
|
|
|
@@ -14229,114 +14436,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14229
14436
|
}
|
|
14230
14437
|
|
|
14231
14438
|
|
|
14232
|
-
/* BadgeNumber */
|
|
14233
|
-
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
14234
|
-
|
|
14235
|
-
.muka-badge-number {
|
|
14236
|
-
display: inline-flex;
|
|
14237
|
-
align-items: center;
|
|
14238
|
-
justify-content: center;
|
|
14239
|
-
border-radius: var(--border-radius-full);
|
|
14240
|
-
white-space: nowrap;
|
|
14241
|
-
user-select: none;
|
|
14242
|
-
box-sizing: border-box;
|
|
14243
|
-
}
|
|
14244
|
-
|
|
14245
|
-
/*
|
|
14246
|
-
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
14247
|
-
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
14248
|
-
* is handled by the fixed height + align-items: center.
|
|
14249
|
-
*/
|
|
14250
|
-
.muka-badge-number--2xs {
|
|
14251
|
-
height: var(--badge-number-size-2xs);
|
|
14252
|
-
min-width: var(--badge-number-size-2xs);
|
|
14253
|
-
padding: 0 var(--badge-number-padding-2xs);
|
|
14254
|
-
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14255
|
-
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14256
|
-
font-size: var(--text-label-xs-bold-fontSize);
|
|
14257
|
-
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14258
|
-
}
|
|
14259
|
-
|
|
14260
|
-
.muka-badge-number--xs {
|
|
14261
|
-
height: var(--badge-number-size-xs);
|
|
14262
|
-
min-width: var(--badge-number-size-xs);
|
|
14263
|
-
padding: 0 var(--badge-number-padding-xs);
|
|
14264
|
-
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14265
|
-
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14266
|
-
font-size: var(--text-label-sm-bold-fontSize);
|
|
14267
|
-
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14268
|
-
}
|
|
14269
|
-
|
|
14270
|
-
.muka-badge-number--sm {
|
|
14271
|
-
height: var(--badge-number-size-sm);
|
|
14272
|
-
min-width: var(--badge-number-size-sm);
|
|
14273
|
-
padding: 0 var(--badge-number-padding-sm);
|
|
14274
|
-
font-family: var(--text-label-md-bold-fontFamily);
|
|
14275
|
-
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14276
|
-
font-size: var(--text-label-md-bold-fontSize);
|
|
14277
|
-
line-height: var(--text-label-md-bold-lineHeight);
|
|
14278
|
-
}
|
|
14279
|
-
|
|
14280
|
-
.muka-badge-number--md {
|
|
14281
|
-
height: var(--badge-number-size-md);
|
|
14282
|
-
min-width: var(--badge-number-size-md);
|
|
14283
|
-
padding: 0 var(--badge-number-padding-md);
|
|
14284
|
-
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14285
|
-
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14286
|
-
font-size: var(--text-label-lg-bold-fontSize);
|
|
14287
|
-
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14288
|
-
}
|
|
14289
|
-
|
|
14290
|
-
.muka-badge-number--lg {
|
|
14291
|
-
height: var(--badge-number-size-lg);
|
|
14292
|
-
min-width: var(--badge-number-size-lg);
|
|
14293
|
-
padding: 0 var(--badge-number-padding-lg);
|
|
14294
|
-
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14295
|
-
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14296
|
-
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14297
|
-
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14298
|
-
}
|
|
14299
|
-
|
|
14300
|
-
.muka-badge-number__label {
|
|
14301
|
-
/*
|
|
14302
|
-
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14303
|
-
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14304
|
-
* is unaffected because the badge height is fixed and content is centered.
|
|
14305
|
-
*/
|
|
14306
|
-
line-height: normal;
|
|
14307
|
-
}
|
|
14308
|
-
|
|
14309
|
-
/* Neutral variant */
|
|
14310
|
-
.muka-badge-number--neutral {
|
|
14311
|
-
background-color: var(--color-surface-level1);
|
|
14312
|
-
color: var(--color-text-default-default);
|
|
14313
|
-
}
|
|
14314
|
-
|
|
14315
|
-
/* Info variant */
|
|
14316
|
-
.muka-badge-number--info {
|
|
14317
|
-
background-color: var(--color-state-info-contrast);
|
|
14318
|
-
color: var(--color-text-default-inverse);
|
|
14319
|
-
}
|
|
14320
|
-
|
|
14321
|
-
/* Success variant */
|
|
14322
|
-
.muka-badge-number--success {
|
|
14323
|
-
background-color: var(--color-state-success-contrast);
|
|
14324
|
-
color: var(--color-text-default-inverse);
|
|
14325
|
-
}
|
|
14326
|
-
|
|
14327
|
-
/* Warning variant */
|
|
14328
|
-
.muka-badge-number--warning {
|
|
14329
|
-
background-color: var(--color-state-warning-contrast);
|
|
14330
|
-
color: var(--color-text-default-inverse);
|
|
14331
|
-
}
|
|
14332
|
-
|
|
14333
|
-
/* Error variant */
|
|
14334
|
-
.muka-badge-number--error {
|
|
14335
|
-
background-color: var(--color-state-error-contrast);
|
|
14336
|
-
color: var(--color-text-default-inverse);
|
|
14337
|
-
}
|
|
14338
|
-
|
|
14339
|
-
|
|
14340
14439
|
/* Badge */
|
|
14341
14440
|
/* Badge Component Styles - Using Muka Design Tokens */
|
|
14342
14441
|
|
|
@@ -14536,12 +14635,29 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14536
14635
|
vertical-align: middle;
|
|
14537
14636
|
background-color: var(--avatar-color-background-default);
|
|
14538
14637
|
color: var(--avatar-color-foreground-default);
|
|
14539
|
-
border: var(--avatar-border-width) solid var(--avatar-color-border-default);
|
|
14540
14638
|
font-family: var(--alias-font-brand-family);
|
|
14541
14639
|
font-weight: var(--alias-font-brand-weight-semibold);
|
|
14542
14640
|
}
|
|
14543
14641
|
|
|
14544
14642
|
/* Size variants */
|
|
14643
|
+
.muka-avatar--4xs {
|
|
14644
|
+
width: var(--avatar-size-4xs);
|
|
14645
|
+
height: var(--avatar-size-4xs);
|
|
14646
|
+
font-size: var(--avatar-font-size-3xs); /* only used by an AvatarGroup "+N" */
|
|
14647
|
+
}
|
|
14648
|
+
|
|
14649
|
+
.muka-avatar--3xs {
|
|
14650
|
+
width: var(--avatar-size-3xs);
|
|
14651
|
+
height: var(--avatar-size-3xs);
|
|
14652
|
+
font-size: var(--avatar-font-size-3xs);
|
|
14653
|
+
}
|
|
14654
|
+
|
|
14655
|
+
.muka-avatar--2xs {
|
|
14656
|
+
width: var(--avatar-size-2xs);
|
|
14657
|
+
height: var(--avatar-size-2xs);
|
|
14658
|
+
font-size: var(--avatar-font-size-2xs);
|
|
14659
|
+
}
|
|
14660
|
+
|
|
14545
14661
|
.muka-avatar--xs {
|
|
14546
14662
|
width: var(--avatar-size-xs);
|
|
14547
14663
|
height: var(--avatar-size-xs);
|
|
@@ -14581,6 +14697,20 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14581
14697
|
border-radius: var(--avatar-radius-square);
|
|
14582
14698
|
}
|
|
14583
14699
|
|
|
14700
|
+
.muka-avatar--square.muka-avatar--4xs,
|
|
14701
|
+
.muka-avatar--square.muka-avatar--3xs,
|
|
14702
|
+
.muka-avatar--square.muka-avatar--2xs {
|
|
14703
|
+
border-radius: var(--avatar-radius-square-sm);
|
|
14704
|
+
}
|
|
14705
|
+
|
|
14706
|
+
/* 4xs is too small for initials, the fallback icon or a status dot:
|
|
14707
|
+
it shows the picture, or the plain background */
|
|
14708
|
+
.muka-avatar--4xs .muka-avatar__initials,
|
|
14709
|
+
.muka-avatar--4xs .muka-avatar__fallback,
|
|
14710
|
+
.muka-avatar--4xs .muka-avatar__status {
|
|
14711
|
+
display: none;
|
|
14712
|
+
}
|
|
14713
|
+
|
|
14584
14714
|
/* Clickable state */
|
|
14585
14715
|
.muka-avatar--clickable {
|
|
14586
14716
|
cursor: pointer;
|
|
@@ -14684,6 +14814,16 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14684
14814
|
box-sizing: border-box;
|
|
14685
14815
|
}
|
|
14686
14816
|
|
|
14817
|
+
.muka-avatar--3xs .muka-avatar__status {
|
|
14818
|
+
width: var(--avatar-status-size-3xs);
|
|
14819
|
+
height: var(--avatar-status-size-3xs);
|
|
14820
|
+
}
|
|
14821
|
+
|
|
14822
|
+
.muka-avatar--2xs .muka-avatar__status {
|
|
14823
|
+
width: var(--avatar-status-size-2xs);
|
|
14824
|
+
height: var(--avatar-status-size-2xs);
|
|
14825
|
+
}
|
|
14826
|
+
|
|
14687
14827
|
.muka-avatar--xs .muka-avatar__status {
|
|
14688
14828
|
width: var(--avatar-status-size-xs);
|
|
14689
14829
|
height: var(--avatar-status-size-xs);
|
|
@@ -14737,44 +14877,17 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14737
14877
|
background-color: var(--avatar-color-status-away);
|
|
14738
14878
|
}
|
|
14739
14879
|
|
|
14740
|
-
/* Avatar Group */
|
|
14880
|
+
/* Avatar Group (Figma "Avatar Stack") */
|
|
14741
14881
|
.muka-avatar-group {
|
|
14742
14882
|
display: inline-flex;
|
|
14743
14883
|
align-items: center;
|
|
14744
14884
|
flex-direction: row;
|
|
14745
14885
|
}
|
|
14746
14886
|
|
|
14887
|
+
/* Later avatars sit on top of earlier ones (DOM order); a hovered one comes to the front */
|
|
14747
14888
|
.muka-avatar-group__item {
|
|
14748
14889
|
position: relative;
|
|
14749
14890
|
display: inline-flex;
|
|
14750
|
-
border: 2px solid var(--color-surface-level1);
|
|
14751
|
-
border-radius: inherit;
|
|
14752
|
-
}
|
|
14753
|
-
|
|
14754
|
-
/* Add border radius to match avatar shape */
|
|
14755
|
-
.muka-avatar-group__item .muka-avatar--circle {
|
|
14756
|
-
border-radius: var(--avatar-radius-circle);
|
|
14757
|
-
}
|
|
14758
|
-
|
|
14759
|
-
.muka-avatar-group__item .muka-avatar--square {
|
|
14760
|
-
border-radius: var(--avatar-radius-square);
|
|
14761
|
-
}
|
|
14762
|
-
|
|
14763
|
-
.muka-avatar-group__item .muka-avatar {
|
|
14764
|
-
border: none;
|
|
14765
|
-
}
|
|
14766
|
-
|
|
14767
|
-
/* Spacing variants for avatar group */
|
|
14768
|
-
.muka-avatar-group--tight .muka-avatar-group__item:not(:first-child) {
|
|
14769
|
-
margin-left: calc(var(--avatar-group-spacing-tight));
|
|
14770
|
-
}
|
|
14771
|
-
|
|
14772
|
-
.muka-avatar-group--normal .muka-avatar-group__item:not(:first-child) {
|
|
14773
|
-
margin-left: calc(var(--avatar-group-spacing-normal));
|
|
14774
|
-
}
|
|
14775
|
-
|
|
14776
|
-
/* Z-index stacking for overlap effect */
|
|
14777
|
-
.muka-avatar-group__item {
|
|
14778
14891
|
z-index: 0;
|
|
14779
14892
|
}
|
|
14780
14893
|
|
|
@@ -14782,6 +14895,41 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14782
14895
|
z-index: 10;
|
|
14783
14896
|
}
|
|
14784
14897
|
|
|
14898
|
+
/* Grouped avatars get a ring outside their edge, drawn as a shadow so it
|
|
14899
|
+
does not change the avatar's size or the overlap */
|
|
14900
|
+
.muka-avatar-group__item .muka-avatar {
|
|
14901
|
+
box-shadow: 0 0 0 var(--avatar-group-ring-width) var(--avatar-group-ring-color);
|
|
14902
|
+
}
|
|
14903
|
+
|
|
14904
|
+
/* Overlap. Figma specifies exact values for 48 / 32 / 24px avatars (sm / 2xs / 3xs);
|
|
14905
|
+
other sizes use the same proportions: tight 2/3, compact 1/2, spacious 1/3. */
|
|
14906
|
+
.muka-avatar-group--4xs { --muka-avatar-group-size: var(--avatar-size-4xs); }
|
|
14907
|
+
.muka-avatar-group--3xs { --muka-avatar-group-size: var(--avatar-size-3xs); }
|
|
14908
|
+
.muka-avatar-group--2xs { --muka-avatar-group-size: var(--avatar-size-2xs); }
|
|
14909
|
+
.muka-avatar-group--xs { --muka-avatar-group-size: var(--avatar-size-xs); }
|
|
14910
|
+
.muka-avatar-group--sm { --muka-avatar-group-size: var(--avatar-size-sm); }
|
|
14911
|
+
.muka-avatar-group--md { --muka-avatar-group-size: var(--avatar-size-md); }
|
|
14912
|
+
.muka-avatar-group--lg { --muka-avatar-group-size: var(--avatar-size-lg); }
|
|
14913
|
+
.muka-avatar-group--xl { --muka-avatar-group-size: var(--avatar-size-xl); }
|
|
14914
|
+
|
|
14915
|
+
.muka-avatar-group--tight { --muka-avatar-group-overlap: calc(var(--muka-avatar-group-size) * 2 / 3); }
|
|
14916
|
+
.muka-avatar-group--compact { --muka-avatar-group-overlap: calc(var(--muka-avatar-group-size) / 2); }
|
|
14917
|
+
.muka-avatar-group--spacious { --muka-avatar-group-overlap: calc(var(--muka-avatar-group-size) / 3); }
|
|
14918
|
+
|
|
14919
|
+
.muka-avatar-group--tight.muka-avatar-group--sm { --muka-avatar-group-overlap: var(--avatar-group-overlap-tight-sm); }
|
|
14920
|
+
.muka-avatar-group--tight.muka-avatar-group--2xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-tight-2xs); }
|
|
14921
|
+
.muka-avatar-group--tight.muka-avatar-group--3xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-tight-3xs); }
|
|
14922
|
+
.muka-avatar-group--compact.muka-avatar-group--sm { --muka-avatar-group-overlap: var(--avatar-group-overlap-compact-sm); }
|
|
14923
|
+
.muka-avatar-group--compact.muka-avatar-group--2xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-compact-2xs); }
|
|
14924
|
+
.muka-avatar-group--compact.muka-avatar-group--3xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-compact-3xs); }
|
|
14925
|
+
.muka-avatar-group--spacious.muka-avatar-group--sm { --muka-avatar-group-overlap: var(--avatar-group-overlap-spacious-sm); }
|
|
14926
|
+
.muka-avatar-group--spacious.muka-avatar-group--2xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-spacious-2xs); }
|
|
14927
|
+
.muka-avatar-group--spacious.muka-avatar-group--3xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-spacious-3xs); }
|
|
14928
|
+
|
|
14929
|
+
.muka-avatar-group__item:not(:first-child) {
|
|
14930
|
+
margin-left: calc(-1 * var(--muka-avatar-group-overlap));
|
|
14931
|
+
}
|
|
14932
|
+
|
|
14785
14933
|
/* Overflow avatar styling */
|
|
14786
14934
|
.muka-avatar--overflow {
|
|
14787
14935
|
background-color: var(--avatar-color-background-default);
|