/* Site background: cross at sunset (fixed layer, panels, phone gap). Not managed by song-tags generator. */
html { background:#1a1a1a; }
body { background:transparent !important; position:relative; isolation:isolate; }
body::before {
  content:""; position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:#1a1a1a url("/site-bg-sunset.jpg") 79% 62% / cover no-repeat;
  background-image:image-set(url("/site-bg-sunset.webp") type("image/webp"), url("/site-bg-sunset.jpg") type("image/jpeg"));
}
body::after {
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(180deg, rgba(10,10,14,.55) 0%, rgba(10,10,14,.35) 35%, rgba(10,10,14,.70) 75%, rgba(10,10,14,.88) 100%);
}
@media (max-aspect-ratio: 3/4) {
  /* Phone/portrait: cross (image x 79%, y 49-65%) centered in a clear band under the nav */
  body::before { background-size:auto 175vh; background-position:84% calc(105px - 85.75vh); }
  .band-hero { padding-top:calc(28vh + 40px) !important; }
  .container:has(.content-grid) { padding-top:calc(28vh + 40px) !important; }
  /* Album hubs: clear gap above the top-nav/cover so the cross shows */
  .hero:has(.album-cover) { padding-top:calc(28vh + 40px) !important; backdrop-filter:none; -webkit-backdrop-filter:none;
    background:linear-gradient(180deg, transparent 0, transparent calc(28vh + 30px), rgba(17,17,17,.82) calc(28vh + 30px)) !important; }
}
:root { --bg-card: rgba(34,34,34,.88); }
.band-hero { background:transparent !important; border-bottom-color:rgba(255,255,255,.12); }
.band-hero, .band-hero * { text-shadow:0 2px 12px rgba(0,0,0,.75); }
nav[style] { background-color:rgba(17,17,17,.85) !important; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.album-card, .aplayer, .song-search input, .song-search-list, .lyrics-section, .story-section, .bg-panel {
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.story-section { background:rgba(34,34,34,.88); border-radius:8px; padding:24px; }
.bg-panel { background:rgba(26,26,26,.86); border-radius:10px; padding:16px 20px; }
.container > h1, .container > h2, .container > p, .section-title { text-shadow:0 2px 8px rgba(0,0,0,.8); }
footer { background:rgba(17,17,17,.85); }
/* Fix 1: soft dark panel behind home intro */
.band-hero .band-bio { background:rgba(14,14,18,.72); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); border-radius:12px; padding:18px 24px; color:#d8d8d8; box-shadow:0 0 40px 20px rgba(14,14,18,.45); }
/* Fix 2: soft dark glow behind logo + tagline */
.band-hero .band-name { position:relative; display:inline-block; }
.band-hero .band-name::before { content:""; position:absolute; inset:-10% -25%; z-index:-1; background:radial-gradient(ellipse at 50% 60%, rgba(10,10,14,.85) 0%, rgba(10,10,14,.55) 45%, rgba(10,10,14,0) 72%); }
.band-hero .band-name img { filter:drop-shadow(0 0 14px rgba(0,0,0,.85)); }
/* Fix 4: lyrics panel sized to content */
.content-grid { align-items:start; }
/* Site-wide panels for pages without them */
.playlist-embed-header, .tracklist-header, .tracklist, .bio-text, .contact-copy, .link-row,

.error-copy {
  background:rgba(26,26,26,.86); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border-radius:10px;
}
.playlist-embed-header { padding:14px 18px; margin-bottom:12px; }
.tracklist-header { border-radius:10px 10px 0 0; margin-bottom:0; }
.tracklist { border-radius:0 0 10px 10px; padding:6px 10px; }
.tracklist-header + .tracklist { margin-top:0; }
.bio-text, .contact-copy { padding:20px 24px; }
.contact-copy { display:inline-block; max-width:640px; }
.error-copy { display:block; width:fit-content; max-width:640px; margin-left:auto; margin-right:auto; padding:12px 20px; }
.error-code, .error-title { text-shadow:0 2px 12px rgba(0,0,0,.85); }
.link-row { display:flex; width:fit-content; margin-left:auto; margin-right:auto; flex-wrap:wrap; justify-content:center; gap:10px; padding:12px 16px; }
.hero { background:rgba(17,17,17,.82) !important; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.album-purpose { background:rgba(26,26,26,.9); }
