.cookie-settings { color: inherit; font: inherit; text-decoration: underline; background: none; border: 0; padding: 0; cursor: pointer; }
.cookie-banner { position: fixed; z-index: 100; inset: auto 0 0; background: #020a20; color: #fff; box-shadow: 0 -4px 24px #0004; font: 16px/1.5 Inter, Arial, sans-serif; }
.cookie-banner[hidden], .cookie-banner [hidden] { display: none; }
.cookie-banner-inner { max-width: 1200px; max-height: 80vh; overflow: auto; padding: 20px 24px; margin: auto; }
.cookie-banner h2 { font-size: 21px; margin: 0 0 8px; }
.cookie-banner p { margin: 8px 0; }
.cookie-banner a { color: inherit; text-decoration: underline; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.cookie-actions button { color: #fff; background: transparent; border: 1px solid #fff; border-radius: 6px; padding: 10px 14px; font: inherit; cursor: pointer; }
.cookie-banner :focus-visible, .cookie-settings:focus-visible { outline: 3px solid #ffce54; outline-offset: 3px; }
.cookie-preferences { border-top: 1px solid #71809b; margin-top: 16px; padding-top: 8px; }
.cookie-preferences label { display: inline-flex; gap: 10px; align-items: center; }
.cookie-preferences input { width: 20px; height: 20px; }
.cookie-error { color: #ffdb80; }
@media (max-width: 700px) { .cookie-banner-inner { padding: 16px; } .cookie-actions button { flex: 1 1 150px; } }
