shoelace/src/components/rating/rating.styles.ts

92 wiersze
1.7 KiB
TypeScript

import { css } from 'lit';
export default css`
:host {
--symbol-color: var(--sl-color-neutral-300);
--symbol-color-active: var(--sl-color-amber-500);
--symbol-size: 1.2rem;
--symbol-spacing: var(--sl-spacing-3x-small);
display: inline-flex;
}
.rating {
position: relative;
display: inline-flex;
border-radius: var(--sl-border-radius-medium);
vertical-align: middle;
}
.rating:focus {
outline: none;
}
.rating:focus-visible {
outline: var(--sl-focus-ring);
outline-offset: var(--sl-focus-ring-offset);
}
.rating__symbols {
display: inline-flex;
position: relative;
font-size: var(--symbol-size);
line-height: 0;
color: var(--symbol-color);
white-space: nowrap;
cursor: pointer;
}
.rating__symbols > * {
padding: var(--symbol-spacing);
}
.rating__symbol--active,
.rating__partial--filled {
color: var(--symbol-color-active);
}
.rating__partial-symbol-container {
position: relative;
}
.rating__partial--filled {
position: absolute;
top: var(--symbol-spacing);
left: var(--symbol-spacing);
}
.rating__symbol {
transition: var(--sl-transition-fast) scale;
pointer-events: none;
}
.rating__symbol--hover {
scale: 1.2;
}
.rating--disabled .rating__symbols,
.rating--readonly .rating__symbols {
cursor: default;
}
.rating--disabled .rating__symbol--hover,
.rating--readonly .rating__symbol--hover {
scale: none;
}
.rating--disabled {
opacity: 0.5;
}
.rating--disabled .rating__symbols {
cursor: not-allowed;
}
/* Forced colors mode */
@media (forced-colors: active) {
.rating__symbol--active {
color: SelectedItem;
}
}
`;