Files
web/components/LanguageSwitcher/languageSwitcher.module.css

160 lines
3.4 KiB
CSS

@keyframes slide-in {
from {
right: -100vw;
}
to {
right: 0;
}
}
.button {
background-color: transparent;
color: var(--Base-Text-High-contrast);
font-family: var(--typography-Caption-Regular-fontFamily);
font-size: var(--typography-Caption-Regular-fontSize);
border-width: 0;
padding: 0;
cursor: pointer;
display: grid;
grid-template-columns: repeat(2, max-content) 1fr;
gap: var(--Spacing-x1);
align-items: center;
width: 100%;
}
.chevron {
justify-self: end;
transition: transform 0.2s;
}
.chevron.isExpanded {
transform: rotate(180deg);
}
.dropdown {
position: fixed;
top: var(--main-menu-mobile-height);
right: -100vw;
bottom: 0;
width: 100%;
background-color: var(--Base-Surface-Primary-light-Normal);
transition: right 0.3s;
}
.dropdown.isExpanded {
display: block;
right: 0;
}
.backWrapper {
background-color: var(--Base-Surface-Secondary-light-Normal);
padding: var(--Spacing-x2);
}
.backButton {
background-color: transparent;
border: none;
color: var(--Base-Text-High-contrast);
font-family: var(--typography-Subtitle-1-fontFamily);
font-weight: var(--typography-Subtitle-1-fontWeight);
font-size: var(--typography-Subtitle-1-Mobile-fontSize);
padding: 0;
cursor: pointer;
display: flex;
align-items: center;
gap: var(--Spacing-x1);
}
.languageWrapper {
display: grid;
gap: var(--Spacing-x3);
padding: var(--Spacing-x3) var(--Spacing-x2);
}
.subtitle {
font-family: var(--typography-Subtitle-2-fontFamily);
font-size: var(--typography-Subtitle-2-Mobile-fontSize);
font-weight: var(--typography-Subtitle-2-fontWeight);
color: var(--Base-Text-High-contrast, #4d001b);
}
.list {
list-style: none;
}
.link {
color: var(--Scandic-Brand-Burgundy);
font-family: var(--typography-Body-Regular-fontFamily);
font-size: var(--typography-Body-Regular-fontSize);
line-height: var(--typography-Body-Regular-lineHeight);
letter-spacing: var(--typography-Body-Regular-letterSpacing);
padding: var(--Spacing-x1);
border-radius: var(--Corner-radius-Medium);
display: flex;
gap: var(--Spacing-x1);
justify-content: space-between;
align-items: center;
text-decoration: none;
border-radius: var(--Corner-radius-Medium);
}
.link.active,
.link:hover {
background-color: var(--Base-Surface-Primary-light-Hover-alt);
font-weight: 600;
}
@media screen and (min-width: 768px) {
.languageSwitcher {
position: relative;
}
.backWrapper {
display: none;
}
.languageWrapper {
padding: var(--Spacing-x2) var(--Spacing-x3);
}
.subtitle {
display: none;
}
.dropdown {
position: absolute;
top: 2.25rem;
background-color: var(--Base-Surface-Primary-light-Normal);
border-radius: var(--Corner-radius-Large);
box-shadow: 0px 0px 14px 6px #0000001a;
display: none;
min-width: 12.5rem;
z-index: 1;
bottom: auto;
}
/* Triangle above dropdown */
.dropdown::before {
content: "";
position: absolute;
top: -1.25rem;
right: 2.4rem;
transform: rotate(180deg);
border-width: 0.75rem;
border-style: solid;
border-color: var(--Base-Surface-Primary-light-Normal) transparent
transparent transparent;
}
.button {
grid-template-columns: repeat(3, max-content);
font-size: var(--typography-Body-Bold-fontSize);
font-family: var(--typography-Body-Bold-fontFamily);
}
.link.active:not(:hover) {
background-color: transparent;
}
}