@ebay/skin
Version:
Skin - CSS modules that represent the brand eBay
100 lines (86 loc) • 2.28 kB
CSS
ul.accordion {
margin: 0;
padding: 0;
width: 100%;
}
ul.accordion ::marker {
font-size: 0;
}
ul.accordion > li:not(:last-child) {
border-bottom: 1px solid var(--color-border-subtle);
}
ul.accordion summary.details__summary {
border-radius: 0;
display: flex;
font-size: var(--font-size-medium);
min-height: 48px;
padding: 12px 16px;
}
ul.accordion .details__label {
flex: 1;
min-width: 0;
}
ul.accordion details {
overflow: hidden;
}
ul.accordion details .details__content {
margin: 0 16px;
overflow: hidden;
padding-block-end: 6px;
}
ul.accordion
details:not([open])
summary.details__summary
span.details__icon
svg {
fill: var(--color-foreground-secondary);
}
ul.accordion--animated
details:not([open])
summary.details__summary
span.details__icon
svg {
animation: chevron-bounce-close var(--motion-duration-medium-1)
var(--motion-easing-standard);
}
ul.accordion--animated
details[open]
summary.details__summary
span.details__icon
svg {
animation: chevron-bounce-open var(--motion-duration-medium-1)
var(--motion-easing-standard) var(--motion-duration-short-1);
}
ul.accordion details svg.details__expand,
ul.accordion details[open] svg.details__collapse {
display: inline-block;
}
ul.accordion details svg.details__collapse,
ul.accordion details[open] svg.details__expand {
display: none;
}
ul.accordion--large summary.details__summary {
font-size: var(--font-size-large-1);
min-height: 52px;
}
@supports selector(::details-content) and (interpolate-size: allow-keywords) and
(transition: allow-discrete) {
:root {
interpolate-size: allow-keywords;
}
ul.accordion details::details-content {
height: 0;
opacity: 0;
overflow: clip;
transition:
height var(--motion-duration-medium-3) var(--motion-easing-standard),
content-visibility var(--motion-duration-medium-3)
var(--motion-easing-continuous) allow-discrete,
opacity var(--motion-duration-medium-2)
var(--motion-easing-continuous);
}
ul.accordion details[open]::details-content {
height: auto;
opacity: 1;
}
}