/* Minimal consent card, matching the Kapi layout with 44px touch targets. */
.audience-consent{position:fixed;inset:auto 16px max(24px,env(safe-area-inset-bottom));z-index:90;box-sizing:border-box;width:calc(100% - 32px);max-width:320px;margin-inline:auto;border:1px solid #00000014;border-radius:12px;background:#fff;color:#151515;box-shadow:0 4px 24px #00000012;font-family:var(--font,system-ui,sans-serif);text-align:left;max-height:calc(100dvh - 48px);overflow:auto;isolation:isolate}
.audience-inner{padding:14px 16px 10px}
.audience-copy>a{color:inherit;font-size:12px;font-weight:550;line-height:1.4;text-decoration:none}
.audience-copy>a:hover{text-decoration:underline;text-underline-offset:3px}
.audience-copy p{margin:5px 0 8px;color:#555;font-size:11px;line-height:1.5}
.audience-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}
.audience-actions button{box-sizing:border-box;min-height:44px;padding:8px 0;border:0;background:transparent;color:#555;font:inherit;font-size:11px;line-height:1.4;cursor:pointer}
.audience-actions button[data-audience=yes]{padding-inline:18px;border-radius:7px;background:#151515;color:#fff}
.audience-actions button[data-audience=yes]:hover{background:#303030}
.audience-actions button[data-audience=no]:hover{color:#151515;text-decoration:underline;text-underline-offset:3px}
.audience-actions button:disabled{opacity:.6;cursor:wait}
.audience-consent :is(button,a):focus-visible,.audience-preference:focus-visible{outline:2px solid #151515;outline-offset:3px}
.audience-choice .audience-error{font-size:12px;line-height:1.5;color:#a32d32;margin:8px 0 0}
.audience-preference{display:inline-flex;align-items:center;margin:0;padding:6px 0;background:transparent;border:0;border-radius:0;color:inherit;cursor:pointer;font:inherit;font-size:10px;line-height:1.5;white-space:nowrap}
.audience-preference:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:767px){.audience-consent{bottom:calc(16px + env(safe-area-inset-bottom));max-height:calc(100dvh - 32px - env(safe-area-inset-bottom))}}
@media(max-width:767px){
  .footer-bottom:has(>.audience-preference){flex-direction:row;flex-wrap:nowrap;align-items:center;gap:12px}
  .footer-bottom:has(>.audience-preference)>span:first-child{width:auto;min-width:0;flex:1}
  .footer-bottom>.audience-preference{flex-shrink:0;margin-left:auto}
}
@media print{.audience-consent,.audience-spacer{display:none!important}}
