UNPKG

@ebay/skin

Version:

Skin - CSS modules that represent the brand eBay

326 lines (300 loc) 8.41 kB
:root { --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15), 0 5px 17px rgba(0, 0, 0, 0.2); } .listbox-button { line-height: normal; position: relative; vertical-align: bottom; } span.listbox-button { display: inline-block; } .listbox-button .btn { padding-left: 15px; padding-right: 15px; } span.listbox-button--fluid, span.listbox-button--fluid .btn, span.listbox-button--fluid .expand-btn { width: 100%; } div.listbox-button__listbox { background-color: var( --listbox-button-listbox-background-color, var(--color-background-elevated) ); border-radius: var( --listbox-button-listbox-border-radius, var(--border-radius-50) ); box-shadow: var(--bubble-shadow); box-sizing: border-box; display: none; left: 0; max-height: 400px; overflow-y: auto; position: absolute; top: 0; width: -moz-fit-content; width: fit-content; z-index: 2; } div.listbox-button__listbox--set-position { min-width: 100%; top: calc(100% + 4px); width: auto; } div.listbox-button__listbox--fixed { position: fixed; } [dir="rtl"] div.listbox-button__listbox { left: unset; right: 0; } .listbox-button button.btn[aria-expanded="true"] ~ div.listbox-button__listbox, button.expand-btn[aria-expanded="true"] ~ div.listbox-button__listbox { display: block; } .listbox-button button[aria-invalid="true"] { border-color: var( --listbox-button-invalid-border-color, var(--color-stroke-attention) ); } .listbox-button:not(.listbox-button--error) button:not( [disabled], [aria-disabled="true"], [aria-invalid="true"] ).btn--form { border-color: var( --listbox-button-border-color, var(--color-stroke-default) ); } .listbox-button:not(.listbox-button--error) button:not( [disabled], [aria-disabled="true"], [aria-invalid="true"] ).btn--form:active, .listbox-button:not(.listbox-button--error) button:not( [disabled], [aria-disabled="true"], [aria-invalid="true"] ).btn--form:focus, .listbox-button:not(.listbox-button--error) button:not( [disabled], [aria-disabled="true"], [aria-invalid="true"] ).btn--form:hover { border-color: inherit; } .listbox-button button.btn--borderless, .listbox-button button.expand-btn--borderless { background-color: initial; border-color: transparent; padding-left: 0; vertical-align: initial; } .listbox-button button.btn--borderless:focus, .listbox-button button.expand-btn--borderless:focus { outline: none; text-decoration: underline; } .listbox-button button.btn--borderless[aria-expanded="true"] ~ .listbox-button__listbox, .listbox-button button.expand-btn--borderless[aria-expanded="true"] ~ .listbox-button__listbox { top: 41px; } .listbox-button.listbox-button--form button { background-color: var( --listbox-button-background-color, var(--color-background-secondary) ); border-color: var( --listbox-button-border-color, var(--color-stroke-default) ); color: var( --listbox-button-foreground-color, var(--color-foreground-primary) ); } .listbox-button.listbox-button--form button[aria-disabled="true"], .listbox-button.listbox-button--form button[disabled] { border-color: var( --listbox-button-disabled-border-color, var(--color-background-disabled) ); color: var( --listbox-button-disabled-foreground-color, var(--color-foreground-disabled) ); } .listbox-button.listbox-button--form button:focus { background-color: var( --combobox-textbox-focus-background-color, var(--color-background-primary) ); } .listbox-button.listbox-button--form button[aria-invalid="true"] { border-color: var( --listbox-button-invalid-border-color, var(--color-stroke-attention) ); } .listbox-button.listbox-button--error button:not(.btn--borderless) { background-color: var( --listbox-button-background-color, var(--color-background-secondary) ); border-color: var( --listbox-button-border-color, var(--color-stroke-attention) ); } .listbox-button .btn__label { color: var(--listbox-button-label-color, var(--color-foreground-secondary)); margin-right: 3px; } .listbox-button--expanded .btn__label { color: var(--listbox-button-label-color, var(--color-foreground-primary)); } .listbox-button.listbox-button--error button .btn__floating-label, .listbox-button.listbox-button--error button .btn__label { color: var(--listbox-button-label-color, var(--color-foreground-attention)); } .listbox-button .btn__text { font-weight: 700; margin-right: auto; } .listbox-button__options { border-radius: var(--listbox-button-border-radius, var(--border-radius-50)); } .listbox-button__options[role="listbox"]:focus .listbox-button__option--active[role="option"] { background-color: var(--color-state-primary-hover); } .listbox-button__option svg.icon { align-self: center; fill: currentColor; margin: 0 auto; opacity: 0; stroke: currentColor; stroke-width: 0; margin-inline-start: var(--spacing-100); } div.listbox-button__option[role="option"][aria-selected="true"] svg.icon { opacity: 1; } .listbox-button__description { color: var( --listbox-button-subtitle-color, var(--color-foreground-secondary) ); font-size: var(--font-size-small); font-weight: 400; grid-column: 1 2; grid-row: 2; } div.listbox-button__option[role="option"] { background-color: initial; border-color: var( --listbox-option-border-color, var(--color-background-primary) ); border-style: solid; border-width: 1px; box-sizing: border-box; color: var( --listbox-option-foreground-color, var(--color-foreground-primary) ); cursor: default; display: inline-grid; font-family: inherit; grid-template-columns: auto auto; justify-content: space-between; padding: 8px 15px; width: 100%; } div.listbox-button__option[role="option"]:not(:last-child) { margin-bottom: 1px; } div.listbox-button__option[role="option"]:focus { outline-offset: -4px; } div.listbox-button__option[role="option"][hidden] { display: none; } div.listbox-button__option[role="option"]:hover { background-color: var(--color-state-primary-hover); color: var( --listbox-option-hover-foreground-color, var(--color-foreground-primary) ); } div.listbox-button__option[role="option"]:active { font-weight: 700; } div.listbox-button__option[role="option"]:disabled, div.listbox-button__option[role="option"][aria-disabled="true"] { background-color: unset; color: var( --listbox-option-disabled-foreground-color, var(--color-foreground-disabled) ); font-weight: unset; } div.listbox-button__option[role="option"]:first-child { border-top-left-radius: var( --listbox-button-listbox-border-radius, var(--border-radius-50) ); border-top-right-radius: var( --listbox-button-listbox-border-radius, var(--border-radius-50) ); } div.listbox-button__option[role="option"]:last-child { border-bottom-left-radius: var( --listbox-button-listbox-border-radius, var(--border-radius-50) ); border-bottom-right-radius: var( --listbox-button-listbox-border-radius, var(--border-radius-50) ); } div.listbox-button__option[role="option"]:disabled .listbox-button__description, div.listbox-button__option[role="option"][aria-disabled="true"] .listbox-button__description { background-color: unset; color: var( --listbox-option-disabled-foreground-color, var(--color-foreground-disabled) ); font-weight: unset; } div.listbox-button__option--active[role="option"] { font-weight: 700; } span.listbox-button__value { flex: 1 0 auto; white-space: nowrap; } .listbox-button__options:focus:not(:focus-visible) { outline: none; } [dir="rtl"] .listbox-button .btn__label { color: var(--listbox-button-label-color, var(--color-foreground-secondary)); margin-left: 3px; margin-right: 0; }