nav.menu { z-index: 20000; background: $color-bg-secondary; height: 100%; width: $size-menu; position: fixed; @include media-tablet { width: 100%; height: $size-menu; + * { margin-top: $size-menu; } } @include media-desktop { + * { margin-left: $size-menu; } } &, > * { display: flex; flex-direction: column; @include media-tablet { flex-direction: row; } } .item { width: $size-menu; height: $size-menu; @include media-desktop { display: flex; } &.active { background-color: $color-bg-primary; border-right: 1px solid $color-bg-primary; pointer-events: none; } &:not(.active) { transition: border-color 0.5s ease; } .label { position: absolute; text-align: center; transition:opacity 0.25s ease-out; padding-left: 1em; height: $size-menu; background-color: $color-bg-secondary; padding-right: 1em; align-content: center; align-items: center; display: flex; @include media-tablet { box-shadow: 0 1px 0 $color-bg-primary, 1px 1px 0 $color-bg-primary, -1px 1px 0 $color-bg-primary; } @include media-desktop { box-shadow: 0 -1px 0 $color-bg-primary, 1px 1px 0 $color-bg-primary, 0px 1px 0 $color-bg-primary; } } .link { color: $color-text; display: flex; text-decoration: none; flex-direction: row; align-items: center; justify-content: center; width: 100%; height: 100%; } .links { pointer-events: all; } .icon { background-size: 100%; transition: background 0.4s ease-out; border-radius: 2em; &, &medium { width: 1em; height: 1em; padding: 0.5em; } &large { width: 75%; height: 75%; padding: 0px; } i { color: $color-text; } } } > section { flex: 1; } }