@jobber/components 7.10.0 → 7.11.0

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.
Files changed (106) hide show
  1. package/dist/Autocomplete/index.cjs +1 -0
  2. package/dist/Autocomplete/index.mjs +1 -0
  3. package/dist/Card/index.cjs +3 -0
  4. package/dist/Card/index.mjs +3 -0
  5. package/dist/Chip/index.cjs +1 -0
  6. package/dist/Chip/index.mjs +1 -0
  7. package/dist/Chips/InternalChipDismissible/hooks/index.cjs +1 -0
  8. package/dist/Chips/InternalChipDismissible/hooks/index.mjs +1 -0
  9. package/dist/Chips/InternalChipDismissible/index.cjs +1 -0
  10. package/dist/Chips/InternalChipDismissible/index.mjs +1 -0
  11. package/dist/Chips/index.cjs +1 -0
  12. package/dist/Chips/index.mjs +1 -0
  13. package/dist/Combobox/components/ComboboxActivator/index.cjs +1 -0
  14. package/dist/Combobox/components/ComboboxActivator/index.mjs +1 -0
  15. package/dist/Combobox/components/ComboboxContent/index.cjs +1 -0
  16. package/dist/Combobox/components/ComboboxContent/index.mjs +1 -0
  17. package/dist/Combobox/components/ComboboxTrigger/index.cjs +1 -0
  18. package/dist/Combobox/components/ComboboxTrigger/index.mjs +1 -0
  19. package/dist/Combobox/index.cjs +1 -0
  20. package/dist/Combobox/index.mjs +1 -0
  21. package/dist/ConfirmationModal/index.cjs +1 -0
  22. package/dist/ConfirmationModal/index.mjs +1 -0
  23. package/dist/DataDump/index.cjs +3 -0
  24. package/dist/DataDump/index.mjs +3 -0
  25. package/dist/DataList/components/DataListActions/index.cjs +1 -0
  26. package/dist/DataList/components/DataListActions/index.mjs +1 -0
  27. package/dist/DataList/components/DataListBulkActions/index.cjs +1 -0
  28. package/dist/DataList/components/DataListBulkActions/index.mjs +1 -0
  29. package/dist/DataList/components/DataListFilters/components/DataListSort/index.cjs +1 -0
  30. package/dist/DataList/components/DataListFilters/components/DataListSort/index.mjs +1 -0
  31. package/dist/DataList/components/DataListFilters/index.cjs +1 -0
  32. package/dist/DataList/components/DataListFilters/index.mjs +1 -0
  33. package/dist/DataList/components/DataListHeader/index.cjs +1 -0
  34. package/dist/DataList/components/DataListHeader/index.mjs +1 -0
  35. package/dist/DataList/components/DataListItem/index.cjs +1 -0
  36. package/dist/DataList/components/DataListItem/index.mjs +1 -0
  37. package/dist/DataList/components/DataListItemActions/index.cjs +1 -0
  38. package/dist/DataList/components/DataListItemActions/index.mjs +1 -0
  39. package/dist/DataList/components/DataListItemActionsOverflow/index.cjs +1 -0
  40. package/dist/DataList/components/DataListItemActionsOverflow/index.mjs +1 -0
  41. package/dist/DataList/components/DataListItems/index.cjs +1 -0
  42. package/dist/DataList/components/DataListItems/index.mjs +1 -0
  43. package/dist/DataList/components/DataListLayout/index.cjs +1 -0
  44. package/dist/DataList/components/DataListLayout/index.mjs +1 -0
  45. package/dist/DataList/components/DataListLayoutActions/index.cjs +1 -0
  46. package/dist/DataList/components/DataListLayoutActions/index.mjs +1 -0
  47. package/dist/DataList/index.cjs +1 -0
  48. package/dist/DataList/index.mjs +1 -0
  49. package/dist/DatePicker/index.cjs +1 -0
  50. package/dist/DatePicker/index.mjs +1 -0
  51. package/dist/DrawerRoot-cjs.js +181 -968
  52. package/dist/DrawerRoot-es.js +5 -734
  53. package/dist/FormatFile/index.cjs +1 -0
  54. package/dist/FormatFile/index.mjs +1 -0
  55. package/dist/Gallery/index.cjs +1 -0
  56. package/dist/Gallery/index.mjs +1 -0
  57. package/dist/InputDate/index.cjs +1 -0
  58. package/dist/InputDate/index.mjs +1 -0
  59. package/dist/InputNumberExperimental-cjs.js +783 -0
  60. package/dist/InputNumberExperimental-es.js +763 -0
  61. package/dist/LightBox/index.cjs +1 -0
  62. package/dist/LightBox/index.mjs +1 -0
  63. package/dist/Menu/index.cjs +3 -0
  64. package/dist/Menu/index.mjs +3 -0
  65. package/dist/MenuSubmenuTrigger-cjs.js +202 -447
  66. package/dist/MenuSubmenuTrigger-es.js +7 -249
  67. package/dist/Modal/index.cjs +1 -0
  68. package/dist/Modal/index.mjs +1 -0
  69. package/dist/NumberFieldInput-cjs.js +1828 -0
  70. package/dist/NumberFieldInput-es.js +1788 -0
  71. package/dist/Page/index.cjs +3 -0
  72. package/dist/Page/index.mjs +3 -0
  73. package/dist/Popover/index.cjs +1 -0
  74. package/dist/Popover/index.mjs +1 -0
  75. package/dist/Tooltip/index.cjs +1 -0
  76. package/dist/Tooltip/index.mjs +1 -0
  77. package/dist/docs/Menu/Menu.md +197 -37
  78. package/dist/floating-ui.react-cjs.js +35 -34
  79. package/dist/floating-ui.react-dom-cjs.js +65 -64
  80. package/dist/floating-ui.react-dom-es.js +2 -1
  81. package/dist/floating-ui.react-es.js +2 -1
  82. package/dist/floating-ui.utils.dom-cjs.js +185 -0
  83. package/dist/floating-ui.utils.dom-es.js +165 -0
  84. package/dist/index.cjs +3 -0
  85. package/dist/index.esm-cjs.js +0 -183
  86. package/dist/index.esm-es.js +1 -165
  87. package/dist/index.mjs +3 -0
  88. package/dist/primitives/BottomSheet/index.cjs +3 -1
  89. package/dist/primitives/BottomSheet/index.mjs +3 -1
  90. package/dist/primitives/InputNumberExperimental/InputNumberExperimental.d.ts +20 -0
  91. package/dist/primitives/InputNumberExperimental/index.cjs +22 -0
  92. package/dist/primitives/InputNumberExperimental/index.d.ts +2 -0
  93. package/dist/primitives/InputNumberExperimental/index.mjs +16 -0
  94. package/dist/primitives/InputNumberExperimental/types.d.ts +147 -0
  95. package/dist/primitives/index.cjs +9 -1
  96. package/dist/primitives/index.d.ts +2 -0
  97. package/dist/primitives/index.mjs +8 -1
  98. package/dist/styles.css +499 -0
  99. package/dist/unstyledPrimitives/index.cjs +264 -2039
  100. package/dist/unstyledPrimitives/index.mjs +72 -1847
  101. package/dist/useBaseUiId-cjs.js +275 -0
  102. package/dist/useBaseUiId-es.js +251 -0
  103. package/dist/useValueChanged-cjs.js +820 -0
  104. package/dist/useValueChanged-es.js +736 -0
  105. package/package.json +2 -2
  106. package/rollup.config.mjs +13 -2
package/dist/styles.css CHANGED
@@ -3865,6 +3865,505 @@ a._7BLGtYNuJOU-.zgRx3ehZ2z8-:hover {
3865
3865
  line-height: 0;
3866
3866
  }
3867
3867
 
3868
+ ._6HZLFIOZh4s- {
3869
+ width: 100%;
3870
+ }
3871
+
3872
+ ._-6ndFYNKKaM- {
3873
+ display: inline-block;
3874
+ width: auto;
3875
+ }
3876
+
3877
+ .c20czk-FSyY- {
3878
+ --field--placeholder-color: var(--color-base-blue--600);
3879
+ --field--value-color: var(--color-heading);
3880
+ --field--border-color: var(--color-border--interactive);
3881
+
3882
+ --field--placeholder-offset: 50%;
3883
+ --field--placeholder-transform: -50%;
3884
+
3885
+ --field--textAlign: left;
3886
+
3887
+ --field--height: var(--space-largest);
3888
+
3889
+ --field--padding-top: calc(var(--space-base) - var(--space-smallest));
3890
+ --field--padding-bottom: calc(var(--space-base) - var(--space-smallest));
3891
+ --field--padding-left: var(--space-base);
3892
+ --field--padding-right: var(--space-base);
3893
+
3894
+ --field--value-lineHeight: calc(var(--base-unit) * 1.25);
3895
+
3896
+ --field--background-color: var(--color-surface);
3897
+
3898
+ --field--base-elevation: var(--elevation-base);
3899
+ --field--label-elevation: calc(var(--field--base-elevation) + 1);
3900
+
3901
+ --stepper--width: calc(var(--space-base) + var(--space-smaller));
3902
+
3903
+ display: -ms-flexbox;
3904
+
3905
+ display: flex;
3906
+ position: relative;
3907
+ -ms-flex-direction: row;
3908
+ flex-direction: row;
3909
+ -ms-flex-align: stretch;
3910
+ align-items: stretch;
3911
+ width: 100%;
3912
+ border: 1px solid hsl(200, 13%, 87%);
3913
+ border: var(--border-base) solid var(--field--border-color);
3914
+ border-radius: 8px;
3915
+ border-radius: var(--radius-base);
3916
+ /* Read radius vars via fallback so InputGroup's parent-level overrides
3917
+ * still flatten inner corners; declaring them on `.wrapper` would
3918
+ * shadow the inherited value. */
3919
+ border-top-right-radius: 8px;
3920
+ border-top-right-radius: var(
3921
+ --public-field--top-right-radius,
3922
+ var(--radius-base)
3923
+ );
3924
+ border-bottom-right-radius: 8px;
3925
+ border-bottom-right-radius: var(
3926
+ --public-field--bottom-right-radius,
3927
+ var(--radius-base)
3928
+ );
3929
+ border-bottom-left-radius: 8px;
3930
+ border-bottom-left-radius: var(
3931
+ --public-field--bottom-left-radius,
3932
+ var(--radius-base)
3933
+ );
3934
+ border-top-left-radius: 8px;
3935
+ border-top-left-radius: var(
3936
+ --public-field--top-left-radius,
3937
+ var(--radius-base)
3938
+ );
3939
+ color: hsl(197, 90%, 12%);
3940
+ color: var(--field--value-color);
3941
+ font-size: 14px;
3942
+ font-size: var(--typography--fontSize-base);
3943
+ background-color: rgba(255, 255, 255, 1);
3944
+ background-color: var(--field--background-color);
3945
+ }
3946
+
3947
+ .c20czk-FSyY- * {
3948
+ box-sizing: border-box;
3949
+ }
3950
+
3951
+ ._-6ndFYNKKaM- .c20czk-FSyY- {
3952
+ width: auto;
3953
+ }
3954
+
3955
+ .c20czk-FSyY-:focus-within {
3956
+ z-index: var(--field--base-elevation);
3957
+ box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 1), 0px 0px 0px 4px hsl(198, 12%, 57%);
3958
+ box-shadow: var(--shadow-focus);
3959
+ }
3960
+
3961
+ /**
3962
+ * Base UI's `Field.Root` sets `data-invalid` on the outer container when the
3963
+ * field's invalid state is true. We read that attribute instead of toggling
3964
+ * a local `.invalid` class so Base UI is the single source of truth.
3965
+ */
3966
+
3967
+ ._6HZLFIOZh4s-[data-invalid] .c20czk-FSyY-,
3968
+ ._6HZLFIOZh4s-[data-invalid] .c20czk-FSyY-:focus-within {
3969
+ --field--border-color: var(--color-critical);
3970
+ }
3971
+
3972
+ ._-2INirAxaU4- {
3973
+ --field--placeholder-color: var(--color-disabled);
3974
+ --field--value-color: var(--color-disabled);
3975
+ --field--background-color: var(--color-disabled--secondary);
3976
+ --field--border-color: var(--color-border);
3977
+ }
3978
+
3979
+ ._-2INirAxaU4- :disabled {
3980
+ -webkit-text-fill-color: var(--field--value-color);
3981
+ opacity: 1;
3982
+ }
3983
+
3984
+ .NsFBA5oqRAA- {
3985
+ --field--padding-left: calc(var(--space-base) - var(--space-smaller));
3986
+ --field--padding-right: calc(var(--space-base) - var(--space-smaller));
3987
+ --field--padding-top: var(--space-small);
3988
+ --field--padding-bottom: var(--space-small);
3989
+ --field--height: calc(var(--space-larger) + var(--space-smaller));
3990
+ }
3991
+
3992
+ .ExKqck-6xVs- {
3993
+ --field--padding-left: var(--space-large);
3994
+ --field--padding-right: var(--space-large);
3995
+ --field--height: calc(var(--space-extravagant));
3996
+ }
3997
+
3998
+ .UWiqNi57G8g- {
3999
+ --field--textAlign: center;
4000
+ }
4001
+
4002
+ .po25PZwJpe4- {
4003
+ --field--textAlign: right;
4004
+ }
4005
+
4006
+ .k9dAO6d010o- {
4007
+ display: -ms-flexbox;
4008
+ display: flex;
4009
+ position: relative;
4010
+ z-index: 0;
4011
+ z-index: var(--elevation-default);
4012
+ height: var(--field--height);
4013
+ -ms-flex: 1;
4014
+ flex: 1;
4015
+ }
4016
+
4017
+ .D-PmE-l-hZU- {
4018
+ position: relative;
4019
+ z-index: var(--field--base-elevation);
4020
+ width: 100%;
4021
+ padding-top: var(--field--padding-top);
4022
+ padding-bottom: var(--field--padding-bottom);
4023
+ padding-left: var(--field--padding-left);
4024
+ padding-right: var(--field--padding-right);
4025
+ border: none;
4026
+ border-radius: 8px;
4027
+ border-radius: var(--radius-base);
4028
+ color: inherit;
4029
+ font-family: inherit;
4030
+ font-size: inherit;
4031
+ line-height: var(--field--value-lineHeight);
4032
+ text-align: var(--field--textAlign);
4033
+ background: transparent;
4034
+ -webkit-appearance: none;
4035
+ appearance: none;
4036
+ }
4037
+
4038
+ .D-PmE-l-hZU-:focus {
4039
+ outline: none;
4040
+ }
4041
+
4042
+ /**
4043
+ * When the stepper is rendered as an in-flow flex sibling (default mode), it
4044
+ * provides visual separation from the typed value. Tighten the input's
4045
+ * own right padding so narrow consumers (~100px wrappers with a suffix) keep
4046
+ * enough room for multi-digit values to display.
4047
+ */
4048
+
4049
+ .k9dAO6d010o-:has(> .t42w4ZDiDyI-) .D-PmE-l-hZU- {
4050
+ padding-right: 2px;
4051
+ padding-right: var(--space-smallest);
4052
+ }
4053
+
4054
+ .Ggk3aaMcIJU- {
4055
+ position: absolute;
4056
+ top: var(--field--placeholder-offset);
4057
+ left: 0;
4058
+ z-index: var(--field--label-elevation);
4059
+ width: 100%;
4060
+ padding-left: var(--field--padding-left);
4061
+ padding-right: var(--field--padding-right);
4062
+ overflow: hidden;
4063
+ color: var(--field--placeholder-color);
4064
+ line-height: var(--field--value-lineHeight);
4065
+ text-align: var(--field--textAlign);
4066
+ text-overflow: ellipsis;
4067
+ white-space: nowrap;
4068
+ pointer-events: none;
4069
+ -webkit-transform: translateY(var(--field--placeholder-transform));
4070
+ transform: translateY(var(--field--placeholder-transform));
4071
+ }
4072
+
4073
+ .k9dAO6d010o-:not(.C7d6qmoZiKU-) .Ggk3aaMcIJU- {
4074
+ transition: all 100ms;
4075
+ transition: all var(--timing-quick);
4076
+ }
4077
+
4078
+ /**
4079
+ * Value-present mini-label state: when the input has a value (or focus),
4080
+ * shrink and pin the placeholder label to the top-left and grow the input's
4081
+ * vertical padding to make room.
4082
+ *
4083
+ * The variables are hoisted to `.wrapper` (not `.inputWrapper`) so that
4084
+ * affix labels — which are flex siblings of `.inputWrapper` inside `.wrapper`
4085
+ * in the default render — also inherit the new padding values and stay
4086
+ * vertically aligned with the typed value.
4087
+ */
4088
+
4089
+ .c20czk-FSyY-:has(
4090
+ .k9dAO6d010o-:not(.NsFBA5oqRAA-):not(.C7d6qmoZiKU-)
4091
+ .D-PmE-l-hZU-:not(:-ms-input-placeholder)
4092
+ + .Ggk3aaMcIJU-:not(:empty)
4093
+ ) {
4094
+ --field--placeholder-color: var(--color-text--secondary);
4095
+ --field--placeholder-offset: var(--space-smallest);
4096
+ --field--placeholder-transform: 0;
4097
+ --field--padding-top: calc(var(--space-base) + var(--space-smaller));
4098
+ --field--padding-bottom: var(--space-small);
4099
+ }
4100
+
4101
+ .wrapper:has(
4102
+ .inputWrapper:not(.small, .hideLabel)
4103
+ .input:not(:-ms-input-placeholder)
4104
+ + .label:not(:empty)
4105
+ ) {
4106
+ --field--placeholder-color: var(--color-text--secondary);
4107
+ --field--placeholder-offset: var(--space-smallest);
4108
+ --field--placeholder-transform: 0;
4109
+ --field--padding-top: calc(var(--space-base) + var(--space-smaller));
4110
+ --field--padding-bottom: var(--space-small);
4111
+ }
4112
+
4113
+ .c20czk-FSyY-:has(
4114
+ .k9dAO6d010o-:not(.NsFBA5oqRAA-):not(.C7d6qmoZiKU-)
4115
+ .D-PmE-l-hZU-:not(:placeholder-shown)
4116
+ + .Ggk3aaMcIJU-:not(:empty)
4117
+ ) {
4118
+ --field--placeholder-color: var(--color-text--secondary);
4119
+ --field--placeholder-offset: var(--space-smallest);
4120
+ --field--placeholder-transform: 0;
4121
+ --field--padding-top: calc(var(--space-base) + var(--space-smaller));
4122
+ --field--padding-bottom: var(--space-small);
4123
+ }
4124
+
4125
+ .k9dAO6d010o-._-2INirAxaU4- label {
4126
+ --field--placeholder-color: var(--color-text-disabled);
4127
+ }
4128
+
4129
+ .D-PmE-l-hZU-:not(:-ms-input-placeholder) + .Ggk3aaMcIJU-:not(:empty) {
4130
+ font-size: 12px;
4131
+ font-size: var(--typography--fontSize-small);
4132
+ }
4133
+
4134
+ .input:not(:-ms-input-placeholder) + .label:not(:empty) {
4135
+ font-size: 12px;
4136
+ font-size: var(--typography--fontSize-small);
4137
+ }
4138
+
4139
+ .D-PmE-l-hZU-:not(:placeholder-shown) + .Ggk3aaMcIJU-:not(:empty) {
4140
+ font-size: 12px;
4141
+ font-size: var(--typography--fontSize-small);
4142
+ }
4143
+
4144
+ .C7d6qmoZiKU- .D-PmE-l-hZU-:not(:-ms-input-placeholder) + .Ggk3aaMcIJU-:not(:empty) {
4145
+ visibility: hidden;
4146
+ }
4147
+
4148
+ .hideLabel .input:not(:-ms-input-placeholder) + .label:not(:empty) {
4149
+ visibility: hidden;
4150
+ }
4151
+
4152
+ .C7d6qmoZiKU- .D-PmE-l-hZU-:not(:placeholder-shown) + .Ggk3aaMcIJU-:not(:empty) {
4153
+ visibility: hidden;
4154
+ }
4155
+
4156
+ .k9dAO6d010o-.NsFBA5oqRAA- .D-PmE-l-hZU-:not(:-ms-input-placeholder) + .Ggk3aaMcIJU-:not(:empty) {
4157
+ display: none;
4158
+ }
4159
+
4160
+ .inputWrapper.small .input:not(:-ms-input-placeholder) + .label:not(:empty) {
4161
+ display: none;
4162
+ }
4163
+
4164
+ .k9dAO6d010o-.NsFBA5oqRAA- .D-PmE-l-hZU-:not(:placeholder-shown) + .Ggk3aaMcIJU-:not(:empty) {
4165
+ display: none;
4166
+ }
4167
+
4168
+ /**
4169
+ * Affix labels render as flex siblings of `.inputWrapper` inside `.wrapper`.
4170
+ * The .prefix and .suffix modifiers carry variant-specific spacing so the
4171
+ * label sits visually flush against the typed value (mirroring V1 visuals).
4172
+ */
4173
+
4174
+ ._4u1JHjUYvkY- {
4175
+ display: -ms-flexbox;
4176
+ display: flex;
4177
+ -ms-flex-align: center;
4178
+ align-items: center;
4179
+ -ms-flex: 0 0 auto;
4180
+ flex: 0 0 auto;
4181
+ padding-top: var(--field--padding-top);
4182
+ padding-bottom: var(--field--padding-bottom);
4183
+ font-size: 14px;
4184
+ font-size: var(--typography--fontSize-base);
4185
+ line-height: var(--field--value-lineHeight);
4186
+ white-space: nowrap;
4187
+ }
4188
+
4189
+ /**
4190
+ * Prefix label: negative right margin absorbs the input's left padding so the
4191
+ * label sits flush against the typed value.
4192
+ */
4193
+
4194
+ ._4u1JHjUYvkY-.rEWH41rUUEE- {
4195
+ margin: 0 calc((var(--field--padding-left) - 2px) * -1) 0 0;
4196
+ margin: 0 calc((var(--field--padding-left) - var(--space-smallest)) * -1) 0 0;
4197
+ padding-left: var(--field--padding-left);
4198
+ }
4199
+
4200
+ /**
4201
+ * Suffix label: no negative left margin (the stepper sits between the input
4202
+ * value and this label, so we don't want to pull the label across it).
4203
+ */
4204
+
4205
+ ._4u1JHjUYvkY-._4-iNl6jdfmM- {
4206
+ padding-right: var(--field--padding-left);
4207
+ }
4208
+
4209
+ /**
4210
+ * Outer affix icon: rendered as a flex sibling of .inputWrapper inside the
4211
+ * field group. The prefix variant uses a negative right margin to abut the
4212
+ * input's left padding (V1 pattern); the suffix variant does NOT, because the
4213
+ * stepper now sits between the input wrapper and the suffix icon, and a
4214
+ * negative margin would pull the icon over the stepper.
4215
+ */
4216
+
4217
+ ._5-Iw-2c-wXk- {
4218
+ display: -ms-flexbox;
4219
+ display: flex;
4220
+ -ms-flex-align: center;
4221
+ align-items: center;
4222
+ -ms-flex-pack: center;
4223
+ justify-content: center;
4224
+ margin: 0 calc(var(--field--padding-left) * -1) 0 0;
4225
+ padding: 0 var(--field--padding-right) 0 var(--field--padding-left);
4226
+ }
4227
+
4228
+ ._5-Iw-2c-wXk-._4-iNl6jdfmM- {
4229
+ margin: 0;
4230
+ padding: 0 var(--field--padding-right) 0 8px;
4231
+ padding: 0 var(--field--padding-right) 0 var(--space-small);
4232
+ }
4233
+
4234
+ /**
4235
+ * Compound `<.Affix>`: a single flex sibling of .inputWrapper that bundles
4236
+ * icon and/or label inline. Visually slightly less integrated than the default
4237
+ * (split) layout but lets users compose freely.
4238
+ */
4239
+
4240
+ .tZjZRRcAShY- {
4241
+ display: -ms-flexbox;
4242
+ display: flex;
4243
+ -ms-flex-align: center;
4244
+ align-items: center;
4245
+ gap: 4px;
4246
+ gap: var(--space-smaller);
4247
+ padding: 0 16px;
4248
+ padding: 0 var(--space-base);
4249
+ color: hsl(197, 21%, 36%);
4250
+ color: var(--color-text--secondary);
4251
+ font-size: 14px;
4252
+ font-size: var(--typography--fontSize-base);
4253
+ white-space: nowrap;
4254
+ }
4255
+
4256
+ .mbEcqyBQoEg- {
4257
+ line-height: var(--field--value-lineHeight);
4258
+ }
4259
+
4260
+ .t42w4ZDiDyI- {
4261
+ display: -ms-flexbox;
4262
+ display: flex;
4263
+ z-index: calc(var(--field--base-elevation) + 1);
4264
+ width: var(--stepper--width);
4265
+ opacity: 0;
4266
+ transition: opacity 100ms;
4267
+ transition: opacity var(--timing-quick);
4268
+ -ms-flex-direction: column;
4269
+ flex-direction: column;
4270
+ -ms-flex: 0 0 auto;
4271
+ flex: 0 0 auto;
4272
+ }
4273
+
4274
+ /* Default mode: stepper lives inside .inputWrapper. Reveal on local hover/focus. */
4275
+
4276
+ .k9dAO6d010o-:hover .t42w4ZDiDyI-,
4277
+ .k9dAO6d010o-:focus-within .t42w4ZDiDyI- {
4278
+ opacity: 1;
4279
+ }
4280
+
4281
+ /**
4282
+ * Compound mode: the consumer composes <.Stepper> as a direct child of
4283
+ * NumberField.Group (.wrapper). Reveal on the wider group hover/focus there.
4284
+ * The `>` direct-child selector ensures this only matches the compound case;
4285
+ * default-mode steppers are nested deeper inside .inputWrapper.
4286
+ */
4287
+
4288
+ .c20czk-FSyY-:hover > .t42w4ZDiDyI-,
4289
+ .c20czk-FSyY-:focus-within > .t42w4ZDiDyI- {
4290
+ opacity: 1;
4291
+ }
4292
+
4293
+ .zzrCzYF-8u0- {
4294
+ display: -ms-flexbox;
4295
+ display: flex;
4296
+ padding: 0;
4297
+ border: none;
4298
+ color: hsl(197, 21%, 36%);
4299
+ color: var(--color-text--secondary);
4300
+ font-size: 8px;
4301
+ line-height: 1;
4302
+ background: transparent;
4303
+ cursor: pointer;
4304
+ -ms-flex-align: center;
4305
+ align-items: center;
4306
+ -ms-flex-pack: center;
4307
+ justify-content: center;
4308
+ -ms-flex: 1;
4309
+ flex: 1;
4310
+ }
4311
+
4312
+ .zzrCzYF-8u0-:hover {
4313
+ color: hsl(197, 90%, 12%);
4314
+ color: var(--color-heading);
4315
+ background: hsl(43, 18%, 92%);
4316
+ background: var(--color-surface--hover);
4317
+ }
4318
+
4319
+ .zzrCzYF-8u0-:focus-visible {
4320
+ outline: 0px 0px 0px 2px rgba(255, 255, 255, 1), 0px 0px 0px 4px hsl(198, 12%, 57%);
4321
+ outline: var(--shadow-focus);
4322
+ outline-offset: -2px;
4323
+ }
4324
+
4325
+ .zzrCzYF-8u0-:disabled {
4326
+ cursor: not-allowed;
4327
+ opacity: 0.4;
4328
+ }
4329
+
4330
+ ._0mcAZAtwQ2o- {
4331
+ display: -ms-flexbox;
4332
+ display: flex;
4333
+ -ms-flex-direction: column;
4334
+ flex-direction: column;
4335
+ }
4336
+
4337
+ /**
4338
+ * `Field.Description` renders a `<p>`, which inherits the user-agent
4339
+ * `margin-block` defaults. Reset margins so spacing comes only from our token.
4340
+ */
4341
+
4342
+ .xxp2uGc-B6o- {
4343
+ margin: 4px 0 0 0;
4344
+ margin: var(--space-smaller) 0 0 0;
4345
+ color: hsl(197, 21%, 36%);
4346
+ color: var(--color-text--secondary);
4347
+ font-size: 12px;
4348
+ font-size: var(--typography--fontSize-small);
4349
+ }
4350
+
4351
+ .q-WsOi6joGo- {
4352
+ -ms-flex-align: center;
4353
+ align-items: center;
4354
+ display: -ms-flexbox;
4355
+ display: flex;
4356
+ gap: 4px;
4357
+ gap: var(--space-smaller);
4358
+ padding: 4px;
4359
+ padding: var(--space-smaller);
4360
+ padding-left: 0;
4361
+ color: hsl(6, 64%, 51%);
4362
+ color: var(--color-critical);
4363
+ font-size: 12px;
4364
+ font-size: var(--typography--fontSize-small);
4365
+ }
4366
+
3868
4367
  .kub1yKbFFN0- {
3869
4368
  display: -ms-flexbox;
3870
4369
  display: flex;