Files
web/components/LanguageSwitcher/languageSwitcher.module.css
2025-01-07 09:41:47 +01:00

120 lines
2.2 KiB
CSS

.button {
--language-switcher-color: var(--Base-Text-Medium-contrast);
--language-switcher-hover-color: var(--Base-Text-High-contrast);
background-color: transparent;
border-width: 0;
padding: 0;
cursor: pointer;
display: grid;
grid-template-columns: repeat(2, max-content) 1fr;
align-items: center;
width: 100%;
color: var(--language-switcher-color);
}
.button * {
fill: var(--language-switcher-color);
}
.button:hover {
color: var(--language-switcher-hover-color);
}
.button:hover * {
fill: var(--language-switcher-hover-color);
}
.buttonText {
color: inherit !important;
margin-left: var(--Spacing-x1);
margin-right: var(--Spacing-x-quarter);
}
.footer .button {
--language-switcher-color: var(--Primary-Dark-On-Surface-Text);
--language-switcher-hover-color: var(--Primary-Dark-On-Surface-Text);
}
.chevron {
justify-self: end;
transition: transform 0.3s;
}
.chevron.isExpanded {
transform: rotate(180deg);
}
.dropdown {
position: fixed;
width: 100%;
background-color: var(--Base-Surface-Primary-light-Normal);
z-index: var(--menu-overlay-z-index);
}
.header .dropdown {
right: -100vw;
top: var(--main-menu-mobile-height);
bottom: 0;
transition: right 0.3s;
}
.header .dropdown.isExpanded {
display: block;
right: 0;
}
.footer .dropdown {
transition: transform 0.3s;
width: 100%;
height: 100vh;
left: 0;
bottom: 0;
transform: translateY(100%);
}
.footer .dropdown.isExpanded {
transform: translateY(0);
}
@media screen and (min-width: 768px) {
.languageSwitcher {
position: relative;
}
.dropdown {
position: absolute;
background-color: var(--Base-Surface-Primary-light-Normal);
border-radius: var(--Corner-radius-Large);
box-shadow: 0 0 14px 6px rgba(0, 0, 0, 0.1);
display: none;
min-width: 12.5rem;
z-index: var(--header-z-index);
}
.header .dropdown {
top: 2.25rem;
bottom: auto;
}
.header .dropdown::before {
top: -1.25rem;
transform: rotate(180deg);
}
.footer .dropdown {
transition: none;
height: auto;
left: -100%;
bottom: 2.25rem;
}
.footer .dropdown.isExpanded {
display: block;
}
.footer .dropdown::before {
top: 100%;
}
.button {
grid-template-columns: repeat(3, max-content);
}
}