/* theme-song.css - lightweight, responsive */
:root{
  --brand: #004080;
  --brand-light: #0c84c0;
  --muted: #6b7280;
  --bg: #f8fafc;
  --maxw: 1100px;
  --radius: 12px;
  font-family: "Poppins", "Montserrat", system-ui, -apple-system, sans-serif;
}

*{box-sizing:border-box; margin:0; padding:0;}
body{margin:0; background:var(--bg); color:#0b1220; line-height:1.5;}

/* Layout */
.wrap{max-width:var(--maxw); margin:0 auto; padding:28px;}
.site-header{background:#ffffff; border-bottom:1px solid #e6eef8; position:sticky; top:0; z-index:100;}
.site-header .wrap{display:flex; align-items:center; justify-content:space-between; padding-top:15px; padding-bottom:15px;}
.breadcrumb a{color:var(--muted); text-decoration:none; margin-right:6px; font-size:14px;}
.breadcrumb span{color:var(--brand); font-weight:600;}
.logo img{height:36px; width:auto;}

/* Hero */
.hero{background:linear-gradient(180deg,#fff 0%, #f2f7fb 100%); padding:40px 0; border-bottom:1px solid #e9f0f8; text-align:center;}
.hero h1{margin:0 0 12px; font-size:32px; color:var(--brand); font-weight:700;}
.hero .lead{margin:0; color:var(--muted); font-size:18px; max-width:700px; margin:0 auto;}

/* Video */
.video-section{padding:40px 0; text-align:center;}
.video-section h2{margin:0 0 20px; font-size:24px; color:var(--brand);}
.video-embed{position:relative; padding-bottom:56.25%; height:0; background:#000; border-radius:12px; overflow:hidden; border:1px solid #e0e7ef; max-width:800px; margin:0 auto;}
.video-embed iframe{position:absolute; left:0; top:0; width:100%; height:100%;}

/* Buttons */
.video-cta{margin-top:20px; display:flex; gap:12px; flex-wrap:wrap; justify-content:center;}
.btn{background:var(--brand); color:#fff; padding:12px 20px; border-radius:8px; text-decoration:none; display:inline-flex; align-items:center; gap:8px; border:none; cursor:pointer; font-weight:600; transition:all 0.3s ease; font-size:15px;}
.btn:hover{background:var(--brand-light); transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,64,128,0.2);}
.btn-outline{background:#fff; border:1px solid #d1dbe6; color:var(--brand); padding:11px 18px;}
.btn-outline:hover{background:#f0f7ff; border-color:var(--brand);}

/* Lyrics */
.lyrics-section{margin-top:30px; padding:30px; background:#fff; border-radius:12px; border:1px solid #e7eef8; box-shadow:0 4px 12px rgba(0,0,0,0.05);}
.lyrics-section h2{margin-top:0; color:var(--brand); font-size:24px; margin-bottom:20px;}
.lyrics-block{white-space:pre-line; font-size:16px; color:#0b1220; padding:15px 0; line-height:1.8; text-align:center; font-style:italic;}
.lyrics-meta{margin-top:20px; color:var(--muted); font-size:14px; padding-top:15px; border-top:1px solid #e7eef8;}
.lyrics-meta p{margin-bottom:8px;}

/* SEO Section */
.seo-help{padding:30px 0; text-align:center; max-width:700px; margin:0 auto;}
.seo-help h3{color:var(--brand); margin-bottom:15px;}
.seo-help p{color:var(--muted); font-size:16px;}

/* Footer */
.site-footer{background:#1a202c; color:#fff; padding:40px 0 20px; margin-top:40px;}
.site-footer .wrap{display:flex; flex-direction:column; gap:30px;}
.footer-content{display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:30px;}
.footer-logo{flex:1; min-width:250px;}
.footer-logo img{filter:brightness(0) invert(1); margin-bottom:15px;}
.footer-logo p{color:#a0aec0; font-size:15px; line-height:1.6;}
.social-links{text-align:center;}
.social-links h4{margin-bottom:15px; color:#fff;}
.social-icons{display:flex; gap:15px; justify-content:center;}
.social-icons a{display:flex; align-items:center; justify-content:center; width:40px; height:40px; background:rgba(255,255,255,0.1); border-radius:50%; color:#fff; transition:all 0.3s ease;}
.social-icons a:hover{background:var(--brand); transform:translateY(-3px);}
.footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:20px; border-top:1px solid #2d3748; flex-wrap:wrap; gap:15px;}
.footer-bottom p{color:#a0aec0; font-size:14px;}
.footer-links{display:flex; gap:20px;}
.footer-links a{color:#a0aec0; text-decoration:none; font-size:14px; transition:color 0.3s ease;}
.footer-links a:hover{color:#fff;}

/* Notification */
.notification {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  padding: 15px 25px;
  border-radius: 5px;
  color: white;
  font-weight: 500;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  z-index: 1000;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.notification.show {
  opacity: 1;
}

.notification.success {
  background-color: #28a745;
}

/* small screens */
@media (max-width:768px){
  .wrap{padding:20px;}
  .hero h1{font-size:24px;}
  .hero .lead{font-size:16px;}
  .video-cta{flex-direction:column; align-items:stretch; max-width:300px; margin:20px auto 0;}
  .btn{justify-content:center;}
  .footer-content{flex-direction:column; text-align:center;}
  .footer-bottom{flex-direction:column; text-align:center;}
  .footer-links{justify-content:center;}
}

@media (max-width:480px){
  .lyrics-section{padding:20px;}
  .video-section h2{font-size:20px;}
  .hero{padding:30px 0;}
}