/* ═══════════════════════════════════════════════════════════
   MINARIKOSS — Netflix-style galéria (portované z Prominend ATELIÉR)
   Farby: čierna + zlatý akcent (--accent), žiadna hnedá.
   ═══════════════════════════════════════════════════════════ */
:root {
  --nfx-accent: var(--accent, #d9b35a);
  --nfx-bg: #050505;
}

.netflix-dashboard { position: relative; padding-bottom: 24px; }

/* ── HERO ─────────────────────────────────────────────── */
.netflix-hero {
  position: relative;
  width: 100%;                                  /* vždy celá šírka */
  height: min(56.25vw, 82vh);                   /* 16:9 podľa šírky, na širokých monitoroch max 82 % výšky okna */
  min-height: 480px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  margin-bottom: 8px;
  background: #0a0a0a;
}
@media (max-width: 900px) { .netflix-hero { height: auto; min-height: 460px; } }
.netflix-hero-bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transition: transform 8s ease-out;
  filter: saturate(1.08);
}
.netflix-hero:hover .netflix-hero-bg { transform: scale(1.04); }
.netflix-hero-overlay { position: absolute; inset: 0; pointer-events: none; z-index: 1; }
.netflix-hero::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 120px; z-index: 1;
  background: linear-gradient(to top, var(--nfx-bg) 0%, rgba(5,5,5,0) 100%);
  pointer-events: none;
}
.netflix-hero.is-leaving .netflix-hero-bg,
.netflix-hero.is-leaving .netflix-hero-overlay,
.netflix-hero.is-leaving .netflix-hero-content { animation: netflixHeroFadeOut 180ms ease-in both; }
.netflix-hero.is-entering .netflix-hero-bg,
.netflix-hero.is-entering .netflix-hero-overlay { animation: netflixHeroFadeIn 420ms ease-out both; }
.netflix-hero.is-entering .netflix-hero-content { animation: netflixHeroContentIn 460ms ease-out both; }
/* Len opacity — animácia s transformom sa bila s hover zoomom (skok po dobehnutí animácie) */
@keyframes netflixHeroFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes netflixHeroFadeOut { from { opacity: 1; } to { opacity: 0; } }
@keyframes netflixHeroContentIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
  .netflix-hero.is-entering .netflix-hero-bg, .netflix-hero.is-entering .netflix-hero-overlay,
  .netflix-hero.is-entering .netflix-hero-content { animation: none; }
}

.netflix-hero-content { position: relative; z-index: 2; max-width: 720px; padding: 64px 64px 78px; width: 100%; }

/* ── 9:16 HERO — rozmazané pozadie + ostrý portrét vpravo ── */
.netflix-hero.is-portrait .netflix-hero-bg { filter: blur(26px) saturate(1.15) brightness(0.55); transform: scale(1.18); }
.netflix-hero.is-portrait:hover .netflix-hero-bg { transform: scale(1.22); }
.netflix-hero-portrait {
  position: absolute; top: 0; bottom: 0; right: 7%; z-index: 1;
  display: flex; align-items: center; padding: 28px 0;
}
.netflix-hero-portrait img {
  height: 100%; aspect-ratio: 9 / 16; object-fit: cover; border-radius: 10px;
  box-shadow: 0 30px 80px rgba(0,0,0,0.65), 0 0 0 1px rgba(255,255,255,0.08);
}
.netflix-hero.is-portrait .netflix-hero-content { max-width: 58%; }
@media (max-width: 700px) {
  .netflix-hero-portrait { display: none; }
  .netflix-hero.is-portrait .netflix-hero-bg { filter: saturate(1.08); transform: none; }
  .netflix-hero.is-portrait .netflix-hero-content { max-width: 100%; }
}
.nfx-hero-second { margin-top: 12px; }
@media (max-width: 900px) { .netflix-hero-content { padding: 40px 24px 56px; } }

.netflix-hero-switcher {
  position: absolute; right: 22px; bottom: 24px; z-index: 4;
  display: inline-flex; align-items: center; gap: 3px; padding: 5px;
  border: 1px solid rgba(255,255,255,0.16); border-radius: 999px;
  background: rgba(8,8,8,0.72); color: #fff;
  box-shadow: 0 8px 28px rgba(0,0,0,0.28);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  opacity: 0; transform: translateY(4px); pointer-events: none;
  transition: opacity 220ms ease, transform 220ms ease;
}
.netflix-hero:hover .netflix-hero-switcher, .netflix-hero-switcher:focus-within { opacity: 1; transform: translateY(0); pointer-events: auto; }
.netflix-hero-switcher-btn {
  width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center;
  padding: 0 0 2px; border: 0; border-radius: 50%; background: transparent;
  color: rgba(255,255,255,0.92); font: 400 29px/1 Arial, sans-serif; cursor: pointer;
  transition: color 160ms ease, background 160ms ease, transform 160ms ease;
}
.netflix-hero-switcher-btn:hover { color: var(--nfx-accent); background: rgba(255,255,255,0.10); transform: scale(1.06); }
.netflix-hero-switcher-count { min-width: 42px; text-align: center; color: rgba(255,255,255,0.86); font-size: 12px; font-weight: 700; letter-spacing: 0.04em; }
@media (max-width: 700px) {
  .netflix-hero-switcher { right: 14px; bottom: 14px; padding: 4px; opacity: 1; transform: none; pointer-events: auto; }
  .netflix-hero-switcher-btn { width: 29px; height: 29px; font-size: 26px; }
  .netflix-hero-switcher-count { min-width: 36px; font-size: 11px; }
}

.netflix-hero-badge { display: inline-flex; align-items: baseline; gap: 8px; font-family: 'Inter', sans-serif; font-size: 13px; letter-spacing: 0.35em; margin-bottom: 18px; text-transform: uppercase; }
.netflix-hero-badge-brand { font-weight: 900; color: var(--nfx-accent); }
.netflix-hero-badge-orig { font-weight: 700; color: rgba(255,255,255,0.85); font-size: 12px; }
.netflix-hero-title {
  font-family: 'Poppins', 'Space Grotesk', 'Inter', sans-serif;
  font-size: clamp(36px, 5.6vw, 60px); font-weight: 700; color: #fff;
  margin: 0 0 14px; letter-spacing: -0.02em; line-height: 0.96;
  text-shadow: 0 4px 24px rgba(0,0,0,0.55); text-transform: uppercase;
}
.netflix-hero-meta { display: flex; align-items: center; gap: 8px; font-size: 13px; color: rgba(255,255,255,0.75); margin-bottom: 14px; font-weight: 500; flex-wrap: wrap; }
.nfx-meta-genre { color: var(--nfx-accent); font-weight: 700; }
.netflix-hero-desc { font-size: 16px; line-height: 1.55; color: rgba(255,255,255,0.92); margin: 0 0 24px; max-width: 580px; text-shadow: 0 2px 12px rgba(0,0,0,0.5); }
.nfx-desc-short { display: none; }
@media (max-width: 700px) {
  .netflix-hero-desc { font-size: 14px; }
  .nfx-desc-full { display: none; }
  .nfx-desc-short { display: inline; }
}
.netflix-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.netflix-btn {
  display: inline-flex; align-items: center; gap: 10px; padding: 12px 28px; border-radius: 8px;
  font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 700; letter-spacing: 0.01em;
  cursor: pointer; transition: all 0.18s ease; border: none;
}
.netflix-btn svg { flex-shrink: 0; }
.netflix-btn-play { background: #fff; color: #0a0a0a; box-shadow: 0 4px 18px rgba(255,255,255,0.18); }
.netflix-btn-play:hover { background: var(--nfx-accent); transform: translateY(-1px); }
.netflix-btn-list { background: rgba(110,110,110,0.55); backdrop-filter: blur(6px); color: #fff; }
.netflix-btn-list:hover { background: rgba(110,110,110,0.75); transform: translateY(-1px); }

/* ── ROW ──────────────────────────────────────────────── */
.netflix-row { padding: 28px 64px 4px; }
@media (max-width: 900px) { .netflix-row { padding: 22px 24px 4px; } }
.netflix-row-title { font-family: 'Poppins', 'Inter', sans-serif; font-size: 22px; font-weight: 600; color: #fff; margin: 0 0 14px; letter-spacing: -0.005em; }
.netflix-row-scroll-wrap { position: relative; margin: 0 -12px; }   /* hrana orezu + šípky 12 px za okrajom, dlaždice začínajú na M */
.netflix-scroll-arrow {
  position: absolute; top: 14px; bottom: 28px; width: 56px;
  background: linear-gradient(to right, rgba(5,5,5,0.88) 0%, rgba(5,5,5,0) 100%);
  border: none; color: #fff; cursor: pointer; z-index: 5; opacity: 0;
  display: flex; align-items: center; justify-content: center; padding: 0;
  transition: opacity 0.22s ease;
}
.netflix-scroll-arrow svg { transition: transform 0.18s ease; }
.netflix-scroll-arrow:hover svg { transform: scale(1.18); }
.netflix-scroll-arrow-left { left: 0; }
.netflix-scroll-arrow-right { right: 0; background: linear-gradient(to left, rgba(5,5,5,0.88) 0%, rgba(5,5,5,0) 100%); }
.netflix-row-scroll-wrap:hover .netflix-scroll-arrow { opacity: 1; }
.netflix-row-scroll-wrap.is-at-start .netflix-scroll-arrow-left { opacity: 0 !important; pointer-events: none; }
.netflix-row-scroll-wrap.is-at-end .netflix-scroll-arrow-right { opacity: 0 !important; pointer-events: none; }
.netflix-row-scroll-wrap.is-at-start.is-at-end .netflix-scroll-arrow { display: none; }
@media (hover: none) { .netflix-scroll-arrow { display: none; } }
.netflix-row-track {
  display: flex; gap: 8px; overflow-x: auto; overflow-y: visible; scroll-behavior: smooth;
  padding: 14px 12px 36px; margin: 0; scrollbar-width: none;   /* 12 px rezerva na hover zväčšenie, orez = hrana šípky */
}
.netflix-row-track::-webkit-scrollbar { display: none; }

/* ── TILE ─────────────────────────────────────────────── */
.netflix-tile {
  flex: 0 0 auto; width: 290px; background: transparent; border: none; padding: 0;
  cursor: pointer; text-align: left; color: #fff; font-family: inherit;
  transition: transform 0.28s cubic-bezier(0.18, 0.7, 0.27, 1);
}
.netflix-tile:hover { transform: scale(1.015) translateY(-2px); z-index: 3; position: relative; }   /* jemné priblíženie — na okraji sa oreže max ~2 px */
@media (max-width: 700px) { .netflix-tile { width: 220px; } }
.netflix-tile-portrait { width: 200px; }
@media (max-width: 700px) { .netflix-tile-portrait { width: 140px; } }
.netflix-tile-info { padding: 10px 4px 4px; }
.netflix-tile-title { font-size: 14px; font-weight: 700; color: #fff; letter-spacing: -0.005em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.netflix-tile-sub { font-size: 11.5px; color: rgba(255,255,255,0.55); margin-top: 3px; font-weight: 500; }

/* Play ikona na hover */
.netflix-tile-play {
  position: absolute; inset: 0; z-index: 3; display: flex; align-items: center; justify-content: center;
  color: #fff; opacity: 0; transition: opacity 0.2s ease; pointer-events: none;
}
.netflix-tile-play svg { filter: drop-shadow(0 4px 12px rgba(0,0,0,0.7)); background: rgba(0,0,0,0.35); border-radius: 50%; padding: 12px; width: 58px; height: 58px; border: 1.5px solid rgba(255,255,255,0.5); }
.netflix-tile:hover .netflix-tile-play { opacity: 1; }

/* Landscape poster */
.netflix-landscape-poster-thumb {
  position: relative; aspect-ratio: 16 / 9; background-size: cover; background-position: center;
  background-color: #0a0a0a; border-radius: 6px; overflow: hidden; transition: box-shadow 0.28s ease;
}
.netflix-landscape-poster:hover .netflix-landscape-poster-thumb { box-shadow: 0 12px 28px rgba(0,0,0,0.55), 0 0 0 2px rgba(var(--accent-rgb, 217,179,90),0.55); }
.netflix-landscape-poster-gradient { position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 45%, rgba(0,0,0,0.6) 75%, rgba(0,0,0,0.92) 100%); }
.netflix-landscape-poster-content { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.netflix-landscape-poster-brand { position: absolute; top: 10px; left: 12px; font-family: 'Inter', sans-serif; font-size: 8px; font-weight: 800; color: rgba(255,255,255,0.78); letter-spacing: 0.20em; text-transform: uppercase; }
.netflix-landscape-poster-title {
  position: absolute; left: 0; right: 0; bottom: 14px; padding: 0 14px; text-align: center;
  font-size: calc(32px * var(--poster-font-mult, 1)); color: #fff; line-height: 0.95;
  text-shadow: 0 3px 14px rgba(0,0,0,0.75), 0 1px 3px rgba(0,0,0,0.8); word-break: break-word;
  font-variant-ligatures: none; font-feature-settings: "liga" 0, "dlig" 0, "calt" 0, "swsh" 0, "salt" 0;
}
@media (max-width: 700px) { .netflix-landscape-poster-title { font-size: calc(24px * var(--poster-font-mult, 1)); } }

/* Portrait poster (9:16) */
.netflix-reels-poster-thumb {
  position: relative; aspect-ratio: 9 / 16; background-size: cover; background-position: center;
  background-color: #0a0a0a; border-radius: 6px; overflow: hidden; transition: box-shadow 0.28s ease;
}
.netflix-reels-poster:hover .netflix-reels-poster-thumb { box-shadow: 0 12px 28px rgba(0,0,0,0.55), 0 0 0 2px rgba(var(--accent-rgb, 217,179,90),0.55); }
.netflix-reels-poster-gradient { position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 35%, rgba(0,0,0,0.55) 65%, rgba(0,0,0,0.92) 100%); }
.netflix-reels-poster-content { position: absolute; left: 0; right: 0; bottom: 0; padding: 16px 12px 18px; z-index: 2; text-align: center; pointer-events: none; }
.netflix-reels-poster-brand { font-family: 'Inter', sans-serif; font-size: 9px; font-weight: 800; color: rgba(255,255,255,0.72); letter-spacing: 0.22em; text-transform: uppercase; margin-bottom: 8px; }
.netflix-reels-poster-title {
  font-size: calc(38px * var(--poster-font-mult, 1)); color: #fff; line-height: 0.95;
  text-shadow: 0 3px 14px rgba(0,0,0,0.7), 0 1px 3px rgba(0,0,0,0.75); word-break: break-word; max-width: 100%;
  font-variant-ligatures: none; font-feature-settings: "liga" 0, "dlig" 0, "calt" 0, "swsh" 0, "salt" 0;
}
@media (max-width: 700px) { .netflix-reels-poster-title { font-size: calc(26px * var(--poster-font-mult, 1)); } }

/* Title-only (gradient) poster */
.netflix-poster-title-only:hover .netflix-reels-poster-thumb,
.netflix-poster-title-only:hover .netflix-landscape-poster-thumb { filter: brightness(1.08) saturate(1.05); }
.netflix-poster-title-only .netflix-reels-poster-gradient,
.netflix-poster-title-only .netflix-landscape-poster-gradient { display: none; }

/* ── LIGHTBOX ─────────────────────────────────────────── */
body.nfx-lightbox-open { overflow: hidden; }
.imax-trailer-lightbox {
  position: fixed; inset: 0; z-index: 27000; display: flex; align-items: center; justify-content: center;
  padding: 48px; opacity: 0; transition: opacity 0.25s ease;
}
.imax-trailer-lightbox.is-visible { opacity: 1; }
.imax-trailer-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.92); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); cursor: pointer; }
.imax-trailer-stage {
  position: relative; width: 100%; max-width: 1280px; aspect-ratio: 16 / 9;
  transform: scale(0.96); transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}
.imax-trailer-stage { max-height: calc(100vh - 96px); }
.imax-trailer-stage.is-portrait { aspect-ratio: 9 / 16; max-width: min(460px, calc((100vh - 120px) * 9 / 16)); }
.imax-trailer-lightbox.is-visible .imax-trailer-stage { transform: scale(1); }
.imax-trailer-video { width: 100%; height: 100%; background: #000; display: block; object-fit: contain; outline: none; cursor: pointer; }
.imax-trailer-stage { border-radius: 12px; overflow: hidden; background: #000; box-shadow: 0 30px 80px rgba(0,0,0,0.75); }

/* ═══ Prehrávač 1:1 podľa Prominend Ateliér — Krok 7 Film (.imax-player + .imax-cine-ui) ═══ */
.imax-player { position: relative; overflow: hidden; }
.imax-film-player-brand {
  position: absolute; left: 22px; top: 18px; z-index: 3; pointer-events: none;
  display: flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,0.88); font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 800; letter-spacing: 0.22em;
  text-shadow: 0 2px 16px rgba(0,0,0,0.85);
}
.imax-film-player-brand img { height: 18px; width: auto; filter: drop-shadow(0 1px 4px rgba(0,0,0,0.7)); }
.imax-film-player-brand .logo-white { display: none; }
html[data-accent="teal"] .imax-film-player-brand .logo-gold { display: none; }
html[data-accent="teal"] .imax-film-player-brand .logo-white { display: block; }

/* Celé ovládanie = jedna fade skupina. Vidieť pri pauze / pohybe myši; pri prehrávaní po 2,6 s zmizne. */
.imax-cine-ui { position: absolute; inset: 0; z-index: 2; opacity: 0; pointer-events: none; transition: opacity 0.2s ease; }
.imax-player.is-ui .imax-cine-ui, .imax-cine-ui:has(.imax-cine-scrubber.is-dragging) { opacity: 1; pointer-events: auto; }
/* Dotyk: 16:9 sa ukazuje ťuknutím a po 2,6 s pri prehrávaní mizne (rieši netflix.js); 9:16 ostáva viditeľné */
@media (hover: none) { .imax-trailer-stage.is-portrait .imax-cine-ui { opacity: 1; pointer-events: auto; } }
.imax-player:not(.is-ui) { cursor: none; }
.imax-cine-ui::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(to top, rgba(4,8,10,0.92) 0%, rgba(4,8,10,0.55) 30%, rgba(4,8,10,0.10) 55%, rgba(4,8,10,0.28) 100%);
}
.pi-icon { width: 22px; height: 22px; display: block; }

/* Transport v strede */
.imax-cine-transport { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 34px; }
.imax-cine-skip, .imax-cine-play { display: flex; align-items: center; justify-content: center; padding: 0; border: none; background: none; color: #fff; cursor: pointer; transition: transform 0.14s ease, background 0.14s ease; }
.imax-cine-skip .pi-icon, .imax-cine-play .pi-icon, .imax-cine-btn .pi-icon { color: inherit; stroke-width: 2.1; filter: drop-shadow(0 1px 3px rgba(0,0,0,0.8)); }
.imax-cine-skip { width: 46px; height: 46px; border-radius: 50%; }
.imax-cine-skip .pi-icon { width: 34px; height: 34px; stroke-width: 1.6; }
.imax-cine-skip:hover { background: rgba(255,255,255,0.14); transform: scale(1.06); }
.imax-cine-play { width: 76px; height: 76px; border-radius: 50%; border: 2px solid #fff; background: rgba(0,0,0,0.22); }
.imax-cine-play:hover { background: rgba(0,0,0,0.4); transform: scale(1.05); }
.imax-cine-play-icon { width: 30px; height: 30px; }

/* Spodná vrstva: názov, popis, lišta */
.imax-cine-bottom { position: absolute; left: 28px; right: 28px; bottom: 20px; }
.imax-cine-name { font-family: 'Poppins', 'Inter', sans-serif; font-size: clamp(22px, 2.6vw, 34px); font-weight: 800; letter-spacing: -0.015em; line-height: 1.08; color: #fff; text-shadow: 0 2px 18px rgba(0,0,0,0.55); margin-bottom: 8px; text-transform: uppercase; }
.imax-cine-desc { max-width: 56%; margin: 0 0 22px; font-family: 'Inter', sans-serif; font-size: 14px; line-height: 1.55; color: rgba(255,255,255,0.88); text-shadow: 0 1px 12px rgba(0,0,0,0.6); }
.imax-cine-bar { display: flex; align-items: center; gap: 14px; }
.imax-cine-scrubber { position: relative; flex: 1; height: 4px; min-width: 60px; display: block; border-radius: 3px; background: rgba(255,255,255,0.3); cursor: pointer; touch-action: none; }
.imax-cine-scrubber .imax-tl-scrubber-fill { position: absolute; left: 0; top: 0; height: 100%; border-radius: 3px; background: var(--nfx-accent); }
.imax-cine-scrubber .imax-tl-scrubber-thumb { position: absolute; top: 50%; width: 14px; height: 14px; margin-left: -7px; border-radius: 50%; background: var(--nfx-accent); box-shadow: 0 0 0 4px rgba(var(--accent-rgb, 217,179,90), 0.22); transform: translateY(-50%); transition: transform 0.12s ease; }
.imax-cine-scrubber:hover .imax-tl-scrubber-thumb, .imax-cine-scrubber.is-dragging .imax-tl-scrubber-thumb { transform: translateY(-50%) scale(1.3); }
.imax-cine-elapsed { position: absolute; bottom: 16px; transform: translateX(-50%); font-family: 'Inter', sans-serif; font-size: 12px; font-variant-numeric: tabular-nums; color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,0.8); pointer-events: none; white-space: nowrap; }
.imax-cine-remain { font-family: 'Inter', sans-serif; font-size: 12px; font-variant-numeric: tabular-nums; color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,0.85); min-width: 36px; }
.imax-cine-btn { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; flex: 0 0 auto; padding: 0; border: none; border-radius: 6px; background: none; color: #fff; cursor: pointer; }
.imax-cine-btn:hover { background: rgba(255,255,255,0.16); }
.imax-cine-btn .pi-icon { width: 20px; height: 20px; }
.imax-cine-volume { width: 84px; flex: 0 0 auto; height: 4px; -webkit-appearance: none; appearance: none; background: rgba(255,255,255,0.25); border-radius: 2px; outline: none; cursor: pointer; }
.imax-cine-volume::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 12px; height: 12px; border-radius: 50%; background: var(--nfx-accent); cursor: grab; border: 2px solid rgba(0,0,0,0.4); }
.imax-cine-volume::-moz-range-thumb { width: 12px; height: 12px; border-radius: 50%; background: var(--nfx-accent); cursor: grab; border: 2px solid rgba(0,0,0,0.4); }
.imax-trailer-stage:fullscreen { max-width: none; max-height: none; width: 100vw; height: 100vh; border-radius: 0; }
.imax-trailer-stage.is-portrait .imax-cine-desc { max-width: 100%; font-size: 12.5px; margin-bottom: 14px; }
.imax-trailer-stage.is-portrait .imax-cine-bottom { left: 16px; right: 16px; bottom: 14px; }
.imax-trailer-stage.is-portrait .imax-cine-name { font-size: 22px; }
.imax-trailer-stage.is-portrait .imax-cine-volume { display: none; }
.imax-trailer-stage.is-portrait .imax-film-player-brand { left: 14px; top: 12px; }
@media (max-width: 768px) {
  .imax-film-player-brand { left: 14px; top: 12px; }
  .imax-cine-bottom { left: 14px; right: 14px; bottom: 12px; }
  .imax-cine-name { font-size: 20px; }
  .imax-cine-desc { max-width: 100%; font-size: 12.5px; margin-bottom: 16px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  /* 16:9 na mobile: popis len na celej obrazovke — v malom okne by zakryl video (9:16 sa nemení) */
  .imax-trailer-stage:not(.is-portrait):not(:fullscreen) .imax-cine-desc { display: none; }
  .imax-trailer-stage:not(.is-portrait) .imax-cine-name { margin-bottom: 12px; }
  .imax-cine-transport { gap: 24px; }
  .imax-cine-play { width: 62px; height: 62px; }
  .imax-cine-play-icon { width: 24px; height: 24px; }
  .imax-cine-skip { width: 38px; height: 38px; }
  .imax-cine-skip .pi-icon { width: 27px; height: 27px; }
  .imax-cine-volume { display: none; }
}
.imax-trailer-close {
  position: absolute; top: 24px; right: 24px; z-index: 5; width: 44px; height: 44px;
  background: rgba(10,10,10,0.7); border: 1px solid rgba(255,255,255,0.18); border-radius: 50%; color: #fff; cursor: pointer;
  display: flex; align-items: center; justify-content: center; backdrop-filter: blur(8px);
  transition: background 180ms ease, border-color 180ms ease, transform 140ms ease;
}
.imax-trailer-close:hover { background: rgba(var(--accent-rgb, 217,179,90),0.25); border-color: rgba(var(--accent-rgb, 217,179,90),0.6); transform: scale(1.08); }
@media (max-width: 700px) {
  .imax-trailer-lightbox { padding: 16px; }
  .imax-trailer-close { top: 14px; right: 14px; width: 38px; height: 38px; }
  .imax-trailer-title { font-size: 14px; top: -28px; }
}
