.cookie-panel[hidden], .cookie-options[hidden], .cookie-actions [hidden] { display: none; }
.cookie-panel { position: fixed; right: 24px; bottom: 24px; z-index: 120; width: min(560px,calc(100% - 48px)); padding: 24px; border: 1px solid #202020; background: #fff; color: #202020; box-shadow: 0 8px 28px #0002; font-family: 'DM Sans',sans-serif; }
.cookie-panel h2 { font-family: 'Archivo',sans-serif; font-size: 22px; font-weight: 600; line-height: 1.2; letter-spacing: -.02em; margin: 0 0 12px; }
.cookie-panel p { font-size: 13px; line-height: 1.6; margin: 0; color: #424242; }
.cookie-panel a { text-decoration: underline; color: inherit; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.cookie-actions button { flex: 1; padding: 11px 12px; border: 1px solid #202020; background: #fff; color: #202020; font: inherit; font-size: 12px; min-height: 42px; cursor: pointer; }
.cookie-actions button:hover { outline: 2px solid #202020; outline-offset: 2px; }
.cookie-actions button:focus-visible { outline: 3px solid #202020; outline-offset: 3px; }
.cookie-options { margin-top: 16px; }
.cookie-options label { display: flex; align-items: center; gap: 10px; padding-block: 10px; font-size: 13px; }
.cookie-options input { accent-color: #202020; width: 17px; height: 17px; }
.cookie-options .cookie-reload-note { font-size: 11px; margin-top: 8px; }
.cookie-settings-link { border: 0; padding: 0; color: inherit; background: none; font: inherit; text-align: left; cursor: pointer; }
.cookie-settings-link:hover { text-decoration: underline; }
@media (max-width: 600px) {
  .cookie-panel { right: 16px; bottom: 16px; width: calc(100% - 32px); padding: 20px; max-height: calc(100dvh - 96px); overflow-y: auto; }
  .cookie-actions button { flex-basis: 40%; }
}
