@telekom/scale-components
Version:
Scale is the digital design system for Telekom products and experiences.
85 lines (74 loc) • 2.31 kB
CSS
/**
* @license
* Scale https://github.com/telekom/scale
*
* Copyright (c) 2021 Egor Kirpichev and contributors, Deutsche Telekom AG
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
:host {
--max-width: 15rem;
--spacing-indent: var(--telekom-spacing-composition-space-08);
--spacing-collapsible: var(--telekom-spacing-composition-space-06);
--opacity-chevron: 0;
--left-current-border: 0;
--color-hover: var(--telekom-color-text-and-icon-primary-hovered);
--color-active: var(--telekom-color-text-and-icon-primary-pressed);
--focus-outline: var(--telekom-line-weight-highlight) solid
var(--telekom-color-functional-focus-standard);
--color-toggle-button: var(--telekom-color-ui-regular);
--border-y-toggle-button: 1px solid var(--telekom-color-ui-faint);
--radius-toggle-button: var(--telekom-radius-small);
}
.sidebar-nav--collapsible {
--max-width: none;
--spacing-indent: 0;
--opacity-chevron: 1;
--left-current-border: calc(-1 * var(--spacing-collapsible));
padding-right: var(--spacing-collapsible);
padding-left: var(--spacing-collapsible);
}
.sidebar-nav__list {
list-style: none;
max-width: var(--max-width);
padding-left: 0;
margin-top: 0;
margin-bottom: 0;
}
.sidebar-nav__toggle-button {
box-sizing: border-box;
appearance: none;
border: 0;
background-color: transparent;
color: var(--color-toggle-button);
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
text-align: left;
text-decoration: none;
font-family: inherit;
font-size: 1rem;
padding-top: 1rem;
padding-right: calc(0.5 * var(--spacing-indent));
padding-bottom: 1rem;
padding-left: var(--spacing-indent);
border-radius: var(--radius-toggle-button);
border-bottom: var(--border-y-toggle-button);
border-top: var(--border-y-toggle-button);
cursor: pointer;
}
.sidebar-nav__toggle-button:hover {
color: var(--color-hover);
}
.sidebar-nav__toggle-button:active {
color: var(--color-active);
}
.sidebar-nav__toggle-button:focus {
outline: var(--focus-outline);
}
[aria-expanded='true'] .sidebar-nav__icon {
transform: rotate(0.5turn);
}