.style-audience { margin: 4px 0 14px; padding: 13px; border: 1px solid var(--ui-border, #dce5f1); border-radius: 14px; background: #f5f8ff; }
.style-audience-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.style-audience-label { font-size: 12px; color: var(--ui-ink, #132c50); }
.style-audience-switch { display: flex; gap: 5px; padding: 3px; border-radius: 22px; background: #e8effc; }
.style-audience-option { appearance: none; -webkit-appearance: none; min-height: 36px; padding: 6px 12px; border: 0; border-radius: 18px; background: transparent; font: inherit; font-size: 12px; color: #526784; cursor: pointer; }
.style-audience-option[aria-pressed='true'] { background: #fff; color: #003da5; box-shadow: 0 2px 8px #173d7710; font-weight: 600; }
.style-audience-status { margin: 9px 0 0; font-size: 10px; line-height: 1.7; color: #526784; }
.style-audience-retry { margin-top: 9px; min-height: 36px; padding: 7px 13px; border: 1px solid #9fb9e2; border-radius: 9px; background: #fff; color: #003da5; font: inherit; font-size: 12px; cursor: pointer; }
.style-audience-retry[hidden] { display: none; }
.style-audience-dialog { box-sizing: border-box; width: min(420px, calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 27px 23px 18px; border: 1px solid #dce5f1; border-radius: 24px; background: #fff; color: #132c50; box-shadow: 0 24px 80px #0e2d6a30; overflow: auto; overscroll-behavior: contain; }
.style-audience-dialog:not([open]) { display: none; }
.style-audience-dialog::backdrop { background: #102c5966; backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px); }
.style-audience-eyebrow { margin: 0 0 11px; color: #003da5; font-size: 11px; letter-spacing: .12em; }
.style-audience-title { margin: 0; font-size: 24px; line-height: 1.4; letter-spacing: -.03em; }
.style-audience-intro { margin: 12px 0 21px; font-size: 12px; line-height: 1.9; color: #526784; }
.style-audience-modal-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.style-audience-modal-option { appearance: none; -webkit-appearance: none; min-height: 100px; padding: 16px 10px; border: 1px solid #cedcf2; border-radius: 15px; background: #f4f7ff; color: #003da5; font: inherit; font-size: 17px; font-weight: 700; cursor: pointer; }
.style-audience-modal-option[aria-pressed='true'] { border-color: #003da5; box-shadow: inset 0 0 0 1px #003da5; }
.style-audience-option-note { display: block; margin-top: 9px; font-size: 10px; font-weight: 400; line-height: 1.7; color: #526784; }
.style-audience-modal-status { min-height: 3.4em; margin: 17px 0 0; color: #647591; font-size: 11px; line-height: 1.7; }
.style-audience-dismiss { display: block; min-height: 40px; margin: 9px auto 0; padding: 7px 16px; border: 0; background: transparent; color: #647591; font: inherit; font-size: 12px; cursor: pointer; }
.style-audience.has-error .style-audience-status, .style-audience-dialog.has-error .style-audience-modal-status { color: #9c482a; }
.style-audience button:focus-visible, .style-audience-dialog button:focus-visible { outline: 3px solid #78a6f1; outline-offset: 3px; }
@media (max-width: 350px) { .style-audience-heading { align-items: flex-start; }.style-audience-dialog { padding: 23px 17px 15px; }.style-audience-title { font-size: 22px; }.style-audience-modal-choices { gap: 8px; } }
