/* Cookie-consent banner and the footer "Cookie settings" button. Loaded only when tracking is on. */
.consent-banner {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 60;
    max-width: 440px;
    padding: 22px 24px;
    background: var(--paper-2);
    color: var(--dark);
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    box-shadow: 0 18px 48px rgba(24, 19, 16, 0.18);
}
.consent-banner[hidden] { display: none; }
.consent-title { font-family: var(--font-display); font-size: 1.15rem; font-weight: 500; margin: 0 0 8px; }
.consent-banner p { margin: 0 0 16px; font-size: 0.92rem; color: var(--gray); }
.consent-banner a { text-decoration: underline; }
.consent-actions { display: flex; flex-wrap: wrap; gap: 10px; }
@media (min-width: 640px) { .consent-banner { right: auto; left: 24px; bottom: 24px; } }

.consent-reopen {
    background: none;
    border: 0;
    padding: 0;
    font: inherit;
    color: inherit;
    text-decoration: underline;
    cursor: pointer;
}
.consent-reopen:hover { color: var(--accent); }
