body { padding-bottom: var(--audience-consent-space, 0px); }
.audience-consent { position: fixed; inset: auto 0 0; z-index: 1000; max-height: 80dvh; overflow-y: auto; border-top: 1px solid var(--line); background: var(--paper); color: var(--ink); box-shadow: 0 -4px 20px #0001; }
.audience-consent[hidden] { display: none; }
.audience-consent-inner { max-width: 1180px; margin: auto; padding: 20px 24px; display: flex; align-items: center; gap: 24px; }
.audience-consent h2 { margin: 0 0 8px; font-size: 18px; letter-spacing: 0; }
.audience-consent p { margin: 0 0 8px; max-width: 760px; font-size: 14px; line-height: 1.5; }
.audience-consent a { color: var(--blue); font-size: 13px; text-decoration: underline; }
.audience-consent-actions { flex: 0 0 auto; display: flex; gap: 12px; }
.audience-consent-actions button { min-height: 44px; padding: 10px 16px; border: 1px solid var(--control-border); border-radius: 4px; background: var(--control-background); color: var(--ink); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.audience-consent-actions button:hover { border-color: var(--blue); }
.audience-consent-actions button:disabled { opacity: .6; cursor: not-allowed; }
.audience-manage { border: 0; background: none; color: inherit; font: inherit; font-size: 13px; text-decoration: underline; cursor: pointer; }
@media (max-width: 720px) {
  body { padding-bottom: calc(64px + env(safe-area-inset-bottom) + var(--audience-consent-space, 0px)); }
  .mobile-actions { bottom: var(--audience-consent-space, 0px); }
}
@media (max-width: 760px) {
  .audience-consent-inner { flex-direction: column; align-items: stretch; padding: 16px; gap: 16px; }
  .audience-consent-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audience-consent-actions button { white-space: normal; }
}
