@carissa-io/theme-default 0.3.6 → 0.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css CHANGED
@@ -2585,3 +2585,1070 @@ hr.c-divider {
2585
2585
  .c-prose > :last-child {
2586
2586
  margin-bottom: 0;
2587
2587
  }
2588
+
2589
+ .c-tabs {
2590
+ box-sizing: border-box;
2591
+ }
2592
+
2593
+ .c-tabs--vertical {
2594
+ display: flex;
2595
+ align-items: flex-start;
2596
+ }
2597
+
2598
+ .c-tabs__list {
2599
+ display: flex;
2600
+ gap: 0;
2601
+ border-bottom: 1px solid var(--c-muted);
2602
+ overflow-x: auto;
2603
+ overflow-y: hidden;
2604
+ }
2605
+
2606
+ .c-tabs--vertical > .c-tabs__list {
2607
+ flex: none;
2608
+ flex-direction: column;
2609
+ border-right: 1px solid var(--c-muted);
2610
+ border-bottom: 0;
2611
+ overflow: visible;
2612
+ }
2613
+
2614
+ .c-tabs__tab {
2615
+ position: relative;
2616
+ flex: none;
2617
+ padding: 0.625rem 1.25rem;
2618
+ font: inherit;
2619
+ font-size: 0.875rem;
2620
+ font-weight: 700;
2621
+ line-height: 1.5;
2622
+ color: var(--c-muted);
2623
+ text-align: start;
2624
+ white-space: nowrap;
2625
+ cursor: pointer;
2626
+ background: transparent;
2627
+ border: 0;
2628
+ border-radius: 0;
2629
+ transition: color 0.2s ease-out, background-color 0.2s ease-out;
2630
+ }
2631
+ .c-tabs__tab::after {
2632
+ position: absolute;
2633
+ right: 0;
2634
+ bottom: 0;
2635
+ left: 0;
2636
+ height: 2px;
2637
+ content: "";
2638
+ background: transparent;
2639
+ }
2640
+ .c-tabs__tab:hover:not(:disabled) {
2641
+ color: var(--c-text);
2642
+ background: var(--c-surface);
2643
+ }
2644
+ .c-tabs__tab:focus-visible {
2645
+ outline: 1px solid var(--c-focus);
2646
+ outline-offset: -2px;
2647
+ }
2648
+ .c-tabs__tab:disabled {
2649
+ cursor: not-allowed;
2650
+ opacity: 0.5;
2651
+ }
2652
+
2653
+ .c-tabs--vertical .c-tabs__tab::after {
2654
+ top: 0;
2655
+ right: -1px;
2656
+ bottom: 0;
2657
+ left: auto;
2658
+ width: 2px;
2659
+ height: auto;
2660
+ }
2661
+
2662
+ .c-tabs__tab--selected {
2663
+ color: var(--c-text);
2664
+ background: transparent;
2665
+ }
2666
+ .c-tabs__tab--selected::after {
2667
+ background: var(--c-primary);
2668
+ }
2669
+
2670
+ .c-tabs__panel {
2671
+ padding: 1.25rem 0;
2672
+ }
2673
+ .c-tabs__panel[hidden] {
2674
+ display: none;
2675
+ }
2676
+
2677
+ .c-tabs--vertical > .c-tabs__panel {
2678
+ flex: 1;
2679
+ min-width: 0;
2680
+ padding-inline-start: 1rem;
2681
+ }
2682
+
2683
+ @media (prefers-reduced-motion: reduce) {
2684
+ .c-tabs__tab {
2685
+ transition: none;
2686
+ }
2687
+ }
2688
+ .c-accordion {
2689
+ box-sizing: border-box;
2690
+ border: 1px solid var(--c-muted);
2691
+ border-radius: 0;
2692
+ }
2693
+
2694
+ .c-accordion__item:not(:first-child) {
2695
+ border-top: 1px solid var(--c-muted);
2696
+ }
2697
+ .c-accordion__item:first-child > .c-accordion__heading .c-accordion__trigger {
2698
+ border-top-left-radius: 0;
2699
+ border-top-right-radius: 0;
2700
+ }
2701
+ .c-accordion__item:last-child:not(.c-accordion__item--open) > .c-accordion__heading .c-accordion__trigger {
2702
+ border-bottom-right-radius: 0;
2703
+ border-bottom-left-radius: 0;
2704
+ }
2705
+
2706
+ .c-accordion__heading {
2707
+ margin: 0;
2708
+ font: inherit;
2709
+ }
2710
+
2711
+ .c-accordion__trigger {
2712
+ box-sizing: border-box;
2713
+ display: flex;
2714
+ gap: 1rem;
2715
+ align-items: center;
2716
+ justify-content: space-between;
2717
+ width: 100%;
2718
+ padding: 0.875rem 1.25rem;
2719
+ font: inherit;
2720
+ font-size: 1rem;
2721
+ font-weight: 700;
2722
+ line-height: 1.5;
2723
+ color: var(--c-text);
2724
+ text-align: start;
2725
+ cursor: pointer;
2726
+ background: transparent;
2727
+ border: 0;
2728
+ transition: background-color 0.2s ease-out;
2729
+ }
2730
+ .c-accordion__trigger::after {
2731
+ flex: none;
2732
+ box-sizing: border-box;
2733
+ width: 0.5rem;
2734
+ height: 0.5rem;
2735
+ content: "";
2736
+ border-right: 2px solid currentColor;
2737
+ border-bottom: 2px solid currentColor;
2738
+ transform: translateY(-25%) rotate(45deg);
2739
+ transition: transform 0.2s ease-out;
2740
+ }
2741
+ .c-accordion__trigger[aria-expanded=true] {
2742
+ color: var(--c-text);
2743
+ background: transparent;
2744
+ }
2745
+ .c-accordion__trigger[aria-expanded=true]::after {
2746
+ transform: translateY(25%) rotate(225deg);
2747
+ }
2748
+ .c-accordion__trigger:hover:not(:disabled) {
2749
+ background: var(--c-surface);
2750
+ }
2751
+ .c-accordion__trigger:focus-visible {
2752
+ outline: 1px solid var(--c-focus);
2753
+ outline-offset: -2px;
2754
+ }
2755
+ .c-accordion__trigger:disabled {
2756
+ cursor: not-allowed;
2757
+ opacity: 0.5;
2758
+ }
2759
+
2760
+ .c-accordion__region[hidden] {
2761
+ display: none;
2762
+ }
2763
+
2764
+ .c-accordion__content {
2765
+ padding: 1rem 1.25rem;
2766
+ }
2767
+
2768
+ @media (prefers-reduced-motion: reduce) {
2769
+ .c-accordion__trigger,
2770
+ .c-accordion__trigger::after {
2771
+ transition: none;
2772
+ }
2773
+ }
2774
+ .c-breadcrumb {
2775
+ box-sizing: border-box;
2776
+ font-size: 0.875rem;
2777
+ }
2778
+
2779
+ .c-breadcrumb__list {
2780
+ display: flex;
2781
+ flex-wrap: wrap;
2782
+ gap: 0.5rem;
2783
+ align-items: center;
2784
+ padding: 0;
2785
+ margin: 0;
2786
+ list-style: none;
2787
+ }
2788
+
2789
+ .c-breadcrumb__item {
2790
+ display: inline-flex;
2791
+ gap: 0.5rem;
2792
+ align-items: center;
2793
+ }
2794
+ .c-breadcrumb__item + .c-breadcrumb__item::before {
2795
+ color: var(--c-muted);
2796
+ content: var(--c-breadcrumb-separator, "/");
2797
+ }
2798
+
2799
+ .c-breadcrumb__link {
2800
+ color: var(--c-muted);
2801
+ text-decoration: none;
2802
+ }
2803
+ .c-breadcrumb__link:hover {
2804
+ color: var(--c-text);
2805
+ text-decoration: underline;
2806
+ }
2807
+ .c-breadcrumb__link:focus-visible {
2808
+ border-radius: 0;
2809
+ outline: 1px solid var(--c-focus);
2810
+ outline-offset: 2px;
2811
+ }
2812
+
2813
+ .c-breadcrumb__current {
2814
+ font-weight: 700;
2815
+ color: var(--c-text);
2816
+ }
2817
+
2818
+ .c-breadcrumb__text {
2819
+ color: var(--c-muted);
2820
+ }
2821
+
2822
+ .c-pagination {
2823
+ box-sizing: border-box;
2824
+ font-size: 0.875rem;
2825
+ }
2826
+
2827
+ .c-pagination__list {
2828
+ display: flex;
2829
+ flex-wrap: wrap;
2830
+ gap: 0.25rem;
2831
+ align-items: center;
2832
+ padding: 0;
2833
+ margin: 0;
2834
+ list-style: none;
2835
+ }
2836
+
2837
+ .c-pagination__control {
2838
+ box-sizing: border-box;
2839
+ display: inline-flex;
2840
+ align-items: center;
2841
+ justify-content: center;
2842
+ min-width: 2.75rem;
2843
+ height: 2.75rem;
2844
+ padding: 0 0.75rem;
2845
+ font: inherit;
2846
+ color: var(--c-text);
2847
+ text-decoration: none;
2848
+ cursor: pointer;
2849
+ background: var(--c-background);
2850
+ border: 1px solid var(--c-muted);
2851
+ border-radius: 0;
2852
+ transition: color 0.2s ease-out, background-color 0.2s ease-out;
2853
+ }
2854
+ .c-pagination__control:hover:not(:disabled, [aria-disabled=true], [aria-current=page]) {
2855
+ color: var(--c-primary);
2856
+ background: var(--c-surface-active);
2857
+ }
2858
+ .c-pagination__control:focus-visible {
2859
+ outline: 1px solid var(--c-focus);
2860
+ outline-offset: 2px;
2861
+ }
2862
+
2863
+ .c-pagination__control--current {
2864
+ color: var(--c-on-primary);
2865
+ cursor: default;
2866
+ background: var(--c-primary);
2867
+ border-color: var(--c-primary);
2868
+ }
2869
+
2870
+ .c-pagination__control--disabled {
2871
+ cursor: not-allowed;
2872
+ opacity: 0.5;
2873
+ }
2874
+
2875
+ .c-pagination__control--previous::before,
2876
+ .c-pagination__control--next::before {
2877
+ width: 0.5rem;
2878
+ height: 0.5rem;
2879
+ content: "";
2880
+ border-color: currentColor;
2881
+ border-style: solid;
2882
+ border-width: 0 0 2px 2px;
2883
+ }
2884
+
2885
+ .c-pagination__control--previous::before {
2886
+ transform: translateX(25%) rotate(45deg);
2887
+ }
2888
+
2889
+ .c-pagination__control--next::before {
2890
+ transform: translateX(-25%) rotate(-135deg);
2891
+ }
2892
+
2893
+ .c-pagination__ellipsis {
2894
+ display: inline-block;
2895
+ min-width: 2.75rem;
2896
+ color: var(--c-muted);
2897
+ text-align: center;
2898
+ }
2899
+ .c-pagination__ellipsis::before {
2900
+ content: "...";
2901
+ }
2902
+
2903
+ @media (prefers-reduced-motion: reduce) {
2904
+ .c-pagination__control {
2905
+ transition: none;
2906
+ }
2907
+ }
2908
+ .c-stepper {
2909
+ box-sizing: border-box;
2910
+ padding: 0;
2911
+ margin: 0;
2912
+ font-size: 0.875rem;
2913
+ list-style: none;
2914
+ }
2915
+
2916
+ .c-stepper--horizontal {
2917
+ display: flex;
2918
+ align-items: flex-start;
2919
+ }
2920
+
2921
+ .c-stepper__step {
2922
+ position: relative;
2923
+ min-width: 0;
2924
+ }
2925
+
2926
+ .c-stepper--horizontal > .c-stepper__step {
2927
+ flex: 1 1 0;
2928
+ }
2929
+
2930
+ .c-stepper--horizontal > .c-stepper__step--last {
2931
+ flex: none;
2932
+ }
2933
+
2934
+ .c-stepper__control {
2935
+ box-sizing: border-box;
2936
+ display: inline-flex;
2937
+ gap: 0.75rem;
2938
+ align-items: flex-start;
2939
+ padding: 0;
2940
+ font: inherit;
2941
+ color: inherit;
2942
+ text-align: start;
2943
+ background: transparent;
2944
+ border: 0;
2945
+ border-radius: 0;
2946
+ }
2947
+
2948
+ .c-stepper__control--clickable {
2949
+ cursor: pointer;
2950
+ }
2951
+ .c-stepper__control--clickable:hover .c-stepper__title {
2952
+ color: inherit;
2953
+ }
2954
+ .c-stepper__control--clickable:focus-visible {
2955
+ outline: 1px solid var(--c-focus);
2956
+ outline-offset: 2px;
2957
+ }
2958
+
2959
+ .c-stepper__marker {
2960
+ box-sizing: border-box;
2961
+ position: relative;
2962
+ display: inline-flex;
2963
+ flex: none;
2964
+ align-items: center;
2965
+ justify-content: center;
2966
+ width: 2rem;
2967
+ height: 2rem;
2968
+ font-size: 0.875rem;
2969
+ font-weight: 500;
2970
+ line-height: 1;
2971
+ color: var(--c-text);
2972
+ background: var(--c-surface-active);
2973
+ border: 2px solid var(--c-surface-active);
2974
+ border-radius: 50%;
2975
+ transition: color 0.2s ease-out, background-color 0.2s ease-out;
2976
+ }
2977
+
2978
+ .c-stepper__step--current .c-stepper__marker {
2979
+ color: var(--c-text);
2980
+ background: var(--c-background);
2981
+ border-color: var(--c-primary);
2982
+ }
2983
+
2984
+ .c-stepper__step--complete .c-stepper__marker {
2985
+ color: var(--c-on-primary);
2986
+ background: var(--c-primary);
2987
+ border-color: var(--c-primary);
2988
+ }
2989
+ .c-stepper__step--complete .c-stepper__marker::before {
2990
+ width: 0.5rem;
2991
+ height: 1rem;
2992
+ margin-top: -0.125rem;
2993
+ content: "";
2994
+ border-color: currentColor;
2995
+ border-style: solid;
2996
+ border-width: 0 2px 2px 0;
2997
+ transform: rotate(45deg);
2998
+ }
2999
+
3000
+ .c-stepper__step--error .c-stepper__marker {
3001
+ color: var(--c-on-primary);
3002
+ background: var(--c-error);
3003
+ border-color: var(--c-error);
3004
+ }
3005
+ .c-stepper__step--error .c-stepper__marker::before {
3006
+ font-weight: 700;
3007
+ content: "!";
3008
+ }
3009
+
3010
+ .c-stepper__text {
3011
+ display: flex;
3012
+ flex-direction: column;
3013
+ min-width: 0;
3014
+ padding-top: calc((2rem - 1.5em) / 2);
3015
+ line-height: 1.5;
3016
+ }
3017
+
3018
+ .c-stepper__title {
3019
+ font-weight: 700;
3020
+ color: var(--c-text);
3021
+ }
3022
+
3023
+ .c-stepper__step--upcoming .c-stepper__title {
3024
+ color: var(--c-muted);
3025
+ }
3026
+
3027
+ .c-stepper__step--error .c-stepper__title {
3028
+ color: var(--c-error);
3029
+ }
3030
+
3031
+ .c-stepper__description {
3032
+ color: var(--c-muted);
3033
+ }
3034
+
3035
+ .c-stepper__status {
3036
+ position: absolute;
3037
+ width: 1px;
3038
+ height: 1px;
3039
+ padding: 0;
3040
+ margin: -1px;
3041
+ overflow: hidden;
3042
+ white-space: nowrap;
3043
+ border: 0;
3044
+ clip-path: inset(50%);
3045
+ }
3046
+
3047
+ .c-stepper__content {
3048
+ padding-top: 0.5rem;
3049
+ }
3050
+
3051
+ .c-stepper__step:not(.c-stepper__step--last)::after {
3052
+ position: absolute;
3053
+ content: "";
3054
+ background: var(--c-muted);
3055
+ }
3056
+
3057
+ .c-stepper__step--complete:not(.c-stepper__step--last)::after {
3058
+ background: var(--c-primary);
3059
+ }
3060
+
3061
+ .c-stepper--horizontal > .c-stepper__step:not(.c-stepper__step--last)::after {
3062
+ top: calc((2rem - 2px) / 2);
3063
+ right: 0;
3064
+ left: calc(2rem + 0.5rem);
3065
+ height: 2px;
3066
+ }
3067
+
3068
+ .c-stepper--horizontal > .c-stepper__step > .c-stepper__control {
3069
+ flex-direction: column;
3070
+ gap: 0.5rem;
3071
+ }
3072
+
3073
+ .c-stepper--vertical > .c-stepper__step {
3074
+ padding-bottom: 1.5rem;
3075
+ }
3076
+
3077
+ .c-stepper--vertical > .c-stepper__step--last {
3078
+ padding-bottom: 0;
3079
+ }
3080
+
3081
+ .c-stepper--vertical > .c-stepper__step > .c-stepper__content {
3082
+ padding-inline-start: calc(2rem + 0.75rem);
3083
+ }
3084
+
3085
+ .c-stepper--vertical > .c-stepper__step:not(.c-stepper__step--last)::after {
3086
+ top: calc(2rem + 0.5rem);
3087
+ bottom: 0.5rem;
3088
+ left: calc((2rem - 2px) / 2);
3089
+ width: 2px;
3090
+ }
3091
+
3092
+ @media (prefers-reduced-motion: reduce) {
3093
+ .c-stepper__marker {
3094
+ transition: none;
3095
+ }
3096
+ }
3097
+ .c-sidebar {
3098
+ box-sizing: border-box;
3099
+ inline-size: 16rem;
3100
+ color: var(--c-text);
3101
+ background: var(--c-surface);
3102
+ border-inline-end: 1px solid var(--c-muted);
3103
+ transition: inline-size 0.2s ease;
3104
+ }
3105
+ @media (prefers-reduced-motion: reduce) {
3106
+ .c-sidebar {
3107
+ transition: none;
3108
+ }
3109
+ }
3110
+
3111
+ .c-sidebar--collapsed {
3112
+ inline-size: 4.5rem;
3113
+ }
3114
+
3115
+ .c-sidebar__nav {
3116
+ box-sizing: border-box;
3117
+ display: flex;
3118
+ flex-direction: column;
3119
+ gap: 1.5rem;
3120
+ block-size: 100%;
3121
+ padding: 0.75rem;
3122
+ overflow-x: hidden;
3123
+ overflow-y: auto;
3124
+ }
3125
+
3126
+ .c-sidebar__header,
3127
+ .c-sidebar__footer {
3128
+ display: flex;
3129
+ gap: 0.75rem;
3130
+ align-items: center;
3131
+ }
3132
+
3133
+ .c-sidebar__footer {
3134
+ margin-block-start: auto;
3135
+ }
3136
+
3137
+ .c-sidebar__section {
3138
+ display: flex;
3139
+ flex-direction: column;
3140
+ gap: 0.25rem;
3141
+ }
3142
+
3143
+ .c-sidebar__section-title {
3144
+ padding-inline: 0.5rem;
3145
+ font-size: 0.6875rem;
3146
+ font-weight: 700;
3147
+ color: var(--c-text);
3148
+ text-transform: uppercase;
3149
+ letter-spacing: 0.1em;
3150
+ }
3151
+
3152
+ .c-sidebar__list {
3153
+ display: flex;
3154
+ flex-direction: column;
3155
+ gap: 0.25rem;
3156
+ padding: 0;
3157
+ margin: 0;
3158
+ list-style: none;
3159
+ }
3160
+
3161
+ .c-sidebar__link {
3162
+ box-sizing: border-box;
3163
+ display: flex;
3164
+ gap: 0.75rem;
3165
+ align-items: center;
3166
+ padding: 0.625rem 0.75rem;
3167
+ font-size: 0.875rem;
3168
+ font-weight: 700;
3169
+ color: var(--c-text);
3170
+ text-decoration: none;
3171
+ border-radius: 0;
3172
+ }
3173
+ .c-sidebar__link:hover {
3174
+ color: var(--c-text);
3175
+ background: var(--c-surface-active);
3176
+ }
3177
+ .c-sidebar__link:focus-visible {
3178
+ outline: 1px solid var(--c-focus);
3179
+ outline-offset: -2px;
3180
+ }
3181
+
3182
+ .c-sidebar__link--active,
3183
+ .c-sidebar__link--active:hover {
3184
+ color: var(--c-on-primary);
3185
+ background: var(--c-primary);
3186
+ }
3187
+
3188
+ .c-sidebar__link--disabled,
3189
+ .c-sidebar__link--disabled:hover {
3190
+ color: var(--c-text);
3191
+ cursor: not-allowed;
3192
+ background: transparent;
3193
+ opacity: 0.5;
3194
+ }
3195
+
3196
+ .c-sidebar__icon {
3197
+ display: inline-flex;
3198
+ flex: none;
3199
+ align-items: center;
3200
+ justify-content: center;
3201
+ inline-size: 1.25rem;
3202
+ block-size: 1.25rem;
3203
+ }
3204
+
3205
+ .c-sidebar__label {
3206
+ flex: 1;
3207
+ min-inline-size: 0;
3208
+ overflow: hidden;
3209
+ text-overflow: ellipsis;
3210
+ white-space: nowrap;
3211
+ }
3212
+
3213
+ .c-sidebar__badge {
3214
+ flex: none;
3215
+ font-size: 0.75rem;
3216
+ }
3217
+
3218
+ .c-sidebar__toggle {
3219
+ display: inline-flex;
3220
+ flex: none;
3221
+ align-items: center;
3222
+ justify-content: center;
3223
+ inline-size: 2.75rem;
3224
+ block-size: 2.75rem;
3225
+ padding: 0;
3226
+ color: var(--c-text);
3227
+ cursor: pointer;
3228
+ background: transparent;
3229
+ border: 0;
3230
+ border-radius: 0;
3231
+ }
3232
+ .c-sidebar__toggle:hover {
3233
+ background: var(--c-surface-active);
3234
+ }
3235
+ .c-sidebar__toggle:focus-visible {
3236
+ outline: 1px solid var(--c-focus);
3237
+ outline-offset: -2px;
3238
+ }
3239
+
3240
+ .c-sidebar__toggle-icon {
3241
+ display: inline-flex;
3242
+ }
3243
+
3244
+ .c-sidebar--collapsed .c-sidebar__label,
3245
+ .c-sidebar--collapsed .c-sidebar__badge,
3246
+ .c-sidebar--collapsed .c-sidebar__section-title {
3247
+ position: absolute;
3248
+ width: 1px;
3249
+ height: 1px;
3250
+ padding: 0;
3251
+ margin: -1px;
3252
+ overflow: hidden;
3253
+ white-space: nowrap;
3254
+ border: 0;
3255
+ clip-path: inset(50%);
3256
+ }
3257
+ .c-sidebar--collapsed .c-sidebar__link {
3258
+ justify-content: center;
3259
+ }
3260
+ .c-sidebar--collapsed .c-sidebar__header,
3261
+ .c-sidebar--collapsed .c-sidebar__footer {
3262
+ justify-content: center;
3263
+ }
3264
+
3265
+ .c-navbar {
3266
+ box-sizing: border-box;
3267
+ color: var(--c-text);
3268
+ background: var(--c-background);
3269
+ border-block-end: 1px solid var(--c-muted);
3270
+ }
3271
+
3272
+ .c-navbar--sticky {
3273
+ position: sticky;
3274
+ inset-block-start: 0;
3275
+ z-index: 100;
3276
+ }
3277
+
3278
+ .c-navbar__nav {
3279
+ box-sizing: border-box;
3280
+ display: flex;
3281
+ flex-wrap: wrap;
3282
+ gap: 1.5rem;
3283
+ align-items: center;
3284
+ padding: 0.5rem 1.25rem;
3285
+ }
3286
+
3287
+ .c-navbar__brand {
3288
+ font-size: 1rem;
3289
+ font-weight: 700;
3290
+ color: var(--c-text);
3291
+ text-decoration: none;
3292
+ }
3293
+ .c-navbar__brand:focus-visible {
3294
+ outline: 1px solid var(--c-focus);
3295
+ outline-offset: -2px;
3296
+ }
3297
+
3298
+ .c-navbar__content {
3299
+ display: none;
3300
+ flex: 1 0 100%;
3301
+ order: 3;
3302
+ }
3303
+ .c-navbar__content.c-navbar__content--expanded {
3304
+ display: block;
3305
+ }
3306
+
3307
+ .c-navbar__list {
3308
+ display: flex;
3309
+ flex-direction: column;
3310
+ gap: 0.25rem;
3311
+ padding: 0;
3312
+ margin: 0;
3313
+ list-style: none;
3314
+ }
3315
+
3316
+ .c-navbar__link {
3317
+ box-sizing: border-box;
3318
+ display: flex;
3319
+ align-items: center;
3320
+ padding: 0.625rem 0.75rem;
3321
+ font-size: 0.875rem;
3322
+ font-weight: 700;
3323
+ color: var(--c-muted);
3324
+ text-decoration: none;
3325
+ border-radius: 0;
3326
+ }
3327
+ .c-navbar__link:hover {
3328
+ color: var(--c-text);
3329
+ background: var(--c-surface);
3330
+ }
3331
+ .c-navbar__link:focus-visible {
3332
+ outline: 1px solid var(--c-focus);
3333
+ outline-offset: -2px;
3334
+ }
3335
+
3336
+ .c-navbar__link--active,
3337
+ .c-navbar__link--active:hover {
3338
+ color: var(--c-text);
3339
+ background: transparent;
3340
+ }
3341
+
3342
+ .c-navbar__link--disabled,
3343
+ .c-navbar__link--disabled:hover {
3344
+ color: var(--c-muted);
3345
+ cursor: not-allowed;
3346
+ background: transparent;
3347
+ opacity: 0.5;
3348
+ }
3349
+
3350
+ .c-navbar__actions {
3351
+ display: flex;
3352
+ gap: 0.5rem;
3353
+ align-items: center;
3354
+ margin-inline-start: auto;
3355
+ }
3356
+
3357
+ .c-navbar__toggle {
3358
+ display: inline-flex;
3359
+ align-items: center;
3360
+ justify-content: center;
3361
+ order: 2;
3362
+ inline-size: 2.75rem;
3363
+ block-size: 2.75rem;
3364
+ padding: 0;
3365
+ color: var(--c-text);
3366
+ cursor: pointer;
3367
+ background: transparent;
3368
+ border: 0;
3369
+ border-radius: 0;
3370
+ }
3371
+ .c-navbar__toggle:hover {
3372
+ background: var(--c-surface-active);
3373
+ }
3374
+ .c-navbar__toggle:focus-visible {
3375
+ outline: 1px solid var(--c-focus);
3376
+ outline-offset: -2px;
3377
+ }
3378
+
3379
+ .c-navbar__toggle-icon {
3380
+ display: inline-flex;
3381
+ }
3382
+
3383
+ @media (min-width: 48rem) {
3384
+ .c-navbar__content {
3385
+ display: block;
3386
+ flex: 1 1 auto;
3387
+ order: 0;
3388
+ }
3389
+ .c-navbar__list {
3390
+ flex-direction: row;
3391
+ align-items: center;
3392
+ }
3393
+ .c-navbar__toggle {
3394
+ display: none;
3395
+ }
3396
+ }
3397
+ .c-drawer-lock {
3398
+ overflow: hidden;
3399
+ }
3400
+
3401
+ .c-drawer {
3402
+ --c-drawer-x: 0;
3403
+ --c-drawer-y: 0;
3404
+ box-sizing: border-box;
3405
+ margin: 0;
3406
+ color: var(--c-text);
3407
+ background: var(--c-background);
3408
+ border: 1px solid var(--c-muted);
3409
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08), 0 16px 48px rgba(0, 0, 0, 0.2);
3410
+ opacity: 0;
3411
+ transition: opacity 0.2s ease-out, transform 0.2s ease-out, overlay 0.2s allow-discrete, display 0.2s allow-discrete;
3412
+ transform: translate(var(--c-drawer-x), var(--c-drawer-y));
3413
+ }
3414
+ .c-drawer[open] {
3415
+ display: flex;
3416
+ flex-direction: column;
3417
+ padding: 0;
3418
+ opacity: 1;
3419
+ transform: none;
3420
+ }
3421
+ @starting-style {
3422
+ .c-drawer[open] {
3423
+ opacity: 0;
3424
+ transform: translate(var(--c-drawer-x), var(--c-drawer-y));
3425
+ }
3426
+ }
3427
+ .c-drawer::backdrop {
3428
+ background: rgba(0, 0, 0, 0.5);
3429
+ opacity: 0;
3430
+ transition: opacity 0.2s ease-out, overlay 0.2s allow-discrete, display 0.2s allow-discrete;
3431
+ }
3432
+ .c-drawer[open]::backdrop {
3433
+ opacity: 1;
3434
+ }
3435
+ @starting-style {
3436
+ .c-drawer[open]::backdrop {
3437
+ opacity: 0;
3438
+ }
3439
+ }
3440
+ @media (prefers-reduced-motion: reduce) {
3441
+ .c-drawer {
3442
+ transform: none;
3443
+ transition: none;
3444
+ }
3445
+ @starting-style {
3446
+ .c-drawer[open] {
3447
+ transform: none;
3448
+ }
3449
+ }
3450
+ .c-drawer::backdrop {
3451
+ transition: none;
3452
+ }
3453
+ }
3454
+
3455
+ .c-drawer--start,
3456
+ .c-drawer--end {
3457
+ inset-block: 0;
3458
+ max-width: 100vw;
3459
+ height: 100dvh;
3460
+ max-height: 100dvh;
3461
+ }
3462
+
3463
+ .c-drawer--start {
3464
+ --c-drawer-x: -100%;
3465
+ inset-inline: 0 auto;
3466
+ border-block: 0;
3467
+ border-inline-start: 0;
3468
+ border-start-end-radius: 0;
3469
+ border-end-end-radius: 0;
3470
+ }
3471
+ .c-drawer--start:dir(rtl) {
3472
+ --c-drawer-x: 100%;
3473
+ }
3474
+
3475
+ .c-drawer--end {
3476
+ --c-drawer-x: 100%;
3477
+ inset-inline: auto 0;
3478
+ border-block: 0;
3479
+ border-inline-end: 0;
3480
+ border-start-start-radius: 0;
3481
+ border-end-start-radius: 0;
3482
+ }
3483
+ .c-drawer--end:dir(rtl) {
3484
+ --c-drawer-x: -100%;
3485
+ }
3486
+
3487
+ .c-drawer--top,
3488
+ .c-drawer--bottom {
3489
+ inset-inline: 0;
3490
+ width: 100vw;
3491
+ max-width: 100vw;
3492
+ max-height: 100dvh;
3493
+ border-inline: 0;
3494
+ }
3495
+
3496
+ .c-drawer--top {
3497
+ --c-drawer-y: -100%;
3498
+ inset-block: 0 auto;
3499
+ border-block-start: 0;
3500
+ border-end-start-radius: 0;
3501
+ border-end-end-radius: 0;
3502
+ }
3503
+
3504
+ .c-drawer--bottom {
3505
+ --c-drawer-y: 100%;
3506
+ inset-block: auto 0;
3507
+ border-block-end: 0;
3508
+ border-start-start-radius: 0;
3509
+ border-start-end-radius: 0;
3510
+ }
3511
+
3512
+ .c-drawer--start.c-drawer--sm,
3513
+ .c-drawer--end.c-drawer--sm {
3514
+ width: 20rem;
3515
+ }
3516
+
3517
+ .c-drawer--start.c-drawer--md,
3518
+ .c-drawer--end.c-drawer--md {
3519
+ width: 28rem;
3520
+ }
3521
+
3522
+ .c-drawer--start.c-drawer--lg,
3523
+ .c-drawer--end.c-drawer--lg {
3524
+ width: 40rem;
3525
+ }
3526
+
3527
+ .c-drawer--top.c-drawer--sm,
3528
+ .c-drawer--bottom.c-drawer--sm {
3529
+ height: 20rem;
3530
+ }
3531
+
3532
+ .c-drawer--top.c-drawer--md,
3533
+ .c-drawer--bottom.c-drawer--md {
3534
+ height: 28rem;
3535
+ }
3536
+
3537
+ .c-drawer--top.c-drawer--lg,
3538
+ .c-drawer--bottom.c-drawer--lg {
3539
+ height: 40rem;
3540
+ }
3541
+
3542
+ .c-drawer__header {
3543
+ display: flex;
3544
+ flex: none;
3545
+ gap: 1rem;
3546
+ align-items: flex-start;
3547
+ justify-content: space-between;
3548
+ padding: 1.25rem 1.5rem 0;
3549
+ }
3550
+
3551
+ .c-drawer__heading {
3552
+ flex: 1 1 auto;
3553
+ min-width: 0;
3554
+ }
3555
+
3556
+ .c-drawer__title {
3557
+ margin: 0;
3558
+ }
3559
+
3560
+ .c-drawer__description {
3561
+ margin: 0.25rem 0 0;
3562
+ }
3563
+
3564
+ .c-drawer__close {
3565
+ display: inline-flex;
3566
+ flex: none;
3567
+ align-items: center;
3568
+ justify-content: center;
3569
+ padding: 0;
3570
+ margin-inline-start: auto;
3571
+ font-size: 1.25rem;
3572
+ line-height: 1;
3573
+ color: var(--c-muted);
3574
+ cursor: pointer;
3575
+ background: none;
3576
+ border: 0;
3577
+ }
3578
+ .c-drawer__close:hover {
3579
+ color: var(--c-text);
3580
+ }
3581
+ .c-drawer__close:focus-visible {
3582
+ outline: 2px solid currentColor;
3583
+ outline-offset: 2px;
3584
+ }
3585
+
3586
+ .c-drawer__body {
3587
+ flex: 1 1 auto;
3588
+ min-height: 0;
3589
+ padding: 1.25rem 1.5rem;
3590
+ overflow-y: auto;
3591
+ }
3592
+
3593
+ .c-drawer__footer {
3594
+ display: flex;
3595
+ flex: none;
3596
+ flex-wrap: wrap;
3597
+ gap: 1rem;
3598
+ justify-content: flex-end;
3599
+ padding: 0 1.5rem 1.25rem;
3600
+ }
3601
+
3602
+ .c-menu {
3603
+ display: inline-block;
3604
+ }
3605
+
3606
+ .c-menu__list {
3607
+ box-sizing: border-box;
3608
+ min-width: 12rem;
3609
+ padding: 0.25rem;
3610
+ }
3611
+ .c-menu__list:focus {
3612
+ outline: none;
3613
+ }
3614
+
3615
+ .c-menu__item {
3616
+ display: flex;
3617
+ gap: 0.75rem;
3618
+ align-items: center;
3619
+ padding: 0.625rem 0.75rem;
3620
+ color: var(--c-text);
3621
+ cursor: pointer;
3622
+ user-select: none;
3623
+ background: transparent;
3624
+ border-radius: 0;
3625
+ }
3626
+ .c-menu__item:hover, .c-menu__item:focus {
3627
+ color: var(--c-text);
3628
+ background: var(--c-surface-active);
3629
+ }
3630
+ .c-menu__item:focus-visible {
3631
+ outline: 1px solid var(--c-focus);
3632
+ outline-offset: -2px;
3633
+ }
3634
+
3635
+ .c-menu__item--disabled {
3636
+ cursor: not-allowed;
3637
+ opacity: 0.5;
3638
+ }
3639
+ .c-menu__item--disabled:hover, .c-menu__item--disabled:focus {
3640
+ color: var(--c-text);
3641
+ background: transparent;
3642
+ }
3643
+
3644
+ .c-menu__label {
3645
+ padding: 0.5rem 0.75rem;
3646
+ font-size: 0.875rem;
3647
+ color: var(--c-muted);
3648
+ }
3649
+
3650
+ .c-menu__separator {
3651
+ height: 1px;
3652
+ margin: 0.25rem 0;
3653
+ background: var(--c-muted);
3654
+ }