@ebay/skin
Version:
Skin - CSS modules that represent the brand eBay
322 lines (300 loc) • 8.65 kB
CSS
:root {
--bubble-shadow:
0 2px 7px rgba(0, 0, 0, 0.15), 0 5px 17px rgba(0, 0, 0, 0.2);
}
.fake-menu-button,
.menu-button {
line-height: normal;
position: relative;
}
.fake-menu-button__menu,
.menu-button__menu {
background-color: var(
--menu-button-menu-background-color,
var(--color-background-elevated)
);
border-radius: var(
--menu-button-menu-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: -moz-fit-content;
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"]:hover {
background-color: var(--color-state-primary-hover);
color: var(
--menu-button-menuitem-hover-foreground-color,
var(--color-foreground-primary)
);
}
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;
}
.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:hover,
.fake-menu-button__menu button.fake-menu-button__item:hover {
background-color: var(--color-state-primary-hover);
color: var(
--menu-button-menuitem-hover-foreground-color,
var(--color-foreground-primary)
);
}
.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__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,
.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-stroke-subtle)
);
border-style: solid;
border-width: 1px;
margin: 0;
}
div.menu-button__item[role^="menuitem"]:focus:not(:focus-visible) {
outline: none;
}