/* Shared adapters use the public family tokens where available. */
.pp-consent-map { box-sizing: border-box; min-width: 0; padding: 20px; color: var(--ppw-text, #15343b); background: var(--ppw-bg, #fff); border: 1px solid #5d7980; border-radius: 4px; }
.pp-consent-map *, .pp-consent-map *::before, .pp-consent-map *::after { box-sizing: border-box; }
.pp-consent-map [hidden] { display: none !important; }
.pp-consent-map-note, .pp-consent-map-status { margin: 0 0 16px; color: inherit; font: 400 16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif; }
.pp-consent-map-status:empty { display: none; }
.pp-consent-map-button { min-height: 46px; max-width: 100%; padding: 10px 16px; border: 2px solid var(--ppw-brand, #335f69); border-radius: 4px; background: var(--ppw-bg, #fff); color: var(--ppw-text, #15343b); font: 700 16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif; white-space: normal; cursor: pointer; }
.pp-consent-map-button:hover { background: #e6eeee; }
.pp-consent-map-button:focus-visible { outline: 3px solid var(--ppw-brand, #0f5c63); outline-offset: 3px; }
.pp-consent-map iframe:not([hidden]) { display: block; width: 100%; height: 380px; min-height: 0; margin-top: 16px; border: 0; }
.tpa-footer-links .pp-consent-manage { color: inherit; border-radius: 4px; }
.tpa-loc-map:has(iframe[data-pp-map-src]) { height: auto; min-height: 0; max-height: none; aspect-ratio: auto; overflow: visible; border: 0; border-radius: 4px; box-shadow: none; background: transparent; }
@media (max-width: 600px) { .pp-consent-map { padding: 16px; } .pp-consent-map iframe:not([hidden]) { height: 320px; } }
