/* ══════════════════════════════════════════════════════════════
   MůjFlix — Fixes patch (dock hover/size + active state)
   Načteno jako POSLEDNÍ stylesheet → vyhrává nad staršími pravidly.
   Selektor #mfDock .dock-btn má vyšší specificitu (ID) než staré
   .dock-btn / .dock-btn:hover / .dock-btn.active pravidla, takže
   tady definované chování je vždy finální, bez ohledu na pořadí
   v ostatních CSS souborech.
   ══════════════════════════════════════════════════════════════ */

/* Výchozí stav — mírně zmenšeno */
#mfDock .dock-btn {
  transform: scale(0.92) !important;
  transition: transform 0.24s cubic-bezier(0.34, 1.56, 0.64, 1),
    background 0.18s ease, color 0.18s ease !important;
  will-change: transform !important;
}

/* Aktivní položka — normální velikost v klidu (ne zmenšená) */
#mfDock .dock-btn.active {
  transform: scale(1) !important;
}

/* Hover — ZVĚTŠENÍ (opak původního chování) */
#mfDock .dock-btn:hover {
  transform: scale(1.14) translateY(-3px) !important;
}
#mfDock .dock-btn.active:hover {
  transform: scale(1.16) translateY(-3px) !important;
}

/* Klik — jemné stisknutí */
#mfDock .dock-btn:active {
  transform: scale(0.86) !important;
  transition: transform 80ms ease !important;
}

/* Ikony a popisek uvnitř — necháváme přirozeně škálovat s rodičem,
   takže žádné vlastní protichůdné transformace na SVG */
#mfDock .dock-btn svg {
  transition: none !important;
  transform: none !important;
}

/* AI tlačítko v docku má jiné rozměry — hover chování stejné, jen jemnější škála */
#mfDock .dock-btn.dock-ai {
  transform: scale(0.95) !important;
}
#mfDock .dock-btn.dock-ai:hover {
  transform: scale(1.08) translateY(-2px) !important;
}

/* ══════════════════════════════════════════════════════════════
   Dock v režimu Objevování — má úplně ZMIZET (ne jen ztlumit).
   Původní pravidla ve styles-discover-redesign.css jen snižují
   opacity na .55 a nechávají pointer-events: auto, takže lišta
   zůstává neviditelně/matoucně klikatelná přes celou obrazovku.
   Tady ji schováme úplně a zablokujeme jí kliky — zpátky domů se
   jde přes ✕ / Esc, což už funguje (volá closeUniverse()).
   Selektory jsou schválně identické s originálem (stejná specificita,
   tenhle soubor se načítá jako poslední → vyhrává), včetně varianty
   pro :hover / :focus-within, aby lišta nevyskočila zpět, když na ni
   uživatel omylem najede myší dole na obrazovce.
   ══════════════════════════════════════════════════════════════ */
body.discover-open #mfDock,
body.discover-open #mfDock:hover,
body.discover-open #mfDock:focus-within {
  opacity: 0 !important;
  transform: translateX(-50%) translateY(40px) scale(0.8) !important;
  pointer-events: none !important;
  visibility: hidden !important;
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s !important;
}

/* ══════════════════════════════════════════════════════════════
   Cinema Player v2 — zdroje, TV navigace, výběr epizody
   ══════════════════════════════════════════════════════════════ */

.mf-cin-sourcebar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  background: rgba(14, 16, 22, 0.96);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  flex-wrap: wrap;
}
.mf-cin-src-info {
  display: flex;
  flex-direction: column;
  min-width: 140px;
  flex: 1 1 auto;
}
.mf-cin-src-label { font-size: 0.82rem; font-weight: 600; color: #fff; }
.mf-cin-src-counter { font-size: 0.68rem; color: rgba(255, 255, 255, 0.45); margin-top: 1px; }
.mf-cin-switch-btn {
  flex: none;
  padding: 7px 13px;
  border-radius: 10px;
  border: 1px solid rgba(10, 132, 255, 0.4);
  background: rgba(10, 132, 255, 0.16);
  color: #7cc0ff;
  font: inherit;
  font-size: 0.74rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}
.mf-cin-switch-btn:hover { background: rgba(10, 132, 255, 0.3); }

.mf-cin-external-btn {
  flex: none;
  padding: 7px 13px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.07);
  color: #fff;
  font-size: 0.74rem;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}
.mf-cin-external-btn:hover { background: rgba(255, 255, 255, 0.15); }

.mf-cin-tvbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  background: rgba(10, 11, 16, 0.94);
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  flex-wrap: wrap;
}
.mf-cin-ep-btn {
  padding: 7px 12px;
  border-radius: 9px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
  font: inherit;
  font-size: 0.72rem;
  cursor: pointer;
  white-space: nowrap;
}
.mf-cin-ep-btn:hover { background: rgba(255, 255, 255, 0.14); }
.mf-cin-ep-btn.mf-cin-next-series {
  margin-left: auto;
  border-color: rgba(48, 170, 255, 0.4);
  background: rgba(48, 170, 255, 0.14);
  color: #7cc0ff;
}
.mf-cin-ep-btn.mf-cin-next-series:hover { background: rgba(48, 170, 255, 0.26); }
.mf-cin-ep-current {
  font-size: 0.78rem;
  font-weight: 700;
  color: #fff;
  padding: 0 4px;
  white-space: nowrap;
}

.mf-cin-epgrid {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 42vh;
  overflow-y: auto;
  padding: 12px 16px;
  background: rgba(8, 9, 13, 0.98);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.mf-cin-epgrid-seasons {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.mf-cin-season-chip {
  padding: 5px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.75);
  font: inherit;
  font-size: 0.7rem;
  cursor: pointer;
}
.mf-cin-season-chip.active {
  background: rgba(10, 132, 255, 0.28);
  border-color: rgba(10, 132, 255, 0.55);
  color: #fff;
  font-weight: 700;
}
.mf-cin-epgrid-body {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(64px, 1fr));
  gap: 7px;
}
.mf-cin-ep-chip {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 8px 4px;
  border-radius: 9px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.7);
  font: inherit;
  font-size: 0.7rem;
  cursor: pointer;
}
.mf-cin-ep-chip:hover { background: rgba(255, 255, 255, 0.12); }
.mf-cin-ep-chip.watched {
  border-color: rgba(48, 209, 88, 0.4);
  background: rgba(48, 209, 88, 0.1);
  color: rgba(140, 235, 165, 0.9);
}
.mf-cin-ep-chip.current {
  border-color: rgba(10, 132, 255, 0.65);
  background: rgba(10, 132, 255, 0.24);
  color: #fff;
  font-weight: 700;
}
.mf-cin-ep-chip-num { font-weight: 700; }
.mf-cin-ep-chip-mark { font-size: 0.78rem; color: #30d158; }

@media (max-width: 560px) {
  .mf-cin-sourcebar { padding: 8px 10px; }
  .mf-cin-switch-btn { font-size: 0.68rem; padding: 6px 10px; }
  .mf-cin-tvbar { padding: 8px 10px; gap: 6px; }
  .mf-cin-ep-btn { font-size: 0.66rem; padding: 6px 9px; }
  .mf-cin-ep-btn.mf-cin-next-series { margin-left: 0; }
  .mf-cin-epgrid { padding: 10px; }
}

/* ══════════════════════════════════════════════════════════════
   Hezčí GUI pro PIN při vytváření profilu (.pc-pin-row/.pc-pin-digit)
   Oprava: styles-apple-tv.css měl chybějící uzavírací závorku u
   .pc-btn-save, což rozbilo parsování stylu hned za ním
   (.pc-pin-digit) — v prohlížeči tak PIN políčka mohla vypadat
   nestylovaně nebo úplně zmizet. Tady navíc přidáváme hezčí vzhled.
   ══════════════════════════════════════════════════════════════ */
.pc-pin-row {
  display: flex !important;
  justify-content: center !important;
  gap: 12px !important;
  margin: 4px 0 26px !important;
}
.pc-pin-digit {
  width: 56px !important;
  height: 62px !important;
  border-radius: 16px !important;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.03)) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.14) !important;
  color: #fff !important;
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  text-align: center !important;
  -webkit-text-security: disc;
  text-security: disc;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease !important;
}
.pc-pin-digit:focus {
  border-color: rgba(10, 132, 255, 0.65) !important;
  box-shadow: 0 0 0 4px rgba(10, 132, 255, 0.18), 0 4px 18px rgba(10, 132, 255, 0.3) !important;
  transform: translateY(-2px) scale(1.04) !important;
  outline: none !important;
}
.pc-pin-digit:not(:placeholder-shown) {
  border-color: rgba(48, 209, 88, 0.5) !important;
  background: linear-gradient(160deg, rgba(48, 209, 88, 0.12), rgba(48, 209, 88, 0.04)) !important;
}
.pc-hint {
  text-align: center !important;
}
