@adobe/spectrum-css
Version:
The Spectrum CSS top-level backwards compatible package
427 lines (328 loc) • 16.2 kB
CSS
.spectrum-Stepper {
--spectrum-stepper-width: var(--spectrum-global-dimension-size-900);
--spectrum-stepper-border-size: var(--spectrum-alias-border-size-thin, var(--spectrum-global-dimension-static-size-10));
--spectrum-stepper-button-height: calc(var(--spectrum-alias-single-line-height, var(--spectrum-global-dimension-size-400)) / 2);
--spectrum-stepper-button-width: calc(var(--spectrum-global-dimension-size-300) - var(--spectrum-stepper-border-size));
--spectrum-stepper-button-padding: calc(var(--spectrum-global-dimension-size-150) / 2);
--spectrum-stepper-border-radius-reset: 0;
--spectrum-stepper-border-size-reset: 0;
--spectrum-stepper-icon-nudge-top: var(--spectrum-global-dimension-size-10);
--spectrum-stepper-icon-nudge: var(--spectrum-global-dimension-size-25);
--spectrum-stepper-quiet-width: var(--spectrum-global-dimension-size-600);
--spectrum-stepper-button-offset: calc(var(--spectrum-stepper-button-width) / 2 - var(--spectrum-icon-chevron-down-small-width, var(--spectrum-global-dimension-size-100)) / 2);
--spectrum-stepper-quiet-button-width: calc(var(--spectrum-stepper-button-width) - var(--spectrum-stepper-button-offset));
}
.spectrum-Stepper {
display: -ms-inline-flexbox;
display: inline-flex;
-ms-flex-direction: row;
flex-direction: row;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
width: var(--spectrum-stepper-width);
line-height: 0;
border-radius: var(--spectrum-alias-border-radius-regular, var(--spectrum-global-dimension-size-50));
transition: border-color var(--spectrum-global-animation-duration-100, 130ms) ease-in-out, box-shadow var(--spectrum-global-animation-duration-100, 130ms) ease-in-out;
}
.spectrum-Stepper::before {
content: '';
}
[dir="ltr"] .spectrum-Stepper-buttons {
border-top-left-radius: 0;
}
[dir="rtl"] .spectrum-Stepper-buttons {
border-top-right-radius: 0;
}
[dir="ltr"] .spectrum-Stepper-buttons {
border-top-right-radius: var(--spectrum-alias-border-radius-regular, var(--spectrum-global-dimension-size-50));
}
[dir="rtl"] .spectrum-Stepper-buttons {
border-top-left-radius: var(--spectrum-alias-border-radius-regular, var(--spectrum-global-dimension-size-50));
}
[dir="ltr"] .spectrum-Stepper-buttons {
border-bottom-right-radius: var(--spectrum-alias-border-radius-regular, var(--spectrum-global-dimension-size-50));
}
[dir="rtl"] .spectrum-Stepper-buttons {
border-bottom-left-radius: var(--spectrum-alias-border-radius-regular, var(--spectrum-global-dimension-size-50));
}
[dir="ltr"] .spectrum-Stepper-buttons {
border-bottom-left-radius: 0;
}
[dir="rtl"] .spectrum-Stepper-buttons {
border-bottom-right-radius: 0;
}
.spectrum-Stepper-buttons {
display: block;
transition: box-shadow var(--spectrum-global-animation-duration-100, 130ms) ease-in-out;
}
[dir="ltr"] .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper-stepDown {
padding-left: var(--spectrum-stepper-button-padding);
}
[dir="rtl"] .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper-stepDown {
padding-right: var(--spectrum-stepper-button-padding);
}
[dir="ltr"] .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper-stepDown {
padding-right: var(--spectrum-stepper-button-padding);
}
[dir="rtl"] .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper-stepDown {
padding-left: var(--spectrum-stepper-button-padding);
}
[dir="ltr"] .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper-stepDown {
border-left-width: var(--spectrum-stepper-border-size-reset);
}
[dir="rtl"] .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper-stepDown {
border-right-width: var(--spectrum-stepper-border-size-reset);
}
[dir="ltr"] .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper-stepDown {
border-top-left-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="rtl"] .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper-stepDown {
border-top-right-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="ltr"] .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper-stepDown {
border-bottom-left-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="rtl"] .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper-stepDown {
border-bottom-right-radius: var(--spectrum-stepper-border-radius-reset);
}
.spectrum-Stepper-stepUp,
.spectrum-Stepper-stepDown {
position: relative;
display: -ms-flexbox;
display: flex;
box-sizing: border-box;
height: var(--spectrum-stepper-button-height);
width: var(--spectrum-stepper-button-width);
min-width: 0;
margin: 0 ;
border-width: var(--spectrum-stepper-border-size);
}
.spectrum-Stepper-stepUp .spectrum-Icon, .spectrum-Stepper-stepDown .spectrum-Icon {
margin: 0 ;
opacity: 1;
}
[dir="ltr"] .spectrum-Stepper-stepUp {
border-bottom-right-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="rtl"] .spectrum-Stepper-stepUp {
border-bottom-left-radius: var(--spectrum-stepper-border-radius-reset);
}
.spectrum-Stepper-stepUp {
border-bottom: none;
padding-top: var(--spectrum-stepper-icon-nudge-top);
}
[dir="ltr"] .spectrum-Stepper-stepDown {
border-top-right-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="rtl"] .spectrum-Stepper-stepDown {
border-top-left-radius: var(--spectrum-stepper-border-radius-reset);
}
.spectrum-Stepper-stepDown {
padding-bottom: var(--spectrum-stepper-icon-nudge);
}
.spectrum-Stepper-textfield {
-ms-flex: 1;
flex: 1;
width: auto;
}
[dir="ltr"] .spectrum-Stepper-input {
border-top-right-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="rtl"] .spectrum-Stepper-input {
border-top-left-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="ltr"] .spectrum-Stepper-input {
border-bottom-right-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="rtl"] .spectrum-Stepper-input {
border-bottom-left-radius: var(--spectrum-stepper-border-radius-reset);
}
.spectrum-Stepper-input {
min-width: 0;
}
.spectrum-Stepper-textfield {
min-width: 0;
}
.spectrum-Stepper--quiet {
border-radius: var(--spectrum-stepper-border-radius-reset);
width: var(--spectrum-stepper-quiet-width);
}
.spectrum-Stepper--quiet .spectrum-Stepper-buttons {
border-radius: var(--spectrum-stepper-border-radius-reset);
}
[dir="ltr"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
border-right-width: var(--spectrum-stepper-border-size-reset);
}
[dir="rtl"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
border-left-width: var(--spectrum-stepper-border-size-reset);
}
[dir="ltr"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
border-left: none;
}
[dir="rtl"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
border-right: none;
}
[dir="ltr"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp,[dir="ltr"]
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
padding-right: 0;
}
[dir="rtl"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp,[dir="rtl"]
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
padding-left: 0;
}
.spectrum-Stepper--quiet .spectrum-Stepper-stepUp,
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
width: var(--spectrum-stepper-quiet-button-width);
min-width: 0;
border-top: none;
border-radius: var(--spectrum-stepper-border-radius-reset);
-ms-flex-pack: end;
justify-content: flex-end;
}
[dir="ltr"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp:after,[dir="ltr"] .spectrum-Stepper--quiet .spectrum-Stepper-stepDown:after {
right: calc(var(--spectrum-stepper-button-offset) * -1);
}
[dir="rtl"] .spectrum-Stepper--quiet .spectrum-Stepper-stepUp:after,[dir="rtl"] .spectrum-Stepper--quiet .spectrum-Stepper-stepDown:after {
left: calc(var(--spectrum-stepper-button-offset) * -1);
}
.spectrum-Stepper--quiet .spectrum-Stepper-stepUp:after, .spectrum-Stepper--quiet .spectrum-Stepper-stepDown:after {
content: '';
position: absolute;
height: 100%;
width: var(--spectrum-stepper-button-offset);
}
.spectrum-Stepper:hover:not(.is-disabled):not(.is-invalid):not(.is-focused):not(.is-keyboardFocused) .spectrum-Stepper-stepUp,
.spectrum-Stepper:hover:not(.is-disabled):not(.is-invalid):not(.is-focused):not(.is-keyboardFocused) .spectrum-Stepper-stepDown,
.spectrum-Stepper:hover:not(.is-disabled):not(.is-invalid):not(.is-focused):not(.is-keyboardFocused) .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-hover, var(--spectrum-alias-border-color-hover));
}
.spectrum-Stepper.is-focused {
border-color: var(--spectrum-textfield-m-border-color-mouse-focus, var(--spectrum-alias-border-color-mouse-focus));
}
.spectrum-Stepper.is-focused .spectrum-Stepper-stepUp,
.spectrum-Stepper.is-focused .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-mouse-focus, var(--spectrum-alias-border-color-mouse-focus));
}
.spectrum-Stepper.is-focused .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-mouse-focus, var(--spectrum-alias-border-color-mouse-focus));
box-shadow: none;
}
.spectrum-Stepper.is-focused.is-invalid {
border-color: var(--spectrum-textfield-m-border-color-error-mouse-focus, var(--spectrum-semantic-negative-color-state-hover));
}
.spectrum-Stepper.is-focused.is-invalid .spectrum-Stepper-stepUp,
.spectrum-Stepper.is-focused.is-invalid .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-error-mouse-focus, var(--spectrum-semantic-negative-color-state-hover));
}
.spectrum-Stepper.is-focused.is-invalid .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-error-mouse-focus, var(--spectrum-semantic-negative-color-state-hover));
}
.spectrum-Stepper.is-keyboardFocused {
box-shadow: 0 0 0 1px var(--spectrum-textfield-m-border-color-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-keyboardFocused .spectrum-Stepper-input,
.spectrum-Stepper.is-keyboardFocused .spectrum-Stepper-buttons {
box-shadow: 0 0 0 1px var(--spectrum-textfield-m-border-color-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-keyboardFocused .spectrum-Stepper-input,
.spectrum-Stepper.is-keyboardFocused .spectrum-Stepper-stepUp,
.spectrum-Stepper.is-keyboardFocused .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-keyboardFocused.is-invalid {
box-shadow: 0 0 0 1px var(--spectrum-textfield-m-border-color-error-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-keyboardFocused.is-invalid .spectrum-Stepper-stepUp,
.spectrum-Stepper.is-keyboardFocused.is-invalid .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-error-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-keyboardFocused.is-invalid .spectrum-Stepper-buttons {
box-shadow: 0 0 0 1px var(--spectrum-textfield-m-border-color-error-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-invalid .spectrum-Stepper-stepUp,
.spectrum-Stepper.is-invalid .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}
.spectrum-Stepper.is-invalid .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}
.spectrum-Stepper.is-invalid.is-keyboardFocused .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-error-key-focus, var(--spectrum-alias-border-color-focus));
box-shadow: 0 0 0 1px var(--spectrum-textfield-m-border-color-error-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-invalid.is-keyboardFocused .spectrum-Stepper-buttons {
box-shadow: 0 0 0 1px var(--spectrum-textfield-m-border-color-error-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper.is-disabled .spectrum-Stepper-stepUp,
.spectrum-Stepper.is-disabled .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-disabled, var(--spectrum-alias-border-color-transparent));
}
.spectrum-Stepper-stepUp,
.spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color, var(--spectrum-alias-border-color));
}
.spectrum-Stepper-stepUp:disabled, .spectrum-Stepper-stepDown:disabled {
border-color: var(--spectrum-textfield-m-border-color-disabled, var(--spectrum-alias-border-color-transparent));
}
.spectrum-Stepper--quiet.is-disabled .spectrum-Stepper-stepUp,
.spectrum-Stepper--quiet.is-disabled .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-quiet-m-border-color-disabled, var(--spectrum-alias-border-color-mid));
}
.spectrum-Stepper--quiet .spectrum-Stepper-stepUp,
.spectrum-Stepper--quiet .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-quiet-m-border-color, var(--spectrum-alias-border-color));
}
.spectrum-Stepper--quiet .spectrum-Stepper-stepUp:disabled, .spectrum-Stepper--quiet .spectrum-Stepper-stepDown:disabled {
border-color: var(--spectrum-textfield-quiet-m-border-color-disabled, var(--spectrum-alias-border-color-mid));
}
.spectrum-Stepper--quiet .spectrum-Stepper-input {
box-shadow: none;
}
.spectrum-Stepper--quiet.is-invalid .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}
.spectrum-Stepper--quiet.is-invalid .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}
.spectrum-Stepper--quiet.is-keyboardFocused,
.spectrum-Stepper--quiet.is-focused {
box-shadow: none;
}
.spectrum-Stepper--quiet.is-keyboardFocused .spectrum-Stepper-buttons,
.spectrum-Stepper--quiet.is-keyboardFocused .spectrum-Stepper-input,
.spectrum-Stepper--quiet.is-focused .spectrum-Stepper-buttons,
.spectrum-Stepper--quiet.is-focused .spectrum-Stepper-input {
box-shadow: 0 1px 0 0 var(--spectrum-textfield-m-border-color-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper--quiet.is-keyboardFocused .spectrum-Stepper-stepDown, .spectrum-Stepper--quiet.is-focused .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-key-focus, var(--spectrum-alias-border-color-focus));
}
.spectrum-Stepper--quiet.is-keyboardFocused.is-invalid, .spectrum-Stepper--quiet.is-focused.is-invalid {
box-shadow: none;
}
.spectrum-Stepper--quiet.is-keyboardFocused.is-invalid .spectrum-Stepper-input,
.spectrum-Stepper--quiet.is-keyboardFocused.is-invalid .spectrum-Stepper-buttons,
.spectrum-Stepper--quiet.is-focused.is-invalid .spectrum-Stepper-input,
.spectrum-Stepper--quiet.is-focused.is-invalid .spectrum-Stepper-buttons {
box-shadow: 0 1px 0 0 var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}
.spectrum-Stepper--quiet.is-keyboardFocused.is-invalid .spectrum-Stepper-input, .spectrum-Stepper--quiet.is-focused.is-invalid .spectrum-Stepper-input {
border-color: var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}
.spectrum-Stepper--quiet.is-keyboardFocused.is-invalid .spectrum-Stepper-stepDown, .spectrum-Stepper--quiet.is-focused.is-invalid .spectrum-Stepper-stepDown {
border-color: var(--spectrum-textfield-m-border-color-error, var(--spectrum-semantic-negative-color-default));
}