:root {
  --privacy-ink: #132d2b;
  --privacy-green: #147d64;
  --privacy-line: #dce4e1;
  --privacy-muted: #627572;
}

#privacy-dialog {
  width: min(520px, calc(100% - 32px));
  max-width: 520px;
  padding: 0;
  border: 0;
  border-radius: 14px;
  color: var(--privacy-ink);
  background: #fff;
  box-shadow: 0 24px 80px rgba(5, 31, 27, .28);
}

#privacy-dialog::backdrop { background: rgba(7, 31, 28, .62); }
#privacy-dialog .privacy-panel { padding: 28px; }
#privacy-dialog h2 { margin: 0 0 12px; font: 700 24px/1.25 system-ui, sans-serif; }
#privacy-dialog p { margin: 0; color: var(--privacy-muted); line-height: 1.55; }
#privacy-dialog .privacy-actions { display: flex; justify-content: flex-end; gap: 10px; margin: 24px 0 16px; }
#privacy-dialog button { padding: 10px 15px; border: 1px solid var(--privacy-green); border-radius: 8px; background: #fff; color: var(--privacy-ink); font: 650 14px system-ui, sans-serif; cursor: pointer; }
#privacy-dialog [data-privacy-allow] { background: var(--privacy-green); color: #fff; }
#privacy-dialog a { color: var(--privacy-green); font-weight: 650; }
#privacy-dialog button:focus-visible, #privacy-dialog a:focus-visible { outline: 3px solid #72bda8; outline-offset: 3px; }

@media (max-width: 520px) {
  #privacy-dialog .privacy-panel { padding: 22px; }
  #privacy-dialog .privacy-actions { align-items: stretch; flex-direction: column-reverse; }
}
