.artist-shell { width:var(--content); min-height:100vh; margin:0 auto; padding:140px 0 100px; }
.artist-shell h1 { margin-bottom:12px; font-size:clamp(58px,11vw,140px); }
.artist-intro { max-width:620px; color:var(--muted); line-height:1.6; }
.artist-callsign-inline { color:var(--amber); font:12px/1 var(--font-term); letter-spacing:0.12em; text-transform:uppercase; }

/* ── Directory ─────────────────────────────────────── */
.artist-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:38px; }
.artist-link {
  display:grid; gap:10px; padding:20px;
  border:1px solid var(--line); background:var(--panel);
  text-transform:uppercase;
  transition: border-color 160ms ease;
}
.artist-link:hover { border-color:var(--amber); }
.artist-link-header { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.artist-link strong { font:22px/1 var(--font-disp); color:var(--white); }
.artist-callsign { color:var(--amber); font:10px/1 var(--font-term); letter-spacing:0.12em; flex-shrink:0; opacity:.75; }
.artist-genres { color:var(--muted); font:10px/1 var(--font-term); letter-spacing:0.08em; }
.artist-link-meta {
  display:flex; flex-wrap:wrap; gap:6px 14px;
  padding-top:10px; border-top:1px solid rgba(255,255,255,.07);
}
.artist-link-meta span { color:var(--cyan); font:10px/1 var(--font-term); letter-spacing:0.06em; }
.artist-latest { color:var(--muted) !important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:100%; }
.artist-years { color:var(--amber) !important; opacity:.65; }

/* ── Individual artist tracks ──────────────────────── */
.artist-tracks { display:grid; gap:9px; margin-top:38px; }
.artist-track {
  display:grid; grid-template-columns:64px minmax(0,1fr) auto;
  gap:14px; align-items:center;
  padding:12px; border:1px solid var(--line); background:var(--panel);
  transition: border-color 160ms ease;
}
.artist-track:hover { border-color:rgba(255,173,22,.35); }
.artist-track img { width:64px; height:64px; object-fit:cover; }
.artist-track h2 { margin:0 0 6px; font-size:20px; }
.artist-track-sub { margin:0 0 4px; color:var(--muted); font:11px/1.3 var(--font-term); text-transform:uppercase; letter-spacing:0.06em; }
.artist-track-meta { margin:0; color:var(--cyan); font:10px/1 var(--font-term); text-transform:uppercase; letter-spacing:0.08em; }
.artist-track button {
  width:42px; height:42px; border:0; color:var(--black);
  background:var(--amber); cursor:pointer; flex-shrink:0;
}
.artist-track button:hover { background:var(--amber-hot); }
.artist-track button:disabled { background:#222; color:var(--muted); cursor:default; }

@media(max-width:760px) {
  .artist-directory { grid-template-columns:1fr; }
  .artist-shell { padding-top:100px; }
  .artist-link-meta { flex-direction:column; gap:6px; }
  .artist-latest { white-space:normal; }
}
