.vp {
position: relative;
width: 100%;
height: 100%;
background: #000;
overflow: hidden;
-webkit-user-select: none;
user-select: none;
}
.vp-video {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
cursor: pointer;
}
.vp-big {
position: absolute;
top: 50%;
left: 50%;
translate: -50% -50%;
width: 76px;
height: 76px;
display: flex;
align-items: center;
justify-content: center;
border: 0;
border-radius: 50%;
background: #fff;
color: #0b0b0f;
box-shadow: 0 10px 30px rgba(0, 0, 0, .45);
cursor: pointer;
transition: scale .18s cubic-bezier(.22, 1, .36, 1), box-shadow .18s ease;
}
.vp-big:hover {
scale: 1.07;
box-shadow: 0 14px 38px rgba(0, 0, 0, .55);
}
.vp-big svg { width: 34px; height: 34px; display: block; margin-left: 4px; }
.vp.is-basladi .vp-big { display: none; }
.vp-bar {
display: none;
position: absolute;
left: 0; right: 0; bottom: 0;
align-items: center;
gap: 11px;
height: 48px;
box-sizing: border-box;
padding: 6px 12px;
background: rgba(0, 0, 0, .5);
opacity: 1;
transition: opacity .25s ease;
}
.vp.vp-ui-gizli .vp-bar {
opacity: 0;
pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
.vp-bar { transition: none; }
}
.vp.is-basladi .vp-bar,
.vp.is-playing .vp-bar { display: flex; }
.vp-btn {
flex: none;
width: 36px;
height: 36px;
display: flex;
align-items: center;
justify-content: center;
border: 0;
border-radius: 50%;
background: transparent;
color: #fff;
cursor: pointer;
opacity: .92;
transition: opacity .15s ease, background .15s ease;
}
.vp-btn:hover { opacity: 1; background: rgba(255, 255, 255, .16); }
.vp-btn svg { width: 21px; height: 21px; display: block; }
.vp-time {
flex: none;
font-family: var(--font-display, 'Montserrat', sans-serif);
font-size: 13px;
font-weight: 700;
color: rgba(255, 255, 255, .82);
min-width: 34px;
text-align: center;
font-variant-numeric: tabular-nums;
}
.vp-seek {
position: relative;
flex: 1 1 auto;
height: 14px;
display: flex;
align-items: center;
cursor: pointer;
}
.vp-seek::before {
content: "";
position: absolute;
left: 0; right: 0;
height: 4px;
border-radius: 999px;
background: rgba(255, 255, 255, .26);
}
.vp-seek-fill {
position: absolute;
left: 0;
height: 4px;
width: 0%;
border-radius: 999px;
background: #fff;
pointer-events: none;
}
.vp-seek-thumb {
position: absolute;
left: 0%;
width: 13px;
height: 13px;
border-radius: 50%;
background: #fff;
translate: -50% 0;
box-shadow: 0 1px 4px rgba(0, 0, 0, .5);
pointer-events: none;
scale: 0;
transition: scale .12s ease;
}
.vp-seek:hover .vp-seek-thumb,
.vp-seek.is-dragging .vp-seek-thumb { scale: 1; }
.vp-ses {
display: flex;
align-items: center;
gap: 6px;
flex: none;
}
.vp-vol {
position: relative;
width: 68px;
height: 14px;
display: flex;
align-items: center;
cursor: pointer;
}
.vp-vol::before {
content: "";
position: absolute;
left: 0; right: 0;
height: 4px;
border-radius: 999px;
background: rgba(255, 255, 255, .26);
}
.vp-vol-fill {
position: absolute;
left: 0;
height: 4px;
width: 100%;
border-radius: 999px;
background: #fff;
pointer-events: none;
}
.vp-vol-thumb {
position: absolute;
left: 100%;
width: 12px;
height: 12px;
border-radius: 50%;
background: #fff;
translate: -50% 0;
box-shadow: 0 1px 4px rgba(0, 0, 0, .5);
pointer-events: none;
}
.vp:fullscreen { width: 100vw; height: 100vh; background: #000; }
.vp:-webkit-full-screen { width: 100vw; height: 100vh; background: #000; }
.vp:fullscreen .vp-video { object-fit: contain; }
.vp:-webkit-full-screen .vp-video { object-fit: contain; }
.vp.is-fullscreen .vp-bar { display: flex; height: 68px; padding: 12px 20px; gap: 13px; }
.vp.is-fullscreen .vp-btn { width: 44px; height: 44px; }
.vp.is-fullscreen .vp-btn svg { width: 25px; height: 25px; }
.vp.is-fullscreen .vp-time { font-size: 15px; min-width: 48px; }
.vp.is-fullscreen .vp-vol { width: 90px; }
.vp.is-fullscreen .vp-big { width: 92px; height: 92px; }
.vp.is-fullscreen .vp-big svg { width: 41px; height: 41px; }
@media (max-width: 480px) {
.vp-big { width: 62px; height: 62px; }
.vp-big svg { width: 27px; height: 27px; }
.vp-bar { height: 40px; padding: 4.5px 9px; gap: 6px; }
.vp-time { font-size: 11.5px; min-width: 30px; }
.vp-btn { width: 31px; height: 31px; }
.vp-btn svg { width: 19px; height: 19px; }
.vp-vol { display: none; }
}