.wh-location-selector-outer { display:block; }
.wh-location-selector { display:inline-flex; align-items:flex-start; gap:.5rem; flex-direction:column; }
.wh-location-selector .wh-location-open { cursor:pointer; background:none; border:none; padding:0; color:inherit; text-decoration:underline; font:inherit; font-size:0.8em;}
.wh-location-modal { position:fixed; inset:0; z-index:999999; align-items:center; justify-content:center; padding:24px; box-sizing:border-box; display:flex; opacity:0; pointer-events:none; transition:opacity .25s ease; }
.wh-location-modal[aria-hidden="false"] { opacity:1; pointer-events:auto; }
.wh-location-modal__backdrop { position:absolute; inset:0; background:rgba(0,0,0,.5); z-index:0; }
.wh-location-modal__dialog { position:relative; z-index:1; width:min(640px, calc(100vw - 48px)); max-width:100%; max-height:calc(100vh - 48px); margin:0; background:#fff; border-radius:12px; overflow:hidden; display:flex; flex-direction:column; box-sizing:border-box; }
.wh-location-modal__header { display:flex; justify-content:space-between; align-items:center; padding:16px; border-bottom:1px solid #eee; flex:0 0 auto; }
.wh-location-modal__header h3 { margin:0; }
.wh-location-modal__body { flex:1 1 auto; overflow:auto; padding:8px 16px 16px; overflow-wrap:anywhere; word-break:break-word; }

/* Responsive modal */
@media (max-width: 768px) {
  .wh-location-modal { padding:20px; }
  .wh-location-modal__dialog { border-radius:10px; width:min(640px, calc(100vw - 40px)); max-height:calc(100vh - 40px); }
}
@media (max-width: 600px) {
  .wh-location-modal { padding:0; align-items:flex-start; }
  .wh-location-modal__backdrop { background:rgba(0,0,0,.45); }
  .wh-location-modal__dialog { border-radius:0; width:100vw; max-width:100vw; max-height:100vh; height:auto; transform:translateY(-100%); transition:transform .3s ease; }
  .wh-location-modal[aria-hidden="false"] .wh-location-modal__dialog { transform:translateY(0); }
  .wh-location-modal__header { padding:14px 16px; }
  .wh-location-modal__body { padding:12px 16px; }
}
.wh-location-item { padding:12px 0; border-bottom:1px solid #f0f0f0; }
.wh-location-item__title { font-weight:600; font-size: 1.2em; color: #000; }
.wh-location-item__title { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.wh-location-item__title .wh-location-item__social { display:inline-flex; align-items:center; gap:.5rem; margin-left:.25rem; position:relative; }
.wh-location-item__title .wh-location-item__social.has-icons:before { content:""; position:relative; display:inline-block; width:0; height:1em; border-left:2px solid #111; margin:0 .5rem 0 .25rem; }
.wh-location-item__title .wh-loc-icon i { font-size:.9em; }
.wh-location-item__actions { margin-top:8px; }
.wh-location-item__actions button { font-size: 14px; padding: 4px 8px;}
.wh-location-item__actions button:disabled { background: transparent; border: none; color: #000; padding-left: 0}
.wh-location-action { cursor:pointer; }

/* Top row styles to match design */
.wh-location-current { display:flex; align-items:center; gap:.75rem; }
.wh-location-current .wh-location-actions { display:inline-flex; align-items:center; gap:1.25rem; margin-left:.75rem; position:relative; }
.wh-location-current .wh-location-actions.has-icons::before { content:""; position:relative; display:inline-block; width:0; height:1em; border-left:2px solid #111; margin:0 1.25rem 0 .5rem; }
.wh-location-current .wh-location-actions:not(.has-icons) { margin-left:0; }
.wh-loc-icon { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; color:inherit; font-weight:700; font-size:.9em; line-height:1; }
.wh-loc-icon i { font-size:1em; line-height:1; }
.wh-loc-icon svg { width:1em; height:1em; }

/* Optional distinct colors per network (inherits current color by default) */
.wh-loc-icon.social { color:#000; transition: color .15s ease; }
.wh-loc-icon.social.fb:hover, .wh-loc-icon.social.fb:focus { color:#1877f2; }
.wh-loc-icon.social.gmb:hover, .wh-loc-icon.social.gmb:focus { color:#4285f4; }
.wh-loc-icon.social.x:hover, .wh-loc-icon.social.x:focus { color:#1da1f2; }
.wh-loc-icon.social.yt:hover, .wh-loc-icon.social.yt:focus { color:#ff0000; }
.wh-loc-icon.social.li:hover, .wh-loc-icon.social.li:focus { color:#0a66c2; }
.wh-loc-icon.social.tt:hover, .wh-loc-icon.social.tt:focus { color:#ee1d52; }

