UNPKG

@ebay/skin

Version:

Skin - CSS modules that represent the brand eBay

416 lines (415 loc) 12.5 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); } .fake-menu-button, .menu-button { line-height: normal; position: relative; } .fake-menu-button__menu, .menu-button__menu { background-color: var(--color-background-elevated); border-radius: var(--border-radius-50); box-shadow: var(--bubble-shadow); box-sizing: border-box; display: none; left: 0; max-height: 400px; outline: 0; overflow-y: auto; position: absolute; top: 0; width: fit-content; z-index: 2; } .fake-menu-button__menu--set-position, .menu-button__menu--set-position { min-width: 100%; top: calc(100% + 4px); width: auto; } .fake-menu-button__menu--fixed, .menu-button__menu--fixed { position: fixed; } [dir="rtl"] .fake-menu-button__menu, [dir="rtl"] .menu-button__menu { left: unset; right: 0; } span.fake-menu-button__button, span.menu-button__button { display: inline-block; vertical-align: bottom; } .fake-menu-button__menu { list-style-type: none; margin: 0; max-height: calc(50vh - 40px); overflow-y: auto; padding: 0; } div.menu-button__item[role^="menuitem"] { background-color: initial; border-color: var( --menu-button-menuitem-border-color, var(--color-background-primary) ); border-style: solid; border-width: 1px; box-sizing: border-box; color: var( --menu-button-menuitem-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.menu-button__item[role^="menuitem"]:not(:last-child) { margin-bottom: 1px; } div.menu-button__item[role^="menuitem"]:focus { outline-offset: -4px; } div.menu-button__item[role^="menuitem"] { overflow: hidden; position: relative; } div.menu-button__item[role^="menuitem"]:after { background-color: var(--color-state-layer-neutral); content: ""; inset: 0; pointer-events: none; position: absolute; } div.menu-button__item[role^="menuitem"]:not( [disabled], [aria-disabled="true"] ):hover:after, div.menu-button__item[role^="menuitem"][href]:hover:after { background-color: var(--color-state-layer-hover); } div.menu-button__item[role^="menuitem"]:not( [disabled], [aria-disabled="true"] ):focus-visible:after, div.menu-button__item[role^="menuitem"][href]:focus-visible:after { background-color: var(--color-state-layer-focus); } div.menu-button__item[role^="menuitem"]:not( [disabled], [aria-disabled="true"] ):active:after, div.menu-button__item[role^="menuitem"][href]:active:after { background-color: var(--color-state-layer-pressed); } div.menu-button__item[role^="menuitem"]:active { font-weight: 700; } div.menu-button__item[role^="menuitem"]:first-child { border-top-left-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); border-top-right-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); } div.menu-button__item[role^="menuitem"]:last-child { border-bottom-left-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); border-bottom-right-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); } .fake-menu-button__item > svg.icon--16, .menu-button__item > svg.icon--16 { align-self: center; fill: currentColor; margin: 0 auto; opacity: 0; stroke: currentColor; stroke-width: 0; } .fake-menu-button__item > svg.icon--16:last-child, .menu-button__item > svg.icon--16:last-child { margin-left: var(--spacing-100); } a.fake-menu-button__item { color: var(--menu-button-anchor-color, var(--color-foreground-primary)); text-decoration: none; } a.fake-menu-button__item:focus { text-decoration: underline; } a.fake-menu-button__item:hover, a.fake-menu-button__item:visited { color: var(--menu-button-anchor-color, var(--color-background-primary)); } button.fake-menu-button__item { background-color: var( --menu-button-background-color, var(--color-background-primary) ); color: var(--menu-button-foreground-color, var(--color-foreground-primary)); font-family: inherit; font-size: 1em; text-align: left; } a.fake-menu-button__item[aria-current="page"] svg.icon--16, button.fake-menu-button__item[aria-current="page"] svg.icon--16, div.menu-button__item[role^="menuitem"][aria-checked="true"] svg.icon--16 { opacity: 1; } .menu-button__item[role="menuitemcheckbox"][aria-checked="true"] svg.icon--unchecked, .menu-button__item[role="menuitemradio"][aria-checked="true"] svg.icon--unchecked { display: none; } .menu-button__item[role="menuitemcheckbox"][aria-checked="true"] svg.icon--checked, .menu-button__item[role="menuitemradio"][aria-checked="true"] svg.icon--checked { display: block; } .menu-button__item[role="menuitemcheckbox"] svg.icon--unchecked { color: var(--color-foreground-secondary); display: block; margin-right: var(--spacing-100); } .menu-button__item[role="menuitemcheckbox"] svg.icon--checked { color: var(--color-foreground-primary); display: none; margin-right: var(--spacing-100); } .menu-button__item[role="menuitemradio"] svg.icon--unchecked { color: var(--color-foreground-primary); display: block; margin-right: var(--spacing-100); } .menu-button__item[role="menuitemradio"] svg.icon--checked { color: var(--color-foreground-primary); display: none; margin-right: var(--spacing-100); } .fake-menu-button__menu a.fake-menu-button__item, .fake-menu-button__menu button.fake-menu-button__item { background-color: initial; border-color: var( --menu-button-menuitem-border-color, var(--color-background-primary) ); border-style: solid; border-width: 1px; box-sizing: border-box; color: var( --menu-button-menuitem-foreground-color, var(--color-foreground-primary) ); display: inline-grid; font-family: inherit; grid-template-columns: auto auto; justify-content: space-between; padding: 8px 15px; width: 100%; } .fake-menu-button__menu a.fake-menu-button__item:not(:last-child), .fake-menu-button__menu button.fake-menu-button__item:not(:last-child) { margin-bottom: 1px; } .fake-menu-button__menu a.fake-menu-button__item:focus, .fake-menu-button__menu button.fake-menu-button__item:focus { outline-offset: -4px; } .fake-menu-button__menu a.fake-menu-button__item, .fake-menu-button__menu button.fake-menu-button__item { overflow: hidden; position: relative; } .fake-menu-button__menu a.fake-menu-button__item:after, .fake-menu-button__menu button.fake-menu-button__item:after { background-color: var(--color-state-layer-neutral); content: ""; inset: 0; pointer-events: none; position: absolute; } .fake-menu-button__menu a.fake-menu-button__item:not( [disabled], [aria-disabled="true"] ):hover:after, .fake-menu-button__menu a.fake-menu-button__item[href]:hover:after, .fake-menu-button__menu button.fake-menu-button__item:not( [disabled], [aria-disabled="true"] ):hover:after, .fake-menu-button__menu button.fake-menu-button__item[href]:hover:after { background-color: var(--color-state-layer-hover); } .fake-menu-button__menu a.fake-menu-button__item:not( [disabled], [aria-disabled="true"] ):focus-visible:after, .fake-menu-button__menu a.fake-menu-button__item[href]:focus-visible:after, .fake-menu-button__menu button.fake-menu-button__item:not( [disabled], [aria-disabled="true"] ):focus-visible:after, .fake-menu-button__menu button.fake-menu-button__item[href]:focus-visible:after { background-color: var(--color-state-layer-focus); } .fake-menu-button__menu a.fake-menu-button__item:not( [disabled], [aria-disabled="true"] ):active:after, .fake-menu-button__menu a.fake-menu-button__item[href]:active:after, .fake-menu-button__menu button.fake-menu-button__item:not( [disabled], [aria-disabled="true"] ):active:after, .fake-menu-button__menu button.fake-menu-button__item[href]:active:after { background-color: var(--color-state-layer-pressed); } .fake-menu-button__menu a.fake-menu-button__item:active, .fake-menu-button__menu button.fake-menu-button__item:active { font-weight: 700; } .fake-menu-button__menu a.fake-menu-button__item:not([href]), .fake-menu-button__menu button.fake-menu-button__item[disabled], .menu-button__menu div.menu-button__item[role^="menuitem"][aria-disabled="true"] { color: var( --menu-button-menuitem-disabled-foreground-color, var(--color-foreground-disabled) ); } .fake-menu-button__menu > li:first-child a.fake-menu-button__item { border-top-left-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); border-top-right-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); } .fake-menu-button__menu > li:last-child a.fake-menu-button__item { border-bottom-left-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); border-bottom-right-radius: var( --menu-button-menu-border-radius, var(--border-radius-50) ); } .fake-menu-button__menu--fix-width, .menu-button__menu--fix-width { width: 100%; } .fake-menu-button__menu--fix-width span, .menu-button__menu--fix-width span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } a.fake-menu-button__item > span, button.fake-menu-button__item > span, div.menu-button__item[role^="menuitem"] > span { flex: 1 0 auto; white-space: nowrap; } a.fake-menu-button__item--badged, button.fake-menu-button__item--badged, div.menu-button__item--badged[role^="menuitem"] { padding-right: 36px; position: relative; } a.fake-menu-button__item--badged .badge, button.fake-menu-button__item--badged .badge, div.menu-button__item--badged[role^="menuitem"] .badge { margin-left: var(--spacing-50); position: absolute; top: 6px; z-index: 1; } .menu-button__menu--scroll { overflow-y: scroll; } .fake-menu-button__menu--reverse, .menu-button__menu--reverse { left: unset; right: 0; } [dir="rtl"] .fake-menu-button__menu--reverse, [dir="rtl"] .menu-button__menu--reverse { left: 0; right: unset; } .fake-menu-button .btn[aria-expanded="true"] ~ .fake-menu-button__menu, .fake-menu-button .expand-btn[aria-expanded="true"] ~ .fake-menu-button__menu, .fake-menu-button__button[aria-expanded="true"] ~ .fake-menu-button__menu, .menu-button .btn[aria-expanded="true"] ~ .menu-button__menu, .menu-button .expand-btn[aria-expanded="true"] ~ .menu-button__menu, .menu-button .filter-chip[aria-expanded="true"] ~ .menu-button__menu, .menu-button__button[aria-expanded="true"] ~ .menu-button__menu { display: block; } .btn ~ .fake-menu-button__menu--static, .btn ~ .menu-button__menu--static, .expand-btn ~ .menu-button__menu--static, .expand_btn ~ .fake-menu-button__menu--static, .fake-menu-button__button ~ .fake-menu-button__menu--static, .filter-chip ~ .fake-menu-button__menu--static, .menu-button__button ~ .menu-button__menu--static { position: static; } div.menu-button__option--active[role="option"] { font-weight: 700; } hr.menu-button__separator { border-color: var( --menu-button-separator-color, var(--color-border-subtle) ); border-style: solid; border-width: 1px; margin: 0; } .menu-button__footer { align-items: center; background-color: var(--color-background-elevated); border: none; border-color: var(--color-border-subtle); border-top-style: solid; border-top-width: 1px; display: flex; justify-content: center; padding: var(--spacing-200); } .menu-button--filter div.menu-button__item[role^="menuitem"] { justify-content: flex-start; } div.menu-button__item[role^="menuitem"]:focus:not(:focus-visible) { outline: none; }