@revikornmann/muka-ui 0.27.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.js +23 -1
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/esm/components/Avatar/Avatar.js +24 -2
- package/dist/esm/components/Avatar/Avatar.js.map +1 -1
- package/dist/styles/index.css +893 -893
- package/dist/styles/muka-dark.css +893 -893
- package/dist/styles/muka-light.css +893 -893
- package/dist/styles/wireframe-dark.css +893 -893
- package/dist/styles/wireframe-light.css +893 -893
- package/dist/types/components/Avatar/Avatar.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/styles/index.css
CHANGED
|
@@ -2494,6 +2494,116 @@ body {
|
|
|
2494
2494
|
}
|
|
2495
2495
|
|
|
2496
2496
|
|
|
2497
|
+
/* View */
|
|
2498
|
+
/* View Component Styles */
|
|
2499
|
+
|
|
2500
|
+
/* ─── Base layout ─────────────────────────────────────── */
|
|
2501
|
+
|
|
2502
|
+
.muka-view {
|
|
2503
|
+
display: flex;
|
|
2504
|
+
flex-direction: column;
|
|
2505
|
+
height: 100dvh;
|
|
2506
|
+
background-color: var(--view-color-background);
|
|
2507
|
+
position: relative;
|
|
2508
|
+
isolation: isolate;
|
|
2509
|
+
box-sizing: border-box;
|
|
2510
|
+
|
|
2511
|
+
/* Width reserved for the footer nav once it becomes a left sidebar at the
|
|
2512
|
+
large tier (matches BottomBar's desktopAs="sidebar" rail width). */
|
|
2513
|
+
--view-sidebar-width: 240px;
|
|
2514
|
+
}
|
|
2515
|
+
|
|
2516
|
+
/* ─── Surface level variants ─────────────────────────── */
|
|
2517
|
+
|
|
2518
|
+
.muka-view--surface-3 {
|
|
2519
|
+
background-color: var(--color-surface-level3);
|
|
2520
|
+
}
|
|
2521
|
+
|
|
2522
|
+
/* ─── Large screens: make room for the left sidebar ──────────
|
|
2523
|
+
A footer nav with desktopAs="sidebar" becomes a fixed 240px left rail at
|
|
2524
|
+
≥1024px. Offset the shell so the TopBar/body clear it — tied to the sidebar's
|
|
2525
|
+
actual presence (the `.muka-bottombar--desktop-sidebar` element) rather than
|
|
2526
|
+
the View's `size`, so a forced `size="lg"` below 1024px never reserves space
|
|
2527
|
+
for a sidebar that hasn't rendered yet. */
|
|
2528
|
+
@media (min-width: 1024px) {
|
|
2529
|
+
.muka-view:has(.muka-bottombar--desktop-sidebar) {
|
|
2530
|
+
padding-left: var(--view-sidebar-width);
|
|
2531
|
+
}
|
|
2532
|
+
}
|
|
2533
|
+
|
|
2534
|
+
/* ─── TopBar elevation ────────────────────────────────── */
|
|
2535
|
+
|
|
2536
|
+
.muka-view .muka-topbar {
|
|
2537
|
+
flex-shrink: 0;
|
|
2538
|
+
z-index: 3;
|
|
2539
|
+
box-shadow: var(--shadow-level2);
|
|
2540
|
+
}
|
|
2541
|
+
|
|
2542
|
+
/* ─── Scrollable body ─────────────────────────────────── */
|
|
2543
|
+
|
|
2544
|
+
.muka-view__body {
|
|
2545
|
+
flex: 1 1 0%;
|
|
2546
|
+
min-height: 0;
|
|
2547
|
+
overflow-y: auto;
|
|
2548
|
+
overflow-x: clip;
|
|
2549
|
+
z-index: 1;
|
|
2550
|
+
|
|
2551
|
+
/* Column flow so the footer (now a scroll-area child) can pin to the bottom and
|
|
2552
|
+
content scrolls *behind* it — letting a floating BottomBar's frosted backdrop
|
|
2553
|
+
reveal the content underneath. */
|
|
2554
|
+
display: flex;
|
|
2555
|
+
flex-direction: column;
|
|
2556
|
+
}
|
|
2557
|
+
|
|
2558
|
+
/* Inner wrapper constrains content width at the large tier (enterprise desktop)
|
|
2559
|
+
using the alias-layer section/container tokens, while the body scrolls full
|
|
2560
|
+
width. Full-bleed below large. */
|
|
2561
|
+
.muka-view__body-inner {
|
|
2562
|
+
width: 100%;
|
|
2563
|
+
/* Grow on short content so the sticky footer is pushed to the bottom rather
|
|
2564
|
+
than floating mid-screen. */
|
|
2565
|
+
flex: 1 0 auto;
|
|
2566
|
+
}
|
|
2567
|
+
|
|
2568
|
+
@media (min-width: 1024px) {
|
|
2569
|
+
.muka-view:not([data-size]) .muka-view__body-inner {
|
|
2570
|
+
max-width: var(--container-max-width-xl);
|
|
2571
|
+
margin-inline: auto;
|
|
2572
|
+
padding-inline: var(--section-padding-horizontal-default);
|
|
2573
|
+
}
|
|
2574
|
+
}
|
|
2575
|
+
|
|
2576
|
+
.muka-view[data-size='lg'] .muka-view__body-inner {
|
|
2577
|
+
max-width: var(--container-max-width-xl);
|
|
2578
|
+
margin-inline: auto;
|
|
2579
|
+
padding-inline: var(--section-padding-horizontal-default);
|
|
2580
|
+
}
|
|
2581
|
+
|
|
2582
|
+
/* ─── Footer (e.g. BottomBar) ─────────────────────────── */
|
|
2583
|
+
|
|
2584
|
+
.muka-view__footer {
|
|
2585
|
+
position: sticky;
|
|
2586
|
+
bottom: 0;
|
|
2587
|
+
flex-shrink: 0;
|
|
2588
|
+
z-index: 2;
|
|
2589
|
+
}
|
|
2590
|
+
|
|
2591
|
+
/* Inside an AppShell, the persistent left rail replaces the per-view bottom
|
|
2592
|
+
navigation at the large tier, so hide a footer that holds a navigation bar.
|
|
2593
|
+
Scoped to `.muka-app-shell` so bare Views (and the standalone
|
|
2594
|
+
desktopAs="sidebar" footer pattern above) are unaffected. Action-bar footers
|
|
2595
|
+
(`.muka-bottombar--actions`) don't match and remain at the bottom. */
|
|
2596
|
+
@media (min-width: 1024px) {
|
|
2597
|
+
.muka-app-shell .muka-view__footer:has(.muka-bottombar--navigation) {
|
|
2598
|
+
display: none;
|
|
2599
|
+
}
|
|
2600
|
+
}
|
|
2601
|
+
|
|
2602
|
+
.muka-app-shell[data-size='lg'] .muka-view__footer:has(.muka-bottombar--navigation) {
|
|
2603
|
+
display: none;
|
|
2604
|
+
}
|
|
2605
|
+
|
|
2606
|
+
|
|
2497
2607
|
/* Typography */
|
|
2498
2608
|
.muka-typography-catalog {
|
|
2499
2609
|
display: flex;
|
|
@@ -2844,122 +2954,175 @@ body {
|
|
|
2844
2954
|
}
|
|
2845
2955
|
|
|
2846
2956
|
|
|
2847
|
-
/*
|
|
2848
|
-
/*
|
|
2849
|
-
|
|
2850
|
-
/* ─── Base layout ─────────────────────────────────────── */
|
|
2957
|
+
/* Toggle */
|
|
2958
|
+
/* Toggle Component Styles - Using Muka Design Tokens */
|
|
2851
2959
|
|
|
2852
|
-
|
|
2960
|
+
/* Wrapper container */
|
|
2961
|
+
.muka-toggle {
|
|
2853
2962
|
display: flex;
|
|
2854
|
-
|
|
2855
|
-
|
|
2856
|
-
background-color: var(--view-color-background);
|
|
2963
|
+
align-items: center;
|
|
2964
|
+
gap: var(--spacing-2);
|
|
2857
2965
|
position: relative;
|
|
2858
|
-
|
|
2859
|
-
box-sizing: border-box;
|
|
2860
|
-
|
|
2861
|
-
/* Width reserved for the footer nav once it becomes a left sidebar at the
|
|
2862
|
-
large tier (matches BottomBar's desktopAs="sidebar" rail width). */
|
|
2863
|
-
--view-sidebar-width: 240px;
|
|
2966
|
+
padding: var(--spacing-4) 0;
|
|
2864
2967
|
}
|
|
2865
2968
|
|
|
2866
|
-
|
|
2867
|
-
|
|
2868
|
-
.muka-view--surface-3 {
|
|
2869
|
-
background-color: var(--color-surface-level3);
|
|
2969
|
+
.muka-toggle--with-caption {
|
|
2970
|
+
padding: var(--spacing-5) 0;
|
|
2870
2971
|
}
|
|
2871
2972
|
|
|
2872
|
-
|
|
2873
|
-
|
|
2874
|
-
≥1024px. Offset the shell so the TopBar/body clear it — tied to the sidebar's
|
|
2875
|
-
actual presence (the `.muka-bottombar--desktop-sidebar` element) rather than
|
|
2876
|
-
the View's `size`, so a forced `size="lg"` below 1024px never reserves space
|
|
2877
|
-
for a sidebar that hasn't rendered yet. */
|
|
2878
|
-
@media (min-width: 1024px) {
|
|
2879
|
-
.muka-view:has(.muka-bottombar--desktop-sidebar) {
|
|
2880
|
-
padding-left: var(--view-sidebar-width);
|
|
2881
|
-
}
|
|
2973
|
+
.muka-toggle--disabled {
|
|
2974
|
+
opacity: 0.6;
|
|
2882
2975
|
}
|
|
2883
2976
|
|
|
2884
|
-
/*
|
|
2885
|
-
|
|
2886
|
-
|
|
2977
|
+
/* Icon */
|
|
2978
|
+
.muka-toggle__icon {
|
|
2979
|
+
display: flex;
|
|
2980
|
+
align-items: center;
|
|
2981
|
+
justify-content: center;
|
|
2887
2982
|
flex-shrink: 0;
|
|
2888
|
-
|
|
2889
|
-
|
|
2983
|
+
width: var(--icon-size-default);
|
|
2984
|
+
height: var(--icon-size-default);
|
|
2985
|
+
color: var(--color-text-default-default);
|
|
2890
2986
|
}
|
|
2891
2987
|
|
|
2892
|
-
|
|
2893
|
-
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
min-height: 0;
|
|
2897
|
-
overflow-y: auto;
|
|
2898
|
-
overflow-x: clip;
|
|
2899
|
-
z-index: 1;
|
|
2988
|
+
.muka-toggle__icon svg {
|
|
2989
|
+
width: 100%;
|
|
2990
|
+
height: 100%;
|
|
2991
|
+
}
|
|
2900
2992
|
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
reveal the content underneath. */
|
|
2993
|
+
/* Content area (label + caption) */
|
|
2994
|
+
.muka-toggle__content {
|
|
2904
2995
|
display: flex;
|
|
2905
2996
|
flex-direction: column;
|
|
2997
|
+
flex: 1;
|
|
2998
|
+
min-width: 0;
|
|
2999
|
+
gap: var(--spacing-1);
|
|
2906
3000
|
}
|
|
2907
3001
|
|
|
2908
|
-
/*
|
|
2909
|
-
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
3002
|
+
/* Label */
|
|
3003
|
+
.muka-toggle__label {
|
|
3004
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
3005
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
3006
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
3007
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
3008
|
+
color: var(--color-text-default-default);
|
|
3009
|
+
cursor: pointer;
|
|
2916
3010
|
}
|
|
2917
3011
|
|
|
2918
|
-
|
|
2919
|
-
|
|
2920
|
-
|
|
2921
|
-
|
|
2922
|
-
|
|
2923
|
-
}
|
|
3012
|
+
.muka-toggle--with-caption .muka-toggle__label {
|
|
3013
|
+
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
3014
|
+
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
3015
|
+
font-size: var(--text-label-lg-semibold-fontSize);
|
|
3016
|
+
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
2924
3017
|
}
|
|
2925
3018
|
|
|
2926
|
-
.muka-
|
|
2927
|
-
|
|
2928
|
-
|
|
2929
|
-
padding-inline: var(--section-padding-horizontal-default);
|
|
3019
|
+
.muka-toggle--disabled .muka-toggle__label {
|
|
3020
|
+
color: var(--color-text-subtle-default);
|
|
3021
|
+
cursor: not-allowed;
|
|
2930
3022
|
}
|
|
2931
3023
|
|
|
2932
|
-
/*
|
|
2933
|
-
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
|
|
2937
|
-
|
|
2938
|
-
|
|
3024
|
+
/* Caption */
|
|
3025
|
+
.muka-toggle__caption {
|
|
3026
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
3027
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
3028
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
3029
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
3030
|
+
color: var(--color-text-subtle-default);
|
|
2939
3031
|
}
|
|
2940
3032
|
|
|
2941
|
-
/*
|
|
2942
|
-
|
|
2943
|
-
|
|
2944
|
-
|
|
2945
|
-
|
|
2946
|
-
|
|
2947
|
-
.muka-app-shell .muka-view__footer:has(.muka-bottombar--navigation) {
|
|
2948
|
-
display: none;
|
|
2949
|
-
}
|
|
3033
|
+
/* Switch container */
|
|
3034
|
+
.muka-toggle__switch {
|
|
3035
|
+
position: relative;
|
|
3036
|
+
display: inline-flex;
|
|
3037
|
+
flex-shrink: 0;
|
|
3038
|
+
cursor: pointer;
|
|
2950
3039
|
}
|
|
2951
3040
|
|
|
2952
|
-
.muka-
|
|
2953
|
-
|
|
3041
|
+
.muka-toggle--disabled .muka-toggle__switch {
|
|
3042
|
+
cursor: not-allowed;
|
|
2954
3043
|
}
|
|
2955
3044
|
|
|
2956
|
-
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2961
|
-
|
|
2962
|
-
|
|
3045
|
+
/* Hidden native input */
|
|
3046
|
+
.muka-toggle__input {
|
|
3047
|
+
position: absolute;
|
|
3048
|
+
width: 1px;
|
|
3049
|
+
height: 1px;
|
|
3050
|
+
padding: 0;
|
|
3051
|
+
margin: -1px;
|
|
3052
|
+
overflow: hidden;
|
|
3053
|
+
clip: rect(0, 0, 0, 0);
|
|
3054
|
+
white-space: nowrap;
|
|
3055
|
+
border: 0;
|
|
3056
|
+
}
|
|
3057
|
+
|
|
3058
|
+
/* Track (background pill) */
|
|
3059
|
+
.muka-toggle__track {
|
|
3060
|
+
display: flex;
|
|
3061
|
+
align-items: center;
|
|
3062
|
+
width: var(--toggle-track-width);
|
|
3063
|
+
height: var(--toggle-track-height);
|
|
3064
|
+
border-radius: var(--toggle-track-radius);
|
|
3065
|
+
background-color: var(--toggle-track-color-off);
|
|
3066
|
+
transition: background-color 0.2s ease;
|
|
3067
|
+
box-shadow: inset 0 1px 4px 0 rgba(0, 0, 0, 0.16);
|
|
3068
|
+
position: relative;
|
|
3069
|
+
}
|
|
3070
|
+
|
|
3071
|
+
/* Knob (sliding circle) */
|
|
3072
|
+
.muka-toggle__knob {
|
|
3073
|
+
position: absolute;
|
|
3074
|
+
width: var(--toggle-knob-size);
|
|
3075
|
+
height: var(--toggle-knob-size);
|
|
3076
|
+
border-radius: var(--border-radius-full);
|
|
3077
|
+
background-color: var(--toggle-knob-color-default);
|
|
3078
|
+
box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1);
|
|
3079
|
+
left: var(--toggle-knob-offset);
|
|
3080
|
+
transition: left 0.2s ease, transform 0.2s ease;
|
|
3081
|
+
}
|
|
3082
|
+
|
|
3083
|
+
/* Focus state */
|
|
3084
|
+
.muka-toggle__input:focus-visible + .muka-toggle__track {
|
|
3085
|
+
outline: 2px solid var(--color-border-focus);
|
|
3086
|
+
outline-offset: 2px;
|
|
3087
|
+
}
|
|
3088
|
+
|
|
3089
|
+
/* Checked (on) state */
|
|
3090
|
+
.muka-toggle__input:checked + .muka-toggle__track {
|
|
3091
|
+
background-color: var(--toggle-track-color-on);
|
|
3092
|
+
}
|
|
3093
|
+
|
|
3094
|
+
.muka-toggle__input:checked + .muka-toggle__track .muka-toggle__knob {
|
|
3095
|
+
left: calc(var(--toggle-track-width) - var(--toggle-knob-size) - var(--toggle-knob-offset));
|
|
3096
|
+
}
|
|
3097
|
+
|
|
3098
|
+
/* Disabled state */
|
|
3099
|
+
.muka-toggle--disabled .muka-toggle__track {
|
|
3100
|
+
background-color: var(--toggle-track-color-disabled);
|
|
3101
|
+
box-shadow: none;
|
|
3102
|
+
}
|
|
3103
|
+
|
|
3104
|
+
.muka-toggle--disabled .muka-toggle__knob {
|
|
3105
|
+
background-color: var(--toggle-knob-color-disabled);
|
|
3106
|
+
box-shadow: none;
|
|
3107
|
+
}
|
|
3108
|
+
|
|
3109
|
+
/* Divider */
|
|
3110
|
+
.muka-toggle__divider {
|
|
3111
|
+
position: absolute;
|
|
3112
|
+
bottom: 0;
|
|
3113
|
+
left: 0;
|
|
3114
|
+
right: 0;
|
|
3115
|
+
height: 1px;
|
|
3116
|
+
background-color: var(--color-border-muted);
|
|
3117
|
+
}
|
|
3118
|
+
|
|
3119
|
+
|
|
3120
|
+
/* Toast */
|
|
3121
|
+
/* Toast Component Styles - Using Muka Design Tokens */
|
|
3122
|
+
|
|
3123
|
+
.muka-toast {
|
|
3124
|
+
display: flex;
|
|
3125
|
+
align-items: flex-start;
|
|
2963
3126
|
gap: var(--toast-gap);
|
|
2964
3127
|
padding: var(--toast-padding-y) var(--toast-padding-x);
|
|
2965
3128
|
border-radius: var(--toast-radius);
|
|
@@ -3679,166 +3842,249 @@ body {
|
|
|
3679
3842
|
}
|
|
3680
3843
|
|
|
3681
3844
|
|
|
3682
|
-
/*
|
|
3683
|
-
/*
|
|
3845
|
+
/* Textarea */
|
|
3846
|
+
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
3684
3847
|
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
align-items: center;
|
|
3848
|
+
.muka-textarea {
|
|
3849
|
+
display: inline-flex;
|
|
3850
|
+
flex-direction: column;
|
|
3689
3851
|
gap: var(--spacing-2);
|
|
3690
|
-
position: relative;
|
|
3691
|
-
padding: var(--spacing-4) 0;
|
|
3692
|
-
}
|
|
3693
|
-
|
|
3694
|
-
.muka-toggle--with-caption {
|
|
3695
|
-
padding: var(--spacing-5) 0;
|
|
3696
|
-
}
|
|
3697
|
-
|
|
3698
|
-
.muka-toggle--disabled {
|
|
3699
|
-
opacity: 0.6;
|
|
3700
3852
|
}
|
|
3701
3853
|
|
|
3702
|
-
/*
|
|
3703
|
-
.muka-
|
|
3704
|
-
display: flex;
|
|
3705
|
-
align-items: center;
|
|
3706
|
-
justify-content: center;
|
|
3707
|
-
flex-shrink: 0;
|
|
3708
|
-
width: var(--icon-size-default);
|
|
3709
|
-
height: var(--icon-size-default);
|
|
3854
|
+
/* Label */
|
|
3855
|
+
.muka-textarea__label {
|
|
3710
3856
|
color: var(--color-text-default-default);
|
|
3857
|
+
cursor: pointer;
|
|
3711
3858
|
}
|
|
3712
3859
|
|
|
3713
|
-
.muka-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
/* Content area (label + caption) */
|
|
3719
|
-
.muka-toggle__content {
|
|
3720
|
-
display: flex;
|
|
3721
|
-
flex-direction: column;
|
|
3722
|
-
flex: 1;
|
|
3723
|
-
min-width: 0;
|
|
3724
|
-
gap: var(--spacing-1);
|
|
3860
|
+
.muka-textarea__label--sm {
|
|
3861
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
3862
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
3863
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
3864
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
3725
3865
|
}
|
|
3726
3866
|
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
font-
|
|
3730
|
-
font-
|
|
3731
|
-
|
|
3732
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
3733
|
-
color: var(--color-text-default-default);
|
|
3734
|
-
cursor: pointer;
|
|
3867
|
+
.muka-textarea__label--md {
|
|
3868
|
+
font-family: var(--text-label-md-semibold-fontFamily);
|
|
3869
|
+
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
3870
|
+
font-size: var(--text-label-md-semibold-fontSize);
|
|
3871
|
+
line-height: var(--text-label-md-semibold-lineHeight);
|
|
3735
3872
|
}
|
|
3736
3873
|
|
|
3737
|
-
.muka-
|
|
3874
|
+
.muka-textarea__label--lg {
|
|
3738
3875
|
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
3739
3876
|
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
3740
3877
|
font-size: var(--text-label-lg-semibold-fontSize);
|
|
3741
3878
|
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
3742
3879
|
}
|
|
3743
3880
|
|
|
3744
|
-
.muka-
|
|
3745
|
-
color: var(--color-
|
|
3746
|
-
cursor: not-allowed;
|
|
3747
|
-
}
|
|
3748
|
-
|
|
3749
|
-
/* Caption */
|
|
3750
|
-
.muka-toggle__caption {
|
|
3751
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
3752
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
3753
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
3754
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
3755
|
-
color: var(--color-text-subtle-default);
|
|
3756
|
-
}
|
|
3757
|
-
|
|
3758
|
-
/* Switch container */
|
|
3759
|
-
.muka-toggle__switch {
|
|
3760
|
-
position: relative;
|
|
3761
|
-
display: inline-flex;
|
|
3762
|
-
flex-shrink: 0;
|
|
3763
|
-
cursor: pointer;
|
|
3881
|
+
.muka-textarea__required {
|
|
3882
|
+
color: var(--color-state-error-default);
|
|
3764
3883
|
}
|
|
3765
3884
|
|
|
3766
|
-
|
|
3767
|
-
|
|
3885
|
+
/* Field container */
|
|
3886
|
+
.muka-textarea__field {
|
|
3887
|
+
display: flex;
|
|
3888
|
+
background-color: var(--input-field-color-default-background);
|
|
3889
|
+
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
3890
|
+
border-radius: var(--input-field-radius-md);
|
|
3891
|
+
padding: var(--input-field-padding-y) var(--input-field-padding-x);
|
|
3892
|
+
transition: border-color 0.2s ease, background-color 0.2s ease;
|
|
3893
|
+
box-sizing: border-box;
|
|
3768
3894
|
}
|
|
3769
3895
|
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
width: 1px;
|
|
3774
|
-
height: 1px;
|
|
3775
|
-
padding: 0;
|
|
3776
|
-
margin: -1px;
|
|
3777
|
-
overflow: hidden;
|
|
3778
|
-
clip: rect(0, 0, 0, 0);
|
|
3779
|
-
white-space: nowrap;
|
|
3780
|
-
border: 0;
|
|
3896
|
+
.muka-textarea__field--sm {
|
|
3897
|
+
min-height: var(--input-textarea-height-sm);
|
|
3898
|
+
border-radius: var(--input-field-radius-sm);
|
|
3781
3899
|
}
|
|
3782
3900
|
|
|
3783
|
-
|
|
3784
|
-
|
|
3785
|
-
|
|
3786
|
-
align-items: center;
|
|
3787
|
-
width: var(--toggle-track-width);
|
|
3788
|
-
height: var(--toggle-track-height);
|
|
3789
|
-
border-radius: var(--toggle-track-radius);
|
|
3790
|
-
background-color: var(--toggle-track-color-off);
|
|
3791
|
-
transition: background-color 0.2s ease;
|
|
3792
|
-
box-shadow: inset 0 1px 4px 0 rgba(0, 0, 0, 0.16);
|
|
3793
|
-
position: relative;
|
|
3901
|
+
.muka-textarea__field--md {
|
|
3902
|
+
min-height: var(--input-textarea-height-default);
|
|
3903
|
+
border-radius: var(--input-field-radius-md);
|
|
3794
3904
|
}
|
|
3795
3905
|
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
width: var(--toggle-knob-size);
|
|
3800
|
-
height: var(--toggle-knob-size);
|
|
3801
|
-
border-radius: var(--border-radius-full);
|
|
3802
|
-
background-color: var(--toggle-knob-color-default);
|
|
3803
|
-
box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1);
|
|
3804
|
-
left: var(--toggle-knob-offset);
|
|
3805
|
-
transition: left 0.2s ease, transform 0.2s ease;
|
|
3906
|
+
.muka-textarea__field--lg {
|
|
3907
|
+
min-height: var(--input-textarea-height-lg);
|
|
3908
|
+
border-radius: var(--input-field-radius-lg);
|
|
3806
3909
|
}
|
|
3807
3910
|
|
|
3808
3911
|
/* Focus state */
|
|
3809
|
-
.muka-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
/* Checked (on) state */
|
|
3815
|
-
.muka-toggle__input:checked + .muka-toggle__track {
|
|
3816
|
-
background-color: var(--toggle-track-color-on);
|
|
3912
|
+
.muka-textarea__field--focused:not(.muka-textarea__field--disabled) {
|
|
3913
|
+
border-width: var(--border-width-bold);
|
|
3914
|
+
border-color: var(--input-field-color-focus-border);
|
|
3915
|
+
background-color: var(--input-field-color-focus-background);
|
|
3916
|
+
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
3817
3917
|
}
|
|
3818
3918
|
|
|
3819
|
-
|
|
3820
|
-
|
|
3919
|
+
/* Error state */
|
|
3920
|
+
.muka-textarea__field--error:not(.muka-textarea__field--disabled) {
|
|
3921
|
+
border-width: var(--border-width-bold);
|
|
3922
|
+
border-color: var(--input-field-color-error-border);
|
|
3923
|
+
background-color: var(--input-field-color-error-background);
|
|
3924
|
+
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
3821
3925
|
}
|
|
3822
3926
|
|
|
3823
3927
|
/* Disabled state */
|
|
3824
|
-
.muka-
|
|
3825
|
-
background-color: var(--
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
.muka-toggle--disabled .muka-toggle__knob {
|
|
3830
|
-
background-color: var(--toggle-knob-color-disabled);
|
|
3831
|
-
box-shadow: none;
|
|
3928
|
+
.muka-textarea__field--disabled {
|
|
3929
|
+
background-color: var(--input-field-color-disabled-background);
|
|
3930
|
+
border-color: var(--input-field-color-disabled-border);
|
|
3931
|
+
cursor: not-allowed;
|
|
3832
3932
|
}
|
|
3833
3933
|
|
|
3834
|
-
/*
|
|
3835
|
-
.muka-
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3934
|
+
/* Native textarea */
|
|
3935
|
+
.muka-textarea__native {
|
|
3936
|
+
flex: 1;
|
|
3937
|
+
border: none;
|
|
3938
|
+
outline: none;
|
|
3939
|
+
background: transparent;
|
|
3940
|
+
color: var(--input-field-color-default-foreground);
|
|
3941
|
+
font-family: var(--text-input-md-fontFamily);
|
|
3942
|
+
font-weight: var(--text-input-md-fontWeight);
|
|
3943
|
+
font-size: var(--text-input-md-fontSize);
|
|
3944
|
+
line-height: var(--text-input-md-lineHeight);
|
|
3945
|
+
padding: 0;
|
|
3946
|
+
width: 100%;
|
|
3947
|
+
min-width: 0;
|
|
3948
|
+
}
|
|
3949
|
+
|
|
3950
|
+
.muka-textarea__field--sm .muka-textarea__native {
|
|
3951
|
+
font-family: var(--text-input-sm-fontFamily);
|
|
3952
|
+
font-weight: var(--text-input-sm-fontWeight);
|
|
3953
|
+
font-size: var(--text-input-sm-fontSize);
|
|
3954
|
+
line-height: var(--text-input-sm-lineHeight);
|
|
3955
|
+
}
|
|
3956
|
+
|
|
3957
|
+
.muka-textarea__field--lg .muka-textarea__native {
|
|
3958
|
+
font-family: var(--text-input-lg-fontFamily);
|
|
3959
|
+
font-weight: var(--text-input-lg-fontWeight);
|
|
3960
|
+
font-size: var(--text-input-lg-fontSize);
|
|
3961
|
+
line-height: var(--text-input-lg-lineHeight);
|
|
3962
|
+
}
|
|
3963
|
+
|
|
3964
|
+
.muka-textarea__native::placeholder {
|
|
3965
|
+
color: var(--color-text-subtle-default);
|
|
3966
|
+
}
|
|
3967
|
+
|
|
3968
|
+
.muka-textarea__field--disabled .muka-textarea__native {
|
|
3969
|
+
color: var(--input-field-color-disabled-foreground);
|
|
3970
|
+
cursor: not-allowed;
|
|
3971
|
+
}
|
|
3972
|
+
|
|
3973
|
+
/* Footer (helper/error + count) */
|
|
3974
|
+
.muka-textarea__footer {
|
|
3975
|
+
display: flex;
|
|
3976
|
+
justify-content: space-between;
|
|
3977
|
+
align-items: flex-start;
|
|
3978
|
+
gap: var(--spacing-2);
|
|
3979
|
+
}
|
|
3980
|
+
|
|
3981
|
+
.muka-textarea__helper {
|
|
3982
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
3983
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
3984
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
3985
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
3986
|
+
color: var(--color-text-subtle-default);
|
|
3987
|
+
margin: 0;
|
|
3988
|
+
}
|
|
3989
|
+
|
|
3990
|
+
.muka-textarea__error {
|
|
3991
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
3992
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
3993
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
3994
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
3995
|
+
color: var(--color-state-error-default);
|
|
3996
|
+
margin: 0;
|
|
3997
|
+
}
|
|
3998
|
+
|
|
3999
|
+
.muka-textarea__count {
|
|
4000
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4001
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4002
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
4003
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4004
|
+
color: var(--color-text-subtle-default);
|
|
4005
|
+
margin-left: auto;
|
|
4006
|
+
}
|
|
4007
|
+
|
|
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
|
+
}
|
|
3842
4088
|
}
|
|
3843
4089
|
|
|
3844
4090
|
|
|
@@ -4032,252 +4278,6 @@ body {
|
|
|
4032
4278
|
}
|
|
4033
4279
|
|
|
4034
4280
|
|
|
4035
|
-
/* Textarea */
|
|
4036
|
-
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
4037
|
-
|
|
4038
|
-
.muka-textarea {
|
|
4039
|
-
display: inline-flex;
|
|
4040
|
-
flex-direction: column;
|
|
4041
|
-
gap: var(--spacing-2);
|
|
4042
|
-
}
|
|
4043
|
-
|
|
4044
|
-
/* Label */
|
|
4045
|
-
.muka-textarea__label {
|
|
4046
|
-
color: var(--color-text-default-default);
|
|
4047
|
-
cursor: pointer;
|
|
4048
|
-
}
|
|
4049
|
-
|
|
4050
|
-
.muka-textarea__label--sm {
|
|
4051
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4052
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4053
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4054
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4055
|
-
}
|
|
4056
|
-
|
|
4057
|
-
.muka-textarea__label--md {
|
|
4058
|
-
font-family: var(--text-label-md-semibold-fontFamily);
|
|
4059
|
-
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
4060
|
-
font-size: var(--text-label-md-semibold-fontSize);
|
|
4061
|
-
line-height: var(--text-label-md-semibold-lineHeight);
|
|
4062
|
-
}
|
|
4063
|
-
|
|
4064
|
-
.muka-textarea__label--lg {
|
|
4065
|
-
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
4066
|
-
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
4067
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
4068
|
-
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
4069
|
-
}
|
|
4070
|
-
|
|
4071
|
-
.muka-textarea__required {
|
|
4072
|
-
color: var(--color-state-error-default);
|
|
4073
|
-
}
|
|
4074
|
-
|
|
4075
|
-
/* Field container */
|
|
4076
|
-
.muka-textarea__field {
|
|
4077
|
-
display: flex;
|
|
4078
|
-
background-color: var(--input-field-color-default-background);
|
|
4079
|
-
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
4080
|
-
border-radius: var(--input-field-radius-md);
|
|
4081
|
-
padding: var(--input-field-padding-y) var(--input-field-padding-x);
|
|
4082
|
-
transition: border-color 0.2s ease, background-color 0.2s ease;
|
|
4083
|
-
box-sizing: border-box;
|
|
4084
|
-
}
|
|
4085
|
-
|
|
4086
|
-
.muka-textarea__field--sm {
|
|
4087
|
-
min-height: var(--input-textarea-height-sm);
|
|
4088
|
-
border-radius: var(--input-field-radius-sm);
|
|
4089
|
-
}
|
|
4090
|
-
|
|
4091
|
-
.muka-textarea__field--md {
|
|
4092
|
-
min-height: var(--input-textarea-height-default);
|
|
4093
|
-
border-radius: var(--input-field-radius-md);
|
|
4094
|
-
}
|
|
4095
|
-
|
|
4096
|
-
.muka-textarea__field--lg {
|
|
4097
|
-
min-height: var(--input-textarea-height-lg);
|
|
4098
|
-
border-radius: var(--input-field-radius-lg);
|
|
4099
|
-
}
|
|
4100
|
-
|
|
4101
|
-
/* Focus state */
|
|
4102
|
-
.muka-textarea__field--focused:not(.muka-textarea__field--disabled) {
|
|
4103
|
-
border-width: var(--border-width-bold);
|
|
4104
|
-
border-color: var(--input-field-color-focus-border);
|
|
4105
|
-
background-color: var(--input-field-color-focus-background);
|
|
4106
|
-
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
4107
|
-
}
|
|
4108
|
-
|
|
4109
|
-
/* Error state */
|
|
4110
|
-
.muka-textarea__field--error:not(.muka-textarea__field--disabled) {
|
|
4111
|
-
border-width: var(--border-width-bold);
|
|
4112
|
-
border-color: var(--input-field-color-error-border);
|
|
4113
|
-
background-color: var(--input-field-color-error-background);
|
|
4114
|
-
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
4115
|
-
}
|
|
4116
|
-
|
|
4117
|
-
/* Disabled state */
|
|
4118
|
-
.muka-textarea__field--disabled {
|
|
4119
|
-
background-color: var(--input-field-color-disabled-background);
|
|
4120
|
-
border-color: var(--input-field-color-disabled-border);
|
|
4121
|
-
cursor: not-allowed;
|
|
4122
|
-
}
|
|
4123
|
-
|
|
4124
|
-
/* Native textarea */
|
|
4125
|
-
.muka-textarea__native {
|
|
4126
|
-
flex: 1;
|
|
4127
|
-
border: none;
|
|
4128
|
-
outline: none;
|
|
4129
|
-
background: transparent;
|
|
4130
|
-
color: var(--input-field-color-default-foreground);
|
|
4131
|
-
font-family: var(--text-input-md-fontFamily);
|
|
4132
|
-
font-weight: var(--text-input-md-fontWeight);
|
|
4133
|
-
font-size: var(--text-input-md-fontSize);
|
|
4134
|
-
line-height: var(--text-input-md-lineHeight);
|
|
4135
|
-
padding: 0;
|
|
4136
|
-
width: 100%;
|
|
4137
|
-
min-width: 0;
|
|
4138
|
-
}
|
|
4139
|
-
|
|
4140
|
-
.muka-textarea__field--sm .muka-textarea__native {
|
|
4141
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
4142
|
-
font-weight: var(--text-input-sm-fontWeight);
|
|
4143
|
-
font-size: var(--text-input-sm-fontSize);
|
|
4144
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
4145
|
-
}
|
|
4146
|
-
|
|
4147
|
-
.muka-textarea__field--lg .muka-textarea__native {
|
|
4148
|
-
font-family: var(--text-input-lg-fontFamily);
|
|
4149
|
-
font-weight: var(--text-input-lg-fontWeight);
|
|
4150
|
-
font-size: var(--text-input-lg-fontSize);
|
|
4151
|
-
line-height: var(--text-input-lg-lineHeight);
|
|
4152
|
-
}
|
|
4153
|
-
|
|
4154
|
-
.muka-textarea__native::placeholder {
|
|
4155
|
-
color: var(--color-text-subtle-default);
|
|
4156
|
-
}
|
|
4157
|
-
|
|
4158
|
-
.muka-textarea__field--disabled .muka-textarea__native {
|
|
4159
|
-
color: var(--input-field-color-disabled-foreground);
|
|
4160
|
-
cursor: not-allowed;
|
|
4161
|
-
}
|
|
4162
|
-
|
|
4163
|
-
/* Footer (helper/error + count) */
|
|
4164
|
-
.muka-textarea__footer {
|
|
4165
|
-
display: flex;
|
|
4166
|
-
justify-content: space-between;
|
|
4167
|
-
align-items: flex-start;
|
|
4168
|
-
gap: var(--spacing-2);
|
|
4169
|
-
}
|
|
4170
|
-
|
|
4171
|
-
.muka-textarea__helper {
|
|
4172
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4173
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4174
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4175
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4176
|
-
color: var(--color-text-subtle-default);
|
|
4177
|
-
margin: 0;
|
|
4178
|
-
}
|
|
4179
|
-
|
|
4180
|
-
.muka-textarea__error {
|
|
4181
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4182
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4183
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4184
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4185
|
-
color: var(--color-state-error-default);
|
|
4186
|
-
margin: 0;
|
|
4187
|
-
}
|
|
4188
|
-
|
|
4189
|
-
.muka-textarea__count {
|
|
4190
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4191
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4192
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4193
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4194
|
-
color: var(--color-text-subtle-default);
|
|
4195
|
-
margin-left: auto;
|
|
4196
|
-
}
|
|
4197
|
-
|
|
4198
|
-
|
|
4199
|
-
/* TextLink */
|
|
4200
|
-
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
4201
|
-
|
|
4202
|
-
.muka-text-link {
|
|
4203
|
-
display: inline;
|
|
4204
|
-
cursor: pointer;
|
|
4205
|
-
text-decoration: underline;
|
|
4206
|
-
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
4207
|
-
text-underline-offset: 0.2em;
|
|
4208
|
-
text-decoration-thickness: from-font;
|
|
4209
|
-
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
4210
|
-
border-radius: var(--border-radius-sm);
|
|
4211
|
-
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
4212
|
-
}
|
|
4213
|
-
|
|
4214
|
-
/* ─── Sizes ───────────────────────────────────────────────
|
|
4215
|
-
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
4216
|
-
.muka-text-link--sm {
|
|
4217
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
4218
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
4219
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
4220
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
4221
|
-
}
|
|
4222
|
-
|
|
4223
|
-
.muka-text-link--base {
|
|
4224
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
4225
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
4226
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
4227
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
4228
|
-
}
|
|
4229
|
-
|
|
4230
|
-
.muka-text-link--lg {
|
|
4231
|
-
font-family: var(--text-body-lg-regular-fontFamily);
|
|
4232
|
-
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
4233
|
-
font-size: var(--text-body-lg-regular-fontSize);
|
|
4234
|
-
line-height: var(--text-body-lg-regular-lineHeight);
|
|
4235
|
-
}
|
|
4236
|
-
|
|
4237
|
-
/* ─── Variant: default (accent) ───────────────────────────
|
|
4238
|
-
Visited repeats the default colour on purpose: the design treats visited and
|
|
4239
|
-
default the same, and pinning it stops the browser's purple from showing. */
|
|
4240
|
-
.muka-text-link--default,
|
|
4241
|
-
.muka-text-link--default:visited {
|
|
4242
|
-
color: var(--color-text-action-default);
|
|
4243
|
-
}
|
|
4244
|
-
|
|
4245
|
-
.muka-text-link--default:hover,
|
|
4246
|
-
.muka-text-link--default:focus-visible {
|
|
4247
|
-
color: var(--color-text-action-hover);
|
|
4248
|
-
}
|
|
4249
|
-
|
|
4250
|
-
.muka-text-link--default:active {
|
|
4251
|
-
color: var(--color-text-action-pressed);
|
|
4252
|
-
}
|
|
4253
|
-
|
|
4254
|
-
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
4255
|
-
Hover, focus and pressed all darken to the default text colour. */
|
|
4256
|
-
.muka-text-link--subtle,
|
|
4257
|
-
.muka-text-link--subtle:visited {
|
|
4258
|
-
color: var(--color-text-subtle-default);
|
|
4259
|
-
}
|
|
4260
|
-
|
|
4261
|
-
.muka-text-link--subtle:hover,
|
|
4262
|
-
.muka-text-link--subtle:focus-visible,
|
|
4263
|
-
.muka-text-link--subtle:active {
|
|
4264
|
-
color: var(--color-text-default-default);
|
|
4265
|
-
}
|
|
4266
|
-
|
|
4267
|
-
/* ─── Focus ───────────────────────────────────────────────
|
|
4268
|
-
Same ring as every other focusable Muka component. */
|
|
4269
|
-
.muka-text-link:focus-visible {
|
|
4270
|
-
outline: 2px solid var(--color-border-focus);
|
|
4271
|
-
outline-offset: 2px;
|
|
4272
|
-
}
|
|
4273
|
-
|
|
4274
|
-
@media (prefers-reduced-motion: reduce) {
|
|
4275
|
-
.muka-text-link {
|
|
4276
|
-
transition: none;
|
|
4277
|
-
}
|
|
4278
|
-
}
|
|
4279
|
-
|
|
4280
|
-
|
|
4281
4281
|
/* Table */
|
|
4282
4282
|
/* Table Component Styles - Using Muka Design Tokens */
|
|
4283
4283
|
|
|
@@ -4568,65 +4568,173 @@ body {
|
|
|
4568
4568
|
text-align: left;
|
|
4569
4569
|
}
|
|
4570
4570
|
|
|
4571
|
-
.muka-table__cell--center,
|
|
4572
|
-
.muka-table__header-cell--center {
|
|
4573
|
-
text-align: center;
|
|
4571
|
+
.muka-table__cell--center,
|
|
4572
|
+
.muka-table__header-cell--center {
|
|
4573
|
+
text-align: center;
|
|
4574
|
+
}
|
|
4575
|
+
|
|
4576
|
+
.muka-table__cell--right,
|
|
4577
|
+
.muka-table__header-cell--right {
|
|
4578
|
+
text-align: right;
|
|
4579
|
+
}
|
|
4580
|
+
|
|
4581
|
+
/* ========================================
|
|
4582
|
+
HEADER CELLS
|
|
4583
|
+
======================================== */
|
|
4584
|
+
|
|
4585
|
+
.muka-table__header-cell {
|
|
4586
|
+
font-family: var(--text-body-base-bold-fontFamily);
|
|
4587
|
+
font-weight: var(--text-body-base-bold-fontWeight);
|
|
4588
|
+
font-size: var(--text-body-base-bold-fontSize);
|
|
4589
|
+
line-height: var(--text-body-base-bold-lineHeight);
|
|
4590
|
+
color: var(--color-text-default-default);
|
|
4591
|
+
white-space: nowrap;
|
|
4592
|
+
}
|
|
4593
|
+
|
|
4594
|
+
.muka-table__header-content {
|
|
4595
|
+
display: inline-flex;
|
|
4596
|
+
align-items: center;
|
|
4597
|
+
gap: var(--spacing-1);
|
|
4598
|
+
}
|
|
4599
|
+
|
|
4600
|
+
/* Sortable */
|
|
4601
|
+
.muka-table__header-cell--sortable {
|
|
4602
|
+
cursor: pointer;
|
|
4603
|
+
user-select: none;
|
|
4604
|
+
}
|
|
4605
|
+
|
|
4606
|
+
.muka-table__header-cell--sortable:hover {
|
|
4607
|
+
color: var(--color-text-default-default);
|
|
4608
|
+
}
|
|
4609
|
+
|
|
4610
|
+
.muka-table__header-cell--sortable:focus-visible {
|
|
4611
|
+
outline: 2px solid var(--color-action-default);
|
|
4612
|
+
outline-offset: -2px;
|
|
4613
|
+
}
|
|
4614
|
+
|
|
4615
|
+
/* Sort icon */
|
|
4616
|
+
.muka-table__sort-icon {
|
|
4617
|
+
width: 1em;
|
|
4618
|
+
height: 1em;
|
|
4619
|
+
opacity: 0.4;
|
|
4620
|
+
transition: opacity 0.2s, transform 0.2s;
|
|
4621
|
+
}
|
|
4622
|
+
|
|
4623
|
+
.muka-table__header-cell--sortable:hover .muka-table__sort-icon {
|
|
4624
|
+
opacity: 0.7;
|
|
4625
|
+
}
|
|
4626
|
+
|
|
4627
|
+
.muka-table__sort-icon--asc,
|
|
4628
|
+
.muka-table__sort-icon--desc {
|
|
4629
|
+
opacity: 1;
|
|
4630
|
+
}
|
|
4631
|
+
|
|
4632
|
+
|
|
4633
|
+
/* SwipeActions */
|
|
4634
|
+
/* SwipeActions Component Styles */
|
|
4635
|
+
|
|
4636
|
+
.muka-swipe-actions {
|
|
4637
|
+
position: relative;
|
|
4638
|
+
overflow: hidden;
|
|
4639
|
+
touch-action: pan-y;
|
|
4640
|
+
-webkit-user-select: none;
|
|
4641
|
+
user-select: none;
|
|
4642
|
+
background-color: var(--color-surface-level3);
|
|
4643
|
+
}
|
|
4644
|
+
|
|
4645
|
+
.muka-swipe-actions--disabled {
|
|
4646
|
+
touch-action: auto;
|
|
4647
|
+
}
|
|
4648
|
+
|
|
4649
|
+
/* ─── Row that holds the actual content ────────────────── */
|
|
4650
|
+
|
|
4651
|
+
.muka-swipe-actions__row {
|
|
4652
|
+
position: relative;
|
|
4653
|
+
z-index: 1;
|
|
4654
|
+
background-color: inherit;
|
|
4655
|
+
will-change: transform;
|
|
4656
|
+
}
|
|
4657
|
+
|
|
4658
|
+
/* ─── Action panels — sit beneath the row ──────────────── */
|
|
4659
|
+
|
|
4660
|
+
.muka-swipe-actions__panel {
|
|
4661
|
+
position: absolute;
|
|
4662
|
+
top: 0;
|
|
4663
|
+
bottom: 0;
|
|
4664
|
+
display: flex;
|
|
4665
|
+
align-items: stretch;
|
|
4666
|
+
z-index: 0;
|
|
4667
|
+
}
|
|
4668
|
+
|
|
4669
|
+
.muka-swipe-actions__panel--left {
|
|
4670
|
+
left: 0;
|
|
4671
|
+
}
|
|
4672
|
+
|
|
4673
|
+
.muka-swipe-actions__panel--right {
|
|
4674
|
+
right: 0;
|
|
4574
4675
|
}
|
|
4575
4676
|
|
|
4576
|
-
|
|
4577
|
-
|
|
4578
|
-
|
|
4677
|
+
/* ─── Single action button ─────────────────────────────── */
|
|
4678
|
+
|
|
4679
|
+
.muka-swipe-actions__button {
|
|
4680
|
+
display: flex;
|
|
4681
|
+
flex-direction: column;
|
|
4682
|
+
align-items: center;
|
|
4683
|
+
justify-content: center;
|
|
4684
|
+
gap: var(--spacing-1);
|
|
4685
|
+
border: none;
|
|
4686
|
+
cursor: pointer;
|
|
4687
|
+
padding: var(--spacing-2);
|
|
4688
|
+
background-color: var(--color-surface-level2);
|
|
4689
|
+
color: var(--color-text-default-default);
|
|
4690
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4691
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4692
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4693
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4694
|
+
-webkit-tap-highlight-color: transparent;
|
|
4695
|
+
transition: filter 0.12s ease;
|
|
4579
4696
|
}
|
|
4580
4697
|
|
|
4581
|
-
|
|
4582
|
-
|
|
4583
|
-
|
|
4698
|
+
.muka-swipe-actions__button:hover {
|
|
4699
|
+
filter: brightness(0.95);
|
|
4700
|
+
}
|
|
4584
4701
|
|
|
4585
|
-
.muka-
|
|
4586
|
-
|
|
4587
|
-
|
|
4588
|
-
font-size: var(--text-body-base-bold-fontSize);
|
|
4589
|
-
line-height: var(--text-body-base-bold-lineHeight);
|
|
4590
|
-
color: var(--color-text-default-default);
|
|
4591
|
-
white-space: nowrap;
|
|
4702
|
+
.muka-swipe-actions__button:focus-visible {
|
|
4703
|
+
outline: 2px solid var(--color-action-default);
|
|
4704
|
+
outline-offset: -2px;
|
|
4592
4705
|
}
|
|
4593
4706
|
|
|
4594
|
-
.muka-
|
|
4707
|
+
.muka-swipe-actions__button-icon {
|
|
4595
4708
|
display: inline-flex;
|
|
4596
4709
|
align-items: center;
|
|
4597
|
-
|
|
4710
|
+
justify-content: center;
|
|
4598
4711
|
}
|
|
4599
4712
|
|
|
4600
|
-
/*
|
|
4601
|
-
.muka-table__header-cell--sortable {
|
|
4602
|
-
cursor: pointer;
|
|
4603
|
-
user-select: none;
|
|
4604
|
-
}
|
|
4713
|
+
/* ─── Color variants ───────────────────────────────────── */
|
|
4605
4714
|
|
|
4606
|
-
.muka-
|
|
4715
|
+
.muka-swipe-actions__button--neutral {
|
|
4716
|
+
background-color: var(--color-surface-level2);
|
|
4607
4717
|
color: var(--color-text-default-default);
|
|
4608
4718
|
}
|
|
4609
4719
|
|
|
4610
|
-
.muka-
|
|
4611
|
-
|
|
4612
|
-
|
|
4720
|
+
.muka-swipe-actions__button--primary {
|
|
4721
|
+
background-color: var(--color-action-default);
|
|
4722
|
+
color: var(--color-text-default-inverse);
|
|
4613
4723
|
}
|
|
4614
4724
|
|
|
4615
|
-
|
|
4616
|
-
|
|
4617
|
-
|
|
4618
|
-
height: 1em;
|
|
4619
|
-
opacity: 0.4;
|
|
4620
|
-
transition: opacity 0.2s, transform 0.2s;
|
|
4725
|
+
.muka-swipe-actions__button--success {
|
|
4726
|
+
background-color: var(--color-state-success-default);
|
|
4727
|
+
color: var(--color-text-default-inverse);
|
|
4621
4728
|
}
|
|
4622
4729
|
|
|
4623
|
-
.muka-
|
|
4624
|
-
|
|
4730
|
+
.muka-swipe-actions__button--warning {
|
|
4731
|
+
background-color: var(--color-state-warning-default);
|
|
4732
|
+
color: var(--color-text-default-default);
|
|
4625
4733
|
}
|
|
4626
4734
|
|
|
4627
|
-
.muka-
|
|
4628
|
-
|
|
4629
|
-
|
|
4735
|
+
.muka-swipe-actions__button--destructive {
|
|
4736
|
+
background-color: var(--color-state-error-default);
|
|
4737
|
+
color: var(--color-text-default-inverse);
|
|
4630
4738
|
}
|
|
4631
4739
|
|
|
4632
4740
|
|
|
@@ -4793,114 +4901,6 @@ body {
|
|
|
4793
4901
|
}
|
|
4794
4902
|
|
|
4795
4903
|
|
|
4796
|
-
/* SwipeActions */
|
|
4797
|
-
/* SwipeActions Component Styles */
|
|
4798
|
-
|
|
4799
|
-
.muka-swipe-actions {
|
|
4800
|
-
position: relative;
|
|
4801
|
-
overflow: hidden;
|
|
4802
|
-
touch-action: pan-y;
|
|
4803
|
-
-webkit-user-select: none;
|
|
4804
|
-
user-select: none;
|
|
4805
|
-
background-color: var(--color-surface-level3);
|
|
4806
|
-
}
|
|
4807
|
-
|
|
4808
|
-
.muka-swipe-actions--disabled {
|
|
4809
|
-
touch-action: auto;
|
|
4810
|
-
}
|
|
4811
|
-
|
|
4812
|
-
/* ─── Row that holds the actual content ────────────────── */
|
|
4813
|
-
|
|
4814
|
-
.muka-swipe-actions__row {
|
|
4815
|
-
position: relative;
|
|
4816
|
-
z-index: 1;
|
|
4817
|
-
background-color: inherit;
|
|
4818
|
-
will-change: transform;
|
|
4819
|
-
}
|
|
4820
|
-
|
|
4821
|
-
/* ─── Action panels — sit beneath the row ──────────────── */
|
|
4822
|
-
|
|
4823
|
-
.muka-swipe-actions__panel {
|
|
4824
|
-
position: absolute;
|
|
4825
|
-
top: 0;
|
|
4826
|
-
bottom: 0;
|
|
4827
|
-
display: flex;
|
|
4828
|
-
align-items: stretch;
|
|
4829
|
-
z-index: 0;
|
|
4830
|
-
}
|
|
4831
|
-
|
|
4832
|
-
.muka-swipe-actions__panel--left {
|
|
4833
|
-
left: 0;
|
|
4834
|
-
}
|
|
4835
|
-
|
|
4836
|
-
.muka-swipe-actions__panel--right {
|
|
4837
|
-
right: 0;
|
|
4838
|
-
}
|
|
4839
|
-
|
|
4840
|
-
/* ─── Single action button ─────────────────────────────── */
|
|
4841
|
-
|
|
4842
|
-
.muka-swipe-actions__button {
|
|
4843
|
-
display: flex;
|
|
4844
|
-
flex-direction: column;
|
|
4845
|
-
align-items: center;
|
|
4846
|
-
justify-content: center;
|
|
4847
|
-
gap: var(--spacing-1);
|
|
4848
|
-
border: none;
|
|
4849
|
-
cursor: pointer;
|
|
4850
|
-
padding: var(--spacing-2);
|
|
4851
|
-
background-color: var(--color-surface-level2);
|
|
4852
|
-
color: var(--color-text-default-default);
|
|
4853
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4854
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4855
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4856
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4857
|
-
-webkit-tap-highlight-color: transparent;
|
|
4858
|
-
transition: filter 0.12s ease;
|
|
4859
|
-
}
|
|
4860
|
-
|
|
4861
|
-
.muka-swipe-actions__button:hover {
|
|
4862
|
-
filter: brightness(0.95);
|
|
4863
|
-
}
|
|
4864
|
-
|
|
4865
|
-
.muka-swipe-actions__button:focus-visible {
|
|
4866
|
-
outline: 2px solid var(--color-action-default);
|
|
4867
|
-
outline-offset: -2px;
|
|
4868
|
-
}
|
|
4869
|
-
|
|
4870
|
-
.muka-swipe-actions__button-icon {
|
|
4871
|
-
display: inline-flex;
|
|
4872
|
-
align-items: center;
|
|
4873
|
-
justify-content: center;
|
|
4874
|
-
}
|
|
4875
|
-
|
|
4876
|
-
/* ─── Color variants ───────────────────────────────────── */
|
|
4877
|
-
|
|
4878
|
-
.muka-swipe-actions__button--neutral {
|
|
4879
|
-
background-color: var(--color-surface-level2);
|
|
4880
|
-
color: var(--color-text-default-default);
|
|
4881
|
-
}
|
|
4882
|
-
|
|
4883
|
-
.muka-swipe-actions__button--primary {
|
|
4884
|
-
background-color: var(--color-action-default);
|
|
4885
|
-
color: var(--color-text-default-inverse);
|
|
4886
|
-
}
|
|
4887
|
-
|
|
4888
|
-
.muka-swipe-actions__button--success {
|
|
4889
|
-
background-color: var(--color-state-success-default);
|
|
4890
|
-
color: var(--color-text-default-inverse);
|
|
4891
|
-
}
|
|
4892
|
-
|
|
4893
|
-
.muka-swipe-actions__button--warning {
|
|
4894
|
-
background-color: var(--color-state-warning-default);
|
|
4895
|
-
color: var(--color-text-default-default);
|
|
4896
|
-
}
|
|
4897
|
-
|
|
4898
|
-
.muka-swipe-actions__button--destructive {
|
|
4899
|
-
background-color: var(--color-state-error-default);
|
|
4900
|
-
color: var(--color-text-default-inverse);
|
|
4901
|
-
}
|
|
4902
|
-
|
|
4903
|
-
|
|
4904
4904
|
/* SocialSignInButton */
|
|
4905
4905
|
/*
|
|
4906
4906
|
* SocialSignInButton lockup colors are provider-mandated (Apple HIG /
|
|
@@ -10821,6 +10821,38 @@ li.muka-listitem {
|
|
|
10821
10821
|
}
|
|
10822
10822
|
|
|
10823
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
|
+
|
|
10824
10856
|
/* Dialog */
|
|
10825
10857
|
/* Dialog Component Styles */
|
|
10826
10858
|
|
|
@@ -11082,42 +11114,10 @@ li.muka-listitem {
|
|
|
11082
11114
|
box-shadow: var(--shadow-level2);
|
|
11083
11115
|
}
|
|
11084
11116
|
|
|
11085
|
-
.muka-dialog .muka-bottombar {
|
|
11086
|
-
position: relative;
|
|
11087
|
-
z-index: 1;
|
|
11088
|
-
box-shadow: var(--shadow-level2);
|
|
11089
|
-
}
|
|
11090
|
-
|
|
11091
|
-
|
|
11092
|
-
/* DatePicker */
|
|
11093
|
-
/* DatePicker — compact native date field. */
|
|
11094
|
-
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
11095
|
-
|
|
11096
|
-
/* Adopt the field typography on the native date input. */
|
|
11097
|
-
.muka-datepicker__field .muka-input__native {
|
|
11098
|
-
font-family: var(--text-input-md-fontFamily);
|
|
11099
|
-
font-size: var(--text-input-md-fontSize);
|
|
11100
|
-
line-height: var(--text-input-md-lineHeight);
|
|
11101
|
-
}
|
|
11102
|
-
|
|
11103
|
-
.muka-datepicker__field--sm .muka-input__native {
|
|
11104
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
11105
|
-
font-size: var(--text-input-sm-fontSize);
|
|
11106
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
11107
|
-
}
|
|
11108
|
-
|
|
11109
|
-
/* Tint the browser calendar indicator to match the field foreground. */
|
|
11110
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
11111
|
-
cursor: pointer;
|
|
11112
|
-
opacity: 0.6;
|
|
11113
|
-
}
|
|
11114
|
-
|
|
11115
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
11116
|
-
opacity: 1;
|
|
11117
|
-
}
|
|
11118
|
-
|
|
11119
|
-
.muka-datepicker__field .muka-input__native:disabled {
|
|
11120
|
-
cursor: not-allowed;
|
|
11117
|
+
.muka-dialog .muka-bottombar {
|
|
11118
|
+
position: relative;
|
|
11119
|
+
z-index: 1;
|
|
11120
|
+
box-shadow: var(--shadow-level2);
|
|
11121
11121
|
}
|
|
11122
11122
|
|
|
11123
11123
|
|
|
@@ -12438,6 +12438,128 @@ li.muka-listitem {
|
|
|
12438
12438
|
}
|
|
12439
12439
|
|
|
12440
12440
|
|
|
12441
|
+
/* ChatPhotoGrid */
|
|
12442
|
+
/* ChatPhotoGrid Component Styles */
|
|
12443
|
+
|
|
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
|
+
|
|
12441
12563
|
/* Checkbox */
|
|
12442
12564
|
/* Checkbox Component Styles - Using Muka Design Tokens */
|
|
12443
12565
|
|
|
@@ -12572,158 +12694,36 @@ li.muka-listitem {
|
|
|
12572
12694
|
box-shadow: none;
|
|
12573
12695
|
}
|
|
12574
12696
|
|
|
12575
|
-
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12576
|
-
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12577
|
-
color: var(--checkbox-color-disabled-icon);
|
|
12578
|
-
}
|
|
12579
|
-
|
|
12580
|
-
/* Label text */
|
|
12581
|
-
.muka-checkbox__label {
|
|
12582
|
-
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12583
|
-
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12584
|
-
font-size: var(--text-label-lg-regular-fontSize);
|
|
12585
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12586
|
-
color: var(--color-text-default-default);
|
|
12587
|
-
}
|
|
12588
|
-
|
|
12589
|
-
.muka-checkbox--sm .muka-checkbox__label {
|
|
12590
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
12591
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
12592
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
12593
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
12594
|
-
}
|
|
12595
|
-
|
|
12596
|
-
.muka-checkbox--lg .muka-checkbox__label {
|
|
12597
|
-
font-family: var(--text-label-xl-regular-fontFamily);
|
|
12598
|
-
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12599
|
-
font-size: var(--text-label-xl-regular-fontSize);
|
|
12600
|
-
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12601
|
-
}
|
|
12602
|
-
|
|
12603
|
-
.muka-checkbox--disabled .muka-checkbox__label {
|
|
12604
|
-
color: var(--color-text-subtle-default);
|
|
12605
|
-
}
|
|
12606
|
-
|
|
12607
|
-
|
|
12608
|
-
/* ChatPhotoGrid */
|
|
12609
|
-
/* ChatPhotoGrid Component Styles */
|
|
12610
|
-
|
|
12611
|
-
/*
|
|
12612
|
-
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12613
|
-
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12614
|
-
*/
|
|
12615
|
-
.muka-chat-photo-grid {
|
|
12616
|
-
display: grid;
|
|
12617
|
-
gap: var(--chatphotogrid-gap);
|
|
12618
|
-
width: 100%;
|
|
12619
|
-
min-width: 0;
|
|
12620
|
-
overflow: hidden;
|
|
12621
|
-
border-radius: var(--chatphotogrid-radius);
|
|
12622
|
-
}
|
|
12623
|
-
|
|
12624
|
-
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12625
|
-
|
|
12626
|
-
.muka-chat-photo-grid__tile {
|
|
12627
|
-
position: relative;
|
|
12628
|
-
display: block;
|
|
12629
|
-
overflow: hidden;
|
|
12630
|
-
min-width: 0;
|
|
12631
|
-
padding: 0;
|
|
12632
|
-
margin: 0;
|
|
12633
|
-
border: none;
|
|
12634
|
-
background-color: var(--chatphotogrid-color-placeholder);
|
|
12635
|
-
aspect-ratio: 1 / 1;
|
|
12636
|
-
}
|
|
12637
|
-
|
|
12638
|
-
button.muka-chat-photo-grid__tile {
|
|
12639
|
-
cursor: pointer;
|
|
12640
|
-
appearance: none;
|
|
12641
|
-
}
|
|
12642
|
-
|
|
12643
|
-
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12644
|
-
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12645
|
-
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12646
|
-
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12647
|
-
}
|
|
12648
|
-
|
|
12649
|
-
.muka-chat-photo-grid__image {
|
|
12650
|
-
display: block;
|
|
12651
|
-
width: 100%;
|
|
12652
|
-
height: 100%;
|
|
12653
|
-
object-fit: cover;
|
|
12654
|
-
}
|
|
12655
|
-
|
|
12656
|
-
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12657
|
-
|
|
12658
|
-
.muka-chat-photo-grid__overflow {
|
|
12659
|
-
position: absolute;
|
|
12660
|
-
inset: 0;
|
|
12661
|
-
display: flex;
|
|
12662
|
-
align-items: center;
|
|
12663
|
-
justify-content: center;
|
|
12664
|
-
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12665
|
-
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12666
|
-
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12667
|
-
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12668
|
-
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12669
|
-
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12670
|
-
}
|
|
12671
|
-
|
|
12672
|
-
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12673
|
-
|
|
12674
|
-
.muka-chat-photo-grid--1 {
|
|
12675
|
-
grid-template-columns: 1fr;
|
|
12676
|
-
}
|
|
12677
|
-
|
|
12678
|
-
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12679
|
-
aspect-ratio: 4 / 3;
|
|
12680
|
-
}
|
|
12681
|
-
|
|
12682
|
-
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12683
|
-
aspect-ratio: 3 / 4;
|
|
12684
|
-
}
|
|
12685
|
-
|
|
12686
|
-
.muka-chat-photo-grid--2 {
|
|
12687
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12688
|
-
}
|
|
12689
|
-
|
|
12690
|
-
.muka-chat-photo-grid--3 {
|
|
12691
|
-
grid-template-columns: repeat(3, 1fr);
|
|
12692
|
-
}
|
|
12693
|
-
|
|
12694
|
-
.muka-chat-photo-grid--4 {
|
|
12695
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12696
|
-
}
|
|
12697
|
-
|
|
12698
|
-
/* 5 photos: a 2-up row above a 3-up row, on a shared 6-column track */
|
|
12699
|
-
.muka-chat-photo-grid--5 {
|
|
12700
|
-
grid-template-columns: repeat(6, 1fr);
|
|
12701
|
-
}
|
|
12702
|
-
|
|
12703
|
-
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(-n + 2) {
|
|
12704
|
-
grid-column: span 3;
|
|
12697
|
+
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12698
|
+
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12699
|
+
color: var(--checkbox-color-disabled-icon);
|
|
12705
12700
|
}
|
|
12706
12701
|
|
|
12707
|
-
|
|
12708
|
-
|
|
12702
|
+
/* Label text */
|
|
12703
|
+
.muka-checkbox__label {
|
|
12704
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12705
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12706
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
12707
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12708
|
+
color: var(--color-text-default-default);
|
|
12709
12709
|
}
|
|
12710
12710
|
|
|
12711
|
-
.muka-
|
|
12712
|
-
|
|
12713
|
-
|
|
12711
|
+
.muka-checkbox--sm .muka-checkbox__label {
|
|
12712
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
12713
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
12714
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
12715
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
12714
12716
|
}
|
|
12715
12717
|
|
|
12716
|
-
|
|
12717
|
-
|
|
12718
|
-
|
|
12719
|
-
|
|
12720
|
-
|
|
12721
|
-
|
|
12718
|
+
.muka-checkbox--lg .muka-checkbox__label {
|
|
12719
|
+
font-family: var(--text-label-xl-regular-fontFamily);
|
|
12720
|
+
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12721
|
+
font-size: var(--text-label-xl-regular-fontSize);
|
|
12722
|
+
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12723
|
+
}
|
|
12722
12724
|
|
|
12723
|
-
|
|
12724
|
-
|
|
12725
|
-
-webkit-print-color-adjust: exact;
|
|
12726
|
-
}
|
|
12725
|
+
.muka-checkbox--disabled .muka-checkbox__label {
|
|
12726
|
+
color: var(--color-text-subtle-default);
|
|
12727
12727
|
}
|
|
12728
12728
|
|
|
12729
12729
|
|
|
@@ -14012,6 +14012,114 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14012
14012
|
}
|
|
14013
14013
|
|
|
14014
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
|
+
|
|
14015
14123
|
/* BottomBar */
|
|
14016
14124
|
/* BottomBar Component Styles */
|
|
14017
14125
|
|
|
@@ -14328,114 +14436,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14328
14436
|
}
|
|
14329
14437
|
|
|
14330
14438
|
|
|
14331
|
-
/* BadgeNumber */
|
|
14332
|
-
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
14333
|
-
|
|
14334
|
-
.muka-badge-number {
|
|
14335
|
-
display: inline-flex;
|
|
14336
|
-
align-items: center;
|
|
14337
|
-
justify-content: center;
|
|
14338
|
-
border-radius: var(--border-radius-full);
|
|
14339
|
-
white-space: nowrap;
|
|
14340
|
-
user-select: none;
|
|
14341
|
-
box-sizing: border-box;
|
|
14342
|
-
}
|
|
14343
|
-
|
|
14344
|
-
/*
|
|
14345
|
-
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
14346
|
-
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
14347
|
-
* is handled by the fixed height + align-items: center.
|
|
14348
|
-
*/
|
|
14349
|
-
.muka-badge-number--2xs {
|
|
14350
|
-
height: var(--badge-number-size-2xs);
|
|
14351
|
-
min-width: var(--badge-number-size-2xs);
|
|
14352
|
-
padding: 0 var(--badge-number-padding-2xs);
|
|
14353
|
-
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14354
|
-
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14355
|
-
font-size: var(--text-label-xs-bold-fontSize);
|
|
14356
|
-
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14357
|
-
}
|
|
14358
|
-
|
|
14359
|
-
.muka-badge-number--xs {
|
|
14360
|
-
height: var(--badge-number-size-xs);
|
|
14361
|
-
min-width: var(--badge-number-size-xs);
|
|
14362
|
-
padding: 0 var(--badge-number-padding-xs);
|
|
14363
|
-
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14364
|
-
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14365
|
-
font-size: var(--text-label-sm-bold-fontSize);
|
|
14366
|
-
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14367
|
-
}
|
|
14368
|
-
|
|
14369
|
-
.muka-badge-number--sm {
|
|
14370
|
-
height: var(--badge-number-size-sm);
|
|
14371
|
-
min-width: var(--badge-number-size-sm);
|
|
14372
|
-
padding: 0 var(--badge-number-padding-sm);
|
|
14373
|
-
font-family: var(--text-label-md-bold-fontFamily);
|
|
14374
|
-
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14375
|
-
font-size: var(--text-label-md-bold-fontSize);
|
|
14376
|
-
line-height: var(--text-label-md-bold-lineHeight);
|
|
14377
|
-
}
|
|
14378
|
-
|
|
14379
|
-
.muka-badge-number--md {
|
|
14380
|
-
height: var(--badge-number-size-md);
|
|
14381
|
-
min-width: var(--badge-number-size-md);
|
|
14382
|
-
padding: 0 var(--badge-number-padding-md);
|
|
14383
|
-
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14384
|
-
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14385
|
-
font-size: var(--text-label-lg-bold-fontSize);
|
|
14386
|
-
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14387
|
-
}
|
|
14388
|
-
|
|
14389
|
-
.muka-badge-number--lg {
|
|
14390
|
-
height: var(--badge-number-size-lg);
|
|
14391
|
-
min-width: var(--badge-number-size-lg);
|
|
14392
|
-
padding: 0 var(--badge-number-padding-lg);
|
|
14393
|
-
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14394
|
-
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14395
|
-
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14396
|
-
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14397
|
-
}
|
|
14398
|
-
|
|
14399
|
-
.muka-badge-number__label {
|
|
14400
|
-
/*
|
|
14401
|
-
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14402
|
-
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14403
|
-
* is unaffected because the badge height is fixed and content is centered.
|
|
14404
|
-
*/
|
|
14405
|
-
line-height: normal;
|
|
14406
|
-
}
|
|
14407
|
-
|
|
14408
|
-
/* Neutral variant */
|
|
14409
|
-
.muka-badge-number--neutral {
|
|
14410
|
-
background-color: var(--color-surface-level1);
|
|
14411
|
-
color: var(--color-text-default-default);
|
|
14412
|
-
}
|
|
14413
|
-
|
|
14414
|
-
/* Info variant */
|
|
14415
|
-
.muka-badge-number--info {
|
|
14416
|
-
background-color: var(--color-state-info-contrast);
|
|
14417
|
-
color: var(--color-text-default-inverse);
|
|
14418
|
-
}
|
|
14419
|
-
|
|
14420
|
-
/* Success variant */
|
|
14421
|
-
.muka-badge-number--success {
|
|
14422
|
-
background-color: var(--color-state-success-contrast);
|
|
14423
|
-
color: var(--color-text-default-inverse);
|
|
14424
|
-
}
|
|
14425
|
-
|
|
14426
|
-
/* Warning variant */
|
|
14427
|
-
.muka-badge-number--warning {
|
|
14428
|
-
background-color: var(--color-state-warning-contrast);
|
|
14429
|
-
color: var(--color-text-default-inverse);
|
|
14430
|
-
}
|
|
14431
|
-
|
|
14432
|
-
/* Error variant */
|
|
14433
|
-
.muka-badge-number--error {
|
|
14434
|
-
background-color: var(--color-state-error-contrast);
|
|
14435
|
-
color: var(--color-text-default-inverse);
|
|
14436
|
-
}
|
|
14437
|
-
|
|
14438
|
-
|
|
14439
14439
|
/* Badge */
|
|
14440
14440
|
/* Badge Component Styles - Using Muka Design Tokens */
|
|
14441
14441
|
|