recettes/assets/css/common/header.css
2025-10-06 19:21:06 +02:00

203 lines
3.8 KiB
CSS
Executable file

.nav {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
max-width: calc(var(--nav-width) + var(--gap) * 2);
margin-inline-start: auto;
margin-inline-end: auto;
line-height: var(--header-height);
}
.nav a {
display: block;
}
.logo,
#menu {
display: flex;
margin: auto var(--gap);
}
.logo {
flex-wrap: inherit;
}
.logo a {
font-size: 30px;
font-weight: 700;
}
.logo a img, .logo a svg {
display: inline;
vertical-align: middle;
pointer-events: none;
border-radius: 0px;
margin-inline-end: 8px;
margin: 0 0 0 10px;
height: 40px;
}
button.theme-toggle-button {
font-size: 26px;
margin: auto 4px;
cursor: pointer;
}
body.dark .moon-icon {
vertical-align: middle;
display: none;
}
body:not(.dark) .sun-icon {
display: none;
}
.lang-switch li,
.lang-switch ul,
.logo-switches {
display: inline-flex;
margin: auto 4px;
}
.lang-switch {
display: flex;
flex-wrap: inherit;
}
.lang-switch a {
margin: auto 3px;
font-size: 16px;
font-weight: 500;
}
.logo-switches {
flex-wrap: inherit;
}
/* Menu */
.menu {
display: flex;
flex-wrap: wrap;
list-style: none;
margin: 20px 0 0;
padding: 0;
justify-content: flex-end;
}
.menu li {
margin: 0 10px;
display: inline-flex;
align-items: center;
}
.menu li a {
text-decoration: none;
display: flex;
flex-direction: column;
align-items: center;
line-height: 1; /* Reduce line height */
}
.menu .icon {
border-radius: 0;
margin: 5px; /* Remove all margins */
}
.menu li a span {
margin-top: 0px;
padding-top: 0;
}
.menu li a:hover {
text-decoration: underline;
}
.mobile-menu .menu {
flex-direction: column;
align-items: left;
justify-content: left;
}
.mobile-menu .menu li {
margin: 0 0 0 0;
font-size: 1.2em;
}
.mobile-menu-close {
position: absolute;
top: 10px;
right: 10px;
cursor: pointer;
color: var(--primary);
}
/* Hamburger Menu */
.hamburger-menu {
display: none; /* Hidden by default on desktop */
cursor: pointer;
position: absolute;
right: 20px;
top: 20px;
}
/* The toggle checkbox (hidden) */
#menu-toggle {
display: none;
}
/* Menu overlay styles */
.menu-overlay {
display: none; /* Hidden by default */
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.8);
z-index: 999;
opacity: 0;
transition: opacity 0.3s ease;
}
/* When checkbox is checked, show the menu overlay with animation */
#menu-toggle:checked ~ .menu-overlay {
display: block;
opacity: 1;
}
/* Mobile menu styling */
.mobile-menu {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 85%;
max-width: 300px;
background-color: var(--entry, white);
padding: 30px 20px;
border-radius: 8px;
z-index: 1000;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
/* Mobile menu items */
.mobile-menu .menu {
display: flex;
flex-direction: column;
align-items: left;
}
.mobile-menu .menu li {
flex-direction: row;
margin: 10px 0;
font-size: 1.2rem;
}
.mobile-menu .menu li a {
flex-direction: row;
align-items: center;
}
.mobile-menu .menu li a .icon {
margin-right: 10px;
}
/* Mobile breakpoint */
@media (max-width: 700px) {
.hamburger-menu {
display: block;
}
/* Hide the regular menu */
.nav .menu-wrapper {
display: none;
}
/* Make sure the header positions correctly for the hamburger icon */
.header {
position: relative;
padding-right: 50px; /* Make room for hamburger icon */
}
/* Ensure the logo area does not overflow */
.logo {
max-width: calc(100% - 60px);
}
}