.cookie-consent[hidden], .cookie-consent [hidden] { display: none !important; }
.cookie-consent { position: fixed; z-index: 10000; bottom: 16px; left: 16px; width: min(560px, calc(100% - 32px)); box-sizing: border-box; padding: 22px; border: 1px solid var(--main-border-color, #abbaca); border-radius: 16px; background: var(--card-background, #fff); color: var(--main-text-color, #17293e); box-shadow: 0 8px 40px #0005; max-height: calc(100dvh - 32px); overflow-y: auto; font: 15px/1.5 system-ui, sans-serif; }
.cookie-consent h2 { font-size: 21px; margin: 0 0 10px; }
.cookie-consent p { margin: 8px 0; }
.cookie-consent a { color: inherit; text-decoration: underline; }
.cookie-consent-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.cookie-consent button, .cookie-settings-button { cursor: pointer; font: inherit; border: 1px solid currentColor; border-radius: 8px; padding: 10px 14px; background: transparent; color: inherit; min-height: 24px; }
.cookie-consent button:hover, .cookie-settings-button:hover { background: var(--main-accent-color, #145ac8); color: #fff; }
.cookie-consent button:focus-visible, .cookie-settings-button:focus-visible { outline: 3px solid var(--main-accent-color, #145ac8); outline-offset: 3px; }
.cookie-consent .cookie-consent-note { font-size: 12px; }
footer .cookie-settings-button { margin: 8px; padding: 2px 10px; }
@media (max-width: 480px) { .cookie-consent { padding: 16px; } .cookie-consent-actions button { flex: 1 1 100%; } }
