/* Přehrávač videa ve stylu webu (pilot, Aura Verde). Ovládání přidá assets/js/pilot-video.js. */
.pw-pl-video { position: relative; overflow: hidden; aspect-ratio: 9 / 16; width: 100%; max-width: 22rem; background: var(--sand); margin: 0 auto; }
.pw-pl-foto { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 42% 50%; opacity: 0; pointer-events: none; transition: opacity .35s ease; }
.pw-pl-video.is-paused .pw-pl-foto { opacity: 1; }
.pw-pl-start { position: absolute; inset: 0; width: 100%; padding: 0; border: 0; background: rgba(52, 50, 47, 0.08); color: var(--paper); cursor: pointer; display: none; align-items: center; justify-content: center; transition: background-color .25s ease; }
.pw-pl-video.is-paused .pw-pl-start { display: flex; }
.pw-pl-start:hover { background: rgba(52, 50, 47, 0.2); }
.pw-pl-start .pw-pl-play { width: 4.6rem; height: 4.6rem; background: rgba(52, 50, 47, 0.28); transition: background-color .25s ease, color .25s ease; }
.pw-pl-start:hover .pw-pl-play { background: var(--paper); color: var(--deep); }
.pw-pl-start .pw-pl-play::after { left: 40%; top: 31%; border-left-width: 1.3rem; border-block-width: 0.88rem; }
.pw-pl-start:focus-visible { outline: 1px solid var(--paper); outline-offset: -6px; }
.pw-pl-ctrl { position: absolute; left: 0; right: 0; bottom: 0; display: none; align-items: center; gap: 0.7rem; padding: 2.2rem 0.9rem 0.75rem; color: var(--paper); font-family: var(--sans); font-size: 0.72rem; letter-spacing: 0.08em; background: linear-gradient(transparent, rgba(52, 50, 47, 0.72)); }
.pw-pl-video.is-started .pw-pl-ctrl { display: flex; }
.pw-pl-time { flex: none; font-variant-numeric: tabular-nums; }
.pw-pl-btn { flex: none; position: relative; width: 1.6rem; height: 1.6rem; padding: 0; border: 0; background: none; color: inherit; cursor: pointer; }
.pw-pl-btn:focus-visible, .pw-pl-seek:focus-visible { outline: 1px solid currentColor; outline-offset: 2px; }
.pw-pl-btn.is-toggle::before, .pw-pl-btn.is-toggle::after { content: ""; position: absolute; top: 26%; height: 48%; width: 2px; background: currentColor; }
.pw-pl-btn.is-toggle::before { left: 36%; }
.pw-pl-btn.is-toggle::after { right: 36%; }
.pw-pl-video.is-paused .pw-pl-btn.is-toggle::before { left: 34%; top: 24%; width: 0; height: 0; background: none; border-left: 0.6rem solid currentColor; border-block: 0.4rem solid transparent; }
.pw-pl-video.is-paused .pw-pl-btn.is-toggle::after { display: none; }
.pw-pl-btn.is-mute::before { content: ""; position: absolute; left: 22%; top: 37%; width: 0.3rem; height: 0.4rem; background: currentColor; box-shadow: 0.18rem 0 0 currentColor; }
.pw-pl-btn.is-mute::after { content: ""; position: absolute; left: 50%; top: 27%; width: 0.42rem; height: 0.74rem; border: solid currentColor; border-width: 0 1px 0 0; border-radius: 0 50% 50% 0; }
.pw-pl-video.is-muted .pw-pl-btn.is-mute::after { top: 48%; left: 16%; width: 70%; height: 0; border-width: 1px 0 0; border-radius: 0; transform: rotate(-38deg); }
.pw-pl-seek { flex: 1 1 auto; min-width: 0; height: 1.6rem; margin: 0; background: none; cursor: pointer; -webkit-appearance: none; appearance: none; --p: 0%; }
.pw-pl-seek::-webkit-slider-runnable-track { height: 1px; background: linear-gradient(90deg, currentColor var(--p), rgba(251, 249, 245, 0.4) var(--p)); }
.pw-pl-seek::-moz-range-track { height: 1px; background: rgba(251, 249, 245, 0.4); }
.pw-pl-seek::-moz-range-progress { height: 1px; background: currentColor; }
.pw-pl-seek::-webkit-slider-thumb { -webkit-appearance: none; width: 0.6rem; height: 0.6rem; margin-top: calc(-0.3rem + 0.5px); border-radius: 50%; background: currentColor; }
.pw-pl-seek::-moz-range-thumb { width: 0.6rem; height: 0.6rem; border: 0; border-radius: 50%; background: currentColor; }
.pw-pl-video video { display: block; width: 100%; height: 100%; object-fit: cover; }
.pw-pl-play { width: 3.4rem; height: 3.4rem; border: 1px solid currentColor; border-radius: 50%; position: relative; }
.pw-pl-play::after { content: ""; position: absolute; left: 39%; top: 30%; border-left: 1rem solid currentColor; border-block: 0.68rem solid transparent; }
