#cookie-notice {
    --consent-paper: #f6f2e7;
    --consent-ink: #2b2620;
    --consent-accent: #990f3d;
    --consent-line: #b8ad9a;
    --consent-hover: #e9e2d4;
    font: 14px/1.55 'Inter', sans-serif;
    color: var(--consent-ink);
    background: var(--consent-paper);
    box-sizing: border-box;
    position: fixed; z-index: 10000; bottom: 16px; right: 16px;
    width: min(380px, calc(100vw - 32px)); max-height: calc(100dvh - 90px);
    overflow: auto; padding: 18px; border: 1px solid var(--consent-line);
    border-radius: 16px; box-shadow: 0 4px 16px #0001;
}
#cookie-notice[hidden] { display: none; }
#cookie-notice p { margin: 0 0 14px; }
#cookie-notice a { color: var(--consent-accent); text-decoration: underline; white-space: nowrap; }
.cookie-actions { display: flex; gap: 12px; }
#cookie-notice button { appearance: none; cursor: pointer; border: 1px solid var(--consent-line); border-radius: 6px; padding: 10px 12px; font: 500 14px/1.4 'Inter', sans-serif; color: var(--consent-ink); background: transparent; flex: 1; min-height: 44px; }
#cookie-settings { appearance: none; cursor: pointer; display: inline-block; position: static; margin-top: 12px; padding: 4px 0; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
#cookie-notice button:hover { background: var(--consent-hover); }
#cookie-settings:hover { text-decoration-thickness: 2px; }
#cookie-notice :focus-visible, #cookie-settings:focus-visible { outline: 2px solid #990f3d; outline-offset: 3px; }
@media(prefers-color-scheme: dark) {
    #cookie-notice { --consent-paper: #1a1611; --consent-ink: #ece5d6; --consent-accent: #f29db8; --consent-line: #827768; --consent-hover: #383126; }
    #cookie-notice :focus-visible, #cookie-settings:focus-visible { outline-color: #f29db8; }
}
.map-overlay.dark-theme #cookie-settings:focus-visible { outline-color: #f29db8; }
@media(max-width: 360px) { .cookie-actions { flex-direction: column; } #cookie-notice { padding: 16px; } }
