.lyrics-page {
  background: radial-gradient(circle at 50% -10%, rgba(255, 170, 0, .12), transparent 32rem), var(--background);
  color: var(--text);
}
.lyrics-shell,.lyrics-breadcrumb,.lyrics-footer { width:min(100% - 32px,880px); margin-inline:auto; }
.lyrics-breadcrumb { display:flex; gap:9px; align-items:center; padding-top:24px; color:var(--text-muted); font-size:.9rem; }
.lyrics-breadcrumb a,.lyrics-footer a { color:var(--text-secondary); }
.lyrics-shell { padding:40px 0 64px; }
.lyrics-header { max-width:720px; margin-bottom:32px; }
.lyrics-kicker { margin:0 0 8px; color:var(--accent); font-size:.78rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.lyrics-header h1 { margin:0 0 12px; color:var(--heading); font-size:clamp(2.35rem,8vw,4.5rem); line-height:1.02; letter-spacing:-.045em; }
.lyrics-header>p:last-child { max-width:680px; margin:0; color:var(--text-secondary); font-size:clamp(1rem,2.5vw,1.15rem); }
.lyrics-search,.lyrics-content,.lyrics-empty { padding:clamp(20px,4vw,32px); border:1px solid var(--border); border-radius:14px; background:var(--surface); box-shadow:0 12px 36px var(--card-shadow); }
.artist-links { display:flex; flex-wrap:wrap; gap:12px; margin:-10px 0 28px; }
.artist-links .artist-button { display:inline-flex; flex:0 0 150px; align-items:center; justify-content:center; width:150px; max-width:150px; height:56px; max-height:56px; padding:0; overflow:hidden; border:0; border-radius:9px; background:transparent; text-decoration:none; box-shadow:0 6px 18px var(--card-shadow); transition:filter 160ms ease,transform 160ms ease; }
.artist-links .artist-button img { display:block; width:150px; max-width:150px; height:auto; max-height:56px; object-fit:contain; }
.artist-button:hover { filter:brightness(1.1); transform:translateY(-1px); }
.artist-button:focus-visible { outline:3px solid var(--heading); outline-offset:3px; }
.lyrics-search h2 { margin-bottom:4px; color:var(--heading); }
.lyrics-search label { display:block; margin-bottom:10px; color:var(--text-secondary); }
.lyrics-search-row { display:flex; gap:10px; }
.lyrics-search-row .syote { flex:1; background:var(--input); color:var(--input-text); }
.lyrics-clear { flex:0 0 auto; padding:10px 16px; border:1px solid var(--border-strong); border-radius:8px; background:var(--surface-elevated); color:var(--text); cursor:pointer; font-weight:700; }
.lyrics-count { margin:10px 0 0; color:var(--text-muted); font-size:.92rem; }
.lyrics-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:18px 0 0; padding:0; list-style:none; }
.lyrics-card a { display:flex; min-height:100%; flex-direction:column; padding:22px; border:1px solid var(--border); border-radius:12px; background:var(--surface); color:var(--text); text-decoration:none; transition:border-color 160ms ease,transform 160ms ease,box-shadow 160ms ease; }
.lyrics-card a:hover { transform:translateY(-2px); border-color:var(--accent); box-shadow:0 10px 28px var(--card-shadow); }
.lyrics-card-title { color:var(--heading); font-size:1.22rem; font-weight:800; }
.lyrics-card-description { margin:8px 0 18px; color:var(--text-secondary); font-size:.94rem; }
.lyrics-card-link { margin-top:auto; color:var(--accent); font-weight:750; }
.lyrics-card[hidden] { display:none; }
.lyrics-empty { margin-top:18px; text-align:center; }
.lyrics-empty h2 { margin-bottom:5px; }
.lyrics-song .lyrics-header { margin-bottom:24px; }
.lyrics-content { max-width:720px; }
.lyrics-section+.lyrics-section { margin-top:32px; }
.lyrics-section h2 { margin:0 0 10px; color:var(--accent); font-size:.86rem; letter-spacing:.08em; text-transform:uppercase; }
.lyrics-section p { margin:0 0 18px; color:var(--text); font-size:clamp(1.05rem,2.8vw,1.18rem); line-height:1.78; }
.lyrics-section p:last-child { margin-bottom:0; }
.lyrics-song-nav { max-width:320px; margin-top:20px; }
.lyrics-footer { display:flex; justify-content:center; gap:12px; padding:0 0 32px; color:var(--text-muted); font-size:.9rem; }
@media (max-width:640px) {
  .lyrics-shell { padding-top:30px; }
  .lyrics-grid { grid-template-columns:1fr; }
  .lyrics-search-row { align-items:stretch; flex-direction:column; }
  .artist-links { display:grid; grid-template-columns:1fr; }
  .artist-links .artist-button { flex-basis:150px; width:150px; max-width:150px; height:56px; }
  .lyrics-clear { min-height:46px; }
  .lyrics-card a { padding:19px; }
  .lyrics-content { padding:22px; }
}
@media (prefers-reduced-motion:reduce) { .lyrics-card a,.artist-button { transition:none; } }
