/* Perlové pozadí mimo panel */
.memorial-theme-pearl-wrap {
  background: #f4efe9;
  padding: 40px 16px 56px;
}

/* Vnitřní panel – perleť + champagne gold */
.memorial-theme-pearl-inner {
  max-width: 1200px;
  margin: 0 auto;
  border-radius: 42px;
  background: #ffffff !important;
  border: 1px solid rgba(214, 181, 105, 0.45);
  box-shadow: 0 26px 90px rgba(15,23,42,0.18);
}

/* POZOR: globální body bylo příliš agresivní, odstraněno
body {
  background: #f4efe9 !important;
}
*/

@media (min-width: 1024px) {
  .memorial-theme-pearl-wrap {
    padding: 56px 32px 72px;
  }
}

/* GOLD VARS – perlové utility, klidně mohou zůstat globální,
   protože používají unikátní názvy proměnných */
:root {
  --pearl-gold: #d4a85b;
  --pearl-gold-dark: #8a6b3a;
  --pearl-gold-soft: rgba(212,168,91,0.35);
  --pearl-gold-bg: rgba(255,248,234,0.9);
}

.text-pearl-gold { color: var(--pearl-gold) !important; }
.text-pearl-gold-dark { color: var(--pearl-gold-dark) !important; }
.border-pearl-gold { border-color: var(--pearl-gold) !important; }
.border-pearl-gold-soft { border-color: var(--pearl-gold-soft) !important; }
.bg-pearl-gold-bg { background: var(--pearl-gold-bg) !important; }
.bg-pearl-gold { background: var(--pearl-gold) !important; }
.bg-pearl-gold-dark { background: var(--pearl-gold-dark) !important; }

/* BOOST – pokud chceš, můžeš to později taky svázat s pearlem */
.memorial-card-boost {
  border-radius: 22px;
  border: 1px solid rgba(15,23,42,0.06);
  background: rgba(255,255,255,0.98);
  box-shadow: 0 12px 36px rgba(15,23,42,0.16);
}

.memorial-card-boost-strong {
  box-shadow: 0 20px 60px rgba(15,23,42,0.28);
}

.memorial-photo-boost {
  border-radius: 18px;
  box-shadow: 0 16px 36px rgba(15,23,42,0.30);
}

/* Panel pro svíčky/vzkazy – perlový */
.pearl-tributes-inner {
  background: linear-gradient(180deg, #fff9ea 0%, #fbeeda 100%);
  border: 1px solid rgba(212, 168, 91, 0.85);
  box-shadow:
    0 14px 40px rgba(148, 97, 38, 0.28),
    inset 0 0 0 1px rgba(255, 244, 215, 0.9);
  color: #4b3a1e;
}

.pearl-input {
  background: #ffffff;
  border-color: rgba(212,168,91,0.65);
  color: #4b3a1e;
}

.pearl-input::placeholder {
  color: rgba(138,107,58,0.6);
}

.pearl-input:focus {
  outline: none;
  border-color: #d4a85b;
  box-shadow: 0 0 0 1px rgba(212,168,91,0.9);
}

.pearl-input-radio {
  background: #ffffff;
  border: 1px solid rgba(212,168,91,0.85);
}

/* MEDIA panel – perlový */
.pearl-media-panel {
  background: linear-gradient(180deg, #fffaf0 0%, #f7ebd8 100%);
  border: 1px solid rgba(212,168,91,0.5);
  color: #4b3a1e;
}

.pearl-media-card {
  background: #ffffff;
  border: 1px solid rgba(212,168,91,0.6);
  box-shadow: 0 10px 28px rgba(15,23,42,0.14);
}

.pearl-player-bg {
  background: #fff7eb;
  border: 1px solid rgba(212,168,91,0.7);
  border-radius: 0.75rem;
}

.border-top-pearl {
  border-top: 1px solid rgba(212,168,91,0.6);
}

/* Scroll box pro pozdravy – struktura necháme globální */
.tributes-list-scroll {
  max-height: 400px;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
}

/* Perlové scrollbary: OMEZENO na pearl šablonu */
.memorial-theme-pearl-inner .tributes-list-scroll::-webkit-scrollbar {
  width: 6px;
}

.memorial-theme-pearl-inner .tributes-list-scroll::-webkit-scrollbar-track {
  background: #f3e7d3;
}

.memorial-theme-pearl-inner .tributes-list-scroll::-webkit-scrollbar-thumb {
  background: rgba(212,168,91,0.9);
  border-radius: 999px;
}

/* Gallery scroll – perlová varianta jen v pearl šabloně */
.memorial-theme-pearl-inner #gallery-panel.memorial-panel-open {
  max-height: 720px;
  overflow-y: auto;
  overflow-x: hidden;
}

.memorial-theme-pearl-inner #gallery-panel::-webkit-scrollbar {
  width: 8px;
}

.memorial-theme-pearl-inner #gallery-panel::-webkit-scrollbar-track {
  background: #f7efe2;
}

.memorial-theme-pearl-inner #gallery-panel::-webkit-scrollbar-thumb {
  background: rgba(212,168,91,0.95);
  border-radius: 999px;
}

/* Handwriting font pro tiché pozdravy – může být globální */
.memorial-tribute-text,
.memorial-tribute-text-body {
  font-family: "Segoe Script", "Lucida Handwriting", "Bradley Hand",
               "Dancing Script", cursive, system-ui, -apple-system, "Segoe UI", sans-serif;
}

.memorial-tribute-text {
  font-size: 1.25rem;
}

.memorial-tribute-text-body {
  font-size: 1.1rem;
}

/* Ikony svíčky / květiny */
.tribute-icon {
  font-size: 1.7rem;
  line-height: 1;
  filter: drop-shadow(0 0 6px rgba(252, 211, 77, 0.9));
}

/* Kartičky pozdravů – perlové:
   OMEZENO na pearl šablonu, ať to nerozlézá jinam */
.memorial-theme-pearl-inner .memorial-tribute-card {
  border-radius: 18px;
  padding: 10px 14px;
  background: linear-gradient(135deg, #fff9ea, #f6e3c7);
  border: 1px solid rgba(212,168,91,0.9);
  box-shadow:
    0 10px 24px rgba(15, 23, 42, 0.12),
    inset 0 0 0 1px rgba(255, 244, 215, 0.85);
}

/* Delete button */
.tribute-delete-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 6px;
  font-size: 0.7rem;
  line-height: 1;
  border-radius: 999px;
  border: 1px solid rgba(248, 113, 113, 0.85);
  background: #ffffff;
  color: #991b1b;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease,
              box-shadow 0.15s ease, border-color 0.15s ease;
}

.tribute-delete-btn:hover {
  background: rgba(239, 68, 68, 0.96);
  border-color: rgba(254, 202, 202, 0.95);
  color: #f9fafb;
  box-shadow: 0 0 0 1px rgba(127, 29, 29, 0.9);
}

/* Fake YouTube přehrávač – základní vzhled (perlový),
   ostatní šablony si ho přebarvují vlastními selektory */
.favorite-song-fake-player {
  cursor: pointer;
  border-radius: 1rem;
  border: 1px solid rgba(212,168,91,0.7);
  background: rgba(255, 255, 255, 0.98);
  transition: transform 0.18s ease, box-shadow 0.18s ease,
              border-color 0.18s ease, background 0.18s ease;
}

.favorite-song-fake-inner {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.favorite-song-play-icon {
  width: 52px;
  height: 52px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, #fff7e0, #d4a85b);
  color: #4b3a1e;
  font-weight: 700;
  font-size: 1.3rem;
  box-shadow:
    0 0 0 1px rgba(248, 250, 252, 0.6),
    0 12px 30px rgba(148, 97, 38, 0.75);
  flex-shrink: 0;
}

.favorite-song-fake-player:hover {
  transform: translateY(-1px);
  background: radial-gradient(circle at top, rgba(248, 250, 252, 1), rgba(255, 248, 234, 0.98));
  box-shadow:
    0 20px 60px rgba(148, 97, 38, 0.55),
    0 0 0 1px rgba(212,168,91,0.9);
  border-color: rgba(212,168,91,0.95);
}

/* --------------------------------------------------
   🌊 TURQUOISE THEME (tyrkysová varianta památníku)
   – layout panelu, karty, pozdravy, media, galerie
--------------------------------------------------- */

/* Vnější pozadí pro tyrkysovou šablonu */
.memorial-theme-turquoise-wrap {
  background: #f4ede5;
  padding: 40px 16px 56px;
}

@media (min-width: 1024px) {
  .memorial-theme-turquoise-wrap {
    padding: 56px 32px 72px;
  }
}

/* Vnitřní panel – tyrkysová „voda“ */
.memorial-theme-turquoise-inner {
  max-width: 1200px;
  margin: 0 auto;
  border-radius: 40px;
  background:
    radial-gradient(circle at top, rgba(45, 212, 191, 0.28), transparent 60%),
    #e2f4f4 !important;
  border: 1px solid rgba(20, 160, 160, 0.35);
  box-shadow: 0 26px 90px rgba(15,23,42,0.18);
}

/* Karty v tyrkysové šabloně */
.memorial-theme-turquoise-inner .memorial-card-turquoise {
  border-radius: 22px;
  border: 1px solid rgba(148, 231, 222, 0.7);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.12);
}

.memorial-theme-turquoise-inner .memorial-card-turquoise-strong {
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.22);
}

/* Fotky v tyrkysové šabloně */
.memorial-theme-turquoise-inner .memorial-photo-turquoise {
  border-radius: 18px;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.18);
}

/* Panel pro svíčky / vzkazy – tyrkys */
.memorial-theme-turquoise-inner .turquoise-tributes-inner {
  background: linear-gradient(180deg, #e0fbff 0%, #c7f4ef 100%);
  border: 1px solid rgba(45, 212, 191, 0.85);
  box-shadow:
    0 14px 40px rgba(15, 118, 110, 0.25),
    inset 0 0 0 1px rgba(148, 231, 222, 0.65);
  color: #0f172a;
}

/* Inputs v tyrkysovém panelu */
.memorial-theme-turquoise-inner .turquoise-input {
  background: #ffffff;
  border-color: rgba(45, 212, 191, 0.7);
  color: #0f172a;
}

.memorial-theme-turquoise-inner .turquoise-input::placeholder {
  color: rgba(15, 118, 110, 0.55);
}

.memorial-theme-turquoise-inner .turquoise-input:focus {
  outline: none;
  border-color: #14b8a6;
  box-shadow: 0 0 0 1px rgba(20, 184, 166, 0.8);
}

.memorial-theme-turquoise-inner .turquoise-input-radio {
  background: #ffffff;
  border: 1px solid rgba(45, 212, 191, 0.8);
}

/* MEDIA panel – tyrkys */
.memorial-theme-turquoise-inner .turquoise-media-panel {
  background: linear-gradient(180deg, #e0fbff 0%, #ccf0ec 100%);
  border: 1px solid rgba(148, 231, 222, 0.9);
  color: #0f172a;
}

.memorial-theme-turquoise-inner .turquoise-media-card {
  background: #ffffff;
  border: 1px solid rgba(45, 212, 191, 0.8);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
}

.memorial-theme-turquoise-inner .turquoise-player-bg {
  background: #e0fbff;
  border: 1px solid rgba(45, 212, 191, 0.8);
  border-radius: 0.75rem;
}

.memorial-theme-turquoise-inner .border-top-turquoise {
  border-top: 1px solid rgba(148, 231, 222, 0.9);
}

/* Kartičky tichých pozdravů – tyrkys */
.memorial-theme-turquoise-inner .memorial-tribute-card {
  border-radius: 18px;
  padding: 10px 14px;
  background: linear-gradient(135deg, #e0fbff, #c4f1f1);
  border: 1px solid rgba(45, 212, 191, 0.9);
  box-shadow:
    0 10px 24px rgba(15, 23, 42, 0.12),
    inset 0 0 0 1px rgba(148, 231, 222, 0.7);
}

/* Scrollbox – pozdravy (přebarvení jen v tyrkysu) */
.memorial-theme-turquoise-inner .tributes-list-scroll::-webkit-scrollbar-track {
  background: #dbeafe;
}

.memorial-theme-turquoise-inner .tributes-list-scroll::-webkit-scrollbar-thumb {
  background: rgba(45, 212, 191, 0.9);
  border-radius: 999px;
}

/* Galerie – scrollbar jen v tyrkysové šabloně */
.memorial-theme-turquoise-inner #gallery-panel.memorial-panel-open {
  max-height: 720px;
  overflow-y: auto;
  overflow-x: hidden;
}

.memorial-theme-turquoise-inner #gallery-panel::-webkit-scrollbar {
  width: 6px;
}

.memorial-theme-turquoise-inner #gallery-panel::-webkit-scrollbar-track {
  background: #e2f4f4;
}

.memorial-theme-turquoise-inner #gallery-panel::-webkit-scrollbar-thumb {
  background: rgba(45, 212, 191, 0.9);
  border-radius: 999px;
}

/* Fake YouTube přehrávač – tyrkysový skin (jen uvnitř tyrkys šablony) */
.memorial-theme-turquoise-inner .favorite-song-fake-player {
  cursor: pointer;
  border-radius: 1rem;
  border: 1px solid rgba(45, 212, 191, 0.7);
  background: rgba(255, 255, 255, 0.98);
  transition: transform 0.18s ease, box-shadow 0.18s ease,
              border-color 0.18s ease, background 0.18s ease;
}

.memorial-theme-turquoise-inner .favorite-song-play-icon {
  width: 52px;
  height: 52px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, #fefce8, #facc15);
  color: #0f172a;
  font-weight: 700;
  font-size: 1.3rem;
  box-shadow:
    0 0 0 1px rgba(15, 23, 42, 0.06),
    0 12px 30px rgba(15, 23, 42, 0.2);
  flex-shrink: 0;
}

.memorial-theme-turquoise-inner .favorite-song-fake-player:hover {
  transform: translateY(-1px);
  background: radial-gradient(circle at top, rgba(45, 212, 191, 0.10), #ffffff);
  box-shadow:
    0 20px 60px rgba(15, 23, 42, 0.20),
    0 0 0 1px rgba(45, 212, 191, 0.85);
  border-color: rgba(45, 212, 191, 0.95);
}

.memorial-theme-turquoise-inner .share-panel,
.memorial-theme-turquoise-inner .share-panel * {
  color: #0f172a !important; /* tmavý text – 100% čitelný */
}

/* Tlačítka */
.memorial-theme-turquoise-inner .share-panel button,
.memorial-theme-turquoise-inner .share-panel a {
  color: #0f172a !important;
  border-color: rgba(45,212,191,0.7) !important;
  background: #e0fbff !important;
}

.memorial-theme-turquoise-inner .share-panel button:hover,
.memorial-theme-turquoise-inner .share-panel a:hover {
  background: #ffffff !important;
  border-color: rgba(45,212,191,1) !important;
}

/* --------------------------------------------------
   👑 ROYAL BLUE THEME – barvy + komponenty
-------------------------------------------------- */

/* proměnné přivázané na royal wrapper (neglobální) */
.memorial-theme-royal-wrap {
  --royal-bg-dark: #020617;
  --royal-bg-panel: #0f172a;
  --royal-blue-glow: rgba(37, 99, 235, 0.35);
  --royal-gold: #f3d27a;
  --royal-gold-soft: rgba(243,210,122,0.45);
  --royal-gold-bg: rgba(243,210,122,0.12);
}

/* vnější royal pozadí */
.memorial-theme-royal-wrap {
  background:
    radial-gradient(circle at top left, rgba(46,105,255,0.35), transparent 55%),
    radial-gradient(circle at bottom right, rgba(12,74,110,0.45), transparent 55%),
    var(--royal-bg-dark);
  padding: 40px 16px 56px;
}

@media (min-width: 1024px) {
  .memorial-theme-royal-wrap {
    padding: 56px 32px 72px;
  }
}

/* vnitřní royal ovál */
.memorial-theme-royal-inner {
  max-width: 1200px;
  margin: 0 auto;
  border-radius: 40px;
  background:
    radial-gradient(circle at top, var(--royal-blue-glow), transparent 60%),
    linear-gradient(180deg, #02091a 0%, var(--royal-bg-dark) 100%);
  border: 1px solid var(--royal-gold-soft);
  box-shadow: 0 42px 140px rgba(15,23,42,0.85);
}

/* royal karty */
.memorial-card-royal {
  border-radius: 22px;
  border: 1px solid var(--royal-gold-soft);
  background: rgba(15,23,42,0.92);
  box-shadow:
    0 18px 60px rgba(15,23,42,0.85),
    0 0 0 1px rgba(15,23,42,0.7);
}

.memorial-card-royal-strong {
  box-shadow:
    0 24px 80px rgba(15,23,42,0.95),
    0 0 0 1px var(--royal-gold-soft);
}

/* royal fotky */
.memorial-photo-royal {
  border-radius: 18px;
  box-shadow:
    0 18px 40px rgba(15,23,42,0.9),
    0 0 0 1px var(--royal-gold-soft);
}

/* royal texty */
.text-royal-gold { color: var(--royal-gold) !important; }
.text-royal-gold-soft { color: var(--royal-gold-soft) !important; }

/* royal border */
.border-royal-gold { border-color: var(--royal-gold) !important; }
.border-royal-gold-soft { border-color: var(--royal-gold-soft) !important; }

/* tlačítka royal */
.btn-royal {
  border: 1px solid var(--royal-gold);
  background: var(--royal-gold-bg);
  color: var(--royal-gold);
  transition: 0.2s;
}
.btn-royal:hover {
  border-color: #fbe7a8;
  background: rgba(243,210,122,0.25);
}

/* royal fake YouTube */
.favorite-song-fake-player.royal {
  border: 1px solid var(--royal-gold-soft);
  background: rgba(0,0,0,0.92);
}
.favorite-song-play-icon.royal {
  background: radial-gradient(circle at 30% 30%, #fef9c3, #fbbf24);
  color: #020617;
}

/* 🌹 ROSE RED THEME – barvy + komponenty
-------------------------------------------------- */

/* proměnné přivázané na rose wrapper */
.memorial-theme-rose-wrap {
  --rose-bg-dark: #020617;
  --rose-bg-panel: #111827;
  --rose-glow: rgba(248, 113, 113, 0.32);
  --rose-pink: #ffe4e6;
  --rose-pink-soft: rgba(254, 202, 202, 0.45);
  --rose-red-strong: #fb7185;
  --rose-red-softbg: rgba(249, 111, 120, 0.12);
}

/* vnější rose pozadí */
.memorial-theme-rose-wrap{
  background: transparent !important;
  background-image: none !important;
  padding: 40px 16px 56px;
}


@media (min-width: 1024px) {
  .memorial-theme-rose-wrap {
    padding: 56px 32px 72px;
  }
}

/* vnitřní rose ovál */
.memorial-theme-rose-inner {
  max-width: 1200px;
  margin: 0 auto;
  border-radius: 40px;
  background:
    radial-gradient(circle at top, var(--rose-glow), transparent 60%),
    radial-gradient(circle at center, rgba(244, 114, 182, 0.22), transparent 65%),
    linear-gradient(180deg, var(--rose-bg-panel) 0%, var(--rose-bg-dark) 100%);
  border: 1px solid var(--rose-pink-soft);
  box-shadow: 0 42px 140px rgba(15, 23, 42, 0.95);
}

/* tohle bylo dřív globální a rozhazovalo pozadí všem */
.memorial-theme-rose-inner .memorial-detail-page {
  background: transparent;
}

/* hlavní karta */
.memorial-card-rose {
  border-radius: 22px;
  border: 1px solid var(--rose-pink-soft);
  background: rgba(15, 23, 42, 0.94);
  box-shadow:
    0 18px 60px rgba(15, 23, 42, 0.94),
    0 0 0 1px rgba(15, 23, 42, 0.9);
}

.memorial-card-rose-strong {
  box-shadow:
    0 26px 90px rgba(15, 23, 42, 0.98),
    0 0 0 1px var(--rose-pink-soft);
}

/* jemný pattern na hlavní kartě (volitelné) */
.memorial-card-rose-bg-pattern {
  background:
    radial-gradient(circle at top left, rgba(127, 29, 29, 0.35), transparent 65%),
    radial-gradient(circle at bottom right, rgba(131, 24, 67, 0.35), transparent 60%),
    #020617;
}

/* fotky */
.memorial-photo-rose {
  border-radius: 18px;
  box-shadow:
    0 20px 48px rgba(15, 23, 42, 0.96),
    0 0 0 1px var(--rose-red-strong);
}

.memorial-photo-rose-empty {
  border-color: rgba(248, 113, 113, 0.45);
  background: rgba(15, 23, 42, 0.85);
}

/* velký symbol */
.symbol-icon-large-rose {
  width: 6rem;
  height: 6rem;
  border: 1px solid rgba(248, 113, 113, 0.75);
  background: rgba(15, 23, 42, 0.96);
  box-shadow:
    0 20px 60px rgba(15, 23, 42, 0.98),
    0 0 0 1px rgba(248, 113, 113, 0.7);
}

/* text utilitky */
.text-rose-title { color: var(--rose-pink); }
.text-rose-body { color: var(--rose-pink); }
.text-rose-body-soft { color: rgba(254, 202, 202, 0.85); }
.text-rose-label-soft { color: rgba(254, 202, 202, 0.75); }
.text-rose-muted { color: rgba(254, 202, 202, 0.55); }
.text-rose-accent { color: var(--rose-red-strong); }
.text-rose-dates { color: var(--rose-pink); }
.text-rose-dates-muted { color: rgba(254, 202, 202, 0.7); }

/* border utilitky */
.border-rose { border-color: var(--rose-red-strong) !important; }
.border-rose-soft { border-color: var(--rose-pink-soft) !important; }

/* tlačítka – zpět nahoře */
.mem-btn-rose-back {
  border: 1px solid var(--rose-pink-soft);
  background: rgba(24, 24, 27, 0.9);
  color: var(--rose-pink);
}
.mem-btn-rose-back:hover {
  background: rgba(127, 29, 29, 0.75);
  border-color: #fecaca;
}

/* hlavní rose tlačítko (Upravit, Přidat pozdrav…) */
.mem-btn-rose-main {
  border: 1px solid var(--rose-red-strong);
  background: var(--rose-red-softbg);
  color: #450a0a;
  transition: 0.2s;
}
.mem-btn-rose-main:hover {
  border-color: #fda4af;
  background: rgba(254, 202, 202, 0.25);
}

/* ghost tlačítko (Změnit vzhled, panely, svíčky…) */
.mem-btn-rose-ghost {
  border: 1px solid var(--rose-pink-soft);
  background: rgba(0, 0, 0, 0.4);
  color: var(--rose-pink);
  transition: 0.2s;
}
.mem-btn-rose-ghost:hover {
  background: rgba(127, 29, 29, 0.65);
  border-color: #fecaca;
}

/* sdílecí tlačítko */
.mem-btn-rose-share {
  border: 1px solid var(--rose-pink-soft);
  background: rgba(0, 0, 0, 0.6);
  color: var(--rose-pink);
  transition: 0.2s;
}
.mem-btn-rose-share:hover {
  background: rgba(127, 29, 29, 0.6);
  border-color: var(--rose-red-strong);
}

/* chipy v tlačítkách */
.mem-chip-rose {
  background: var(--rose-red-strong);
  color: #450a0a;
}
.mem-chip-rose-share {
  background: rgba(254, 202, 202, 0.25);
  color: var(--rose-pink);
}

/* panel se svíčkami */
.rose-tributes-inner {
  border: 1px solid rgba(248, 113, 113, 0.6);
  background: rgba(24, 24, 35, 0.96);
}

/* vstupy ve svíčkách */
.rose-input {
  border: 1px solid rgba(248, 113, 113, 0.4);
  background: rgba(15, 23, 42, 0.9);
  color: var(--rose-pink);
}
.rose-input-radio {
  border: 1px solid rgba(248, 113, 113, 0.7);
  background: rgba(15, 23, 42, 0.95);
}
.rose-input:focus {
  border-color: #fecaca;
}
.rose-placeholder {
  color: rgba(254, 205, 211, 0.8);
}

/* kartičky pozdravů */
.memorial-tribute-card-rose {
  border-radius: 18px;
  padding: 10px 14px;
  background: radial-gradient(circle at top left,
              rgba(15, 23, 42, 1),
              rgba(15, 23, 42, 0.96));
  border: 1px solid rgba(248, 113, 113, 0.65);
  box-shadow:
    0 10px 30px rgba(15, 23, 42, 0.95),
    inset 0 0 0 1px rgba(15, 23, 42, 0.95);
}

/* fake YouTube přehrávač – jen pro rose */
.memorial-theme-rose-wrap .favorite-song-fake-inner-rose {
  background: linear-gradient(90deg, #ffe1ec 0%, #fff7fb 40%, #ffffff 100%);
  color: #7f1d1d;
}

/* přebarvení textů uvnitř fake playeru, aby byly čitelné */
.memorial-theme-rose-wrap .favorite-song-fake-inner-rose .text-rose-title {
  color: #7f1d1d;
}
.memorial-theme-rose-wrap .favorite-song-fake-inner-rose .text-rose-body,
.memorial-theme-rose-wrap .favorite-song-fake-inner-rose .text-rose-body-soft {
  color: #9f1239;
}

.favorite-song-play-icon-rose {
  width: 52px;
  height: 52px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, #fee2e2, #fb7185);
  color: #450a0a;
  font-weight: 700;
  font-size: 1.3rem;
  box-shadow:
    0 0 0 1px rgba(248, 250, 252, 0.25),
    0 12px 30px rgba(15, 23, 42, 0.9);
  flex-shrink: 0;
}

/* media panel + přehrávače */
.rose-media-panel {
  background: rgba(15, 23, 42, 0.96);
  border: 1px solid var(--rose-pink-soft);
}
.rose-media-card {
  background: rgba(15, 23, 42, 0.9);
  border: 1px solid var(--rose-pink-soft);
}
.rose-player-bg {
  background: #020617;
}

/* galerie */
.rose-gallery-bg {
  background: rgba(15, 23, 42, 0.96);
}

/* scrollovatelná galerie – jen pro rose */
.memorial-theme-rose-wrap .rose-gallery-scroll {
  max-height: 780px;
  overflow-y: auto;
  padding-right: 4px;
}

/* kosmetika scrollbaru – jen WebKit, ostatní to ignorují */
.memorial-theme-rose-wrap .rose-gallery-scroll::-webkit-scrollbar {
  width: 6px;
}
.memorial-theme-rose-wrap .rose-gallery-scroll::-webkit-scrollbar-track {
  background: rgba(24, 24, 27, 0.4);
}
.memorial-theme-rose-wrap .rose-gallery-scroll::-webkit-scrollbar-thumb {
  background: rgba(248, 113, 113, 0.8);
  border-radius: 999px;
}

/* oddělující border v media panelu */
.rose-border-top {
  border-top: 1px solid var(--rose-pink-soft);
}
.rose-border-soft {
  border: 1px solid var(--rose-pink-soft);
}

/* citát */
.rose-quote-bg {
  background: rgba(15, 23, 42, 0.96);
}

/* share panel */
.rose-share-bg {
  background: rgba(15, 23, 42, 0.96);
}
.rose-share-title { color: var(--rose-pink); }
.rose-share-text { color: rgba(254, 202, 202, 0.82); }
.rose-share-feedback { color: var(--rose-pink); }

/* patička */
.rose-footer-text {
  color: rgba(254, 202, 202, 0.9);
}
.rose-footer-sub {
  color: rgba(254, 202, 202, 0.75);
}

/* ==================================================
   COLLAPSIBLE – ZÁKLAD (globálně)
   ================================================== */
.memorial-collapsible{
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none; /* zavřené = neklikatelné */
  transition: max-height .5s ease, opacity .35s ease;
}

/* ✅ OTEVŘENO = klikatelné + viditelné */
.memorial-collapsible.memorial-panel-open{
  max-height: 2000px;      /* klidně víc */
  opacity: 1;
  pointer-events: auto;    /* ✅ tohle ti chybělo */
  overflow: visible;       /* nebo initial */
}

/* Galerie má vlastní scroll při otevření */
#gallery-panel.memorial-collapsible.memorial-panel-open{
  max-height: 720px;
  overflow-y: auto;
  overflow-x: hidden;
}


/* vzkazy – vždy zachovat Enter */
.memorial-tribute-text-body{
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}
/* ==================================================
   ✅ HOTFIX: TRIBUTES text nesmí být uprostřed
   (přebije i případné display:flex/center z common CSS)
   ================================================== */

/* protože memorial-tribute-text je NA STEJNÉM ELEMENTU jako karta */
.memorial-tribute-card.memorial-tribute-text{
  text-align: left !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
}

/* pokud někde bylo centrování přes flex na body, zabijeme ho */
.memorial-tribute-text-body{
  display: block !important;
  text-align: left !important;
  text-indent: 0 !important;
  margin: 0 !important;

  /* zachovat Enter */
  white-space: pre-wrap !important;

  overflow-wrap: anywhere;
  word-break: break-word;
}

/* ať se i jméno/datum nechová divně */
.memorial-tribute-card.memorial-tribute-text .font-semibold{
  text-align: left !important;
}
/* =========================================================
   ✅ GLOBAL FIX: VZKAZY (tributes) NESMÍ být centrované
   - přebije text-align:center i display:flex centrování
   - funguje napříč šablonami (aurora/rose/pearl/turquoise/royal…)
   ========================================================= */

/* Kotva: panel se vzkazy (když není id, použijeme i list scroll) */
#tributes-panel,
.tributes-list-scroll {
  text-align: left !important;
}

/* Karta vzkazu – jistota proti centrování přes flex */
#tributes-panel .memorial-tribute-card,
.tributes-list-scroll .memorial-tribute-card {
  text-align: left !important;

  /* pokud někde globálně tlačí flex na střed, přeper tohle */
  display: flex !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
}

/* Někde máš memorial-tribute-text přímo na kartě, někde na wrapperu */
#tributes-panel .memorial-tribute-text,
#tributes-panel .memorial-tribute-text * ,
.tributes-list-scroll .memorial-tribute-text,
.tributes-list-scroll .memorial-tribute-text * {
  text-align: left !important;
}

/* Samotný text vzkazu – musí být blok a vlevo */
#tributes-panel .memorial-tribute-text-body,
.tributes-list-scroll .memorial-tribute-text-body {
  display: block !important;
  width: 100% !important;

  text-align: left !important;
  text-indent: 0 !important;
  margin: 0 !important;

  /* zachovat Enter + řešit dlouhé řetězce */
  white-space: pre-wrap !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

/* Hlavička (datum + jméno) – taky vlevo, ať to neujíždí */
#tributes-panel .memorial-tribute-card .font-semibold,
.tributes-list-scroll .memorial-tribute-card .font-semibold {
  text-align: left !important;
}
