.dc-video { width: 100%; margin: 0; }
.dc-video .dc-video__native { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; margin: 0; border: 0; border-radius: 0; object-fit: contain; }
.dc-video .dc-video__frame { position: relative; width: 100%; aspect-ratio: var(--dc-video-ratio, 16 / 9); overflow: hidden; background: #181b17; border-radius: 40px; isolation: isolate; }
.dc-video .dc-video__mount, .dc-video .dc-video__frame > iframe, .dc-video .dc-video__cover, .dc-video .dc-video__poster { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; margin: 0; max-width: none; border-radius: 0; }
.dc-video .dc-video__cover { display: grid; place-items: center; padding: 0; cursor: pointer; background: #181b17; text-decoration: none; color: #fff; }
.dc-video .dc-video__poster { object-fit: cover; }
.dc-video .dc-video__cover::after { content: ""; position: absolute; inset: 0; background: #0002; pointer-events: none; }
.dc-video .dc-video__play { position: relative; z-index: 1; display: grid; place-items: center; width: clamp(64px, 9vw, 88px); aspect-ratio: 1; border: 1px solid #ffffffb3; border-radius: 50%; color: #fff; background: #ffffff26; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); transition: transform .18s, background .18s; }
.dc-video .dc-video__play svg { width: 26px; height: 26px; margin-left: 4px; border-radius: 0; }
.dc-video .dc-video__cover:hover .dc-video__play { transform: scale(1.08); background: #ffffff40; }
.dc-video .dc-video__cover:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
.dc-video .dc-video__cover[aria-busy="true"] { cursor: progress; }
.dc-video .dc-video__cover[aria-busy="true"] .dc-video__play { opacity: .65; }
.dc-video .dc-video__message { margin: 12px 0 0; color: inherit; font-size: 14px; line-height: 1.5; text-align: center; }
.dc-video .dc-video__message a { color: inherit; text-decoration: underline; }
.dc-video [hidden] { display: none !important; }
.dc-video.dc-video--controls .dc-video__frame { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.dc-video .dc-video__controls { box-sizing: border-box; padding: 12px; color: #181b17; background: #f7f5f0; border: 1px solid #dedbd3; border-top: 0; border-radius: 0 0 40px 40px; font-family: system-ui, sans-serif; }
.dc-video .dc-video__timeline { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.dc-video .dc-video__seek { flex: 1; width: 0; min-width: 0; height: 28px; margin: 0; padding: 0; accent-color: #6b4939; cursor: pointer; }
.dc-video .dc-video__time { white-space: nowrap; font-size: 12px; font-variant-numeric: tabular-nums; }
.dc-video .dc-video__actions { display: flex; flex-wrap: wrap; gap: 6px; }
.dc-video .dc-video__actions button { appearance: none; min-height: 44px; margin: 0; padding: 8px 12px; border: 1px solid #d0cbc0; border-radius: 6px; background: #fff; color: #181b17; font: 500 13px/1.2 system-ui, sans-serif; text-transform: none; letter-spacing: normal; cursor: pointer; }
.dc-video .dc-video__actions button:hover { background: #ece8df; }
.dc-video .dc-video__actions button:focus-visible, .dc-video .dc-video__seek:focus-visible { outline: 2px solid #6b4939; outline-offset: 2px; }
.dc-video .dc-video__actions button:disabled, .dc-video .dc-video__seek:disabled { opacity: .5; cursor: default; }
.dc-video .dc-video__actions .dc-video__fullscreen { margin-left: auto; }
.dc-video:fullscreen { display: flex; flex-direction: column; width: 100%; height: 100%; background: #181b17; }
.dc-video:fullscreen .dc-video__frame { flex: 1; min-height: 0; aspect-ratio: auto; border-radius: 0; }
.dc-video:fullscreen .dc-video__controls { flex-shrink: 0; border-radius: 0; }
@media (prefers-reduced-motion: reduce) { .dc-video .dc-video__play { transition: none; } }
