.header { --header-height: 70px; flex: 0 0 auto; &__background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; mask-image: linear-gradient(0deg, transparent 0, var(--background-colour) var(--header-height)); -webkit-mask-image: linear-gradient(0deg, transparent 0, var(--background-colour) var(--header-height)); background: var(--background-pattern); background-color: var(--header-accent-colour); background-blend-mode: multiply; } &__wrapper { margin: 0 auto; display: flex; align-items: center; padding: 4px; max-width: var(--site-max-width); height: var(--header-height); transition: height .2s; @media (max-width: @site-mobile-width) { flex-direction: column; height: 100%; } } @media (max-width: @site-mobile-width) { &__icons { display: flex; justify-content: space-between; width: 100%; } } &__icon { display: none; cursor: pointer; width: 40px; height: 40px; &--menu { font-size: 3em; justify-content: center; align-items: center; } @media (max-width: @site-mobile-width) { display: inline-flex; } } &__logo { flex: 0 0 auto; color: inherit; text-decoration: none; cursor: pointer; display: block; background: url('/images/logos/imouto-default.png') no-repeat center / cover; width: 60px; height: 60px; font-size: 0; &--manage { background-image: url('/images/logos/imouto-broom.png'); } @media (max-width: @site-mobile-width) { width: 40px; height: 40px; } } &__menu { flex: 1 1 auto; margin: 0 6px; list-style: none; display: flex; &-toggle { display: none; } @media (max-width: @site-mobile-width) { display: none; font-size: 1.6em; line-height: 1.5em; margin-top: 4px; width: 100%; background: var(--header-accent-colour); &-toggle:checked ~ .header__menu { display: block; } &__item:not(:last-child) { border-bottom: 1px solid var(--header-accent-colour); } &__link { width: 100%; display: block; padding: 4px 8px; color: inherit; text-decoration: none; } } @media (min-width: @site-mobile-width) { &__item { text-align: center; transition: background-color .2s; &:hover, &:active, &:focus { background-color: var(--header-accent-colour); .header__submenu { transform: scaleY(1); } } } &__link { font-size: 1.2em; color: inherit; text-decoration: none; display: block; padding: 6px 4px; min-width: 100px; cursor: pointer; } } } &__submenu { list-style: none; display: block; @media (max-width: @site-mobile-width) { &__link { padding: 2px 16px; display: block; width: 100%; color: inherit; text-decoration: none; } } @media (min-width: @site-mobile-width) { position: absolute; // floating transform: scaleY(0); transform-origin: center top 0; background: var(--header-accent-colour); overflow: hidden; z-index: 100; text-align: left; box-shadow: 0 1px 2px var(--header-accent-colour); transition: transform .2s; &:hover, &:focus { transform: scaleY(1); } &__link { color: inherit; text-decoration: none; display: block; padding: 2px 6px; min-width: 100px; } } } &__user { flex: 0 0 auto; display: flex; order: 3; align-items: center; &-toggle { display: none; } @media (max-width: @site-mobile-width) { display: none; width: 100%; margin-top: 4px; &-toggle:checked ~ .header__user { display: flex; } } &__avatar { width: 60px; height: 60px; margin-left: 5px; transition: box-shadow .2s; box-shadow: 0 0 4px #111; &:hover, &:active, &:focus { box-shadow: 0 0 4px var(--header-accent-colour); } @media (max-width: @site-mobile-width) { display: none; } } &__button { margin: 2px; color: inherit; text-decoration: none; font-size: 1.5em; line-height: 1.7em; width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; transition: background-color .2s; border-radius: 4px; &:hover, &:focus { background-color: fade(#fff, 20%); } &:active { background-color: fade(#fff, 10%); } @media (max-width: @site-mobile-width) { width: 40px; height: 40px; font-size: 2em; } } } }