.bubble-map{max-width:960px;margin:0 auto}.bubble-map .bm-header{text-align:center;padding:0 24px 8px;max-width:560px;margin:0 auto}.bubble-map .bm-layout{display:flex;flex-direction:column}.bubble-map .bm-map-col{flex:1;min-width:0}.bubble-map .bm-title{font-family:var(--font-sans);font-size:1.75rem;font-weight:700;color:#1e293b;margin-bottom:8px}.bubble-map .bm-subtitle{color:#64748b;font-size:15px;line-height:1.6}.bubble-map .bm-map-container{margin:12px auto 0;padding:0 12px}@media(max-width:767px){.bubble-map .bm-header{padding:0 12px 8px}.bubble-map .bm-map-container{padding:0}}.bubble-map .bm-map-svg{width:100%;height:auto;display:block}@media(max-width:767px){.bubble-map .bm-map-svg{aspect-ratio:560 / 500}}@keyframes bm-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.bubble-map .bm-blob{cursor:pointer;transition:opacity .4s ease,filter .4s ease;transform-box:fill-box;transform-origin:center}.bubble-map .bm-blob:hover{filter:brightness(1.1);animation:bm-pulse 2s ease-in-out infinite}.bubble-map .bm-blob.bm-blob-active{filter:brightness(1.15);stroke:#fff;stroke-width:2}.bubble-map .bm-blob:focus{outline:none}.bubble-map .bm-blob:focus-visible{outline:2px solid white;outline-offset:2px}.bubble-map .bm-blob-label{font-family:var(--font-sans);font-weight:700;fill:#fff;pointer-events:none;transition:opacity .4s ease}.bubble-map .bm-blob-sub{font-family:var(--font-sans);font-weight:500;fill:#ffffffb3;pointer-events:none;transition:opacity .4s ease}.bubble-map .bm-badge-text{font-family:var(--font-sans);font-size:7.5px;font-weight:700;fill:#fffffff2;pointer-events:none;letter-spacing:.5px;transition:opacity .4s ease}.bubble-map .bm-badge-bg{fill:#0003;pointer-events:none;transition:opacity .4s ease}.bubble-map .bm-show-more-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px auto 8px;padding:14px 32px;min-width:min(290px,100%);border-radius:12px;border:none;background:#44ee70;font-family:var(--font-sans);font-size:15px;font-weight:600;color:#1e293b;cursor:pointer;transition:background .2s ease;box-shadow:0 1px 2px #0000000d}@media(hover:hover){.bubble-map .bm-show-more-btn:hover{background:var(--color-primary-mid)}}.bubble-map .bm-popover{position:absolute;width:300px;background:#fff;border-radius:14px;padding:20px;box-shadow:0 8px 30px #00000026,0 2px 8px #00000014;z-index:20;opacity:0;transform:scale(.95);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.bubble-map .bm-popover.bm-popover-visible{opacity:1;transform:scale(1);pointer-events:auto}.bubble-map .bm-popover-close{position:absolute;top:8px;right:10px;background:none;border:none;font-size:22px;color:#94a3b8;cursor:pointer;line-height:1;padding:4px;transition:color .15s ease}.bubble-map .bm-popover-close:hover{color:#1e293b}.bubble-map .bm-popover-backdrop{display:none}@media(max-width:767px){.bubble-map .bm-popover{position:fixed;inset:auto 0 0;width:auto;height:60vh;max-height:60vh;overflow-y:hidden;touch-action:none;border-radius:16px 16px 0 0;transform:translateY(100%);opacity:1;padding:24px;z-index:1000;will-change:transform;contain:layout style;transition:transform .5s cubic-bezier(.32,.72,0,1)}.bubble-map .bm-popover.bm-popover-visible{transform:translateY(0)}.bubble-map .bm-popover-backdrop{display:block;position:fixed;inset:0;background:#0000004d;z-index:999;opacity:0;pointer-events:none;transition:opacity .5s ease}.bubble-map .bm-popover-backdrop.bm-popover-backdrop-visible{opacity:1;pointer-events:auto}}.bubble-map .bm-info-topline{display:flex;align-items:center;gap:10px;margin-bottom:6px}.bubble-map .bm-info-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.bubble-map .bm-info-name{font-family:var(--font-sans);font-size:17px;font-weight:700;color:#1e293b}.bubble-map .bm-info-badges{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.bubble-map .bm-info-badge{padding:2px 9px;border-radius:100px;font-size:11px;font-weight:600}.bubble-map .badge-ahpra{background:#e0edff;color:#1e40af}.bubble-map .badge-medicare{background:#f0fdf4;color:#166534}.bubble-map .badge-no-medicare{background:#fef2f2;color:#991b1b}.bubble-map .badge-unregulated{background:#fef3c7;color:#92400e}.bubble-map .badge-voluntary{background:#f3e8ff;color:#6b21a8}.bubble-map .bm-info-desc{color:#64748b;font-size:13px;line-height:1.7;margin-bottom:14px}.bubble-map .bm-info-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.bubble-map .bm-info-detail{padding:10px 12px;background:#f8fafc;border-radius:10px}.bubble-map .bm-info-detail-label{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#94a3b8;font-weight:600;margin-bottom:2px}.bubble-map .bm-info-detail-value{font-size:13px;font-weight:700;color:#1e293b}.bubble-map .bm-hidden-blobs{transition:opacity .5s ease}.bubble-map .bm-hidden-blobs.bm-hidden{opacity:0;pointer-events:none}.bubble-map .bm-hidden-blobs.bm-visible{opacity:1;pointer-events:all}.bubble-map .bm-map-container{position:relative}.bubble-map .bm-drag-handle{display:none}@media(max-width:767px){.bubble-map .bm-drag-handle{display:flex;justify-content:center;padding:8px 0 16px;cursor:grab;touch-action:none}.bubble-map .bm-drag-pill{width:36px;height:4px;background:#cbd5e1;border-radius:2px}.bubble-map .bm-popover.bm-popover-dragging{transition:none!important}}.bm-body-locked{overflow:hidden!important}@media(max-width:767px){.bubble-map .bm-popover.bm-popover-expanded{height:90vh;max-height:90vh;overflow-y:auto;touch-action:pan-y}}@media(max-width:767px){.bubble-map .bm-blob-label{font-size:18px}.bubble-map .bm-blob-sub{font-size:13px}.bubble-map .bm-badge-text{font-size:10px}#extra-labels-bm .bm-blob-label{font-size:13px}#extra-labels-bm .bm-blob-sub{font-size:10px}#extra-labels-bm .bm-badge-text{font-size:9px}#extra-labels-bm [data-prof=mh-nurse].bm-blob-label{font-size:11px}#extra-labels-bm [data-prof=mh-nurse].bm-blob-sub{font-size:9px}#extra-labels-bm [data-prof=mh-nurse].bm-badge-text{font-size:8px}.bubble-map [data-prof=mh-nurse].bm-blob-label{font-size:11px}.bubble-map [data-prof=mh-nurse].bm-blob-sub{font-size:9px}.bubble-map [data-prof=mh-nurse].bm-badge-text{font-size:8px}}
