.cpres-player { box-sizing: border-box; width: 100%; max-width: 100%; margin: 1.5rem 0; color: #1b2530; font-family: inherit; }
.cpres-player *, .cpres-player *::before, .cpres-player *::after { box-sizing: inherit; }
.cpres-stage { position: relative; width: 100%; aspect-ratio: var(--cpres-ratio, 16/9); background: #111820; overflow: hidden; border-radius: 10px 10px 0 0; }
.cpres-slide { width: 100%; height: 100%; }
.cpres-slide[hidden] { display: none !important; }
.cpres-image { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; margin: 0 auto; }
.cpres-controls { display: flex; gap: .6rem; align-items: center; justify-content: center; padding: .65rem .75rem; border: 1px solid #d7dce1; border-top: 0; background: #f7f8fa; border-radius: 0 0 10px 10px; }
.cpres-btn { appearance: none; border: 1px solid #c9cfd6; background: white; color: #142a43; font: inherit; font-size: 1.2rem; line-height: 1; min-height: 38px; min-width: 43px; border-radius: 6px; cursor: pointer; display: inline-flex; justify-content: center; align-items: center; padding: .35rem .55rem; }
.cpres-btn:hover { background: #edf3fc; border-color: #8499ad; }
.cpres-btn:focus-visible, .cpres-slideshow:focus-visible { outline: 3px solid #226bca; outline-offset: 3px; }
.cpres-counter { font-size: .9rem; min-width: 64px; text-align: center; font-variant-numeric: tabular-nums; }
.cpres-play { margin-left: auto; }
.cpres-player:fullscreen { background: #101923; padding: 1rem; display: flex; flex-direction: column; justify-content: center; }
.cpres-player:fullscreen .cpres-stage { width: 100%; height: calc(100vh - 95px); aspect-ratio: auto; }
.cpres-player:fullscreen .cpres-controls { flex-shrink: 0; }
.cpres-embed iframe { display: block; width: 100%; height: auto; min-height: 300px; aspect-ratio: var(--cpres-ratio, 16/9); border: 1px solid #d7dce1; background: #f4f5f7; border-radius: 8px; }
.cpres-fallback { margin: .5rem 0; font-size: .86rem; }
@media (max-width: 520px) { .cpres-controls { gap: .3rem; padding: .5rem; } .cpres-btn { min-width: 36px; min-height: 36px; } .cpres-counter { min-width: 52px; } }
