.#{$ns}Nav { list-style: none; user-select: none; margin: 0; padding: 0; .#{$ns}Nav-itemIcon { margin-right: var(--gap-xs); } &--tabs { border-bottom: var(--Tabs-borderWidth) solid var(--Tabs-borderColor); .#{$ns}Nav-item { margin-bottom: calc(var(--Tabs-borderWidth) * -1); display: inline-block; > a { font-size: var(--Tabs-linkFontSize); display: block; outline: none; border: var(--Tabs-borderWidth) solid transparent; border-top-left-radius: var(--Tabs-borderRadius); border-top-right-radius: var(--Tabs-borderRadius); color: var(--Tabs-color); text-decoration: none; margin-right: px2rem(2px); padding: var(--gap-sm) var(--gap-base); cursor: pointer; } &:hover > a, > a:focus { border-color: var(--Tabs-onHover-borderColor); text-decoration: none; } &.disabled > a, &.is-disabled > a { color: var(--Tabs-onDisabled-color); background: transparent; border-color: transparent; pointer-events: none; } &.active > a, &.is-active > a { color: var(--Tabs-onActive-color); background: var(--Tabs-onActive-bg); border-color: var(--Tabs-onActive-borderColor); border-bottom-color: var(--Tabs-content-bg); } } } &--stacked { .#{$ns}Nav-item { position: relative; > a { display: block; outline: none; color: var(--Nav-item-color); text-decoration: none; padding: var(--gap-sm) var(--gap-base); cursor: pointer; background: var(--Nav-item-bg); border-radius: var(--Nav-item-borderRadius); } > a:hover, > a:focus { border-color: var(--Nav-item-onHover-color); text-decoration: none; background: var(--Nav-item-onHover-bg); } &.disabled > a, &.is-disabled > a { color: var(--Nav-item-onDisabled-color); background: transparent; pointer-events: none; } &.active > a, &.is-active > a { color: var(--Nav-item-onActive-color); background: var(--Nav-item-onActive-bg); border-left: var(--Nav-item-onActive-borderLeft); padding-left: px2rem(12px); } &.is-unfolded > { .#{$ns}Nav-itemToggler { transform: rotate(180deg) scale(0.8); } .#{$ns}Nav-subItems { display: block; margin-left: var(--gap-sm); } } .#{$ns}Nav-itemToggler { position: absolute; width: px2rem(30px); height: px2rem(30px); text-align: center; line-height: px2rem(30px); vertical-align: middle; top: px2rem(4px); right: px2rem(2px); cursor: pointer; transform: scale(0.8); transition: transform var(--animation-duration); > svg { width: 10px; height: 10px; top: 0; } } .#{$ns}Nav-subItems { display: none; padding-left: 0; list-style: none; } .#{$ns}Nav-item { font-size: var(--Nav-subItem-fontSize); a:before { content: ''; display: inline-block; width: px2rem(4px); height: px2rem(4px); background: #ccc; border-radius: px2rem(500px); margin-right: px2rem(8px); vertical-align: middle; } &.active > a:before, &.is-active > a:before { background: var(--Nav-subItem-onActiveBeforeBg); } } } } }