.audience-consent { position:fixed; inset:auto 0 0; z-index:1100; background:#fff; color:#10243f; border-top:3px solid #10243f; box-shadow:0 -4px 24px #10243f22; max-height:85dvh; overflow:auto; font:18px/1.6 "Atkinson Hyperlegible Next",Arial,sans-serif; }
.audience-consent[hidden] { display:none; }
.audience-inner { max-width:1120px; margin:auto; padding:20px; display:flex; gap:24px; align-items:center; }
.audience-consent h2 { margin:0 0 8px; font-size:22px; line-height:1.3; color:#10243f; }
.audience-consent p { margin:0; max-width:70ch; }
.audience-consent a { color:#2357d9; text-decoration:underline; }
.audience-actions { display:flex; flex-wrap:wrap; gap:12px; min-width:230px; }
.audience-actions button { flex:1; min-height:48px; padding:10px 18px; font:600 18px/1.4 inherit; font-family:inherit; font-size:18px; font-weight:600; border:2px solid #10243f; border-radius:8px; background:#10243f; color:white; cursor:pointer; }
.audience-actions .audience-close { flex-basis:100%; background:#fff; color:#10243f; }
.audience-settings { font:inherit; color:#2357d9; background:none; border:0; text-decoration:underline; padding:10px 0; cursor:pointer; }
.audience-consent button:focus-visible, .audience-settings:focus-visible { outline:3px solid #2357d9; outline-offset:4px; }
#audience-status:not(:empty) { margin-top:12px; }
@media(max-width:760px) { .audience-inner { flex-direction:column; align-items:stretch; gap:16px; padding:16px; } .audience-actions { min-width:0; } }
@media print { .audience-consent,.audience-settings { display:none; } }
