@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
|
@@ -2461,6 +2461,116 @@ body {
|
|
|
2461
2461
|
}
|
|
2462
2462
|
|
|
2463
2463
|
|
|
2464
|
+
/* View */
|
|
2465
|
+
/* View Component Styles */
|
|
2466
|
+
|
|
2467
|
+
/* ─── Base layout ─────────────────────────────────────── */
|
|
2468
|
+
|
|
2469
|
+
.muka-view {
|
|
2470
|
+
display: flex;
|
|
2471
|
+
flex-direction: column;
|
|
2472
|
+
height: 100dvh;
|
|
2473
|
+
background-color: var(--view-color-background);
|
|
2474
|
+
position: relative;
|
|
2475
|
+
isolation: isolate;
|
|
2476
|
+
box-sizing: border-box;
|
|
2477
|
+
|
|
2478
|
+
/* Width reserved for the footer nav once it becomes a left sidebar at the
|
|
2479
|
+
large tier (matches BottomBar's desktopAs="sidebar" rail width). */
|
|
2480
|
+
--view-sidebar-width: 240px;
|
|
2481
|
+
}
|
|
2482
|
+
|
|
2483
|
+
/* ─── Surface level variants ─────────────────────────── */
|
|
2484
|
+
|
|
2485
|
+
.muka-view--surface-3 {
|
|
2486
|
+
background-color: var(--color-surface-level3);
|
|
2487
|
+
}
|
|
2488
|
+
|
|
2489
|
+
/* ─── Large screens: make room for the left sidebar ──────────
|
|
2490
|
+
A footer nav with desktopAs="sidebar" becomes a fixed 240px left rail at
|
|
2491
|
+
≥1024px. Offset the shell so the TopBar/body clear it — tied to the sidebar's
|
|
2492
|
+
actual presence (the `.muka-bottombar--desktop-sidebar` element) rather than
|
|
2493
|
+
the View's `size`, so a forced `size="lg"` below 1024px never reserves space
|
|
2494
|
+
for a sidebar that hasn't rendered yet. */
|
|
2495
|
+
@media (min-width: 1024px) {
|
|
2496
|
+
.muka-view:has(.muka-bottombar--desktop-sidebar) {
|
|
2497
|
+
padding-left: var(--view-sidebar-width);
|
|
2498
|
+
}
|
|
2499
|
+
}
|
|
2500
|
+
|
|
2501
|
+
/* ─── TopBar elevation ────────────────────────────────── */
|
|
2502
|
+
|
|
2503
|
+
.muka-view .muka-topbar {
|
|
2504
|
+
flex-shrink: 0;
|
|
2505
|
+
z-index: 3;
|
|
2506
|
+
box-shadow: var(--shadow-level2);
|
|
2507
|
+
}
|
|
2508
|
+
|
|
2509
|
+
/* ─── Scrollable body ─────────────────────────────────── */
|
|
2510
|
+
|
|
2511
|
+
.muka-view__body {
|
|
2512
|
+
flex: 1 1 0%;
|
|
2513
|
+
min-height: 0;
|
|
2514
|
+
overflow-y: auto;
|
|
2515
|
+
overflow-x: clip;
|
|
2516
|
+
z-index: 1;
|
|
2517
|
+
|
|
2518
|
+
/* Column flow so the footer (now a scroll-area child) can pin to the bottom and
|
|
2519
|
+
content scrolls *behind* it — letting a floating BottomBar's frosted backdrop
|
|
2520
|
+
reveal the content underneath. */
|
|
2521
|
+
display: flex;
|
|
2522
|
+
flex-direction: column;
|
|
2523
|
+
}
|
|
2524
|
+
|
|
2525
|
+
/* Inner wrapper constrains content width at the large tier (enterprise desktop)
|
|
2526
|
+
using the alias-layer section/container tokens, while the body scrolls full
|
|
2527
|
+
width. Full-bleed below large. */
|
|
2528
|
+
.muka-view__body-inner {
|
|
2529
|
+
width: 100%;
|
|
2530
|
+
/* Grow on short content so the sticky footer is pushed to the bottom rather
|
|
2531
|
+
than floating mid-screen. */
|
|
2532
|
+
flex: 1 0 auto;
|
|
2533
|
+
}
|
|
2534
|
+
|
|
2535
|
+
@media (min-width: 1024px) {
|
|
2536
|
+
.muka-view:not([data-size]) .muka-view__body-inner {
|
|
2537
|
+
max-width: var(--container-max-width-xl);
|
|
2538
|
+
margin-inline: auto;
|
|
2539
|
+
padding-inline: var(--section-padding-horizontal-default);
|
|
2540
|
+
}
|
|
2541
|
+
}
|
|
2542
|
+
|
|
2543
|
+
.muka-view[data-size='lg'] .muka-view__body-inner {
|
|
2544
|
+
max-width: var(--container-max-width-xl);
|
|
2545
|
+
margin-inline: auto;
|
|
2546
|
+
padding-inline: var(--section-padding-horizontal-default);
|
|
2547
|
+
}
|
|
2548
|
+
|
|
2549
|
+
/* ─── Footer (e.g. BottomBar) ─────────────────────────── */
|
|
2550
|
+
|
|
2551
|
+
.muka-view__footer {
|
|
2552
|
+
position: sticky;
|
|
2553
|
+
bottom: 0;
|
|
2554
|
+
flex-shrink: 0;
|
|
2555
|
+
z-index: 2;
|
|
2556
|
+
}
|
|
2557
|
+
|
|
2558
|
+
/* Inside an AppShell, the persistent left rail replaces the per-view bottom
|
|
2559
|
+
navigation at the large tier, so hide a footer that holds a navigation bar.
|
|
2560
|
+
Scoped to `.muka-app-shell` so bare Views (and the standalone
|
|
2561
|
+
desktopAs="sidebar" footer pattern above) are unaffected. Action-bar footers
|
|
2562
|
+
(`.muka-bottombar--actions`) don't match and remain at the bottom. */
|
|
2563
|
+
@media (min-width: 1024px) {
|
|
2564
|
+
.muka-app-shell .muka-view__footer:has(.muka-bottombar--navigation) {
|
|
2565
|
+
display: none;
|
|
2566
|
+
}
|
|
2567
|
+
}
|
|
2568
|
+
|
|
2569
|
+
.muka-app-shell[data-size='lg'] .muka-view__footer:has(.muka-bottombar--navigation) {
|
|
2570
|
+
display: none;
|
|
2571
|
+
}
|
|
2572
|
+
|
|
2573
|
+
|
|
2464
2574
|
/* Typography */
|
|
2465
2575
|
.muka-typography-catalog {
|
|
2466
2576
|
display: flex;
|
|
@@ -2811,122 +2921,175 @@ body {
|
|
|
2811
2921
|
}
|
|
2812
2922
|
|
|
2813
2923
|
|
|
2814
|
-
/*
|
|
2815
|
-
/*
|
|
2816
|
-
|
|
2817
|
-
/* ─── Base layout ─────────────────────────────────────── */
|
|
2924
|
+
/* Toggle */
|
|
2925
|
+
/* Toggle Component Styles - Using Muka Design Tokens */
|
|
2818
2926
|
|
|
2819
|
-
|
|
2927
|
+
/* Wrapper container */
|
|
2928
|
+
.muka-toggle {
|
|
2820
2929
|
display: flex;
|
|
2821
|
-
|
|
2822
|
-
|
|
2823
|
-
background-color: var(--view-color-background);
|
|
2930
|
+
align-items: center;
|
|
2931
|
+
gap: var(--spacing-2);
|
|
2824
2932
|
position: relative;
|
|
2825
|
-
|
|
2826
|
-
box-sizing: border-box;
|
|
2827
|
-
|
|
2828
|
-
/* Width reserved for the footer nav once it becomes a left sidebar at the
|
|
2829
|
-
large tier (matches BottomBar's desktopAs="sidebar" rail width). */
|
|
2830
|
-
--view-sidebar-width: 240px;
|
|
2933
|
+
padding: var(--spacing-4) 0;
|
|
2831
2934
|
}
|
|
2832
2935
|
|
|
2833
|
-
|
|
2834
|
-
|
|
2835
|
-
.muka-view--surface-3 {
|
|
2836
|
-
background-color: var(--color-surface-level3);
|
|
2936
|
+
.muka-toggle--with-caption {
|
|
2937
|
+
padding: var(--spacing-5) 0;
|
|
2837
2938
|
}
|
|
2838
2939
|
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
≥1024px. Offset the shell so the TopBar/body clear it — tied to the sidebar's
|
|
2842
|
-
actual presence (the `.muka-bottombar--desktop-sidebar` element) rather than
|
|
2843
|
-
the View's `size`, so a forced `size="lg"` below 1024px never reserves space
|
|
2844
|
-
for a sidebar that hasn't rendered yet. */
|
|
2845
|
-
@media (min-width: 1024px) {
|
|
2846
|
-
.muka-view:has(.muka-bottombar--desktop-sidebar) {
|
|
2847
|
-
padding-left: var(--view-sidebar-width);
|
|
2848
|
-
}
|
|
2940
|
+
.muka-toggle--disabled {
|
|
2941
|
+
opacity: 0.6;
|
|
2849
2942
|
}
|
|
2850
2943
|
|
|
2851
|
-
/*
|
|
2852
|
-
|
|
2853
|
-
|
|
2944
|
+
/* Icon */
|
|
2945
|
+
.muka-toggle__icon {
|
|
2946
|
+
display: flex;
|
|
2947
|
+
align-items: center;
|
|
2948
|
+
justify-content: center;
|
|
2854
2949
|
flex-shrink: 0;
|
|
2855
|
-
|
|
2856
|
-
|
|
2950
|
+
width: var(--icon-size-default);
|
|
2951
|
+
height: var(--icon-size-default);
|
|
2952
|
+
color: var(--color-text-default-default);
|
|
2857
2953
|
}
|
|
2858
2954
|
|
|
2859
|
-
|
|
2860
|
-
|
|
2861
|
-
|
|
2862
|
-
|
|
2863
|
-
min-height: 0;
|
|
2864
|
-
overflow-y: auto;
|
|
2865
|
-
overflow-x: clip;
|
|
2866
|
-
z-index: 1;
|
|
2955
|
+
.muka-toggle__icon svg {
|
|
2956
|
+
width: 100%;
|
|
2957
|
+
height: 100%;
|
|
2958
|
+
}
|
|
2867
2959
|
|
|
2868
|
-
|
|
2869
|
-
|
|
2870
|
-
reveal the content underneath. */
|
|
2960
|
+
/* Content area (label + caption) */
|
|
2961
|
+
.muka-toggle__content {
|
|
2871
2962
|
display: flex;
|
|
2872
2963
|
flex-direction: column;
|
|
2964
|
+
flex: 1;
|
|
2965
|
+
min-width: 0;
|
|
2966
|
+
gap: var(--spacing-1);
|
|
2873
2967
|
}
|
|
2874
2968
|
|
|
2875
|
-
/*
|
|
2876
|
-
|
|
2877
|
-
|
|
2878
|
-
|
|
2879
|
-
|
|
2880
|
-
|
|
2881
|
-
|
|
2882
|
-
|
|
2969
|
+
/* Label */
|
|
2970
|
+
.muka-toggle__label {
|
|
2971
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
2972
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
2973
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
2974
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
2975
|
+
color: var(--color-text-default-default);
|
|
2976
|
+
cursor: pointer;
|
|
2883
2977
|
}
|
|
2884
2978
|
|
|
2885
|
-
|
|
2886
|
-
|
|
2887
|
-
|
|
2888
|
-
|
|
2889
|
-
|
|
2890
|
-
}
|
|
2979
|
+
.muka-toggle--with-caption .muka-toggle__label {
|
|
2980
|
+
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
2981
|
+
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
2982
|
+
font-size: var(--text-label-lg-semibold-fontSize);
|
|
2983
|
+
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
2891
2984
|
}
|
|
2892
2985
|
|
|
2893
|
-
.muka-
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
padding-inline: var(--section-padding-horizontal-default);
|
|
2986
|
+
.muka-toggle--disabled .muka-toggle__label {
|
|
2987
|
+
color: var(--color-text-subtle-default);
|
|
2988
|
+
cursor: not-allowed;
|
|
2897
2989
|
}
|
|
2898
2990
|
|
|
2899
|
-
/*
|
|
2900
|
-
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
|
|
2904
|
-
|
|
2905
|
-
|
|
2991
|
+
/* Caption */
|
|
2992
|
+
.muka-toggle__caption {
|
|
2993
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
2994
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
2995
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
2996
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
2997
|
+
color: var(--color-text-subtle-default);
|
|
2906
2998
|
}
|
|
2907
2999
|
|
|
2908
|
-
/*
|
|
2909
|
-
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
.muka-app-shell .muka-view__footer:has(.muka-bottombar--navigation) {
|
|
2915
|
-
display: none;
|
|
2916
|
-
}
|
|
3000
|
+
/* Switch container */
|
|
3001
|
+
.muka-toggle__switch {
|
|
3002
|
+
position: relative;
|
|
3003
|
+
display: inline-flex;
|
|
3004
|
+
flex-shrink: 0;
|
|
3005
|
+
cursor: pointer;
|
|
2917
3006
|
}
|
|
2918
3007
|
|
|
2919
|
-
.muka-
|
|
2920
|
-
|
|
3008
|
+
.muka-toggle--disabled .muka-toggle__switch {
|
|
3009
|
+
cursor: not-allowed;
|
|
2921
3010
|
}
|
|
2922
3011
|
|
|
2923
|
-
|
|
2924
|
-
|
|
2925
|
-
|
|
2926
|
-
|
|
2927
|
-
|
|
2928
|
-
|
|
2929
|
-
|
|
3012
|
+
/* Hidden native input */
|
|
3013
|
+
.muka-toggle__input {
|
|
3014
|
+
position: absolute;
|
|
3015
|
+
width: 1px;
|
|
3016
|
+
height: 1px;
|
|
3017
|
+
padding: 0;
|
|
3018
|
+
margin: -1px;
|
|
3019
|
+
overflow: hidden;
|
|
3020
|
+
clip: rect(0, 0, 0, 0);
|
|
3021
|
+
white-space: nowrap;
|
|
3022
|
+
border: 0;
|
|
3023
|
+
}
|
|
3024
|
+
|
|
3025
|
+
/* Track (background pill) */
|
|
3026
|
+
.muka-toggle__track {
|
|
3027
|
+
display: flex;
|
|
3028
|
+
align-items: center;
|
|
3029
|
+
width: var(--toggle-track-width);
|
|
3030
|
+
height: var(--toggle-track-height);
|
|
3031
|
+
border-radius: var(--toggle-track-radius);
|
|
3032
|
+
background-color: var(--toggle-track-color-off);
|
|
3033
|
+
transition: background-color 0.2s ease;
|
|
3034
|
+
box-shadow: inset 0 1px 4px 0 rgba(0, 0, 0, 0.16);
|
|
3035
|
+
position: relative;
|
|
3036
|
+
}
|
|
3037
|
+
|
|
3038
|
+
/* Knob (sliding circle) */
|
|
3039
|
+
.muka-toggle__knob {
|
|
3040
|
+
position: absolute;
|
|
3041
|
+
width: var(--toggle-knob-size);
|
|
3042
|
+
height: var(--toggle-knob-size);
|
|
3043
|
+
border-radius: var(--border-radius-full);
|
|
3044
|
+
background-color: var(--toggle-knob-color-default);
|
|
3045
|
+
box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1);
|
|
3046
|
+
left: var(--toggle-knob-offset);
|
|
3047
|
+
transition: left 0.2s ease, transform 0.2s ease;
|
|
3048
|
+
}
|
|
3049
|
+
|
|
3050
|
+
/* Focus state */
|
|
3051
|
+
.muka-toggle__input:focus-visible + .muka-toggle__track {
|
|
3052
|
+
outline: 2px solid var(--color-border-focus);
|
|
3053
|
+
outline-offset: 2px;
|
|
3054
|
+
}
|
|
3055
|
+
|
|
3056
|
+
/* Checked (on) state */
|
|
3057
|
+
.muka-toggle__input:checked + .muka-toggle__track {
|
|
3058
|
+
background-color: var(--toggle-track-color-on);
|
|
3059
|
+
}
|
|
3060
|
+
|
|
3061
|
+
.muka-toggle__input:checked + .muka-toggle__track .muka-toggle__knob {
|
|
3062
|
+
left: calc(var(--toggle-track-width) - var(--toggle-knob-size) - var(--toggle-knob-offset));
|
|
3063
|
+
}
|
|
3064
|
+
|
|
3065
|
+
/* Disabled state */
|
|
3066
|
+
.muka-toggle--disabled .muka-toggle__track {
|
|
3067
|
+
background-color: var(--toggle-track-color-disabled);
|
|
3068
|
+
box-shadow: none;
|
|
3069
|
+
}
|
|
3070
|
+
|
|
3071
|
+
.muka-toggle--disabled .muka-toggle__knob {
|
|
3072
|
+
background-color: var(--toggle-knob-color-disabled);
|
|
3073
|
+
box-shadow: none;
|
|
3074
|
+
}
|
|
3075
|
+
|
|
3076
|
+
/* Divider */
|
|
3077
|
+
.muka-toggle__divider {
|
|
3078
|
+
position: absolute;
|
|
3079
|
+
bottom: 0;
|
|
3080
|
+
left: 0;
|
|
3081
|
+
right: 0;
|
|
3082
|
+
height: 1px;
|
|
3083
|
+
background-color: var(--color-border-muted);
|
|
3084
|
+
}
|
|
3085
|
+
|
|
3086
|
+
|
|
3087
|
+
/* Toast */
|
|
3088
|
+
/* Toast Component Styles - Using Muka Design Tokens */
|
|
3089
|
+
|
|
3090
|
+
.muka-toast {
|
|
3091
|
+
display: flex;
|
|
3092
|
+
align-items: flex-start;
|
|
2930
3093
|
gap: var(--toast-gap);
|
|
2931
3094
|
padding: var(--toast-padding-y) var(--toast-padding-x);
|
|
2932
3095
|
border-radius: var(--toast-radius);
|
|
@@ -3646,166 +3809,249 @@ body {
|
|
|
3646
3809
|
}
|
|
3647
3810
|
|
|
3648
3811
|
|
|
3649
|
-
/*
|
|
3650
|
-
/*
|
|
3812
|
+
/* Textarea */
|
|
3813
|
+
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
3651
3814
|
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
align-items: center;
|
|
3815
|
+
.muka-textarea {
|
|
3816
|
+
display: inline-flex;
|
|
3817
|
+
flex-direction: column;
|
|
3656
3818
|
gap: var(--spacing-2);
|
|
3657
|
-
position: relative;
|
|
3658
|
-
padding: var(--spacing-4) 0;
|
|
3659
|
-
}
|
|
3660
|
-
|
|
3661
|
-
.muka-toggle--with-caption {
|
|
3662
|
-
padding: var(--spacing-5) 0;
|
|
3663
|
-
}
|
|
3664
|
-
|
|
3665
|
-
.muka-toggle--disabled {
|
|
3666
|
-
opacity: 0.6;
|
|
3667
3819
|
}
|
|
3668
3820
|
|
|
3669
|
-
/*
|
|
3670
|
-
.muka-
|
|
3671
|
-
display: flex;
|
|
3672
|
-
align-items: center;
|
|
3673
|
-
justify-content: center;
|
|
3674
|
-
flex-shrink: 0;
|
|
3675
|
-
width: var(--icon-size-default);
|
|
3676
|
-
height: var(--icon-size-default);
|
|
3821
|
+
/* Label */
|
|
3822
|
+
.muka-textarea__label {
|
|
3677
3823
|
color: var(--color-text-default-default);
|
|
3824
|
+
cursor: pointer;
|
|
3678
3825
|
}
|
|
3679
3826
|
|
|
3680
|
-
.muka-
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
/* Content area (label + caption) */
|
|
3686
|
-
.muka-toggle__content {
|
|
3687
|
-
display: flex;
|
|
3688
|
-
flex-direction: column;
|
|
3689
|
-
flex: 1;
|
|
3690
|
-
min-width: 0;
|
|
3691
|
-
gap: var(--spacing-1);
|
|
3827
|
+
.muka-textarea__label--sm {
|
|
3828
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
3829
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
3830
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
3831
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
3692
3832
|
}
|
|
3693
3833
|
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
font-
|
|
3697
|
-
font-
|
|
3698
|
-
|
|
3699
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
3700
|
-
color: var(--color-text-default-default);
|
|
3701
|
-
cursor: pointer;
|
|
3834
|
+
.muka-textarea__label--md {
|
|
3835
|
+
font-family: var(--text-label-md-semibold-fontFamily);
|
|
3836
|
+
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
3837
|
+
font-size: var(--text-label-md-semibold-fontSize);
|
|
3838
|
+
line-height: var(--text-label-md-semibold-lineHeight);
|
|
3702
3839
|
}
|
|
3703
3840
|
|
|
3704
|
-
.muka-
|
|
3841
|
+
.muka-textarea__label--lg {
|
|
3705
3842
|
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
3706
3843
|
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
3707
3844
|
font-size: var(--text-label-lg-semibold-fontSize);
|
|
3708
3845
|
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
3709
3846
|
}
|
|
3710
3847
|
|
|
3711
|
-
.muka-
|
|
3712
|
-
color: var(--color-
|
|
3713
|
-
cursor: not-allowed;
|
|
3714
|
-
}
|
|
3715
|
-
|
|
3716
|
-
/* Caption */
|
|
3717
|
-
.muka-toggle__caption {
|
|
3718
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
3719
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
3720
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
3721
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
3722
|
-
color: var(--color-text-subtle-default);
|
|
3723
|
-
}
|
|
3724
|
-
|
|
3725
|
-
/* Switch container */
|
|
3726
|
-
.muka-toggle__switch {
|
|
3727
|
-
position: relative;
|
|
3728
|
-
display: inline-flex;
|
|
3729
|
-
flex-shrink: 0;
|
|
3730
|
-
cursor: pointer;
|
|
3848
|
+
.muka-textarea__required {
|
|
3849
|
+
color: var(--color-state-error-default);
|
|
3731
3850
|
}
|
|
3732
3851
|
|
|
3733
|
-
|
|
3734
|
-
|
|
3852
|
+
/* Field container */
|
|
3853
|
+
.muka-textarea__field {
|
|
3854
|
+
display: flex;
|
|
3855
|
+
background-color: var(--input-field-color-default-background);
|
|
3856
|
+
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
3857
|
+
border-radius: var(--input-field-radius-md);
|
|
3858
|
+
padding: var(--input-field-padding-y) var(--input-field-padding-x);
|
|
3859
|
+
transition: border-color 0.2s ease, background-color 0.2s ease;
|
|
3860
|
+
box-sizing: border-box;
|
|
3735
3861
|
}
|
|
3736
3862
|
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3740
|
-
width: 1px;
|
|
3741
|
-
height: 1px;
|
|
3742
|
-
padding: 0;
|
|
3743
|
-
margin: -1px;
|
|
3744
|
-
overflow: hidden;
|
|
3745
|
-
clip: rect(0, 0, 0, 0);
|
|
3746
|
-
white-space: nowrap;
|
|
3747
|
-
border: 0;
|
|
3863
|
+
.muka-textarea__field--sm {
|
|
3864
|
+
min-height: var(--input-textarea-height-sm);
|
|
3865
|
+
border-radius: var(--input-field-radius-sm);
|
|
3748
3866
|
}
|
|
3749
3867
|
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
align-items: center;
|
|
3754
|
-
width: var(--toggle-track-width);
|
|
3755
|
-
height: var(--toggle-track-height);
|
|
3756
|
-
border-radius: var(--toggle-track-radius);
|
|
3757
|
-
background-color: var(--toggle-track-color-off);
|
|
3758
|
-
transition: background-color 0.2s ease;
|
|
3759
|
-
box-shadow: inset 0 1px 4px 0 rgba(0, 0, 0, 0.16);
|
|
3760
|
-
position: relative;
|
|
3868
|
+
.muka-textarea__field--md {
|
|
3869
|
+
min-height: var(--input-textarea-height-default);
|
|
3870
|
+
border-radius: var(--input-field-radius-md);
|
|
3761
3871
|
}
|
|
3762
3872
|
|
|
3763
|
-
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
width: var(--toggle-knob-size);
|
|
3767
|
-
height: var(--toggle-knob-size);
|
|
3768
|
-
border-radius: var(--border-radius-full);
|
|
3769
|
-
background-color: var(--toggle-knob-color-default);
|
|
3770
|
-
box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1);
|
|
3771
|
-
left: var(--toggle-knob-offset);
|
|
3772
|
-
transition: left 0.2s ease, transform 0.2s ease;
|
|
3873
|
+
.muka-textarea__field--lg {
|
|
3874
|
+
min-height: var(--input-textarea-height-lg);
|
|
3875
|
+
border-radius: var(--input-field-radius-lg);
|
|
3773
3876
|
}
|
|
3774
3877
|
|
|
3775
3878
|
/* Focus state */
|
|
3776
|
-
.muka-
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3781
|
-
/* Checked (on) state */
|
|
3782
|
-
.muka-toggle__input:checked + .muka-toggle__track {
|
|
3783
|
-
background-color: var(--toggle-track-color-on);
|
|
3879
|
+
.muka-textarea__field--focused:not(.muka-textarea__field--disabled) {
|
|
3880
|
+
border-width: var(--border-width-bold);
|
|
3881
|
+
border-color: var(--input-field-color-focus-border);
|
|
3882
|
+
background-color: var(--input-field-color-focus-background);
|
|
3883
|
+
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
3784
3884
|
}
|
|
3785
3885
|
|
|
3786
|
-
|
|
3787
|
-
|
|
3886
|
+
/* Error state */
|
|
3887
|
+
.muka-textarea__field--error:not(.muka-textarea__field--disabled) {
|
|
3888
|
+
border-width: var(--border-width-bold);
|
|
3889
|
+
border-color: var(--input-field-color-error-border);
|
|
3890
|
+
background-color: var(--input-field-color-error-background);
|
|
3891
|
+
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
3788
3892
|
}
|
|
3789
3893
|
|
|
3790
3894
|
/* Disabled state */
|
|
3791
|
-
.muka-
|
|
3792
|
-
background-color: var(--
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
.muka-toggle--disabled .muka-toggle__knob {
|
|
3797
|
-
background-color: var(--toggle-knob-color-disabled);
|
|
3798
|
-
box-shadow: none;
|
|
3895
|
+
.muka-textarea__field--disabled {
|
|
3896
|
+
background-color: var(--input-field-color-disabled-background);
|
|
3897
|
+
border-color: var(--input-field-color-disabled-border);
|
|
3898
|
+
cursor: not-allowed;
|
|
3799
3899
|
}
|
|
3800
3900
|
|
|
3801
|
-
/*
|
|
3802
|
-
.muka-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3901
|
+
/* Native textarea */
|
|
3902
|
+
.muka-textarea__native {
|
|
3903
|
+
flex: 1;
|
|
3904
|
+
border: none;
|
|
3905
|
+
outline: none;
|
|
3906
|
+
background: transparent;
|
|
3907
|
+
color: var(--input-field-color-default-foreground);
|
|
3908
|
+
font-family: var(--text-input-md-fontFamily);
|
|
3909
|
+
font-weight: var(--text-input-md-fontWeight);
|
|
3910
|
+
font-size: var(--text-input-md-fontSize);
|
|
3911
|
+
line-height: var(--text-input-md-lineHeight);
|
|
3912
|
+
padding: 0;
|
|
3913
|
+
width: 100%;
|
|
3914
|
+
min-width: 0;
|
|
3915
|
+
}
|
|
3916
|
+
|
|
3917
|
+
.muka-textarea__field--sm .muka-textarea__native {
|
|
3918
|
+
font-family: var(--text-input-sm-fontFamily);
|
|
3919
|
+
font-weight: var(--text-input-sm-fontWeight);
|
|
3920
|
+
font-size: var(--text-input-sm-fontSize);
|
|
3921
|
+
line-height: var(--text-input-sm-lineHeight);
|
|
3922
|
+
}
|
|
3923
|
+
|
|
3924
|
+
.muka-textarea__field--lg .muka-textarea__native {
|
|
3925
|
+
font-family: var(--text-input-lg-fontFamily);
|
|
3926
|
+
font-weight: var(--text-input-lg-fontWeight);
|
|
3927
|
+
font-size: var(--text-input-lg-fontSize);
|
|
3928
|
+
line-height: var(--text-input-lg-lineHeight);
|
|
3929
|
+
}
|
|
3930
|
+
|
|
3931
|
+
.muka-textarea__native::placeholder {
|
|
3932
|
+
color: var(--color-text-subtle-default);
|
|
3933
|
+
}
|
|
3934
|
+
|
|
3935
|
+
.muka-textarea__field--disabled .muka-textarea__native {
|
|
3936
|
+
color: var(--input-field-color-disabled-foreground);
|
|
3937
|
+
cursor: not-allowed;
|
|
3938
|
+
}
|
|
3939
|
+
|
|
3940
|
+
/* Footer (helper/error + count) */
|
|
3941
|
+
.muka-textarea__footer {
|
|
3942
|
+
display: flex;
|
|
3943
|
+
justify-content: space-between;
|
|
3944
|
+
align-items: flex-start;
|
|
3945
|
+
gap: var(--spacing-2);
|
|
3946
|
+
}
|
|
3947
|
+
|
|
3948
|
+
.muka-textarea__helper {
|
|
3949
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
3950
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
3951
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
3952
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
3953
|
+
color: var(--color-text-subtle-default);
|
|
3954
|
+
margin: 0;
|
|
3955
|
+
}
|
|
3956
|
+
|
|
3957
|
+
.muka-textarea__error {
|
|
3958
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
3959
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
3960
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
3961
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
3962
|
+
color: var(--color-state-error-default);
|
|
3963
|
+
margin: 0;
|
|
3964
|
+
}
|
|
3965
|
+
|
|
3966
|
+
.muka-textarea__count {
|
|
3967
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
3968
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
3969
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
3970
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
3971
|
+
color: var(--color-text-subtle-default);
|
|
3972
|
+
margin-left: auto;
|
|
3973
|
+
}
|
|
3974
|
+
|
|
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
|
+
}
|
|
3809
4055
|
}
|
|
3810
4056
|
|
|
3811
4057
|
|
|
@@ -3999,252 +4245,6 @@ body {
|
|
|
3999
4245
|
}
|
|
4000
4246
|
|
|
4001
4247
|
|
|
4002
|
-
/* Textarea */
|
|
4003
|
-
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
4004
|
-
|
|
4005
|
-
.muka-textarea {
|
|
4006
|
-
display: inline-flex;
|
|
4007
|
-
flex-direction: column;
|
|
4008
|
-
gap: var(--spacing-2);
|
|
4009
|
-
}
|
|
4010
|
-
|
|
4011
|
-
/* Label */
|
|
4012
|
-
.muka-textarea__label {
|
|
4013
|
-
color: var(--color-text-default-default);
|
|
4014
|
-
cursor: pointer;
|
|
4015
|
-
}
|
|
4016
|
-
|
|
4017
|
-
.muka-textarea__label--sm {
|
|
4018
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4019
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4020
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4021
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4022
|
-
}
|
|
4023
|
-
|
|
4024
|
-
.muka-textarea__label--md {
|
|
4025
|
-
font-family: var(--text-label-md-semibold-fontFamily);
|
|
4026
|
-
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
4027
|
-
font-size: var(--text-label-md-semibold-fontSize);
|
|
4028
|
-
line-height: var(--text-label-md-semibold-lineHeight);
|
|
4029
|
-
}
|
|
4030
|
-
|
|
4031
|
-
.muka-textarea__label--lg {
|
|
4032
|
-
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
4033
|
-
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
4034
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
4035
|
-
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
4036
|
-
}
|
|
4037
|
-
|
|
4038
|
-
.muka-textarea__required {
|
|
4039
|
-
color: var(--color-state-error-default);
|
|
4040
|
-
}
|
|
4041
|
-
|
|
4042
|
-
/* Field container */
|
|
4043
|
-
.muka-textarea__field {
|
|
4044
|
-
display: flex;
|
|
4045
|
-
background-color: var(--input-field-color-default-background);
|
|
4046
|
-
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
4047
|
-
border-radius: var(--input-field-radius-md);
|
|
4048
|
-
padding: var(--input-field-padding-y) var(--input-field-padding-x);
|
|
4049
|
-
transition: border-color 0.2s ease, background-color 0.2s ease;
|
|
4050
|
-
box-sizing: border-box;
|
|
4051
|
-
}
|
|
4052
|
-
|
|
4053
|
-
.muka-textarea__field--sm {
|
|
4054
|
-
min-height: var(--input-textarea-height-sm);
|
|
4055
|
-
border-radius: var(--input-field-radius-sm);
|
|
4056
|
-
}
|
|
4057
|
-
|
|
4058
|
-
.muka-textarea__field--md {
|
|
4059
|
-
min-height: var(--input-textarea-height-default);
|
|
4060
|
-
border-radius: var(--input-field-radius-md);
|
|
4061
|
-
}
|
|
4062
|
-
|
|
4063
|
-
.muka-textarea__field--lg {
|
|
4064
|
-
min-height: var(--input-textarea-height-lg);
|
|
4065
|
-
border-radius: var(--input-field-radius-lg);
|
|
4066
|
-
}
|
|
4067
|
-
|
|
4068
|
-
/* Focus state */
|
|
4069
|
-
.muka-textarea__field--focused:not(.muka-textarea__field--disabled) {
|
|
4070
|
-
border-width: var(--border-width-bold);
|
|
4071
|
-
border-color: var(--input-field-color-focus-border);
|
|
4072
|
-
background-color: var(--input-field-color-focus-background);
|
|
4073
|
-
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
4074
|
-
}
|
|
4075
|
-
|
|
4076
|
-
/* Error state */
|
|
4077
|
-
.muka-textarea__field--error:not(.muka-textarea__field--disabled) {
|
|
4078
|
-
border-width: var(--border-width-bold);
|
|
4079
|
-
border-color: var(--input-field-color-error-border);
|
|
4080
|
-
background-color: var(--input-field-color-error-background);
|
|
4081
|
-
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
4082
|
-
}
|
|
4083
|
-
|
|
4084
|
-
/* Disabled state */
|
|
4085
|
-
.muka-textarea__field--disabled {
|
|
4086
|
-
background-color: var(--input-field-color-disabled-background);
|
|
4087
|
-
border-color: var(--input-field-color-disabled-border);
|
|
4088
|
-
cursor: not-allowed;
|
|
4089
|
-
}
|
|
4090
|
-
|
|
4091
|
-
/* Native textarea */
|
|
4092
|
-
.muka-textarea__native {
|
|
4093
|
-
flex: 1;
|
|
4094
|
-
border: none;
|
|
4095
|
-
outline: none;
|
|
4096
|
-
background: transparent;
|
|
4097
|
-
color: var(--input-field-color-default-foreground);
|
|
4098
|
-
font-family: var(--text-input-md-fontFamily);
|
|
4099
|
-
font-weight: var(--text-input-md-fontWeight);
|
|
4100
|
-
font-size: var(--text-input-md-fontSize);
|
|
4101
|
-
line-height: var(--text-input-md-lineHeight);
|
|
4102
|
-
padding: 0;
|
|
4103
|
-
width: 100%;
|
|
4104
|
-
min-width: 0;
|
|
4105
|
-
}
|
|
4106
|
-
|
|
4107
|
-
.muka-textarea__field--sm .muka-textarea__native {
|
|
4108
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
4109
|
-
font-weight: var(--text-input-sm-fontWeight);
|
|
4110
|
-
font-size: var(--text-input-sm-fontSize);
|
|
4111
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
4112
|
-
}
|
|
4113
|
-
|
|
4114
|
-
.muka-textarea__field--lg .muka-textarea__native {
|
|
4115
|
-
font-family: var(--text-input-lg-fontFamily);
|
|
4116
|
-
font-weight: var(--text-input-lg-fontWeight);
|
|
4117
|
-
font-size: var(--text-input-lg-fontSize);
|
|
4118
|
-
line-height: var(--text-input-lg-lineHeight);
|
|
4119
|
-
}
|
|
4120
|
-
|
|
4121
|
-
.muka-textarea__native::placeholder {
|
|
4122
|
-
color: var(--color-text-subtle-default);
|
|
4123
|
-
}
|
|
4124
|
-
|
|
4125
|
-
.muka-textarea__field--disabled .muka-textarea__native {
|
|
4126
|
-
color: var(--input-field-color-disabled-foreground);
|
|
4127
|
-
cursor: not-allowed;
|
|
4128
|
-
}
|
|
4129
|
-
|
|
4130
|
-
/* Footer (helper/error + count) */
|
|
4131
|
-
.muka-textarea__footer {
|
|
4132
|
-
display: flex;
|
|
4133
|
-
justify-content: space-between;
|
|
4134
|
-
align-items: flex-start;
|
|
4135
|
-
gap: var(--spacing-2);
|
|
4136
|
-
}
|
|
4137
|
-
|
|
4138
|
-
.muka-textarea__helper {
|
|
4139
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4140
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4141
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4142
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4143
|
-
color: var(--color-text-subtle-default);
|
|
4144
|
-
margin: 0;
|
|
4145
|
-
}
|
|
4146
|
-
|
|
4147
|
-
.muka-textarea__error {
|
|
4148
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4149
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4150
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4151
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4152
|
-
color: var(--color-state-error-default);
|
|
4153
|
-
margin: 0;
|
|
4154
|
-
}
|
|
4155
|
-
|
|
4156
|
-
.muka-textarea__count {
|
|
4157
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4158
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4159
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4160
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4161
|
-
color: var(--color-text-subtle-default);
|
|
4162
|
-
margin-left: auto;
|
|
4163
|
-
}
|
|
4164
|
-
|
|
4165
|
-
|
|
4166
|
-
/* TextLink */
|
|
4167
|
-
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
4168
|
-
|
|
4169
|
-
.muka-text-link {
|
|
4170
|
-
display: inline;
|
|
4171
|
-
cursor: pointer;
|
|
4172
|
-
text-decoration: underline;
|
|
4173
|
-
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
4174
|
-
text-underline-offset: 0.2em;
|
|
4175
|
-
text-decoration-thickness: from-font;
|
|
4176
|
-
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
4177
|
-
border-radius: var(--border-radius-sm);
|
|
4178
|
-
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
4179
|
-
}
|
|
4180
|
-
|
|
4181
|
-
/* ─── Sizes ───────────────────────────────────────────────
|
|
4182
|
-
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
4183
|
-
.muka-text-link--sm {
|
|
4184
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
4185
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
4186
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
4187
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
4188
|
-
}
|
|
4189
|
-
|
|
4190
|
-
.muka-text-link--base {
|
|
4191
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
4192
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
4193
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
4194
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
4195
|
-
}
|
|
4196
|
-
|
|
4197
|
-
.muka-text-link--lg {
|
|
4198
|
-
font-family: var(--text-body-lg-regular-fontFamily);
|
|
4199
|
-
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
4200
|
-
font-size: var(--text-body-lg-regular-fontSize);
|
|
4201
|
-
line-height: var(--text-body-lg-regular-lineHeight);
|
|
4202
|
-
}
|
|
4203
|
-
|
|
4204
|
-
/* ─── Variant: default (accent) ───────────────────────────
|
|
4205
|
-
Visited repeats the default colour on purpose: the design treats visited and
|
|
4206
|
-
default the same, and pinning it stops the browser's purple from showing. */
|
|
4207
|
-
.muka-text-link--default,
|
|
4208
|
-
.muka-text-link--default:visited {
|
|
4209
|
-
color: var(--color-text-action-default);
|
|
4210
|
-
}
|
|
4211
|
-
|
|
4212
|
-
.muka-text-link--default:hover,
|
|
4213
|
-
.muka-text-link--default:focus-visible {
|
|
4214
|
-
color: var(--color-text-action-hover);
|
|
4215
|
-
}
|
|
4216
|
-
|
|
4217
|
-
.muka-text-link--default:active {
|
|
4218
|
-
color: var(--color-text-action-pressed);
|
|
4219
|
-
}
|
|
4220
|
-
|
|
4221
|
-
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
4222
|
-
Hover, focus and pressed all darken to the default text colour. */
|
|
4223
|
-
.muka-text-link--subtle,
|
|
4224
|
-
.muka-text-link--subtle:visited {
|
|
4225
|
-
color: var(--color-text-subtle-default);
|
|
4226
|
-
}
|
|
4227
|
-
|
|
4228
|
-
.muka-text-link--subtle:hover,
|
|
4229
|
-
.muka-text-link--subtle:focus-visible,
|
|
4230
|
-
.muka-text-link--subtle:active {
|
|
4231
|
-
color: var(--color-text-default-default);
|
|
4232
|
-
}
|
|
4233
|
-
|
|
4234
|
-
/* ─── Focus ───────────────────────────────────────────────
|
|
4235
|
-
Same ring as every other focusable Muka component. */
|
|
4236
|
-
.muka-text-link:focus-visible {
|
|
4237
|
-
outline: 2px solid var(--color-border-focus);
|
|
4238
|
-
outline-offset: 2px;
|
|
4239
|
-
}
|
|
4240
|
-
|
|
4241
|
-
@media (prefers-reduced-motion: reduce) {
|
|
4242
|
-
.muka-text-link {
|
|
4243
|
-
transition: none;
|
|
4244
|
-
}
|
|
4245
|
-
}
|
|
4246
|
-
|
|
4247
|
-
|
|
4248
4248
|
/* Table */
|
|
4249
4249
|
/* Table Component Styles - Using Muka Design Tokens */
|
|
4250
4250
|
|
|
@@ -4535,65 +4535,173 @@ body {
|
|
|
4535
4535
|
text-align: left;
|
|
4536
4536
|
}
|
|
4537
4537
|
|
|
4538
|
-
.muka-table__cell--center,
|
|
4539
|
-
.muka-table__header-cell--center {
|
|
4540
|
-
text-align: center;
|
|
4538
|
+
.muka-table__cell--center,
|
|
4539
|
+
.muka-table__header-cell--center {
|
|
4540
|
+
text-align: center;
|
|
4541
|
+
}
|
|
4542
|
+
|
|
4543
|
+
.muka-table__cell--right,
|
|
4544
|
+
.muka-table__header-cell--right {
|
|
4545
|
+
text-align: right;
|
|
4546
|
+
}
|
|
4547
|
+
|
|
4548
|
+
/* ========================================
|
|
4549
|
+
HEADER CELLS
|
|
4550
|
+
======================================== */
|
|
4551
|
+
|
|
4552
|
+
.muka-table__header-cell {
|
|
4553
|
+
font-family: var(--text-body-base-bold-fontFamily);
|
|
4554
|
+
font-weight: var(--text-body-base-bold-fontWeight);
|
|
4555
|
+
font-size: var(--text-body-base-bold-fontSize);
|
|
4556
|
+
line-height: var(--text-body-base-bold-lineHeight);
|
|
4557
|
+
color: var(--color-text-default-default);
|
|
4558
|
+
white-space: nowrap;
|
|
4559
|
+
}
|
|
4560
|
+
|
|
4561
|
+
.muka-table__header-content {
|
|
4562
|
+
display: inline-flex;
|
|
4563
|
+
align-items: center;
|
|
4564
|
+
gap: var(--spacing-1);
|
|
4565
|
+
}
|
|
4566
|
+
|
|
4567
|
+
/* Sortable */
|
|
4568
|
+
.muka-table__header-cell--sortable {
|
|
4569
|
+
cursor: pointer;
|
|
4570
|
+
user-select: none;
|
|
4571
|
+
}
|
|
4572
|
+
|
|
4573
|
+
.muka-table__header-cell--sortable:hover {
|
|
4574
|
+
color: var(--color-text-default-default);
|
|
4575
|
+
}
|
|
4576
|
+
|
|
4577
|
+
.muka-table__header-cell--sortable:focus-visible {
|
|
4578
|
+
outline: 2px solid var(--color-action-default);
|
|
4579
|
+
outline-offset: -2px;
|
|
4580
|
+
}
|
|
4581
|
+
|
|
4582
|
+
/* Sort icon */
|
|
4583
|
+
.muka-table__sort-icon {
|
|
4584
|
+
width: 1em;
|
|
4585
|
+
height: 1em;
|
|
4586
|
+
opacity: 0.4;
|
|
4587
|
+
transition: opacity 0.2s, transform 0.2s;
|
|
4588
|
+
}
|
|
4589
|
+
|
|
4590
|
+
.muka-table__header-cell--sortable:hover .muka-table__sort-icon {
|
|
4591
|
+
opacity: 0.7;
|
|
4592
|
+
}
|
|
4593
|
+
|
|
4594
|
+
.muka-table__sort-icon--asc,
|
|
4595
|
+
.muka-table__sort-icon--desc {
|
|
4596
|
+
opacity: 1;
|
|
4597
|
+
}
|
|
4598
|
+
|
|
4599
|
+
|
|
4600
|
+
/* SwipeActions */
|
|
4601
|
+
/* SwipeActions Component Styles */
|
|
4602
|
+
|
|
4603
|
+
.muka-swipe-actions {
|
|
4604
|
+
position: relative;
|
|
4605
|
+
overflow: hidden;
|
|
4606
|
+
touch-action: pan-y;
|
|
4607
|
+
-webkit-user-select: none;
|
|
4608
|
+
user-select: none;
|
|
4609
|
+
background-color: var(--color-surface-level3);
|
|
4610
|
+
}
|
|
4611
|
+
|
|
4612
|
+
.muka-swipe-actions--disabled {
|
|
4613
|
+
touch-action: auto;
|
|
4614
|
+
}
|
|
4615
|
+
|
|
4616
|
+
/* ─── Row that holds the actual content ────────────────── */
|
|
4617
|
+
|
|
4618
|
+
.muka-swipe-actions__row {
|
|
4619
|
+
position: relative;
|
|
4620
|
+
z-index: 1;
|
|
4621
|
+
background-color: inherit;
|
|
4622
|
+
will-change: transform;
|
|
4623
|
+
}
|
|
4624
|
+
|
|
4625
|
+
/* ─── Action panels — sit beneath the row ──────────────── */
|
|
4626
|
+
|
|
4627
|
+
.muka-swipe-actions__panel {
|
|
4628
|
+
position: absolute;
|
|
4629
|
+
top: 0;
|
|
4630
|
+
bottom: 0;
|
|
4631
|
+
display: flex;
|
|
4632
|
+
align-items: stretch;
|
|
4633
|
+
z-index: 0;
|
|
4634
|
+
}
|
|
4635
|
+
|
|
4636
|
+
.muka-swipe-actions__panel--left {
|
|
4637
|
+
left: 0;
|
|
4638
|
+
}
|
|
4639
|
+
|
|
4640
|
+
.muka-swipe-actions__panel--right {
|
|
4641
|
+
right: 0;
|
|
4541
4642
|
}
|
|
4542
4643
|
|
|
4543
|
-
|
|
4544
|
-
|
|
4545
|
-
|
|
4644
|
+
/* ─── Single action button ─────────────────────────────── */
|
|
4645
|
+
|
|
4646
|
+
.muka-swipe-actions__button {
|
|
4647
|
+
display: flex;
|
|
4648
|
+
flex-direction: column;
|
|
4649
|
+
align-items: center;
|
|
4650
|
+
justify-content: center;
|
|
4651
|
+
gap: var(--spacing-1);
|
|
4652
|
+
border: none;
|
|
4653
|
+
cursor: pointer;
|
|
4654
|
+
padding: var(--spacing-2);
|
|
4655
|
+
background-color: var(--color-surface-level2);
|
|
4656
|
+
color: var(--color-text-default-default);
|
|
4657
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4658
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4659
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4660
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4661
|
+
-webkit-tap-highlight-color: transparent;
|
|
4662
|
+
transition: filter 0.12s ease;
|
|
4546
4663
|
}
|
|
4547
4664
|
|
|
4548
|
-
|
|
4549
|
-
|
|
4550
|
-
|
|
4665
|
+
.muka-swipe-actions__button:hover {
|
|
4666
|
+
filter: brightness(0.95);
|
|
4667
|
+
}
|
|
4551
4668
|
|
|
4552
|
-
.muka-
|
|
4553
|
-
|
|
4554
|
-
|
|
4555
|
-
font-size: var(--text-body-base-bold-fontSize);
|
|
4556
|
-
line-height: var(--text-body-base-bold-lineHeight);
|
|
4557
|
-
color: var(--color-text-default-default);
|
|
4558
|
-
white-space: nowrap;
|
|
4669
|
+
.muka-swipe-actions__button:focus-visible {
|
|
4670
|
+
outline: 2px solid var(--color-action-default);
|
|
4671
|
+
outline-offset: -2px;
|
|
4559
4672
|
}
|
|
4560
4673
|
|
|
4561
|
-
.muka-
|
|
4674
|
+
.muka-swipe-actions__button-icon {
|
|
4562
4675
|
display: inline-flex;
|
|
4563
4676
|
align-items: center;
|
|
4564
|
-
|
|
4677
|
+
justify-content: center;
|
|
4565
4678
|
}
|
|
4566
4679
|
|
|
4567
|
-
/*
|
|
4568
|
-
.muka-table__header-cell--sortable {
|
|
4569
|
-
cursor: pointer;
|
|
4570
|
-
user-select: none;
|
|
4571
|
-
}
|
|
4680
|
+
/* ─── Color variants ───────────────────────────────────── */
|
|
4572
4681
|
|
|
4573
|
-
.muka-
|
|
4682
|
+
.muka-swipe-actions__button--neutral {
|
|
4683
|
+
background-color: var(--color-surface-level2);
|
|
4574
4684
|
color: var(--color-text-default-default);
|
|
4575
4685
|
}
|
|
4576
4686
|
|
|
4577
|
-
.muka-
|
|
4578
|
-
|
|
4579
|
-
|
|
4687
|
+
.muka-swipe-actions__button--primary {
|
|
4688
|
+
background-color: var(--color-action-default);
|
|
4689
|
+
color: var(--color-text-default-inverse);
|
|
4580
4690
|
}
|
|
4581
4691
|
|
|
4582
|
-
|
|
4583
|
-
|
|
4584
|
-
|
|
4585
|
-
height: 1em;
|
|
4586
|
-
opacity: 0.4;
|
|
4587
|
-
transition: opacity 0.2s, transform 0.2s;
|
|
4692
|
+
.muka-swipe-actions__button--success {
|
|
4693
|
+
background-color: var(--color-state-success-default);
|
|
4694
|
+
color: var(--color-text-default-inverse);
|
|
4588
4695
|
}
|
|
4589
4696
|
|
|
4590
|
-
.muka-
|
|
4591
|
-
|
|
4697
|
+
.muka-swipe-actions__button--warning {
|
|
4698
|
+
background-color: var(--color-state-warning-default);
|
|
4699
|
+
color: var(--color-text-default-default);
|
|
4592
4700
|
}
|
|
4593
4701
|
|
|
4594
|
-
.muka-
|
|
4595
|
-
|
|
4596
|
-
|
|
4702
|
+
.muka-swipe-actions__button--destructive {
|
|
4703
|
+
background-color: var(--color-state-error-default);
|
|
4704
|
+
color: var(--color-text-default-inverse);
|
|
4597
4705
|
}
|
|
4598
4706
|
|
|
4599
4707
|
|
|
@@ -4760,114 +4868,6 @@ body {
|
|
|
4760
4868
|
}
|
|
4761
4869
|
|
|
4762
4870
|
|
|
4763
|
-
/* SwipeActions */
|
|
4764
|
-
/* SwipeActions Component Styles */
|
|
4765
|
-
|
|
4766
|
-
.muka-swipe-actions {
|
|
4767
|
-
position: relative;
|
|
4768
|
-
overflow: hidden;
|
|
4769
|
-
touch-action: pan-y;
|
|
4770
|
-
-webkit-user-select: none;
|
|
4771
|
-
user-select: none;
|
|
4772
|
-
background-color: var(--color-surface-level3);
|
|
4773
|
-
}
|
|
4774
|
-
|
|
4775
|
-
.muka-swipe-actions--disabled {
|
|
4776
|
-
touch-action: auto;
|
|
4777
|
-
}
|
|
4778
|
-
|
|
4779
|
-
/* ─── Row that holds the actual content ────────────────── */
|
|
4780
|
-
|
|
4781
|
-
.muka-swipe-actions__row {
|
|
4782
|
-
position: relative;
|
|
4783
|
-
z-index: 1;
|
|
4784
|
-
background-color: inherit;
|
|
4785
|
-
will-change: transform;
|
|
4786
|
-
}
|
|
4787
|
-
|
|
4788
|
-
/* ─── Action panels — sit beneath the row ──────────────── */
|
|
4789
|
-
|
|
4790
|
-
.muka-swipe-actions__panel {
|
|
4791
|
-
position: absolute;
|
|
4792
|
-
top: 0;
|
|
4793
|
-
bottom: 0;
|
|
4794
|
-
display: flex;
|
|
4795
|
-
align-items: stretch;
|
|
4796
|
-
z-index: 0;
|
|
4797
|
-
}
|
|
4798
|
-
|
|
4799
|
-
.muka-swipe-actions__panel--left {
|
|
4800
|
-
left: 0;
|
|
4801
|
-
}
|
|
4802
|
-
|
|
4803
|
-
.muka-swipe-actions__panel--right {
|
|
4804
|
-
right: 0;
|
|
4805
|
-
}
|
|
4806
|
-
|
|
4807
|
-
/* ─── Single action button ─────────────────────────────── */
|
|
4808
|
-
|
|
4809
|
-
.muka-swipe-actions__button {
|
|
4810
|
-
display: flex;
|
|
4811
|
-
flex-direction: column;
|
|
4812
|
-
align-items: center;
|
|
4813
|
-
justify-content: center;
|
|
4814
|
-
gap: var(--spacing-1);
|
|
4815
|
-
border: none;
|
|
4816
|
-
cursor: pointer;
|
|
4817
|
-
padding: var(--spacing-2);
|
|
4818
|
-
background-color: var(--color-surface-level2);
|
|
4819
|
-
color: var(--color-text-default-default);
|
|
4820
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4821
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4822
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4823
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4824
|
-
-webkit-tap-highlight-color: transparent;
|
|
4825
|
-
transition: filter 0.12s ease;
|
|
4826
|
-
}
|
|
4827
|
-
|
|
4828
|
-
.muka-swipe-actions__button:hover {
|
|
4829
|
-
filter: brightness(0.95);
|
|
4830
|
-
}
|
|
4831
|
-
|
|
4832
|
-
.muka-swipe-actions__button:focus-visible {
|
|
4833
|
-
outline: 2px solid var(--color-action-default);
|
|
4834
|
-
outline-offset: -2px;
|
|
4835
|
-
}
|
|
4836
|
-
|
|
4837
|
-
.muka-swipe-actions__button-icon {
|
|
4838
|
-
display: inline-flex;
|
|
4839
|
-
align-items: center;
|
|
4840
|
-
justify-content: center;
|
|
4841
|
-
}
|
|
4842
|
-
|
|
4843
|
-
/* ─── Color variants ───────────────────────────────────── */
|
|
4844
|
-
|
|
4845
|
-
.muka-swipe-actions__button--neutral {
|
|
4846
|
-
background-color: var(--color-surface-level2);
|
|
4847
|
-
color: var(--color-text-default-default);
|
|
4848
|
-
}
|
|
4849
|
-
|
|
4850
|
-
.muka-swipe-actions__button--primary {
|
|
4851
|
-
background-color: var(--color-action-default);
|
|
4852
|
-
color: var(--color-text-default-inverse);
|
|
4853
|
-
}
|
|
4854
|
-
|
|
4855
|
-
.muka-swipe-actions__button--success {
|
|
4856
|
-
background-color: var(--color-state-success-default);
|
|
4857
|
-
color: var(--color-text-default-inverse);
|
|
4858
|
-
}
|
|
4859
|
-
|
|
4860
|
-
.muka-swipe-actions__button--warning {
|
|
4861
|
-
background-color: var(--color-state-warning-default);
|
|
4862
|
-
color: var(--color-text-default-default);
|
|
4863
|
-
}
|
|
4864
|
-
|
|
4865
|
-
.muka-swipe-actions__button--destructive {
|
|
4866
|
-
background-color: var(--color-state-error-default);
|
|
4867
|
-
color: var(--color-text-default-inverse);
|
|
4868
|
-
}
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
4871
|
/* SocialSignInButton */
|
|
4872
4872
|
/*
|
|
4873
4873
|
* SocialSignInButton lockup colors are provider-mandated (Apple HIG /
|
|
@@ -10788,6 +10788,38 @@ li.muka-listitem {
|
|
|
10788
10788
|
}
|
|
10789
10789
|
|
|
10790
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
|
+
|
|
10791
10823
|
/* Dialog */
|
|
10792
10824
|
/* Dialog Component Styles */
|
|
10793
10825
|
|
|
@@ -11049,42 +11081,10 @@ li.muka-listitem {
|
|
|
11049
11081
|
box-shadow: var(--shadow-level2);
|
|
11050
11082
|
}
|
|
11051
11083
|
|
|
11052
|
-
.muka-dialog .muka-bottombar {
|
|
11053
|
-
position: relative;
|
|
11054
|
-
z-index: 1;
|
|
11055
|
-
box-shadow: var(--shadow-level2);
|
|
11056
|
-
}
|
|
11057
|
-
|
|
11058
|
-
|
|
11059
|
-
/* DatePicker */
|
|
11060
|
-
/* DatePicker — compact native date field. */
|
|
11061
|
-
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
11062
|
-
|
|
11063
|
-
/* Adopt the field typography on the native date input. */
|
|
11064
|
-
.muka-datepicker__field .muka-input__native {
|
|
11065
|
-
font-family: var(--text-input-md-fontFamily);
|
|
11066
|
-
font-size: var(--text-input-md-fontSize);
|
|
11067
|
-
line-height: var(--text-input-md-lineHeight);
|
|
11068
|
-
}
|
|
11069
|
-
|
|
11070
|
-
.muka-datepicker__field--sm .muka-input__native {
|
|
11071
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
11072
|
-
font-size: var(--text-input-sm-fontSize);
|
|
11073
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
11074
|
-
}
|
|
11075
|
-
|
|
11076
|
-
/* Tint the browser calendar indicator to match the field foreground. */
|
|
11077
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
11078
|
-
cursor: pointer;
|
|
11079
|
-
opacity: 0.6;
|
|
11080
|
-
}
|
|
11081
|
-
|
|
11082
|
-
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
11083
|
-
opacity: 1;
|
|
11084
|
-
}
|
|
11085
|
-
|
|
11086
|
-
.muka-datepicker__field .muka-input__native:disabled {
|
|
11087
|
-
cursor: not-allowed;
|
|
11084
|
+
.muka-dialog .muka-bottombar {
|
|
11085
|
+
position: relative;
|
|
11086
|
+
z-index: 1;
|
|
11087
|
+
box-shadow: var(--shadow-level2);
|
|
11088
11088
|
}
|
|
11089
11089
|
|
|
11090
11090
|
|
|
@@ -12405,6 +12405,128 @@ li.muka-listitem {
|
|
|
12405
12405
|
}
|
|
12406
12406
|
|
|
12407
12407
|
|
|
12408
|
+
/* ChatPhotoGrid */
|
|
12409
|
+
/* ChatPhotoGrid Component Styles */
|
|
12410
|
+
|
|
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
|
+
|
|
12408
12530
|
/* Checkbox */
|
|
12409
12531
|
/* Checkbox Component Styles - Using Muka Design Tokens */
|
|
12410
12532
|
|
|
@@ -12539,158 +12661,36 @@ li.muka-listitem {
|
|
|
12539
12661
|
box-shadow: none;
|
|
12540
12662
|
}
|
|
12541
12663
|
|
|
12542
|
-
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12543
|
-
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12544
|
-
color: var(--checkbox-color-disabled-icon);
|
|
12545
|
-
}
|
|
12546
|
-
|
|
12547
|
-
/* Label text */
|
|
12548
|
-
.muka-checkbox__label {
|
|
12549
|
-
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12550
|
-
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12551
|
-
font-size: var(--text-label-lg-regular-fontSize);
|
|
12552
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12553
|
-
color: var(--color-text-default-default);
|
|
12554
|
-
}
|
|
12555
|
-
|
|
12556
|
-
.muka-checkbox--sm .muka-checkbox__label {
|
|
12557
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
12558
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
12559
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
12560
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
12561
|
-
}
|
|
12562
|
-
|
|
12563
|
-
.muka-checkbox--lg .muka-checkbox__label {
|
|
12564
|
-
font-family: var(--text-label-xl-regular-fontFamily);
|
|
12565
|
-
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12566
|
-
font-size: var(--text-label-xl-regular-fontSize);
|
|
12567
|
-
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12568
|
-
}
|
|
12569
|
-
|
|
12570
|
-
.muka-checkbox--disabled .muka-checkbox__label {
|
|
12571
|
-
color: var(--color-text-subtle-default);
|
|
12572
|
-
}
|
|
12573
|
-
|
|
12574
|
-
|
|
12575
|
-
/* ChatPhotoGrid */
|
|
12576
|
-
/* ChatPhotoGrid Component Styles */
|
|
12577
|
-
|
|
12578
|
-
/*
|
|
12579
|
-
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12580
|
-
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12581
|
-
*/
|
|
12582
|
-
.muka-chat-photo-grid {
|
|
12583
|
-
display: grid;
|
|
12584
|
-
gap: var(--chatphotogrid-gap);
|
|
12585
|
-
width: 100%;
|
|
12586
|
-
min-width: 0;
|
|
12587
|
-
overflow: hidden;
|
|
12588
|
-
border-radius: var(--chatphotogrid-radius);
|
|
12589
|
-
}
|
|
12590
|
-
|
|
12591
|
-
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12592
|
-
|
|
12593
|
-
.muka-chat-photo-grid__tile {
|
|
12594
|
-
position: relative;
|
|
12595
|
-
display: block;
|
|
12596
|
-
overflow: hidden;
|
|
12597
|
-
min-width: 0;
|
|
12598
|
-
padding: 0;
|
|
12599
|
-
margin: 0;
|
|
12600
|
-
border: none;
|
|
12601
|
-
background-color: var(--chatphotogrid-color-placeholder);
|
|
12602
|
-
aspect-ratio: 1 / 1;
|
|
12603
|
-
}
|
|
12604
|
-
|
|
12605
|
-
button.muka-chat-photo-grid__tile {
|
|
12606
|
-
cursor: pointer;
|
|
12607
|
-
appearance: none;
|
|
12608
|
-
}
|
|
12609
|
-
|
|
12610
|
-
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12611
|
-
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12612
|
-
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12613
|
-
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12614
|
-
}
|
|
12615
|
-
|
|
12616
|
-
.muka-chat-photo-grid__image {
|
|
12617
|
-
display: block;
|
|
12618
|
-
width: 100%;
|
|
12619
|
-
height: 100%;
|
|
12620
|
-
object-fit: cover;
|
|
12621
|
-
}
|
|
12622
|
-
|
|
12623
|
-
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12624
|
-
|
|
12625
|
-
.muka-chat-photo-grid__overflow {
|
|
12626
|
-
position: absolute;
|
|
12627
|
-
inset: 0;
|
|
12628
|
-
display: flex;
|
|
12629
|
-
align-items: center;
|
|
12630
|
-
justify-content: center;
|
|
12631
|
-
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12632
|
-
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12633
|
-
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12634
|
-
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12635
|
-
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12636
|
-
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12637
|
-
}
|
|
12638
|
-
|
|
12639
|
-
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12640
|
-
|
|
12641
|
-
.muka-chat-photo-grid--1 {
|
|
12642
|
-
grid-template-columns: 1fr;
|
|
12643
|
-
}
|
|
12644
|
-
|
|
12645
|
-
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12646
|
-
aspect-ratio: 4 / 3;
|
|
12647
|
-
}
|
|
12648
|
-
|
|
12649
|
-
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12650
|
-
aspect-ratio: 3 / 4;
|
|
12651
|
-
}
|
|
12652
|
-
|
|
12653
|
-
.muka-chat-photo-grid--2 {
|
|
12654
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12655
|
-
}
|
|
12656
|
-
|
|
12657
|
-
.muka-chat-photo-grid--3 {
|
|
12658
|
-
grid-template-columns: repeat(3, 1fr);
|
|
12659
|
-
}
|
|
12660
|
-
|
|
12661
|
-
.muka-chat-photo-grid--4 {
|
|
12662
|
-
grid-template-columns: repeat(2, 1fr);
|
|
12663
|
-
}
|
|
12664
|
-
|
|
12665
|
-
/* 5 photos: a 2-up row above a 3-up row, on a shared 6-column track */
|
|
12666
|
-
.muka-chat-photo-grid--5 {
|
|
12667
|
-
grid-template-columns: repeat(6, 1fr);
|
|
12668
|
-
}
|
|
12669
|
-
|
|
12670
|
-
.muka-chat-photo-grid--5 .muka-chat-photo-grid__tile:nth-child(-n + 2) {
|
|
12671
|
-
grid-column: span 3;
|
|
12664
|
+
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12665
|
+
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12666
|
+
color: var(--checkbox-color-disabled-icon);
|
|
12672
12667
|
}
|
|
12673
12668
|
|
|
12674
|
-
|
|
12675
|
-
|
|
12669
|
+
/* Label text */
|
|
12670
|
+
.muka-checkbox__label {
|
|
12671
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12672
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12673
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
12674
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12675
|
+
color: var(--color-text-default-default);
|
|
12676
12676
|
}
|
|
12677
12677
|
|
|
12678
|
-
.muka-
|
|
12679
|
-
|
|
12680
|
-
|
|
12678
|
+
.muka-checkbox--sm .muka-checkbox__label {
|
|
12679
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
12680
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
12681
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
12682
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
12681
12683
|
}
|
|
12682
12684
|
|
|
12683
|
-
|
|
12684
|
-
|
|
12685
|
-
|
|
12686
|
-
|
|
12687
|
-
|
|
12688
|
-
|
|
12685
|
+
.muka-checkbox--lg .muka-checkbox__label {
|
|
12686
|
+
font-family: var(--text-label-xl-regular-fontFamily);
|
|
12687
|
+
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12688
|
+
font-size: var(--text-label-xl-regular-fontSize);
|
|
12689
|
+
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12690
|
+
}
|
|
12689
12691
|
|
|
12690
|
-
|
|
12691
|
-
|
|
12692
|
-
-webkit-print-color-adjust: exact;
|
|
12693
|
-
}
|
|
12692
|
+
.muka-checkbox--disabled .muka-checkbox__label {
|
|
12693
|
+
color: var(--color-text-subtle-default);
|
|
12694
12694
|
}
|
|
12695
12695
|
|
|
12696
12696
|
|
|
@@ -13979,6 +13979,114 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13979
13979
|
}
|
|
13980
13980
|
|
|
13981
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
|
+
|
|
13982
14090
|
/* BottomBar */
|
|
13983
14091
|
/* BottomBar Component Styles */
|
|
13984
14092
|
|
|
@@ -14295,114 +14403,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14295
14403
|
}
|
|
14296
14404
|
|
|
14297
14405
|
|
|
14298
|
-
/* BadgeNumber */
|
|
14299
|
-
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
14300
|
-
|
|
14301
|
-
.muka-badge-number {
|
|
14302
|
-
display: inline-flex;
|
|
14303
|
-
align-items: center;
|
|
14304
|
-
justify-content: center;
|
|
14305
|
-
border-radius: var(--border-radius-full);
|
|
14306
|
-
white-space: nowrap;
|
|
14307
|
-
user-select: none;
|
|
14308
|
-
box-sizing: border-box;
|
|
14309
|
-
}
|
|
14310
|
-
|
|
14311
|
-
/*
|
|
14312
|
-
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
14313
|
-
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
14314
|
-
* is handled by the fixed height + align-items: center.
|
|
14315
|
-
*/
|
|
14316
|
-
.muka-badge-number--2xs {
|
|
14317
|
-
height: var(--badge-number-size-2xs);
|
|
14318
|
-
min-width: var(--badge-number-size-2xs);
|
|
14319
|
-
padding: 0 var(--badge-number-padding-2xs);
|
|
14320
|
-
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14321
|
-
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14322
|
-
font-size: var(--text-label-xs-bold-fontSize);
|
|
14323
|
-
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14324
|
-
}
|
|
14325
|
-
|
|
14326
|
-
.muka-badge-number--xs {
|
|
14327
|
-
height: var(--badge-number-size-xs);
|
|
14328
|
-
min-width: var(--badge-number-size-xs);
|
|
14329
|
-
padding: 0 var(--badge-number-padding-xs);
|
|
14330
|
-
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14331
|
-
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14332
|
-
font-size: var(--text-label-sm-bold-fontSize);
|
|
14333
|
-
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14334
|
-
}
|
|
14335
|
-
|
|
14336
|
-
.muka-badge-number--sm {
|
|
14337
|
-
height: var(--badge-number-size-sm);
|
|
14338
|
-
min-width: var(--badge-number-size-sm);
|
|
14339
|
-
padding: 0 var(--badge-number-padding-sm);
|
|
14340
|
-
font-family: var(--text-label-md-bold-fontFamily);
|
|
14341
|
-
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14342
|
-
font-size: var(--text-label-md-bold-fontSize);
|
|
14343
|
-
line-height: var(--text-label-md-bold-lineHeight);
|
|
14344
|
-
}
|
|
14345
|
-
|
|
14346
|
-
.muka-badge-number--md {
|
|
14347
|
-
height: var(--badge-number-size-md);
|
|
14348
|
-
min-width: var(--badge-number-size-md);
|
|
14349
|
-
padding: 0 var(--badge-number-padding-md);
|
|
14350
|
-
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14351
|
-
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14352
|
-
font-size: var(--text-label-lg-bold-fontSize);
|
|
14353
|
-
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14354
|
-
}
|
|
14355
|
-
|
|
14356
|
-
.muka-badge-number--lg {
|
|
14357
|
-
height: var(--badge-number-size-lg);
|
|
14358
|
-
min-width: var(--badge-number-size-lg);
|
|
14359
|
-
padding: 0 var(--badge-number-padding-lg);
|
|
14360
|
-
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14361
|
-
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14362
|
-
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14363
|
-
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14364
|
-
}
|
|
14365
|
-
|
|
14366
|
-
.muka-badge-number__label {
|
|
14367
|
-
/*
|
|
14368
|
-
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14369
|
-
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14370
|
-
* is unaffected because the badge height is fixed and content is centered.
|
|
14371
|
-
*/
|
|
14372
|
-
line-height: normal;
|
|
14373
|
-
}
|
|
14374
|
-
|
|
14375
|
-
/* Neutral variant */
|
|
14376
|
-
.muka-badge-number--neutral {
|
|
14377
|
-
background-color: var(--color-surface-level1);
|
|
14378
|
-
color: var(--color-text-default-default);
|
|
14379
|
-
}
|
|
14380
|
-
|
|
14381
|
-
/* Info variant */
|
|
14382
|
-
.muka-badge-number--info {
|
|
14383
|
-
background-color: var(--color-state-info-contrast);
|
|
14384
|
-
color: var(--color-text-default-inverse);
|
|
14385
|
-
}
|
|
14386
|
-
|
|
14387
|
-
/* Success variant */
|
|
14388
|
-
.muka-badge-number--success {
|
|
14389
|
-
background-color: var(--color-state-success-contrast);
|
|
14390
|
-
color: var(--color-text-default-inverse);
|
|
14391
|
-
}
|
|
14392
|
-
|
|
14393
|
-
/* Warning variant */
|
|
14394
|
-
.muka-badge-number--warning {
|
|
14395
|
-
background-color: var(--color-state-warning-contrast);
|
|
14396
|
-
color: var(--color-text-default-inverse);
|
|
14397
|
-
}
|
|
14398
|
-
|
|
14399
|
-
/* Error variant */
|
|
14400
|
-
.muka-badge-number--error {
|
|
14401
|
-
background-color: var(--color-state-error-contrast);
|
|
14402
|
-
color: var(--color-text-default-inverse);
|
|
14403
|
-
}
|
|
14404
|
-
|
|
14405
|
-
|
|
14406
14406
|
/* Badge */
|
|
14407
14407
|
/* Badge Component Styles - Using Muka Design Tokens */
|
|
14408
14408
|
|