.silver-video-player {
    --silver-video-radius: 25px 25px 25px 25px;
    --silver-video-shadow: 0 24px 48px rgba(31, 45, 61, 0.18), 0 9px 20px rgba(31, 45, 61, 0.08);
    --silver-video-play-size: clamp(68px, 9vw, 92px);
    width: min(760px, calc(100% - 32px));
    margin: clamp(28px, 5vw, 58px) auto;
}

.silver-video-player__shell {
    position: relative;
    overflow: hidden;
    border-radius: var(--silver-video-radius);
    background: #ffffff;
    box-shadow: var(--silver-video-shadow);
    isolation: isolate;
    transform: translateZ(0);
    transition: transform 220ms ease, box-shadow 220ms ease;
}

.silver-video-player__shell::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: inherit;
    pointer-events: none;
}

.silver-video-player__shell:hover {
    transform: translateY(-2px);
    box-shadow: 0 28px 56px rgba(31, 45, 61, 0.2), 0 11px 24px rgba(31, 45, 61, 0.1);
}

.silver-video-player__video {
    display: block;
    width: 100%;
    aspect-ratio: var(--silver-video-aspect);
    object-fit: cover;
    background: #ffffff;
    cursor: pointer;
}

.silver-video-player__trigger {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: var(--silver-video-play-size);
    height: var(--silver-video-play-size);
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    cursor: pointer;
    transform: translate(-50%, -50%);
    transition: opacity 180ms ease, transform 180ms ease, filter 180ms ease;
}

.silver-video-player__trigger:hover,
.silver-video-player__trigger:focus-visible {
    transform: translate(-50%, -50%) scale(1.05);
    filter: drop-shadow(0 10px 18px rgba(228, 75, 121, 0.24));
}

.silver-video-player__trigger:focus-visible {
    outline: 3px solid rgba(228, 75, 121, 0.36);
    outline-offset: 5px;
}

.silver-video-player__icon {
    display: block;
    width: 100%;
    height: 100%;
}

.silver-video-player__fallback {
    padding: 24px;
    margin: 0;
    color: #5f6973;
    text-align: center;
}

.silver-video-player.is-playing .silver-video-player__trigger {
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, -50%) scale(0.92);
}

.silver-video-player.is-playing .silver-video-player__video {
    cursor: auto;
}

@media (max-width: 640px) {
    .silver-video-player {
        --silver-video-radius: 0 0 14px 14px;
        margin: 28px auto;
    }
}
