@ozen-ui/kit
Version:
React component library
151 lines (148 loc) • 5.34 kB
CSS
/* stylelint-disable */
.SidebarItem {
--sidebar-item-background: transparent;
--sidebar-item-indicator-color: transparent;
--sidebar-item-indicator-transform-x: -2px;
position: relative;
display: flex;
flex-direction: column;
box-sizing: border-box;
gap: var(--spacing-3xs);
}
.SidebarItem_color_main {
--sidebar-item-background-hover: var(--color-background-main-hover);
--sidebar-item-background-active: var(--color-background-main-pressed);
--sidebar-item-background-selected: var(--color-background-main-pressed);
--sidebar-item-active-indicator-color: var(--color-content-action);
}
.SidebarItem_color_accent {
--sidebar-item-background-hover: var(--color-accent-primary-hover);
--sidebar-item-background-active: var(--color-accent-primary-pressed);
--sidebar-item-background-selected: var(--color-accent-primary-pressed);
--sidebar-item-active-indicator-color: var(--color-content-accent-primary);
}
.SidebarItem_interactive.SidebarItem:not(.SidebarItem_active) .SidebarItem-Item:hover {
background-color: var(--sidebar-item-background-hover);
}
.SidebarItem_interactive.SidebarItem:not(.SidebarItem_active) .SidebarItem-Item:active {
background-color: var(--sidebar-item-background-active);
}
.SidebarItem_interactive .SidebarItem-Item {
cursor: pointer;
}
.SidebarItem_interactive .SidebarItem-Item:focus {
box-shadow: inset var(--shadow-outline-focused);
}
.SidebarItem_interactive .SidebarItem-Item:focus:not(:focus-visible) {
box-shadow: none;
}
.SidebarItem_active {
--sidebar-item-indicator-color: var(--sidebar-item-active-indicator-color);
--sidebar-item-indicator-transform-x: 0;
}
.SidebarItem_active > .SidebarItem-Item {
background-color: var(--sidebar-item-background-selected);
}
.SidebarItem_gutters .SidebarItem-Item {
margin-inline: var(--sidebar-padding-inline);
}
.SidebarItem_openSubitems .SidebarItem-Chevron {
transform: rotate(180deg);
}
.SidebarItem-Chevron {
transform: rotate(0deg);
color: var(--sidebar-content-primary-color);
transition: var(--transition-default) transform;
}
.SidebarItem-Icon {
position: relative;
display: flex;
align-items: center;
justify-content: center;
color: var(--sidebar-content-primary-color);
inline-size: 24px;
block-size: 24px;
}
.SidebarItem-Content {
display: flex;
color: var(--sidebar-content-primary-color);
justify-content: space-between;
align-items: center;
}
.SidebarItem-Item {
position: relative;
display: flex;
flex-shrink: 0;
box-sizing: border-box;
outline: none;
text-decoration: none;
text-align: start;
-webkit-tap-highlight-color: transparent;
border: none;
border-radius: var(--border-radius-m);
padding: var(--sidebar-item-padding);
background-color: var(--sidebar-item-background);
transition: background-color var(--transition-default);
align-items: center;
}
.SidebarItem-Item::before {
content: "";
box-sizing: border-box;
display: block;
inline-size: 2px;
block-size: 24px;
position: absolute;
transform: translate(var(--sidebar-item-indicator-transform-x), -50%);
inset-block-start: 50%;
inset-inline-start: calc(var(--sidebar-padding-inline) * -1);
transition: var(--transition-default);
transition-property: background-color, transform;
border-radius: 0 var(--border-radius-2xs) var(--border-radius-2xs) 0;
background-color: var(--sidebar-item-indicator-color);
}
.SidebarItem-Right {
display: flex;
gap: var(--spacing-3xs);
align-items: center;
transition: var(--transition-slow) opacity;
opacity: 1;
}
.SidebarItem .SidebarCollapsibleItem_collapsed .SidebarItem-Right {
opacity: 0;
transition-duration: 0ms;
}
.SidebarItem_variant_compact .SidebarItem-Item {
--sidebar-collapsible-item-gap: 0;
padding-block: var(--spacing-2xs);
}
.SidebarItem_variant_compact .SidebarItem-Content {
font: var(--typography-text-3xs-font);
letter-spacing: var(--typography-text-3xs-letter_spacing, 0);
text-transform: var(--typography-text-3xs-text_transform, none);
text-align: center;
margin-block-start: var(--spacing-3xs);
}
.SidebarItem_variant_compact .SidebarItem-After {
display: none;
}
.SidebarItem_variant_default .SidebarItem-Content {
text-align: start;
}
.SidebarItem_variant_default.SidebarItem_size_s .SidebarItem-Content {
font: var(--typography-text-s-font);
letter-spacing: var(--typography-text-s-letter_spacing, 0);
text-transform: var(--typography-text-s-text_transform, none);
--sidebar-collapsible-item-gap: var(--spacing-s);
}
.SidebarItem_variant_default.SidebarItem_size_s .SidebarItem-Item {
--sidebar-item-padding: var(--spacing-2xs);
}
.SidebarItem_variant_default.SidebarItem_size_m .SidebarItem-Content {
font: var(--typography-text-m-font);
letter-spacing: var(--typography-text-m-letter_spacing, 0);
text-transform: var(--typography-text-m-text_transform, none);
--sidebar-collapsible-item-gap: 20px;
}
.SidebarItem_variant_default.SidebarItem_size_m .SidebarItem-Item {
--sidebar-item-padding: var(--spacing-xs);
}