@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/lato-400.woff2') format('woff2');
}
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/lato-700.woff2') format('woff2');
}
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/lato-900.woff2') format('woff2');
}

:root {
    --color-accent: #8C0031;
    --color-accent-dark: #6e0026;
    --color-text: #666666;
    --color-heading: #333333;
    --color-border: #e6e2e0;
    --color-bg: #ffffff;
    --color-bg-muted: #f7f5f4;
    --color-success: #2e7d32;
    --color-success-bg: #eef7ee;
    --color-warning-bg: #fdf3e7;
    --color-warning: #9a6400;
    --color-error: #b3261e;
    --color-error-bg: #fbeceb;
}

.site-header {
    background-color: var(--color-bg);
    border-bottom: 1px solid var(--color-border);
    padding: 16px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

.site-header__brand {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    text-decoration: none;
}

.site-header__logo {
    height: 40px;
    width: auto;
    display: block;
}

.site-header__title {
    font-family: 'Lato', Helvetica, Arial, sans-serif;
    font-weight: 900;
    font-size: 19px;
    color: var(--color-heading);
}

.site-header__label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--color-accent);
}

.site-header__meta {
    font-size: 13px;
    color: var(--color-text);
}
.site-header__meta a {
    color: var(--color-accent);
    text-decoration: none;
    font-weight: 700;
}
.site-header__meta a:hover {
    text-decoration: underline;
}

/* Nav-Dropdowns im Header (Archive, Benutzer) - <details>/<summary>, kein JS noetig. */
.nav-dropdown {
    position: relative;
    display: inline-block;
}
.nav-dropdown > summary {
    cursor: pointer;
    list-style: none;
    color: var(--color-accent);
    font-weight: 700;
    display: inline;
}
.nav-dropdown > summary::-webkit-details-marker {
    display: none;
}
.nav-dropdown > summary::after {
    content: ' \25BE';
}
.nav-dropdown[open] > summary::after {
    content: ' \25B4';
}
.nav-dropdown--right > .nav-dropdown__menu {
    left: auto;
    right: 4px;
}
.nav-dropdown__menu {
    /* Rechtsbündig geöffnet, nicht linksbündig: alle Dropdowns sitzen im
       rechten Teil der Kopfzeile, ein linksbündiges Menü würde dort schnell
       über den rechten Bildschirmrand hinausragen und abgeschnitten wirken.
       right:4px statt 0 lässt zusätzlich etwas Luft zum Bildschirmrand,
       rein aus optischen Gründen. */
    position: absolute;
    top: 100%;
    left: auto;
    right: 4px;
    margin-top: 6px;
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    padding: 6px;
    min-width: 190px;
    box-shadow: 0 6px 20px -6px rgba(51, 51, 51, 0.25);
    z-index: 30;
    display: flex;
    flex-direction: column;
    gap: 1px;
}
.nav-dropdown__menu a {
    display: block;
    padding: 7px 10px;
    border-radius: 7px;
    white-space: nowrap;
    color: var(--color-heading);
    font-weight: 400;
}
.nav-dropdown__menu a:hover {
    background: var(--color-bg-muted);
    text-decoration: none;
}
.nav-dropdown__static {
    display: block;
    padding: 7px 10px;
    color: var(--color-text);
    font-size: 12.5px;
    white-space: nowrap;
}

.site-footer {
    text-align: center;
    padding: 32px 20px 24px;
    font-size: 13px;
    color: #999999;
}
.site-footer a { color: var(--color-accent); text-decoration: none; }
.site-footer a:hover { text-decoration: underline; }

/* Das hidden-Attribut muss immer gewinnen - sonst blenden Klassen mit display:flex/grid (z. B. .warn-banner) versteckte Elemente trotzdem ein. */
[hidden]{display:none !important;}
/* Nemo-Design: kleines Nemo-Logo ganz rechts im Kopf, Programmname links als Link zur Startseite */
.site-header__brand{display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap}
.site-header__brand>a{display:inline-flex;align-items:center}
.site-header__trenner{width:1px;height:28px;background:var(--color-border)}
.site-header__nemo img{height:20px;width:auto;display:block}
.site-header__nemo{padding:4px 0;border-radius:4px}
.site-header__nemo:hover img{opacity:.8}
.site-header__nemo+.site-header__title{margin-left:-4px}
@media (max-width:600px){.site-header__logo{height:32px}.site-header__trenner{height:22px}.site-header__nemo img{height:16px}.site-header__brand{gap:10px}}

.site-header__titlelink{text-decoration:none}
.site-header__titlelink:hover .site-header__title{text-decoration:underline;text-underline-offset:4px}
/* Nemo-Logo ganz rechts im Kopf, rechts neben dem Benutzer-Menü */
.site-header__meta .site-header__trenner{display:inline-block;vertical-align:middle;margin-left:14px;margin-right:14px}
.site-header__meta .site-header__nemo{display:inline-block;vertical-align:middle;padding:4px 0}
.site-header__meta .site-header__nemo img{height:20px;width:auto;display:block}
@media (max-width:600px){.site-header__meta .site-header__trenner{margin-left:10px;margin-right:10px}}
