/* ============================================================
   style-artists-directory.min.css - The DJ Calendar
   Oct 17, 2026 - artists A-Z directory upgrade, scoped to
   #artistsDirectory ONLY (cities/venues directories untouched).
   Dependent on: style-directory.min.css (loads after it),
   fonts Orbitron + Rajdhani, --neon: #00d2ff.
   ============================================================ */
/* ===== UPGRADE (scoped) ===== */
#artistsDirectory{display:grid;gap:12px;interpolate-size:allow-keywords}
#artistsDirectory summary{list-style:none}
#artistsDirectory .cities-letter-toggle.venues-directory-link{
  grid-template-columns:auto 1fr auto;gap:0 20px;align-items:center;
  padding:18px 24px;border-radius:10px;overflow:hidden;position:relative;cursor:pointer;
  background:linear-gradient(90deg, rgba(0,210,255,0.05), rgba(255,255,255,0.015) 45%);
  transition:border-color .25s, box-shadow .25s, transform .25s;
}
#artistsDirectory .cities-letter-toggle::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg, rgba(0,210,255,0.12), transparent 60%);
  opacity:0;transition:opacity .25s;
}
#artistsDirectory .cities-letter-toggle:hover::after,
#artistsDirectory details[open] .cities-letter-toggle::after{opacity:1}
#artistsDirectory .cities-letter-toggle:hover{
  border-color:rgba(0,210,255,.6);
  box-shadow:0 0 24px rgba(0,210,255,.10), inset 0 0 0 1px rgba(0,210,255,.15);
  transform:translateX(4px);
}
#artistsDirectory .cities-letter-toggle .venues-directory-name{
  font-family:'Orbitron',sans-serif;font-weight:900;font-size:2rem;line-height:1;
  letter-spacing:.04em;min-width:2.2ch;text-align:center;text-shadow:none;
  background:linear-gradient(180deg,#fff 10%, var(--neon) 90%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  transition:filter .25s;
}
#artistsDirectory .cities-letter-toggle:hover .venues-directory-name{
  filter:drop-shadow(0 0 14px rgba(0,210,255,.6));
}
#artistsDirectory .venues-directory-count{
  grid-column:auto;grid-row:auto;justify-self:end;
  font-size:.62rem;letter-spacing:.18em;color:rgba(0,210,255,.85);
  border:1px solid rgba(0,210,255,.25);background:rgba(0,210,255,.06);
  border-radius:999px;padding:5px 12px;white-space:nowrap;
}
#artistsDirectory .cities-letter-chevron{width:10px;height:10px;margin-right:2px;margin-top:0}
#artistsDirectory details[open] > .cities-letter-toggle{
  border-color:rgba(0,210,255,.45);box-shadow:0 0 20px rgba(0,210,255,.06);
}
#artistsDirectory .cities-letter-list{display:flex;flex-wrap:wrap;gap:10px;padding:18px 4px 8px}
#artistsDirectory .cities-letter-list .venues-directory-link{
  grid-template-columns:none;display:inline-flex;padding:9px 16px;
  border-radius:999px;background:#0c0c0c;font-size:.92rem;letter-spacing:.05em;
}
#artistsDirectory .cities-letter-list .venues-directory-link::before{
  content:"";width:4px;height:4px;border-radius:50%;background:rgba(0,210,255,.4);
  transition:background .2s, box-shadow .2s;
}
#artistsDirectory .cities-letter-list .venues-directory-link:hover::before{
  background:var(--neon);box-shadow:0 0 8px var(--neon);
}
#artistsDirectory .cities-letter-list .venues-directory-link:hover{
  transform:translateY(-1px);box-shadow:0 0 16px rgba(0,210,255,.12);
}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item{animation:djcChipIn .45s ease-out both}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(1){animation-delay:.02s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(2){animation-delay:.05s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(3){animation-delay:.08s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(4){animation-delay:.11s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(5){animation-delay:.14s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(6){animation-delay:.17s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(7){animation-delay:.20s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(8){animation-delay:.23s}
#artistsDirectory details[open] .cities-letter-list .venues-directory-item:nth-child(n+9){animation-delay:.26s}
@keyframes djcChipIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
#artistsDirectory details::details-content{transition:height .3s ease, content-visibility .3s allow-discrete;overflow:clip}
@media (prefers-reduced-motion: reduce){#artistsDirectory *{animation:none!important;transition:none!important}}
@media (max-width:640px){
  #artistsDirectory .cities-letter-toggle{padding:14px 18px;gap:0 14px}
  #artistsDirectory .cities-letter-toggle .venues-directory-name{font-size:1.4rem}
}
