/* =====================================================
   THEME DEFINITIONS
   Each theme changes: cover shape, avatar shape/position,
   card style, typography, section spacing.
   Applied via body.theme-<name> on public/profile.php
   ===================================================== */

/* ---------- Classic (default) ---------- */
.theme-classic .cover { height: 200px; }
.theme-classic .profile-avatar { border-radius: 50%; }
.theme-classic .link-item { border-radius: var(--radius-md); }

/* ---------- Modern ---------- */
.theme-modern .cover { height: 220px; clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%); }
.theme-modern .profile-avatar { border-radius: 24px; width: 104px; height: 104px; }
.theme-modern .profile-name { font-size: 24px; letter-spacing: -0.5px; }
.theme-modern .link-item { border-radius: 18px; border: none; background: #f8fafc; }
.theme-modern .qa-btn { border-radius: 14px; }
.theme-modern .service-card { border-radius: 18px; border: none; box-shadow: var(--shadow-sm); }

/* ---------- Elegant ---------- */
.theme-elegant { font-family: 'Georgia', 'Cairo', serif; }
.theme-elegant .cover { height: 240px; background-color: #1e293b; }
.theme-elegant .profile-avatar { border-radius: 50%; border-width: 6px; }
.theme-elegant .profile-name { font-weight: 400; font-size: 26px; letter-spacing: 1px; }
.theme-elegant .section-title { font-weight: 400; letter-spacing: 2px; text-transform: uppercase; font-size: 13px; }
.theme-elegant .link-item { border-radius: 2px; border-color: #d4d4d8; }
.theme-elegant .qa-btn { border-radius: 2px; }

/* ---------- Minimal ---------- */
.theme-minimal .cover { display: none; }
.theme-minimal .profile-header { margin-top: 40px; }
.theme-minimal .profile-avatar { border: none; box-shadow: none; width: 76px; height: 76px; }
.theme-minimal .link-item { border: none; border-bottom: 1px solid var(--color-border); border-radius: 0; padding: 12px 4px; }
.theme-minimal .section { padding: 14px 20px; }
.theme-minimal .qa-btn { background: transparent; color: var(--p-primary, #2563eb); border: 1.5px solid var(--p-primary, #2563eb); }

/* ---------- Business ---------- */
.theme-business .cover { height: 160px; background-color: #0f172a; }
.theme-business .profile-avatar { border-radius: 10px; width: 88px; height: 88px; }
.theme-business .profile-name { font-weight: 800; }
.theme-business .link-item { border-radius: 6px; }
.theme-business .service-card { border-radius: 8px; }
.theme-business .qa-btn { border-radius: 6px; }

/* ---------- Restaurant ---------- */
.theme-restaurant { font-family: 'Cairo', sans-serif; }
.theme-restaurant .cover { height: 220px; background-color: #7c2d12; }
.theme-restaurant .profile-avatar { border-radius: 50%; border-color: #fef3c7; }
.theme-restaurant .qa-whatsapp { background: #16a34a; }
.theme-restaurant .service-card { border-radius: 16px; border-color: #fde68a; }
.theme-restaurant .service-price { color: #b45309; }
.theme-restaurant .section-title { color: #7c2d12; }

/* ---------- Fashion ---------- */
.theme-fashion .cover { height: 260px; }
.theme-fashion .profile-avatar { border-radius: 50%; width: 110px; height: 110px; }
.theme-fashion .profile-name { font-size: 26px; font-weight: 300; letter-spacing: 3px; text-transform: uppercase; }
.theme-fashion .profile-tagline { letter-spacing: 1px; text-transform: uppercase; font-size: 12px; }
.theme-fashion .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
.theme-fashion .service-card { border: none; }

/* ---------- Personal ---------- */
.theme-personal .cover { height: 180px; border-radius: 0 0 32px 32px; }
.theme-personal .profile-avatar { border-radius: 50%; margin-top: -8px; }
.theme-personal .link-item { border-radius: 999px; padding: 12px 20px; }
.theme-personal .qa-btn { border-radius: 999px; }
.theme-personal .section-title { display: flex; align-items: center; gap: 6px; }

/* ---------- Dark Mode (applied via body.dark-mode, works with any theme) ---------- */
body.dark-mode {
  --color-bg: #0f172a;
  --color-surface: #1e293b;
  --color-text: #f1f5f9;
  --color-muted: #94a3b8;
  --color-border: #334155;
  --p-bg: #0f172a;
  --p-text: #f1f5f9;
}
body.dark-mode .link-item,
body.dark-mode .service-card,
body.dark-mode .contact-box { background: var(--color-surface); border-color: var(--color-border); }
body.dark-mode .lang-switcher { background: #1e293b; }
body.dark-mode .lang-btn.active { background: #334155; }
