/* Neon map pins (band logo + time), shared by the Shows page. Same look as the home map (home-v2.css, Oct 13 2026).
   Copied here Oct 17 2026 so shows.html gets the pins without the rest of the homepage styles. */
.mp-pin{position:absolute;translate:-50% -100%;transform-origin:50% 100%;display:flex;flex-direction:column;align-items:center;
  padding:0;margin:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent;
  animation:mpDrop .5s cubic-bezier(.2,1.5,.4,1) both;transition:scale .22s cubic-bezier(.2,1.4,.4,1),opacity .2s;}
.mp-pin:hover{scale:1.08;}
.mp-pin:focus-visible{outline:none;}
.mp-pin:focus-visible .mp-head{box-shadow:0 0 0 3px #fff,0 0 22px rgba(162,89,255,.9);}
.mp-head{position:relative;display:block;width:46px;height:46px;border-radius:50%;overflow:hidden;
  border:3px solid var(--purple);background:var(--surface-2);
  box-shadow:0 0 0 3px rgba(162,89,255,.22),0 0 18px rgba(162,89,255,.75),0 6px 14px rgba(0,0,0,.55);}
.mp-logo{display:block;width:100%;height:100%;object-fit:cover;}
.mp-logo--initials{display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1.25rem;
  letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,var(--purple),var(--pink));}
.mp-time{position:relative;z-index:1;margin-top:-9px;padding:1px 8px 0;border-radius:999px;border:2px solid var(--bg);
  background:var(--purple);color:#fff;font-family:'Bebas Neue',sans-serif;font-size:.95rem;line-height:1.15;letter-spacing:.04em;white-space:nowrap;}
.mp-tip{width:0;height:0;margin-top:-1px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--purple);
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.5));}
.mp-count{position:absolute;top:-5px;right:-8px;z-index:2;min-width:21px;height:21px;padding:0 5px;border-radius:999px;
  border:2px solid var(--bg);background:var(--pink);color:#fff;font-size:.72rem;font-weight:800;line-height:17px;text-align:center;}
.mp-pin.is-live .mp-head{border-color:var(--lime);box-shadow:0 0 0 3px rgba(218,255,140,.25),0 0 22px rgba(218,255,140,.8),0 6px 14px rgba(0,0,0,.55);}
.mp-pin.is-live .mp-time{background:var(--lime);color:#1b2510;}
.mp-pin.is-live .mp-tip{border-top-color:var(--lime);}
.mp-pulse{position:absolute;top:23px;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;
  border:2px solid var(--lime);animation:mpPulse 1.8s ease-out infinite;pointer-events:none;}
.mp-pin.is-selected{scale:1.25;}
.mp-pin.is-selected .mp-head{border-color:#fff;box-shadow:0 0 0 4px var(--purple),0 0 30px rgba(162,89,255,1),0 8px 18px rgba(0,0,0,.6);}
.mp-pin.is-live.is-selected .mp-head{box-shadow:0 0 0 4px var(--lime),0 0 30px rgba(218,255,140,1),0 8px 18px rgba(0,0,0,.6);}
.mp-pin.is-dimmed{opacity:.5;scale:.9;}
@keyframes mpDrop{0%{opacity:0;transform:translateY(-28px) scale(.5);}100%{opacity:1;transform:none;}}
@keyframes mpPulse{0%{transform:scale(1);opacity:.9;}100%{transform:scale(2.1);opacity:0;}}
.mp-pin.is-hinted{scale:1.18;z-index:45 !important;}
.mp-pin.is-hinted .mp-head{border-color:#fff;box-shadow:0 0 0 3px var(--purple),0 0 26px rgba(162,89,255,.95),0 8px 18px rgba(0,0,0,.6);}
