@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
|
@@ -377,6 +377,8 @@ body {
|
|
|
377
377
|
--color-red-10: #dc3d43;
|
|
378
378
|
--color-red-11: #cd2b31;
|
|
379
379
|
--color-red-12: #381316;
|
|
380
|
+
--color-redStrong-1: #bd1524;
|
|
381
|
+
--color-redStrong-2: #ab001a;
|
|
380
382
|
--color-ruby-1: #fffcfd;
|
|
381
383
|
--color-ruby-2: #fff7f8;
|
|
382
384
|
--color-ruby-3: #ffeef1;
|
|
@@ -1175,6 +1177,9 @@ body {
|
|
|
1175
1177
|
--color-state-error-default: #e5484d;
|
|
1176
1178
|
--color-state-error-contrast: #cd2b31;
|
|
1177
1179
|
--color-state-error-background: #ffefef;
|
|
1180
|
+
--color-state-error-solid-default: #cd2b31;
|
|
1181
|
+
--color-state-error-solid-hover: #bd1524;
|
|
1182
|
+
--color-state-error-solid-pressed: #ab001a;
|
|
1178
1183
|
--color-state-info-default: #0091ff;
|
|
1179
1184
|
--color-state-info-contrast: #0d74ce;
|
|
1180
1185
|
--color-state-info-background: #edf6ff;
|
|
@@ -1275,6 +1280,9 @@ body {
|
|
|
1275
1280
|
--alias-color-state-error-contrast: #cd2b31;
|
|
1276
1281
|
--alias-color-state-error-default: #e5484d;
|
|
1277
1282
|
--alias-color-state-error-muted: #ffefef;
|
|
1283
|
+
--alias-color-state-error-solid-default: #cd2b31;
|
|
1284
|
+
--alias-color-state-error-solid-hover: #bd1524;
|
|
1285
|
+
--alias-color-state-error-solid-pressed: #ab001a;
|
|
1278
1286
|
--alias-color-state-error-surface-level0: #fff8f8;
|
|
1279
1287
|
--alias-color-state-error-surface-level1: #ffefef;
|
|
1280
1288
|
--alias-color-state-error-surface-level2: #ffe5e5;
|
|
@@ -1571,6 +1579,18 @@ body {
|
|
|
1571
1579
|
--button-color-primary-shadow-hover: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1572
1580
|
--button-color-primary-shadow-pressed: none;
|
|
1573
1581
|
--button-color-primary-shadow-disabled: none;
|
|
1582
|
+
--button-color-destructive-background-default: #cd2b31;
|
|
1583
|
+
--button-color-destructive-background-hover: #bd1524;
|
|
1584
|
+
--button-color-destructive-background-pressed: #ab001a;
|
|
1585
|
+
--button-color-destructive-background-disabled: #e0e0e0;
|
|
1586
|
+
--button-color-destructive-foreground-default: #fcfcfc;
|
|
1587
|
+
--button-color-destructive-foreground-hover: #fcfcfc;
|
|
1588
|
+
--button-color-destructive-foreground-pressed: #fcfcfc;
|
|
1589
|
+
--button-color-destructive-foreground-disabled: #bbbbbb;
|
|
1590
|
+
--button-color-destructive-shadow-default: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1591
|
+
--button-color-destructive-shadow-hover: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1592
|
+
--button-color-destructive-shadow-pressed: none;
|
|
1593
|
+
--button-color-destructive-shadow-disabled: none;
|
|
1574
1594
|
--button-color-secondary-background-default: #e8e8e8;
|
|
1575
1595
|
--button-color-secondary-background-hover: #e8e8e8;
|
|
1576
1596
|
--button-color-secondary-background-pressed: #e0e0e0;
|
|
@@ -1935,7 +1955,7 @@ body {
|
|
|
1935
1955
|
--contextmenu-trigger-outline-color: #113264;
|
|
1936
1956
|
--contextmenu-trigger-outline-offset: 0.25rem;
|
|
1937
1957
|
--tabs-trigger-color-default-background: #e8e8e8;
|
|
1938
|
-
--tabs-trigger-color-default-foreground: #
|
|
1958
|
+
--tabs-trigger-color-default-foreground: #838383;
|
|
1939
1959
|
--tabs-trigger-color-default-border: #bbbbbb;
|
|
1940
1960
|
--tabs-trigger-color-hover-background: #e8e8e8;
|
|
1941
1961
|
--tabs-trigger-color-hover-foreground: #202020;
|
|
@@ -1950,8 +1970,16 @@ body {
|
|
|
1950
1970
|
--tabs-trigger-padding-y: 0.5rem;
|
|
1951
1971
|
--tabs-trigger-height: 3rem;
|
|
1952
1972
|
--tabs-trigger-radius: 0px;
|
|
1973
|
+
--tabs-trigger-min-height-sm: 2.5rem;
|
|
1974
|
+
--tabs-trigger-min-height-md: 3.5rem;
|
|
1975
|
+
--tabs-trigger-min-height-lg: 5rem;
|
|
1953
1976
|
--tabs-panel-background: #fcfcfc;
|
|
1954
1977
|
--tabs-panel-border: #bbbbbb;
|
|
1978
|
+
--tabs-indicator-color: #113264;
|
|
1979
|
+
--tabs-indicator-height-sm: 2px;
|
|
1980
|
+
--tabs-indicator-height-md: 3px;
|
|
1981
|
+
--tabs-indicator-height-lg: 4px;
|
|
1982
|
+
--tabs-list-padding-x: 1rem;
|
|
1955
1983
|
--separator-color-default: #e0e0e0;
|
|
1956
1984
|
--separator-color-contrast: #bbbbbb;
|
|
1957
1985
|
--separator-width: 0.0625rem;
|
|
@@ -1984,6 +2012,9 @@ body {
|
|
|
1984
2012
|
--progress-size-circle-strokeWidth-sm: 0.25rem;
|
|
1985
2013
|
--progress-size-circle-strokeWidth-md: 0.5rem;
|
|
1986
2014
|
--progress-size-circle-strokeWidth-lg: 0.75rem;
|
|
2015
|
+
--avatar-size-4xs: 1rem;
|
|
2016
|
+
--avatar-size-3xs: 1.5rem;
|
|
2017
|
+
--avatar-size-2xs: 2rem;
|
|
1987
2018
|
--avatar-size-xs: 2.5rem;
|
|
1988
2019
|
--avatar-size-sm: 3rem;
|
|
1989
2020
|
--avatar-size-md: 4rem;
|
|
@@ -1993,26 +2024,38 @@ body {
|
|
|
1993
2024
|
--avatar-color-background-loading: #e0e0e0;
|
|
1994
2025
|
--avatar-color-foreground-default: #202020;
|
|
1995
2026
|
--avatar-color-foreground-muted: #bbbbbb;
|
|
1996
|
-
--avatar-color-border-default: #e0e0e0;
|
|
1997
2027
|
--avatar-color-status-online: #30a46c;
|
|
1998
2028
|
--avatar-color-status-offline: #bbbbbb;
|
|
1999
2029
|
--avatar-color-status-busy: #e5484d;
|
|
2000
2030
|
--avatar-color-status-away: #ffc53d;
|
|
2001
2031
|
--avatar-radius-circle: 999rem;
|
|
2002
2032
|
--avatar-radius-square: 0px;
|
|
2033
|
+
--avatar-radius-square-sm: 0px;
|
|
2034
|
+
--avatar-font-size-3xs: 0.75rem;
|
|
2035
|
+
--avatar-font-size-2xs: 0.75rem;
|
|
2003
2036
|
--avatar-font-size-xs: 0.75rem;
|
|
2004
2037
|
--avatar-font-size-sm: 0.875rem;
|
|
2005
2038
|
--avatar-font-size-md: 1.125rem;
|
|
2006
2039
|
--avatar-font-size-lg: 1.25rem;
|
|
2007
2040
|
--avatar-font-size-xl: 1.5rem;
|
|
2041
|
+
--avatar-status-size-3xs: 0.5rem;
|
|
2042
|
+
--avatar-status-size-2xs: 0.5rem;
|
|
2008
2043
|
--avatar-status-size-xs: 0.5rem;
|
|
2009
2044
|
--avatar-status-size-sm: 0.75rem;
|
|
2010
2045
|
--avatar-status-size-md: 1rem;
|
|
2011
2046
|
--avatar-status-size-lg: 1.25rem;
|
|
2012
2047
|
--avatar-status-size-xl: 1.5rem;
|
|
2013
|
-
--avatar-
|
|
2014
|
-
--avatar-group-
|
|
2015
|
-
--avatar-group-
|
|
2048
|
+
--avatar-group-ring-width: 0.125rem;
|
|
2049
|
+
--avatar-group-ring-color: #fcfcfc;
|
|
2050
|
+
--avatar-group-overlap-tight-sm: 2rem;
|
|
2051
|
+
--avatar-group-overlap-tight-2xs: 1.25rem;
|
|
2052
|
+
--avatar-group-overlap-tight-3xs: 1rem;
|
|
2053
|
+
--avatar-group-overlap-compact-sm: 1.5rem;
|
|
2054
|
+
--avatar-group-overlap-compact-2xs: 1rem;
|
|
2055
|
+
--avatar-group-overlap-compact-3xs: 0.75rem;
|
|
2056
|
+
--avatar-group-overlap-spacious-sm: 1rem;
|
|
2057
|
+
--avatar-group-overlap-spacious-2xs: 0.75rem;
|
|
2058
|
+
--avatar-group-overlap-spacious-3xs: 0.5rem;
|
|
2016
2059
|
--toast-color-info-background: #202020;
|
|
2017
2060
|
--toast-color-info-foreground: #fcfcfc;
|
|
2018
2061
|
--toast-color-info-accent: #edf6ff;
|
|
@@ -3766,88 +3809,6 @@ body {
|
|
|
3766
3809
|
}
|
|
3767
3810
|
|
|
3768
3811
|
|
|
3769
|
-
/* TextLink */
|
|
3770
|
-
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
3771
|
-
|
|
3772
|
-
.muka-text-link {
|
|
3773
|
-
display: inline;
|
|
3774
|
-
cursor: pointer;
|
|
3775
|
-
text-decoration: underline;
|
|
3776
|
-
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
3777
|
-
text-underline-offset: 0.2em;
|
|
3778
|
-
text-decoration-thickness: from-font;
|
|
3779
|
-
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
3780
|
-
border-radius: var(--border-radius-sm);
|
|
3781
|
-
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
3782
|
-
}
|
|
3783
|
-
|
|
3784
|
-
/* ─── Sizes ───────────────────────────────────────────────
|
|
3785
|
-
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
3786
|
-
.muka-text-link--sm {
|
|
3787
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
3788
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
3789
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
3790
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
3791
|
-
}
|
|
3792
|
-
|
|
3793
|
-
.muka-text-link--base {
|
|
3794
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
3795
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
3796
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
3797
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
3798
|
-
}
|
|
3799
|
-
|
|
3800
|
-
.muka-text-link--lg {
|
|
3801
|
-
font-family: var(--text-body-lg-regular-fontFamily);
|
|
3802
|
-
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
3803
|
-
font-size: var(--text-body-lg-regular-fontSize);
|
|
3804
|
-
line-height: var(--text-body-lg-regular-lineHeight);
|
|
3805
|
-
}
|
|
3806
|
-
|
|
3807
|
-
/* ─── Variant: default (accent) ───────────────────────────
|
|
3808
|
-
Visited repeats the default colour on purpose: the design treats visited and
|
|
3809
|
-
default the same, and pinning it stops the browser's purple from showing. */
|
|
3810
|
-
.muka-text-link--default,
|
|
3811
|
-
.muka-text-link--default:visited {
|
|
3812
|
-
color: var(--color-text-action-default);
|
|
3813
|
-
}
|
|
3814
|
-
|
|
3815
|
-
.muka-text-link--default:hover,
|
|
3816
|
-
.muka-text-link--default:focus-visible {
|
|
3817
|
-
color: var(--color-text-action-hover);
|
|
3818
|
-
}
|
|
3819
|
-
|
|
3820
|
-
.muka-text-link--default:active {
|
|
3821
|
-
color: var(--color-text-action-pressed);
|
|
3822
|
-
}
|
|
3823
|
-
|
|
3824
|
-
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
3825
|
-
Hover, focus and pressed all darken to the default text colour. */
|
|
3826
|
-
.muka-text-link--subtle,
|
|
3827
|
-
.muka-text-link--subtle:visited {
|
|
3828
|
-
color: var(--color-text-subtle-default);
|
|
3829
|
-
}
|
|
3830
|
-
|
|
3831
|
-
.muka-text-link--subtle:hover,
|
|
3832
|
-
.muka-text-link--subtle:focus-visible,
|
|
3833
|
-
.muka-text-link--subtle:active {
|
|
3834
|
-
color: var(--color-text-default-default);
|
|
3835
|
-
}
|
|
3836
|
-
|
|
3837
|
-
/* ─── Focus ───────────────────────────────────────────────
|
|
3838
|
-
Same ring as every other focusable Muka component. */
|
|
3839
|
-
.muka-text-link:focus-visible {
|
|
3840
|
-
outline: 2px solid var(--color-border-focus);
|
|
3841
|
-
outline-offset: 2px;
|
|
3842
|
-
}
|
|
3843
|
-
|
|
3844
|
-
@media (prefers-reduced-motion: reduce) {
|
|
3845
|
-
.muka-text-link {
|
|
3846
|
-
transition: none;
|
|
3847
|
-
}
|
|
3848
|
-
}
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
3812
|
/* Textarea */
|
|
3852
3813
|
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
3853
3814
|
|
|
@@ -4012,6 +3973,88 @@ body {
|
|
|
4012
3973
|
}
|
|
4013
3974
|
|
|
4014
3975
|
|
|
3976
|
+
/* TextLink */
|
|
3977
|
+
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
3978
|
+
|
|
3979
|
+
.muka-text-link {
|
|
3980
|
+
display: inline;
|
|
3981
|
+
cursor: pointer;
|
|
3982
|
+
text-decoration: underline;
|
|
3983
|
+
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
3984
|
+
text-underline-offset: 0.2em;
|
|
3985
|
+
text-decoration-thickness: from-font;
|
|
3986
|
+
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
3987
|
+
border-radius: var(--border-radius-sm);
|
|
3988
|
+
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
3989
|
+
}
|
|
3990
|
+
|
|
3991
|
+
/* ─── Sizes ───────────────────────────────────────────────
|
|
3992
|
+
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
3993
|
+
.muka-text-link--sm {
|
|
3994
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
3995
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
3996
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
3997
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
3998
|
+
}
|
|
3999
|
+
|
|
4000
|
+
.muka-text-link--base {
|
|
4001
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
4002
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
4003
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
4004
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
4005
|
+
}
|
|
4006
|
+
|
|
4007
|
+
.muka-text-link--lg {
|
|
4008
|
+
font-family: var(--text-body-lg-regular-fontFamily);
|
|
4009
|
+
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
4010
|
+
font-size: var(--text-body-lg-regular-fontSize);
|
|
4011
|
+
line-height: var(--text-body-lg-regular-lineHeight);
|
|
4012
|
+
}
|
|
4013
|
+
|
|
4014
|
+
/* ─── Variant: default (accent) ───────────────────────────
|
|
4015
|
+
Visited repeats the default colour on purpose: the design treats visited and
|
|
4016
|
+
default the same, and pinning it stops the browser's purple from showing. */
|
|
4017
|
+
.muka-text-link--default,
|
|
4018
|
+
.muka-text-link--default:visited {
|
|
4019
|
+
color: var(--color-text-action-default);
|
|
4020
|
+
}
|
|
4021
|
+
|
|
4022
|
+
.muka-text-link--default:hover,
|
|
4023
|
+
.muka-text-link--default:focus-visible {
|
|
4024
|
+
color: var(--color-text-action-hover);
|
|
4025
|
+
}
|
|
4026
|
+
|
|
4027
|
+
.muka-text-link--default:active {
|
|
4028
|
+
color: var(--color-text-action-pressed);
|
|
4029
|
+
}
|
|
4030
|
+
|
|
4031
|
+
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
4032
|
+
Hover, focus and pressed all darken to the default text colour. */
|
|
4033
|
+
.muka-text-link--subtle,
|
|
4034
|
+
.muka-text-link--subtle:visited {
|
|
4035
|
+
color: var(--color-text-subtle-default);
|
|
4036
|
+
}
|
|
4037
|
+
|
|
4038
|
+
.muka-text-link--subtle:hover,
|
|
4039
|
+
.muka-text-link--subtle:focus-visible,
|
|
4040
|
+
.muka-text-link--subtle:active {
|
|
4041
|
+
color: var(--color-text-default-default);
|
|
4042
|
+
}
|
|
4043
|
+
|
|
4044
|
+
/* ─── Focus ───────────────────────────────────────────────
|
|
4045
|
+
Same ring as every other focusable Muka component. */
|
|
4046
|
+
.muka-text-link:focus-visible {
|
|
4047
|
+
outline: 2px solid var(--color-border-focus);
|
|
4048
|
+
outline-offset: 2px;
|
|
4049
|
+
}
|
|
4050
|
+
|
|
4051
|
+
@media (prefers-reduced-motion: reduce) {
|
|
4052
|
+
.muka-text-link {
|
|
4053
|
+
transition: none;
|
|
4054
|
+
}
|
|
4055
|
+
}
|
|
4056
|
+
|
|
4057
|
+
|
|
4015
4058
|
/* Tabs */
|
|
4016
4059
|
/* Tabs Component Styles - Clean underline style tabs matching Figma */
|
|
4017
4060
|
|
|
@@ -4043,12 +4086,17 @@ body {
|
|
|
4043
4086
|
border-bottom: 1px solid var(--tabs-trigger-color-default-border);
|
|
4044
4087
|
}
|
|
4045
4088
|
|
|
4089
|
+
/* Padding: inset the tabs; the divider (border) still spans the full width */
|
|
4090
|
+
.muka-tabs--padding-default .muka-tabs__list {
|
|
4091
|
+
padding-inline: var(--tabs-list-padding-x);
|
|
4092
|
+
}
|
|
4093
|
+
|
|
4046
4094
|
/* Tab Trigger — clean underline style */
|
|
4047
4095
|
.muka-tabs__trigger {
|
|
4048
4096
|
display: inline-flex;
|
|
4049
4097
|
align-items: center;
|
|
4050
4098
|
justify-content: center;
|
|
4051
|
-
gap: var(--spacing-
|
|
4099
|
+
gap: var(--spacing-1);
|
|
4052
4100
|
background: transparent;
|
|
4053
4101
|
border: none;
|
|
4054
4102
|
cursor: pointer;
|
|
@@ -4061,8 +4109,8 @@ body {
|
|
|
4061
4109
|
color: var(--tabs-trigger-color-default-foreground);
|
|
4062
4110
|
|
|
4063
4111
|
/* Default MD size values */
|
|
4064
|
-
height:
|
|
4065
|
-
padding:
|
|
4112
|
+
min-height: var(--tabs-trigger-min-height-md);
|
|
4113
|
+
padding: var(--spacing-3);
|
|
4066
4114
|
font-family: var(--text-label-md-regular-fontFamily);
|
|
4067
4115
|
font-weight: var(--text-label-md-regular-fontWeight);
|
|
4068
4116
|
font-size: var(--text-label-md-regular-fontSize);
|
|
@@ -4071,8 +4119,8 @@ body {
|
|
|
4071
4119
|
|
|
4072
4120
|
/* Size Variants */
|
|
4073
4121
|
.muka-tabs--size-sm .muka-tabs__trigger {
|
|
4074
|
-
height:
|
|
4075
|
-
padding: 0 var(--spacing-2
|
|
4122
|
+
min-height: var(--tabs-trigger-min-height-sm);
|
|
4123
|
+
padding: 0 var(--spacing-2);
|
|
4076
4124
|
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4077
4125
|
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4078
4126
|
font-size: var(--text-label-sm-regular-fontSize);
|
|
@@ -4080,8 +4128,8 @@ body {
|
|
|
4080
4128
|
}
|
|
4081
4129
|
|
|
4082
4130
|
.muka-tabs--size-lg .muka-tabs__trigger {
|
|
4083
|
-
height:
|
|
4084
|
-
padding:
|
|
4131
|
+
min-height: var(--tabs-trigger-min-height-lg);
|
|
4132
|
+
padding: var(--spacing-4);
|
|
4085
4133
|
font-family: var(--text-label-lg-regular-fontFamily);
|
|
4086
4134
|
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
4087
4135
|
font-size: var(--text-label-lg-regular-fontSize);
|
|
@@ -4105,8 +4153,8 @@ body {
|
|
|
4105
4153
|
bottom: -1px; /* Overlap the 1px border */
|
|
4106
4154
|
left: 0;
|
|
4107
4155
|
right: 0;
|
|
4108
|
-
height:
|
|
4109
|
-
background-color: var(--tabs-
|
|
4156
|
+
height: var(--tabs-indicator-height-md);
|
|
4157
|
+
background-color: var(--tabs-indicator-color);
|
|
4110
4158
|
border-bottom-left-radius: 1px;
|
|
4111
4159
|
border-bottom-right-radius: 1px;
|
|
4112
4160
|
border-top-left-radius: 3px;
|
|
@@ -4114,6 +4162,13 @@ body {
|
|
|
4114
4162
|
z-index: 3;
|
|
4115
4163
|
}
|
|
4116
4164
|
|
|
4165
|
+
.muka-tabs--size-sm .muka-tabs__trigger--current::after {
|
|
4166
|
+
height: var(--tabs-indicator-height-sm);
|
|
4167
|
+
}
|
|
4168
|
+
.muka-tabs--size-lg .muka-tabs__trigger--current::after {
|
|
4169
|
+
height: var(--tabs-indicator-height-lg);
|
|
4170
|
+
}
|
|
4171
|
+
|
|
4117
4172
|
.muka-tabs__trigger--disabled {
|
|
4118
4173
|
color: var(--tabs-trigger-color-disabled-foreground);
|
|
4119
4174
|
cursor: not-allowed;
|
|
@@ -4124,18 +4179,29 @@ body {
|
|
|
4124
4179
|
outline-offset: -2px;
|
|
4125
4180
|
}
|
|
4126
4181
|
|
|
4127
|
-
/*
|
|
4128
|
-
|
|
4182
|
+
/* Label: Figma pads the label 8px either side, so with the 4px gap a leading
|
|
4183
|
+
item sits 12px from the text */
|
|
4184
|
+
.muka-tabs__label {
|
|
4185
|
+
padding: 0 var(--spacing-2);
|
|
4186
|
+
}
|
|
4187
|
+
|
|
4188
|
+
/* Leading item: icon, avatar, avatar group or data pie chart */
|
|
4189
|
+
.muka-tabs__leading {
|
|
4129
4190
|
display: flex;
|
|
4130
4191
|
align-items: center;
|
|
4131
4192
|
justify-content: center;
|
|
4193
|
+
flex-shrink: 0;
|
|
4132
4194
|
}
|
|
4133
4195
|
.muka-tabs__trigger .muka-icon {
|
|
4134
4196
|
color: inherit;
|
|
4135
4197
|
}
|
|
4136
|
-
|
|
4137
|
-
.muka-tabs--size-
|
|
4138
|
-
.muka-tabs--size-
|
|
4198
|
+
/* Icon sizes only: avatars and pie charts are sized through their size prop */
|
|
4199
|
+
.muka-tabs--size-sm .muka-tabs__leading > svg,
|
|
4200
|
+
.muka-tabs--size-sm .muka-tabs__leading > .muka-icon svg { width: 16px; height: 16px; }
|
|
4201
|
+
.muka-tabs--size-md .muka-tabs__leading > svg,
|
|
4202
|
+
.muka-tabs--size-md .muka-tabs__leading > .muka-icon svg { width: 20px; height: 20px; }
|
|
4203
|
+
.muka-tabs--size-lg .muka-tabs__leading > svg,
|
|
4204
|
+
.muka-tabs--size-lg .muka-tabs__leading > .muka-icon svg { width: 24px; height: 24px; }
|
|
4139
4205
|
|
|
4140
4206
|
/* Responsive Scroll behavior on small screens */
|
|
4141
4207
|
@media (max-width: 768px) {
|
|
@@ -10722,6 +10788,38 @@ li.muka-listitem {
|
|
|
10722
10788
|
}
|
|
10723
10789
|
|
|
10724
10790
|
|
|
10791
|
+
/* DatePicker */
|
|
10792
|
+
/* DatePicker — compact native date field. */
|
|
10793
|
+
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
10794
|
+
|
|
10795
|
+
/* Adopt the field typography on the native date input. */
|
|
10796
|
+
.muka-datepicker__field .muka-input__native {
|
|
10797
|
+
font-family: var(--text-input-md-fontFamily);
|
|
10798
|
+
font-size: var(--text-input-md-fontSize);
|
|
10799
|
+
line-height: var(--text-input-md-lineHeight);
|
|
10800
|
+
}
|
|
10801
|
+
|
|
10802
|
+
.muka-datepicker__field--sm .muka-input__native {
|
|
10803
|
+
font-family: var(--text-input-sm-fontFamily);
|
|
10804
|
+
font-size: var(--text-input-sm-fontSize);
|
|
10805
|
+
line-height: var(--text-input-sm-lineHeight);
|
|
10806
|
+
}
|
|
10807
|
+
|
|
10808
|
+
/* Tint the browser calendar indicator to match the field foreground. */
|
|
10809
|
+
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
10810
|
+
cursor: pointer;
|
|
10811
|
+
opacity: 0.6;
|
|
10812
|
+
}
|
|
10813
|
+
|
|
10814
|
+
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
10815
|
+
opacity: 1;
|
|
10816
|
+
}
|
|
10817
|
+
|
|
10818
|
+
.muka-datepicker__field .muka-input__native:disabled {
|
|
10819
|
+
cursor: not-allowed;
|
|
10820
|
+
}
|
|
10821
|
+
|
|
10822
|
+
|
|
10725
10823
|
/* Dialog */
|
|
10726
10824
|
/* Dialog Component Styles */
|
|
10727
10825
|
|
|
@@ -10990,38 +11088,6 @@ li.muka-listitem {
|
|
|
10990
11088
|
}
|
|
10991
11089
|
|
|
10992
11090
|
|
|
10993
|
-
/* DatePicker */
|
|
10994
|
-
/* DatePicker — compact native date field. */
|
|
10995
|
-
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
10996
|
-
|
|
10997
|
-
/* Adopt the field typography on the native date input. */
|
|
10998
|
-
.muka-datepicker__field .muka-input__native {
|
|
10999
|
-
font-family: var(--text-input-md-fontFamily);
|
|
11000
|
-
font-size: var(--text-input-md-fontSize);
|
|
11001
|
-
line-height: var(--text-input-md-lineHeight);
|
|
11002
|
-
}
|
|
11003
|
-
|
|
11004
|
-
.muka-datepicker__field--sm .muka-input__native {
|
|
11005
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
11006
|
-
font-size: var(--text-input-sm-fontSize);
|
|
11007
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
11008
|
-
}
|
|
11009
|
-
|
|
11010
|
-
/* Tint the browser calendar indicator to match the field foreground. */
|
|
11011
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
11012
|
-
cursor: pointer;
|
|
11013
|
-
opacity: 0.6;
|
|
11014
|
-
}
|
|
11015
|
-
|
|
11016
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
11017
|
-
opacity: 1;
|
|
11018
|
-
}
|
|
11019
|
-
|
|
11020
|
-
.muka-datepicker__field .muka-input__native:disabled {
|
|
11021
|
-
cursor: not-allowed;
|
|
11022
|
-
}
|
|
11023
|
-
|
|
11024
|
-
|
|
11025
11091
|
/* DataTable */
|
|
11026
11092
|
/* DataTable Component Styles - Using Muka Design Tokens */
|
|
11027
11093
|
|
|
@@ -12339,17 +12405,139 @@ li.muka-listitem {
|
|
|
12339
12405
|
}
|
|
12340
12406
|
|
|
12341
12407
|
|
|
12342
|
-
/*
|
|
12343
|
-
/*
|
|
12408
|
+
/* ChatPhotoGrid */
|
|
12409
|
+
/* ChatPhotoGrid Component Styles */
|
|
12344
12410
|
|
|
12345
|
-
/*
|
|
12346
|
-
|
|
12347
|
-
|
|
12348
|
-
|
|
12349
|
-
|
|
12350
|
-
|
|
12351
|
-
|
|
12352
|
-
|
|
12411
|
+
/*
|
|
12412
|
+
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12413
|
+
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12414
|
+
*/
|
|
12415
|
+
.muka-chat-photo-grid {
|
|
12416
|
+
display: grid;
|
|
12417
|
+
gap: var(--chatphotogrid-gap);
|
|
12418
|
+
width: 100%;
|
|
12419
|
+
min-width: 0;
|
|
12420
|
+
overflow: hidden;
|
|
12421
|
+
border-radius: var(--chatphotogrid-radius);
|
|
12422
|
+
}
|
|
12423
|
+
|
|
12424
|
+
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12425
|
+
|
|
12426
|
+
.muka-chat-photo-grid__tile {
|
|
12427
|
+
position: relative;
|
|
12428
|
+
display: block;
|
|
12429
|
+
overflow: hidden;
|
|
12430
|
+
min-width: 0;
|
|
12431
|
+
padding: 0;
|
|
12432
|
+
margin: 0;
|
|
12433
|
+
border: none;
|
|
12434
|
+
background-color: var(--chatphotogrid-color-placeholder);
|
|
12435
|
+
aspect-ratio: 1 / 1;
|
|
12436
|
+
}
|
|
12437
|
+
|
|
12438
|
+
button.muka-chat-photo-grid__tile {
|
|
12439
|
+
cursor: pointer;
|
|
12440
|
+
appearance: none;
|
|
12441
|
+
}
|
|
12442
|
+
|
|
12443
|
+
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12444
|
+
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12445
|
+
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12446
|
+
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12447
|
+
}
|
|
12448
|
+
|
|
12449
|
+
.muka-chat-photo-grid__image {
|
|
12450
|
+
display: block;
|
|
12451
|
+
width: 100%;
|
|
12452
|
+
height: 100%;
|
|
12453
|
+
object-fit: cover;
|
|
12454
|
+
}
|
|
12455
|
+
|
|
12456
|
+
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12457
|
+
|
|
12458
|
+
.muka-chat-photo-grid__overflow {
|
|
12459
|
+
position: absolute;
|
|
12460
|
+
inset: 0;
|
|
12461
|
+
display: flex;
|
|
12462
|
+
align-items: center;
|
|
12463
|
+
justify-content: center;
|
|
12464
|
+
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12465
|
+
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12466
|
+
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12467
|
+
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12468
|
+
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12469
|
+
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12470
|
+
}
|
|
12471
|
+
|
|
12472
|
+
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12473
|
+
|
|
12474
|
+
.muka-chat-photo-grid--1 {
|
|
12475
|
+
grid-template-columns: 1fr;
|
|
12476
|
+
}
|
|
12477
|
+
|
|
12478
|
+
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12479
|
+
aspect-ratio: 4 / 3;
|
|
12480
|
+
}
|
|
12481
|
+
|
|
12482
|
+
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12483
|
+
aspect-ratio: 3 / 4;
|
|
12484
|
+
}
|
|
12485
|
+
|
|
12486
|
+
.muka-chat-photo-grid--2 {
|
|
12487
|
+
grid-template-columns: repeat(2, 1fr);
|
|
12488
|
+
}
|
|
12489
|
+
|
|
12490
|
+
.muka-chat-photo-grid--3 {
|
|
12491
|
+
grid-template-columns: repeat(3, 1fr);
|
|
12492
|
+
}
|
|
12493
|
+
|
|
12494
|
+
.muka-chat-photo-grid--4 {
|
|
12495
|
+
grid-template-columns: repeat(2, 1fr);
|
|
12496
|
+
}
|
|
12497
|
+
|
|
12498
|
+
/* 5 photos: a 2-up row above a 3-up row, on a shared 6-column track */
|
|
12499
|
+
.muka-chat-photo-grid--5 {
|
|
12500
|
+
grid-template-columns: repeat(6, 1fr);
|
|
12501
|
+
}
|
|
12502
|
+
|
|
12503
|
+
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(-n + 2) {
|
|
12504
|
+
grid-column: span 3;
|
|
12505
|
+
}
|
|
12506
|
+
|
|
12507
|
+
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(n + 3) {
|
|
12508
|
+
grid-column: span 2;
|
|
12509
|
+
}
|
|
12510
|
+
|
|
12511
|
+
.muka-chat-photo-grid--6,
|
|
12512
|
+
.muka-chat-photo-grid--overflow {
|
|
12513
|
+
grid-template-columns: repeat(3, 1fr);
|
|
12514
|
+
}
|
|
12515
|
+
|
|
12516
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
12517
|
+
|
|
12518
|
+
@media print {
|
|
12519
|
+
.muka-chat-photo-grid {
|
|
12520
|
+
break-inside: avoid;
|
|
12521
|
+
}
|
|
12522
|
+
|
|
12523
|
+
.muka-chat-photo-grid__image {
|
|
12524
|
+
print-color-adjust: exact;
|
|
12525
|
+
-webkit-print-color-adjust: exact;
|
|
12526
|
+
}
|
|
12527
|
+
}
|
|
12528
|
+
|
|
12529
|
+
|
|
12530
|
+
/* Checkbox */
|
|
12531
|
+
/* Checkbox Component Styles - Using Muka Design Tokens */
|
|
12532
|
+
|
|
12533
|
+
/* Wrapper - clickable label container */
|
|
12534
|
+
.muka-checkbox {
|
|
12535
|
+
display: inline-flex;
|
|
12536
|
+
align-items: center;
|
|
12537
|
+
gap: var(--spacing-4);
|
|
12538
|
+
cursor: pointer;
|
|
12539
|
+
user-select: none;
|
|
12540
|
+
}
|
|
12353
12541
|
|
|
12354
12542
|
.muka-checkbox--disabled {
|
|
12355
12543
|
cursor: not-allowed;
|
|
@@ -12506,128 +12694,6 @@ li.muka-listitem {
|
|
|
12506
12694
|
}
|
|
12507
12695
|
|
|
12508
12696
|
|
|
12509
|
-
/* ChatPhotoGrid */
|
|
12510
|
-
/* ChatPhotoGrid Component Styles */
|
|
12511
|
-
|
|
12512
|
-
/*
|
|
12513
|
-
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12514
|
-
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12515
|
-
*/
|
|
12516
|
-
.muka-chat-photo-grid {
|
|
12517
|
-
display: grid;
|
|
12518
|
-
gap: var(--chatphotogrid-gap);
|
|
12519
|
-
width: 100%;
|
|
12520
|
-
min-width: 0;
|
|
12521
|
-
overflow: hidden;
|
|
12522
|
-
border-radius: var(--chatphotogrid-radius);
|
|
12523
|
-
}
|
|
12524
|
-
|
|
12525
|
-
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12526
|
-
|
|
12527
|
-
.muka-chat-photo-grid__tile {
|
|
12528
|
-
position: relative;
|
|
12529
|
-
display: block;
|
|
12530
|
-
overflow: hidden;
|
|
12531
|
-
min-width: 0;
|
|
12532
|
-
padding: 0;
|
|
12533
|
-
margin: 0;
|
|
12534
|
-
border: none;
|
|
12535
|
-
background-color: var(--chatphotogrid-color-placeholder);
|
|
12536
|
-
aspect-ratio: 1 / 1;
|
|
12537
|
-
}
|
|
12538
|
-
|
|
12539
|
-
button.muka-chat-photo-grid__tile {
|
|
12540
|
-
cursor: pointer;
|
|
12541
|
-
appearance: none;
|
|
12542
|
-
}
|
|
12543
|
-
|
|
12544
|
-
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12545
|
-
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12546
|
-
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12547
|
-
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12548
|
-
}
|
|
12549
|
-
|
|
12550
|
-
.muka-chat-photo-grid__image {
|
|
12551
|
-
display: block;
|
|
12552
|
-
width: 100%;
|
|
12553
|
-
height: 100%;
|
|
12554
|
-
object-fit: cover;
|
|
12555
|
-
}
|
|
12556
|
-
|
|
12557
|
-
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12558
|
-
|
|
12559
|
-
.muka-chat-photo-grid__overflow {
|
|
12560
|
-
position: absolute;
|
|
12561
|
-
inset: 0;
|
|
12562
|
-
display: flex;
|
|
12563
|
-
align-items: center;
|
|
12564
|
-
justify-content: center;
|
|
12565
|
-
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12566
|
-
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12567
|
-
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12568
|
-
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12569
|
-
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12570
|
-
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12571
|
-
}
|
|
12572
|
-
|
|
12573
|
-
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12574
|
-
|
|
12575
|
-
.muka-chat-photo-grid--1 {
|
|
12576
|
-
grid-template-columns: 1fr;
|
|
12577
|
-
}
|
|
12578
|
-
|
|
12579
|
-
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12580
|
-
aspect-ratio: 4 / 3;
|
|
12581
|
-
}
|
|
12582
|
-
|
|
12583
|
-
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12584
|
-
aspect-ratio: 3 / 4;
|
|
12585
|
-
}
|
|
12586
|
-
|
|
12587
|
-
.muka-chat-photo-grid--2 {
|
|
12588
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12589
|
-
}
|
|
12590
|
-
|
|
12591
|
-
.muka-chat-photo-grid--3 {
|
|
12592
|
-
grid-template-columns: repeat(3, 1fr);
|
|
12593
|
-
}
|
|
12594
|
-
|
|
12595
|
-
.muka-chat-photo-grid--4 {
|
|
12596
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12597
|
-
}
|
|
12598
|
-
|
|
12599
|
-
/* 5 photos: a 2-up row above a 3-up row, on a shared 6-column track */
|
|
12600
|
-
.muka-chat-photo-grid--5 {
|
|
12601
|
-
grid-template-columns: repeat(6, 1fr);
|
|
12602
|
-
}
|
|
12603
|
-
|
|
12604
|
-
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(-n + 2) {
|
|
12605
|
-
grid-column: span 3;
|
|
12606
|
-
}
|
|
12607
|
-
|
|
12608
|
-
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(n + 3) {
|
|
12609
|
-
grid-column: span 2;
|
|
12610
|
-
}
|
|
12611
|
-
|
|
12612
|
-
.muka-chat-photo-grid--6,
|
|
12613
|
-
.muka-chat-photo-grid--overflow {
|
|
12614
|
-
grid-template-columns: repeat(3, 1fr);
|
|
12615
|
-
}
|
|
12616
|
-
|
|
12617
|
-
/* ─── Print ────────────────────────────────────────────── */
|
|
12618
|
-
|
|
12619
|
-
@media print {
|
|
12620
|
-
.muka-chat-photo-grid {
|
|
12621
|
-
break-inside: avoid;
|
|
12622
|
-
}
|
|
12623
|
-
|
|
12624
|
-
.muka-chat-photo-grid__image {
|
|
12625
|
-
print-color-adjust: exact;
|
|
12626
|
-
-webkit-print-color-adjust: exact;
|
|
12627
|
-
}
|
|
12628
|
-
}
|
|
12629
|
-
|
|
12630
|
-
|
|
12631
12697
|
/* ChatMessageStack */
|
|
12632
12698
|
/* ChatMessageStack Component Styles */
|
|
12633
12699
|
|
|
@@ -13570,10 +13636,43 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13570
13636
|
opacity: 1; /* Remove opacity since we have proper disabled tokens */
|
|
13571
13637
|
}
|
|
13572
13638
|
|
|
13573
|
-
/*
|
|
13574
|
-
.
|
|
13575
|
-
|
|
13576
|
-
|
|
13639
|
+
/* Destructive variant - primary's structure on the solid error fill, for
|
|
13640
|
+
irreversible actions. Hover and pressed step away from the label color, so
|
|
13641
|
+
contrast never drops (darker in light themes, lighter in dark themes).
|
|
13642
|
+
Disabled is neutral grey rather than primary's brand-tinted fill. */
|
|
13643
|
+
.muka-button--destructive {
|
|
13644
|
+
background-color: var(--button-color-destructive-background-default);
|
|
13645
|
+
color: var(--button-color-destructive-foreground-default);
|
|
13646
|
+
box-shadow: var(--button-color-destructive-shadow-default);
|
|
13647
|
+
}
|
|
13648
|
+
|
|
13649
|
+
.muka-button--destructive:hover:not(:disabled) {
|
|
13650
|
+
background-color: var(--button-color-destructive-background-hover);
|
|
13651
|
+
color: var(--button-color-destructive-foreground-hover);
|
|
13652
|
+
box-shadow: var(--button-color-destructive-shadow-hover);
|
|
13653
|
+
}
|
|
13654
|
+
|
|
13655
|
+
.muka-button--destructive:active:not(:disabled),
|
|
13656
|
+
.muka-button--destructive.muka-button--pressed:not(:disabled),
|
|
13657
|
+
.muka-button--destructive[data-state="open"]:not(:disabled),
|
|
13658
|
+
.muka-button--destructive[aria-pressed="true"]:not(:disabled) {
|
|
13659
|
+
background-color: var(--button-color-destructive-background-pressed);
|
|
13660
|
+
color: var(--button-color-destructive-foreground-pressed);
|
|
13661
|
+
box-shadow: var(--button-color-destructive-shadow-pressed);
|
|
13662
|
+
}
|
|
13663
|
+
|
|
13664
|
+
.muka-button--destructive:disabled {
|
|
13665
|
+
background-color: var(--button-color-destructive-background-disabled);
|
|
13666
|
+
color: var(--button-color-destructive-foreground-disabled);
|
|
13667
|
+
box-shadow: var(--button-color-destructive-shadow-disabled);
|
|
13668
|
+
cursor: not-allowed;
|
|
13669
|
+
opacity: 1;
|
|
13670
|
+
}
|
|
13671
|
+
|
|
13672
|
+
/* Secondary variant - supporting actions, no border, only bottom inner shadow */
|
|
13673
|
+
.muka-button--secondary {
|
|
13674
|
+
background-color: var(--button-color-secondary-background-default);
|
|
13675
|
+
color: var(--button-color-secondary-foreground-default);
|
|
13577
13676
|
box-shadow: var(--button-color-secondary-shadow-default);
|
|
13578
13677
|
}
|
|
13579
13678
|
|
|
@@ -13880,6 +13979,114 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13880
13979
|
}
|
|
13881
13980
|
|
|
13882
13981
|
|
|
13982
|
+
/* BadgeNumber */
|
|
13983
|
+
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
13984
|
+
|
|
13985
|
+
.muka-badge-number {
|
|
13986
|
+
display: inline-flex;
|
|
13987
|
+
align-items: center;
|
|
13988
|
+
justify-content: center;
|
|
13989
|
+
border-radius: var(--border-radius-full);
|
|
13990
|
+
white-space: nowrap;
|
|
13991
|
+
user-select: none;
|
|
13992
|
+
box-sizing: border-box;
|
|
13993
|
+
}
|
|
13994
|
+
|
|
13995
|
+
/*
|
|
13996
|
+
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
13997
|
+
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
13998
|
+
* is handled by the fixed height + align-items: center.
|
|
13999
|
+
*/
|
|
14000
|
+
.muka-badge-number--2xs {
|
|
14001
|
+
height: var(--badge-number-size-2xs);
|
|
14002
|
+
min-width: var(--badge-number-size-2xs);
|
|
14003
|
+
padding: 0 var(--badge-number-padding-2xs);
|
|
14004
|
+
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14005
|
+
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14006
|
+
font-size: var(--text-label-xs-bold-fontSize);
|
|
14007
|
+
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14008
|
+
}
|
|
14009
|
+
|
|
14010
|
+
.muka-badge-number--xs {
|
|
14011
|
+
height: var(--badge-number-size-xs);
|
|
14012
|
+
min-width: var(--badge-number-size-xs);
|
|
14013
|
+
padding: 0 var(--badge-number-padding-xs);
|
|
14014
|
+
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14015
|
+
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14016
|
+
font-size: var(--text-label-sm-bold-fontSize);
|
|
14017
|
+
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14018
|
+
}
|
|
14019
|
+
|
|
14020
|
+
.muka-badge-number--sm {
|
|
14021
|
+
height: var(--badge-number-size-sm);
|
|
14022
|
+
min-width: var(--badge-number-size-sm);
|
|
14023
|
+
padding: 0 var(--badge-number-padding-sm);
|
|
14024
|
+
font-family: var(--text-label-md-bold-fontFamily);
|
|
14025
|
+
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14026
|
+
font-size: var(--text-label-md-bold-fontSize);
|
|
14027
|
+
line-height: var(--text-label-md-bold-lineHeight);
|
|
14028
|
+
}
|
|
14029
|
+
|
|
14030
|
+
.muka-badge-number--md {
|
|
14031
|
+
height: var(--badge-number-size-md);
|
|
14032
|
+
min-width: var(--badge-number-size-md);
|
|
14033
|
+
padding: 0 var(--badge-number-padding-md);
|
|
14034
|
+
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14035
|
+
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14036
|
+
font-size: var(--text-label-lg-bold-fontSize);
|
|
14037
|
+
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14038
|
+
}
|
|
14039
|
+
|
|
14040
|
+
.muka-badge-number--lg {
|
|
14041
|
+
height: var(--badge-number-size-lg);
|
|
14042
|
+
min-width: var(--badge-number-size-lg);
|
|
14043
|
+
padding: 0 var(--badge-number-padding-lg);
|
|
14044
|
+
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14045
|
+
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14046
|
+
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14047
|
+
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14048
|
+
}
|
|
14049
|
+
|
|
14050
|
+
.muka-badge-number__label {
|
|
14051
|
+
/*
|
|
14052
|
+
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14053
|
+
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14054
|
+
* is unaffected because the badge height is fixed and content is centered.
|
|
14055
|
+
*/
|
|
14056
|
+
line-height: normal;
|
|
14057
|
+
}
|
|
14058
|
+
|
|
14059
|
+
/* Neutral variant */
|
|
14060
|
+
.muka-badge-number--neutral {
|
|
14061
|
+
background-color: var(--color-surface-level1);
|
|
14062
|
+
color: var(--color-text-default-default);
|
|
14063
|
+
}
|
|
14064
|
+
|
|
14065
|
+
/* Info variant */
|
|
14066
|
+
.muka-badge-number--info {
|
|
14067
|
+
background-color: var(--color-state-info-contrast);
|
|
14068
|
+
color: var(--color-text-default-inverse);
|
|
14069
|
+
}
|
|
14070
|
+
|
|
14071
|
+
/* Success variant */
|
|
14072
|
+
.muka-badge-number--success {
|
|
14073
|
+
background-color: var(--color-state-success-contrast);
|
|
14074
|
+
color: var(--color-text-default-inverse);
|
|
14075
|
+
}
|
|
14076
|
+
|
|
14077
|
+
/* Warning variant */
|
|
14078
|
+
.muka-badge-number--warning {
|
|
14079
|
+
background-color: var(--color-state-warning-contrast);
|
|
14080
|
+
color: var(--color-text-default-inverse);
|
|
14081
|
+
}
|
|
14082
|
+
|
|
14083
|
+
/* Error variant */
|
|
14084
|
+
.muka-badge-number--error {
|
|
14085
|
+
background-color: var(--color-state-error-contrast);
|
|
14086
|
+
color: var(--color-text-default-inverse);
|
|
14087
|
+
}
|
|
14088
|
+
|
|
14089
|
+
|
|
13883
14090
|
/* BottomBar */
|
|
13884
14091
|
/* BottomBar Component Styles */
|
|
13885
14092
|
|
|
@@ -14196,114 +14403,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14196
14403
|
}
|
|
14197
14404
|
|
|
14198
14405
|
|
|
14199
|
-
/* BadgeNumber */
|
|
14200
|
-
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
14201
|
-
|
|
14202
|
-
.muka-badge-number {
|
|
14203
|
-
display: inline-flex;
|
|
14204
|
-
align-items: center;
|
|
14205
|
-
justify-content: center;
|
|
14206
|
-
border-radius: var(--border-radius-full);
|
|
14207
|
-
white-space: nowrap;
|
|
14208
|
-
user-select: none;
|
|
14209
|
-
box-sizing: border-box;
|
|
14210
|
-
}
|
|
14211
|
-
|
|
14212
|
-
/*
|
|
14213
|
-
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
14214
|
-
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
14215
|
-
* is handled by the fixed height + align-items: center.
|
|
14216
|
-
*/
|
|
14217
|
-
.muka-badge-number--2xs {
|
|
14218
|
-
height: var(--badge-number-size-2xs);
|
|
14219
|
-
min-width: var(--badge-number-size-2xs);
|
|
14220
|
-
padding: 0 var(--badge-number-padding-2xs);
|
|
14221
|
-
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14222
|
-
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14223
|
-
font-size: var(--text-label-xs-bold-fontSize);
|
|
14224
|
-
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14225
|
-
}
|
|
14226
|
-
|
|
14227
|
-
.muka-badge-number--xs {
|
|
14228
|
-
height: var(--badge-number-size-xs);
|
|
14229
|
-
min-width: var(--badge-number-size-xs);
|
|
14230
|
-
padding: 0 var(--badge-number-padding-xs);
|
|
14231
|
-
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14232
|
-
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14233
|
-
font-size: var(--text-label-sm-bold-fontSize);
|
|
14234
|
-
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14235
|
-
}
|
|
14236
|
-
|
|
14237
|
-
.muka-badge-number--sm {
|
|
14238
|
-
height: var(--badge-number-size-sm);
|
|
14239
|
-
min-width: var(--badge-number-size-sm);
|
|
14240
|
-
padding: 0 var(--badge-number-padding-sm);
|
|
14241
|
-
font-family: var(--text-label-md-bold-fontFamily);
|
|
14242
|
-
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14243
|
-
font-size: var(--text-label-md-bold-fontSize);
|
|
14244
|
-
line-height: var(--text-label-md-bold-lineHeight);
|
|
14245
|
-
}
|
|
14246
|
-
|
|
14247
|
-
.muka-badge-number--md {
|
|
14248
|
-
height: var(--badge-number-size-md);
|
|
14249
|
-
min-width: var(--badge-number-size-md);
|
|
14250
|
-
padding: 0 var(--badge-number-padding-md);
|
|
14251
|
-
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14252
|
-
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14253
|
-
font-size: var(--text-label-lg-bold-fontSize);
|
|
14254
|
-
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14255
|
-
}
|
|
14256
|
-
|
|
14257
|
-
.muka-badge-number--lg {
|
|
14258
|
-
height: var(--badge-number-size-lg);
|
|
14259
|
-
min-width: var(--badge-number-size-lg);
|
|
14260
|
-
padding: 0 var(--badge-number-padding-lg);
|
|
14261
|
-
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14262
|
-
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14263
|
-
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14264
|
-
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14265
|
-
}
|
|
14266
|
-
|
|
14267
|
-
.muka-badge-number__label {
|
|
14268
|
-
/*
|
|
14269
|
-
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14270
|
-
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14271
|
-
* is unaffected because the badge height is fixed and content is centered.
|
|
14272
|
-
*/
|
|
14273
|
-
line-height: normal;
|
|
14274
|
-
}
|
|
14275
|
-
|
|
14276
|
-
/* Neutral variant */
|
|
14277
|
-
.muka-badge-number--neutral {
|
|
14278
|
-
background-color: var(--color-surface-level1);
|
|
14279
|
-
color: var(--color-text-default-default);
|
|
14280
|
-
}
|
|
14281
|
-
|
|
14282
|
-
/* Info variant */
|
|
14283
|
-
.muka-badge-number--info {
|
|
14284
|
-
background-color: var(--color-state-info-contrast);
|
|
14285
|
-
color: var(--color-text-default-inverse);
|
|
14286
|
-
}
|
|
14287
|
-
|
|
14288
|
-
/* Success variant */
|
|
14289
|
-
.muka-badge-number--success {
|
|
14290
|
-
background-color: var(--color-state-success-contrast);
|
|
14291
|
-
color: var(--color-text-default-inverse);
|
|
14292
|
-
}
|
|
14293
|
-
|
|
14294
|
-
/* Warning variant */
|
|
14295
|
-
.muka-badge-number--warning {
|
|
14296
|
-
background-color: var(--color-state-warning-contrast);
|
|
14297
|
-
color: var(--color-text-default-inverse);
|
|
14298
|
-
}
|
|
14299
|
-
|
|
14300
|
-
/* Error variant */
|
|
14301
|
-
.muka-badge-number--error {
|
|
14302
|
-
background-color: var(--color-state-error-contrast);
|
|
14303
|
-
color: var(--color-text-default-inverse);
|
|
14304
|
-
}
|
|
14305
|
-
|
|
14306
|
-
|
|
14307
14406
|
/* Badge */
|
|
14308
14407
|
/* Badge Component Styles - Using Muka Design Tokens */
|
|
14309
14408
|
|
|
@@ -14503,12 +14602,29 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14503
14602
|
vertical-align: middle;
|
|
14504
14603
|
background-color: var(--avatar-color-background-default);
|
|
14505
14604
|
color: var(--avatar-color-foreground-default);
|
|
14506
|
-
border: var(--avatar-border-width) solid var(--avatar-color-border-default);
|
|
14507
14605
|
font-family: var(--alias-font-brand-family);
|
|
14508
14606
|
font-weight: var(--alias-font-brand-weight-semibold);
|
|
14509
14607
|
}
|
|
14510
14608
|
|
|
14511
14609
|
/* Size variants */
|
|
14610
|
+
.muka-avatar--4xs {
|
|
14611
|
+
width: var(--avatar-size-4xs);
|
|
14612
|
+
height: var(--avatar-size-4xs);
|
|
14613
|
+
font-size: var(--avatar-font-size-3xs); /* only used by an AvatarGroup "+N" */
|
|
14614
|
+
}
|
|
14615
|
+
|
|
14616
|
+
.muka-avatar--3xs {
|
|
14617
|
+
width: var(--avatar-size-3xs);
|
|
14618
|
+
height: var(--avatar-size-3xs);
|
|
14619
|
+
font-size: var(--avatar-font-size-3xs);
|
|
14620
|
+
}
|
|
14621
|
+
|
|
14622
|
+
.muka-avatar--2xs {
|
|
14623
|
+
width: var(--avatar-size-2xs);
|
|
14624
|
+
height: var(--avatar-size-2xs);
|
|
14625
|
+
font-size: var(--avatar-font-size-2xs);
|
|
14626
|
+
}
|
|
14627
|
+
|
|
14512
14628
|
.muka-avatar--xs {
|
|
14513
14629
|
width: var(--avatar-size-xs);
|
|
14514
14630
|
height: var(--avatar-size-xs);
|
|
@@ -14548,6 +14664,20 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14548
14664
|
border-radius: var(--avatar-radius-square);
|
|
14549
14665
|
}
|
|
14550
14666
|
|
|
14667
|
+
.muka-avatar--square.muka-avatar--4xs,
|
|
14668
|
+
.muka-avatar--square.muka-avatar--3xs,
|
|
14669
|
+
.muka-avatar--square.muka-avatar--2xs {
|
|
14670
|
+
border-radius: var(--avatar-radius-square-sm);
|
|
14671
|
+
}
|
|
14672
|
+
|
|
14673
|
+
/* 4xs is too small for initials, the fallback icon or a status dot:
|
|
14674
|
+
it shows the picture, or the plain background */
|
|
14675
|
+
.muka-avatar--4xs .muka-avatar__initials,
|
|
14676
|
+
.muka-avatar--4xs .muka-avatar__fallback,
|
|
14677
|
+
.muka-avatar--4xs .muka-avatar__status {
|
|
14678
|
+
display: none;
|
|
14679
|
+
}
|
|
14680
|
+
|
|
14551
14681
|
/* Clickable state */
|
|
14552
14682
|
.muka-avatar--clickable {
|
|
14553
14683
|
cursor: pointer;
|
|
@@ -14651,6 +14781,16 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14651
14781
|
box-sizing: border-box;
|
|
14652
14782
|
}
|
|
14653
14783
|
|
|
14784
|
+
.muka-avatar--3xs .muka-avatar__status {
|
|
14785
|
+
width: var(--avatar-status-size-3xs);
|
|
14786
|
+
height: var(--avatar-status-size-3xs);
|
|
14787
|
+
}
|
|
14788
|
+
|
|
14789
|
+
.muka-avatar--2xs .muka-avatar__status {
|
|
14790
|
+
width: var(--avatar-status-size-2xs);
|
|
14791
|
+
height: var(--avatar-status-size-2xs);
|
|
14792
|
+
}
|
|
14793
|
+
|
|
14654
14794
|
.muka-avatar--xs .muka-avatar__status {
|
|
14655
14795
|
width: var(--avatar-status-size-xs);
|
|
14656
14796
|
height: var(--avatar-status-size-xs);
|
|
@@ -14704,44 +14844,17 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14704
14844
|
background-color: var(--avatar-color-status-away);
|
|
14705
14845
|
}
|
|
14706
14846
|
|
|
14707
|
-
/* Avatar Group */
|
|
14847
|
+
/* Avatar Group (Figma "Avatar Stack") */
|
|
14708
14848
|
.muka-avatar-group {
|
|
14709
14849
|
display: inline-flex;
|
|
14710
14850
|
align-items: center;
|
|
14711
14851
|
flex-direction: row;
|
|
14712
14852
|
}
|
|
14713
14853
|
|
|
14854
|
+
/* Later avatars sit on top of earlier ones (DOM order); a hovered one comes to the front */
|
|
14714
14855
|
.muka-avatar-group__item {
|
|
14715
14856
|
position: relative;
|
|
14716
14857
|
display: inline-flex;
|
|
14717
|
-
border: 2px solid var(--color-surface-level1);
|
|
14718
|
-
border-radius: inherit;
|
|
14719
|
-
}
|
|
14720
|
-
|
|
14721
|
-
/* Add border radius to match avatar shape */
|
|
14722
|
-
.muka-avatar-group__item .muka-avatar--circle {
|
|
14723
|
-
border-radius: var(--avatar-radius-circle);
|
|
14724
|
-
}
|
|
14725
|
-
|
|
14726
|
-
.muka-avatar-group__item .muka-avatar--square {
|
|
14727
|
-
border-radius: var(--avatar-radius-square);
|
|
14728
|
-
}
|
|
14729
|
-
|
|
14730
|
-
.muka-avatar-group__item .muka-avatar {
|
|
14731
|
-
border: none;
|
|
14732
|
-
}
|
|
14733
|
-
|
|
14734
|
-
/* Spacing variants for avatar group */
|
|
14735
|
-
.muka-avatar-group--tight .muka-avatar-group__item:not(:first-child) {
|
|
14736
|
-
margin-left: calc(var(--avatar-group-spacing-tight));
|
|
14737
|
-
}
|
|
14738
|
-
|
|
14739
|
-
.muka-avatar-group--normal .muka-avatar-group__item:not(:first-child) {
|
|
14740
|
-
margin-left: calc(var(--avatar-group-spacing-normal));
|
|
14741
|
-
}
|
|
14742
|
-
|
|
14743
|
-
/* Z-index stacking for overlap effect */
|
|
14744
|
-
.muka-avatar-group__item {
|
|
14745
14858
|
z-index: 0;
|
|
14746
14859
|
}
|
|
14747
14860
|
|
|
@@ -14749,6 +14862,41 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14749
14862
|
z-index: 10;
|
|
14750
14863
|
}
|
|
14751
14864
|
|
|
14865
|
+
/* Grouped avatars get a ring outside their edge, drawn as a shadow so it
|
|
14866
|
+
does not change the avatar's size or the overlap */
|
|
14867
|
+
.muka-avatar-group__item .muka-avatar {
|
|
14868
|
+
box-shadow: 0 0 0 var(--avatar-group-ring-width) var(--avatar-group-ring-color);
|
|
14869
|
+
}
|
|
14870
|
+
|
|
14871
|
+
/* Overlap. Figma specifies exact values for 48 / 32 / 24px avatars (sm / 2xs / 3xs);
|
|
14872
|
+
other sizes use the same proportions: tight 2/3, compact 1/2, spacious 1/3. */
|
|
14873
|
+
.muka-avatar-group--4xs { --muka-avatar-group-size: var(--avatar-size-4xs); }
|
|
14874
|
+
.muka-avatar-group--3xs { --muka-avatar-group-size: var(--avatar-size-3xs); }
|
|
14875
|
+
.muka-avatar-group--2xs { --muka-avatar-group-size: var(--avatar-size-2xs); }
|
|
14876
|
+
.muka-avatar-group--xs { --muka-avatar-group-size: var(--avatar-size-xs); }
|
|
14877
|
+
.muka-avatar-group--sm { --muka-avatar-group-size: var(--avatar-size-sm); }
|
|
14878
|
+
.muka-avatar-group--md { --muka-avatar-group-size: var(--avatar-size-md); }
|
|
14879
|
+
.muka-avatar-group--lg { --muka-avatar-group-size: var(--avatar-size-lg); }
|
|
14880
|
+
.muka-avatar-group--xl { --muka-avatar-group-size: var(--avatar-size-xl); }
|
|
14881
|
+
|
|
14882
|
+
.muka-avatar-group--tight { --muka-avatar-group-overlap: calc(var(--muka-avatar-group-size) * 2 / 3); }
|
|
14883
|
+
.muka-avatar-group--compact { --muka-avatar-group-overlap: calc(var(--muka-avatar-group-size) / 2); }
|
|
14884
|
+
.muka-avatar-group--spacious { --muka-avatar-group-overlap: calc(var(--muka-avatar-group-size) / 3); }
|
|
14885
|
+
|
|
14886
|
+
.muka-avatar-group--tight.muka-avatar-group--sm { --muka-avatar-group-overlap: var(--avatar-group-overlap-tight-sm); }
|
|
14887
|
+
.muka-avatar-group--tight.muka-avatar-group--2xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-tight-2xs); }
|
|
14888
|
+
.muka-avatar-group--tight.muka-avatar-group--3xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-tight-3xs); }
|
|
14889
|
+
.muka-avatar-group--compact.muka-avatar-group--sm { --muka-avatar-group-overlap: var(--avatar-group-overlap-compact-sm); }
|
|
14890
|
+
.muka-avatar-group--compact.muka-avatar-group--2xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-compact-2xs); }
|
|
14891
|
+
.muka-avatar-group--compact.muka-avatar-group--3xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-compact-3xs); }
|
|
14892
|
+
.muka-avatar-group--spacious.muka-avatar-group--sm { --muka-avatar-group-overlap: var(--avatar-group-overlap-spacious-sm); }
|
|
14893
|
+
.muka-avatar-group--spacious.muka-avatar-group--2xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-spacious-2xs); }
|
|
14894
|
+
.muka-avatar-group--spacious.muka-avatar-group--3xs { --muka-avatar-group-overlap: var(--avatar-group-overlap-spacious-3xs); }
|
|
14895
|
+
|
|
14896
|
+
.muka-avatar-group__item:not(:first-child) {
|
|
14897
|
+
margin-left: calc(-1 * var(--muka-avatar-group-overlap));
|
|
14898
|
+
}
|
|
14899
|
+
|
|
14752
14900
|
/* Overflow avatar styling */
|
|
14753
14901
|
.muka-avatar--overflow {
|
|
14754
14902
|
background-color: var(--avatar-color-background-default);
|