UNPKG

@ebay/skin

Version:

Skin - CSS modules that represent the brand eBay

406 lines (405 loc) 11.7 kB
:root { --bubble-shadow: 0 2px 7px rgb(0 0 0 / 0.15), 0 5px 17px rgb(0 0 0 / 0.2); --state-layer-neutral-on-strong: rgb(var(--color-neutral-900-rgb), 0); --state-layer-neutral: rgb(var(--color-neutral-900-rgb), 0); } div.filter-group { display: flex; flex-wrap: wrap; } span.filter-menu-button { display: inline-block; position: relative; } span.filter-menu-button + span.filter-menu-button { margin-left: 8px; } button.filter-menu-button__button { align-items: center; background-color: var(--color-background-secondary); border: 1px solid transparent; border-radius: 16px; box-sizing: border-box; color: var(--color-foreground-primary); display: inline-flex; flex: 0 1 auto; flex-direction: column; font-family: inherit; font-size: var(--font-size-body); height: 32px; justify-content: center; margin: 0; max-width: 280px; min-width: 56px; padding: 0 var(--spacing-200); text-align: center; text-decoration: none; vertical-align: bottom; } button.filter-menu-button__button + button.filter-menu-button__button { margin-left: 8px; } button.filter-menu-button__button { overflow: hidden; position: relative; } button.filter-menu-button__button:after { background-color: var(--color-state-layer-neutral); content: ""; inset: 0; pointer-events: none; position: absolute; } button.filter-menu-button__button:not( [disabled], [aria-disabled="true"] ):hover:after, button.filter-menu-button__button[href]:hover:after { background-color: var(--color-state-layer-hover); } button.filter-menu-button__button:not( [disabled], [aria-disabled="true"] ):focus-visible:after, button.filter-menu-button__button[href]:focus-visible:after { background-color: var(--color-state-layer-focus); } button.filter-menu-button__button:not( [disabled], [aria-disabled="true"] ):active:after, button.filter-menu-button__button[href]:active:after { background-color: var(--color-state-layer-pressed); } .filter-menu-button__button-cell { display: flex; } .filter-menu-button__button-cell svg.icon--12 { align-self: center; color: var( --filter-menu-button-icon-color, var(--color-foreground-primary) ); margin-inline-start: 8px; } .filter-menu-button__button-text { display: inline-block; max-width: 238px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .filter-menu-button__button[aria-expanded="true"] svg.icon { transform: rotate(180deg); } button.filter-menu-button__button[aria-pressed="true"] { border-color: var( --filter-button-foreground-color, var(--color-border-strong) ); font-weight: 700; } button.filter-menu-button__button[aria-disabled="true"], button.filter-menu-button__button[aria-pressed="true"][aria-disabled="true"], button.filter-menu-button__button[aria-pressed="true"][disabled], button.filter-menu-button__button[disabled] { color: var( --filter-button-disabled-foreground-color, var(--color-background-disabled) ); font-weight: 400; } button.filter-menu-button__button[aria-disabled="true"]:focus, button.filter-menu-button__button[aria-disabled="true"]:hover, button.filter-menu-button__button[aria-pressed="true"][aria-disabled="true"]:focus, button.filter-menu-button__button[aria-pressed="true"][aria-disabled="true"]:hover, button.filter-menu-button__button[aria-pressed="true"][disabled]:focus, button.filter-menu-button__button[aria-pressed="true"][disabled]:hover, button.filter-menu-button__button[disabled]:focus, button.filter-menu-button__button[disabled]:hover { background-color: var( --filter-button-background-color, var(--color-background-secondary) ); color: var( --filter-button-disabled-foreground-color, var(--color-background-disabled) ); } button.filter-menu-button__button[aria-disabled="true"] .filter-menu-button__button-cell > svg.icon, button.filter-menu-button__button[aria-pressed="true"][aria-disabled="true"] .filter-menu-button__button-cell > svg.icon, button.filter-menu-button__button[aria-pressed="true"][disabled] .filter-menu-button__button-cell > svg.icon, button.filter-menu-button__button[disabled] .filter-menu-button__button-cell > svg.icon { color: var( --filter-button-disabled-foreground-color, var(--color-foreground-disabled) ); } button.filter-menu-button__button[aria-pressed="true"][aria-disabled="true"]:hover, button.filter-menu-button__button[aria-pressed="true"][disabled]:hover { background-color: var( --filter-button-selected-background-color, var(--color-background-secondary) ); } .filter-menu-button__menu { background-color: var( --filter-menu-item-background-color, var(--color-background-elevated) ); border: none; border-radius: 16px; box-shadow: var(--bubble-shadow); display: none; min-width: 144px; overflow: hidden; position: absolute; top: 0; width: max-content; z-index: 1; } .filter-menu-button__menu--set-position { top: calc(100% + 8px); } button.filter-menu-button__button[aria-expanded="true"] + .filter-menu-button__menu { display: block; } .filter-menu-button__items { margin-top: 8px; max-height: 400px; min-width: 100%; overflow-y: auto; position: relative; transform: translateZ(0); } span.filter-menu-button__items { display: inline-block; } span.filter-menu-button__checkbox, span.filter-menu-button__radio { display: block; flex-shrink: 1; height: 18px; min-width: 18px; width: 18px; } span.filter-menu-button__checkbox svg.icon--unchecked { color: var( --filter-menu-item-unchecked-color, var(--color-foreground-secondary) ); display: block; height: 18px; width: 18px; } span.filter-menu-button__checkbox svg.icon--checked { color: var( --filter-menu-item-checked-color, var(--color-foreground-primary) ); display: none; height: 18px; width: 18px; } span.filter-menu-button__radio svg.icon--unchecked { color: var( --filter-menu-item-unchecked-color, var(--color-foreground-primary) ); display: block; height: 18px; width: 18px; } span.filter-menu-button__radio svg.icon--checked { color: var( --filter-menu-item-checked-color, var(--color-foreground-primary) ); display: none; height: 18px; width: 18px; } .filter-menu-button__item { background-color: var(--color-background-elevated); box-sizing: border-box; color: var(--color-foreground-primary); display: flex; font-size: var(--font-size-body); justify-content: space-between; line-height: 1.4em; margin: 0; width: 100%; } .filter-menu-button__item:disabled, .filter-menu-button__item:disabled span > svg, .filter-menu-button__item[aria-disabled="true"], .filter-menu-button__item[aria-disabled="true"] span > svg { color: var(--color-foreground-disabled); } .filter-menu-button__item:disabled:hover, .filter-menu-button__item[aria-disabled="true"]:hover { background-color: inherit; } .filter-menu-button__item { overflow: hidden; position: relative; } .filter-menu-button__item:after { background-color: var(--color-state-layer-neutral); content: ""; inset: 0; pointer-events: none; position: absolute; } .filter-menu-button__item:not([disabled], [aria-disabled="true"]):hover:after, .filter-menu-button__item[href]:hover:after { background-color: var(--color-state-layer-hover); } .filter-menu-button__item:not( [disabled], [aria-disabled="true"] ):focus-visible:after, .filter-menu-button__item[href]:focus-visible:after { background-color: var(--color-state-layer-focus); } .filter-menu-button__item:not([disabled], [aria-disabled="true"]):active:after, .filter-menu-button__item[href]:active:after { background-color: var(--color-state-layer-pressed); } .filter-menu-button__item { outline-offset: -4px; padding: 8px 16px; } .filter-menu-button__item:last-child { margin-bottom: 8px; } .filter-menu-button__item span.checkbox, .filter-menu-button__item span.radio { align-items: flex-start; display: flex; flex-shrink: 1; justify-content: center; } .filter-menu-button__item svg.checkbox__unchecked { color: var( --filter-menu-item-unchecked-color, var(--color-foreground-secondary) ); } .filter-menu-button__item svg.checkbox__checked { color: var( --filter-menu-item-checked-color, var(--color-foreground-primary) ); } .filter-menu-button__item svg.radio__unchecked { color: var( --filter-menu-item-unchecked-color, var(--color-foreground-secondary) ); } .filter-menu-button__item svg.radio__checked { color: var( --filter-menu-item-checked-color, var(--color-foreground-primary) ); } span.filter-menu-button__item { display: block; } button.filter-menu-button__footer { border: none; border-color: var(--color-border-subtle); border-top-style: solid; border-top-width: 1px; bottom: 0; outline-offset: -10; overflow: hidden; padding: 16px; position: relative; transform: translateZ(0); } button.filter-menu-button__footer:after { background-color: var(--color-state-layer-neutral); content: ""; inset: 0; pointer-events: none; position: absolute; } button.filter-menu-button__footer:not( [disabled], [aria-disabled="true"] ):hover:after, button.filter-menu-button__footer[href]:hover:after { background-color: var(--color-state-layer-hover); } button.filter-menu-button__footer:not( [disabled], [aria-disabled="true"] ):focus-visible:after, button.filter-menu-button__footer[href]:focus-visible:after { background-color: var(--color-state-layer-focus); } button.filter-menu-button__footer:not( [disabled], [aria-disabled="true"] ):active:after, button.filter-menu-button__footer[href]:active:after { background-color: var(--color-state-layer-pressed); } button.filter-menu-button__footer { background-color: var(--color-background-elevated); box-sizing: border-box; color: var(--color-foreground-primary); display: flex; font-size: var(--font-size-body); justify-content: space-between; line-height: 1.4em; margin: 0; width: 100%; } button.filter-menu-button__footer:disabled, button.filter-menu-button__footer:disabled span > svg, button.filter-menu-button__footer[aria-disabled="true"], button.filter-menu-button__footer[aria-disabled="true"] span > svg { color: var(--color-foreground-disabled); } button.filter-menu-button__footer:disabled:hover, button.filter-menu-button__footer[aria-disabled="true"]:hover { background-color: inherit; } .filter-menu-button__text { flex-grow: 1; margin-left: 8px; } .filter-menu-button__item[role="menuitemcheckbox"][aria-checked="true"] svg.icon--unchecked { display: none; } .filter-menu-button__item[role="menuitemcheckbox"][aria-checked="true"] svg.icon--checked { display: block; } .filter-menu-button__item[role="menuitemradio"][aria-checked="true"] svg.icon--unchecked { display: none; } .filter-menu-button__item[role="menuitemradio"][aria-checked="true"] svg.icon--checked { display: block; } div.filter-menu-button__item[role^="menuitem"]:focus:not(:focus-visible) { outline: none; } [dir="rtl"] .filter-menu-button__checkbox { margin-left: 8px; }