/* Cookie lišta: fixně dole, na mobilu přes celou šířku. Hamburger je v horní liště, lišta ho nekryje. */
.cookie-banner { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 100; background: var(--bg); color: var(--fg); border: 1px solid var(--line-strong); border-radius: var(--radius-card); box-shadow: 0 20px 50px -20px rgba(0,0,0,.35); }
.cookie-banner[hidden] { display: none; }
.cookie-banner__inner { max-width: 960px; margin: 0 auto; padding: 20px 24px; display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
.cookie-banner__text { flex: 1 1 420px; margin: 0; font-size: 14px; line-height: 1.55; color: var(--fg-soft); }
.cookie-banner__text a { color: var(--accent); text-decoration: underline; }
.cookie-banner__settings { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 14px; }
.cookie-banner__settings[hidden] { display: none; }
.cookie-banner__settings label { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.cookie-banner__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.cookie-banner__actions [hidden] { display: none; }
@media (max-width: 720px) {
  .cookie-banner { left: 0; right: 0; bottom: 0; border-radius: var(--radius-card) var(--radius-card) 0 0; border-bottom: 0; max-height: 80vh; overflow-y: auto; }
  .cookie-banner__inner { padding: 16px; }
  .cookie-banner__text { font-size: 16px; flex-basis: 100%; }
  .cookie-banner__actions { flex-direction: column; width: 100%; }
  .cookie-banner__actions .btn { width: 100%; justify-content: center; min-height: 44px; }
  .cookie-banner__text a { display: inline-block; padding: 12px 0; margin: -12px 0; }
}
