/* قالب «بهجة الميلاد» — أعياد ميلاد وحفلات */
body.tpl-birthday {
  --q-bg: #180B22;
  --q-soft: #261236;
  --q-ink: #FAF2FD;
  --q-muted: #B79EC2;
  --q-accent: #F39C12;
  --q-line: rgba(243, 156, 18, 0.35);
  --q-btn: #F39C12;
  --q-btn-ink: #180B22;
  --q-display: 'Reem Kufi', sans-serif;
  background: #180B22;
}

.bd-cover { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100svh; padding: 24px; text-align: center; }
.bd-card { max-width: 360px; width: 100%; padding: 36px 24px; border: 1.5px solid var(--q-line); border-radius: 24px; background: rgba(38, 18, 54, 0.8); backdrop-filter: blur(12px); box-shadow: 0 20px 50px rgba(0,0,0,0.5); display: flex; flex-direction: column; align-items: center; gap: 14px; }
.bd-candle { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.bd-flame { width: 16px; height: 24px; background: radial-gradient(circle, #FFE600 20%, #FF7700 80%); border-radius: 50% 50% 35% 35%; box-shadow: 0 0 20px #FF9900; animation: bd-flicker 1.4s ease-in-out infinite alternate; }
.bd-wick { width: 4px; height: 12px; background: #666; border-radius: 2px; }
@keyframes bd-flicker { 0% { transform: scale(1) rotate(-2deg); } 100% { transform: scale(1.15) rotate(2deg); filter: brightness(1.2); } }
.bd-chip { font-size: 13px; font-weight: 700; color: var(--q-accent); letter-spacing: 1px; }
.bd-cn { font-family: var(--q-display); font-size: 32px; font-weight: bold; color: var(--q-ink); line-height: 1.3; }
.bd-cn i { margin: 0 6px; color: var(--q-accent); font-style: normal; }
.bd-sub { font-size: 14px; color: var(--q-muted); line-height: 1.6; margin: 0; }
.bd-open { margin-top: 10px; width: 100%; min-height: 48px; border-radius: 999px; background: var(--q-btn); color: var(--q-btn-ink); font-weight: 700; font-size: 16px; border: 0; cursor: pointer; transition: transform .2s, box-shadow .2s; box-shadow: 0 10px 25px rgba(243,156,18,0.3); }
.bd-open:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(243,156,18,0.45); }

.bd-hero { padding: 48px 20px 24px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px; }
.bd-party-icon { font-size: 30px; letter-spacing: 8px; filter: drop-shadow(0 4px 10px rgba(243,156,18,0.4)); }
.bd-host { font-size: 17px; color: var(--q-muted); max-width: 32ch; margin: 0; }
.bd-names { font-family: var(--q-display); font-size: 40px; font-weight: bold; color: var(--q-ink); margin: 6px 0; }
.bd-and { margin: 0 8px; color: var(--q-accent); }
.bd-tagline { font-size: 16px; color: var(--q-accent); margin: 0; font-weight: 600; }
.bd-when { display: flex; flex-direction: column; gap: 4px; padding: 12px 24px; border-radius: 16px; background: rgba(255,255,255,0.06); border: 1px solid var(--q-line); margin-top: 6px; }
.bd-when strong { font-size: 17px; color: var(--q-ink); }
.bd-when span { font-size: 14px; color: var(--q-muted); }
