.privacy-consent {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 12000;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  box-sizing: border-box;
  width: min(calc(100vw - 2rem), 680px);
  max-height: min(calc(100dvh - 2rem), 34rem);
  overflow: auto;
  padding: 1.25rem 1.35rem;
  border: 1px solid var(--surface-line-strong, rgba(255, 255, 255, 0.22));
  border-radius: 1.25rem;
  background: var(--panel-bg, rgba(30, 35, 55, 0.96));
  color: var(--text-color, #fff);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(20px) saturate(145%);
  -webkit-backdrop-filter: blur(20px) saturate(145%);
}

.privacy-consent-copy { min-width: 0; }
.privacy-consent-copy p { margin: 0; color: var(--text-grey, #a0a0a0); font-size: 0.95rem; line-height: 1.55; }
.privacy-consent-copy h2 { margin: 0.2rem 0 0.45rem; font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.45rem) !important; line-height: 1.2; }
.privacy-consent-copy a { color: var(--primary, #a24cff); }
.privacy-consent-kicker { color: var(--primary, #a24cff) !important; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.privacy-consent-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.privacy-consent-actions .btn { min-width: 0; min-height: 3.1rem; padding: 0.7rem 0.9rem !important; white-space: normal; font-size: 0.95rem !important; line-height: 1.2; }

.footer-link-button { border: 0; cursor: pointer; font: inherit; }

@media (max-width: 520px) {
  .privacy-consent { right: 0.5rem; bottom: 0.5rem; width: calc(100vw - 1rem); padding: 1rem; }
  .privacy-consent-actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-transparency: reduce) {
  .privacy-consent { backdrop-filter: none; -webkit-backdrop-filter: none; background: var(--body-bg-color, #111318); }
}
