/* ===== Cookie consent bar ===== */
.cookie-bar {
  position: fixed; left: 50%; bottom: 22px; transform: translate(-50%, 140%);
  z-index: 70; width: min(720px, calc(100vw - 32px));
  display: flex; align-items: center; gap: 18px;
  background: var(--glass); backdrop-filter: blur(16px);
  border: 1px solid var(--border-2); border-radius: var(--r-lg);
  box-shadow: var(--shadow); padding: 16px 20px;
  transition: transform .5s var(--ease-spring), opacity .4s var(--ease);
  opacity: 0;
}
.cookie-bar.show { transform: translate(-50%, 0); opacity: 1; }
.cookie-bar .ck-ic {
  width: 42px; height: 42px; border-radius: 12px; flex: none; display: grid; place-items: center;
  background: var(--gradient-soft); border: 1px solid var(--border); font-size: 22px;
}
.cookie-bar .ck-text { flex: 1; font-size: 13.5px; line-height: 1.55; color: var(--text-muted); }
.cookie-bar .ck-text b { color: var(--text); font-weight: 700; display: block; margin-bottom: 2px; font-size: 14px; }
.cookie-bar .ck-text a { color: var(--cyan); font-weight: 600; }
.cookie-bar .ck-actions { display: flex; gap: 8px; flex: none; }
.cookie-bar .ck-btn {
  border: 1px solid var(--border-2); background: var(--surface-2); color: var(--text);
  font-weight: 600; font-size: 13.5px; padding: 9px 16px; border-radius: var(--r-pill);
  transition: border-color .2s, transform .15s var(--ease), filter .2s, background .2s;
}
.cookie-bar .ck-btn:hover { transform: translateY(-1px); }
.cookie-bar .ck-btn.close:hover { border-color: var(--text-faint); }
.cookie-bar .ck-btn.accept { background: var(--gradient); color: var(--on-accent); border: 0; box-shadow: 0 8px 20px -10px rgba(224,33,138,.55); }
.cookie-bar .ck-btn.accept:hover { filter: brightness(1.06); }

@media (max-width: 600px) {
  .cookie-bar { flex-direction: column; align-items: stretch; text-align: center; bottom: 12px; }
  .cookie-bar .ck-ic { display: none; }
  .cookie-bar .ck-actions { justify-content: center; }
  .cookie-bar .ck-btn { flex: 1; }
}
