:root { --navy:#0B2E55; --gold:#F0B96A; --sand:#F6E7C9; --red:#C8301E; --ink:#1F2A37; --muted:#4F6680; }
* { box-sizing:border-box; }
body { margin:0; background:#F5F8FB; color:var(--ink); font-family:Georgia, 'Times New Roman', serif; line-height:1.55; }
.wrap { max-width:640px; margin:0 auto; padding:24px 16px 40px; }
.card { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 2px 10px rgba(11,46,85,.08); }
.top { background:var(--navy); color:#fff; padding:22px 22px 26px; text-align:center; }
.eyebrow { font-family:Arial, Helvetica, sans-serif; font-size:12px; font-weight:bold; letter-spacing:2.5px; text-transform:uppercase; color:var(--gold); margin:0; }
h1 { font-family:'Arial Black', 'Arial Bold', Arial, sans-serif; font-size:clamp(30px, 8vw, 44px); line-height:1.1; margin:8px 0 6px; }
.sub { margin:0 0 18px; color:#DCE7F2; font-size:17px; }
.record { width:100%; max-width:600px; border-radius:10px; display:block; margin:0 auto 18px; }
audio { width:100%; }
.play { display:inline-block; margin-top:6px; background:var(--red); color:#fff; border:0; border-radius:28px; padding:14px 30px; font:bold 18px Arial, Helvetica, sans-serif; cursor:pointer; }
.soon { display:none; font-family:Arial, Helvetica, sans-serif; color:var(--gold); font-weight:bold; margin:10px 0 0; }
.body { padding:22px; }
h2 { font-family:'Arial Black', 'Arial Bold', Arial, sans-serif; color:var(--navy); font-size:22px; margin:6px 0 10px; }
.lyrics { white-space:pre-line; font-size:17px; }
.tag { display:block; font-family:Arial, Helvetica, sans-serif; font-size:12px; font-weight:bold; letter-spacing:2px; text-transform:uppercase; color:var(--red); margin:18px 0 2px; }
.chorus { display:block; background:var(--sand); border-left:5px solid var(--gold); border-radius:8px; padding:12px 16px; margin:4px 0; line-height:1.7; font-weight:bold; color:var(--navy); }
.proof { font-family:Arial, Helvetica, sans-serif; font-size:14px; color:var(--muted); }
.proof li { margin:6px 0; }
a { color:#1B49D3; }
.cta { background:var(--navy); color:#fff; border-radius:10px; padding:18px; text-align:center; margin-top:22px; }
.cta strong { color:var(--gold); }
.fine { font-family:Arial, Helvetica, sans-serif; font-size:12px; color:var(--muted); text-align:center; margin-top:20px; }
.paid { border:2px solid var(--navy); border-radius:8px; padding:10px 12px; color:var(--navy); font-weight:bold; margin-top:10px; }
.gap { margin-top:28px; }
/* playlist page */
.pl-item { display:flex; gap:14px; align-items:flex-start; padding:16px 0; border-top:1px solid #E3E8EE; }
.pl-item:first-child { border-top:0; }
.pl-num { flex:0 0 34px; height:34px; border-radius:17px; background:var(--navy); color:var(--gold); font:bold 17px/1 Arial, Helvetica, sans-serif; display:flex; align-items:center; justify-content:center; }
.pl-main { flex:1; min-width:0; }
.pl-main h3 { margin:0; font-family:'Arial Black', 'Arial Bold', Arial, sans-serif; font-size:20px; line-height:1.2; }
.pl-main h3 a { color:var(--navy); text-decoration:none; }
.pl-main p { margin:4px 0 8px; font-size:16px; }
.pl-main img { display:block; width:100%; max-width:600px; border-radius:8px; margin:6px 0 8px; }
.pl-links { font-family:Arial, Helvetica, sans-serif; font-size:14px; font-weight:bold; }
.pl-links a { margin-right:14px; }
.more { font-family:Arial, Helvetica, sans-serif; text-align:center; margin:18px 0 0; font-weight:bold; }
.pl { list-style:none; margin:0; padding:0; }
/* lyric video */
.lyricvid { display:block; width:100%; max-width:600px; aspect-ratio:1 / 1; margin:0 auto 10px; border-radius:10px; background:#000; }
.vidnote { margin:0; font-family:Arial, Helvetica, sans-serif; font-size:14px; color:#DCE7F2; }
.vidnote a { color:var(--gold); }
