.kv-video-card { min-width:0; margin:0; overflow:hidden; background:#0f172a; border:1px solid #385169; border-radius:12px; }
.kv-video-player { aspect-ratio:16/9; position:relative; background:#081b2c; }
.kv-video-player iframe,.kv-video-load,.kv-video-load img { display:block; width:100%; height:100%; }
.kv-video-player iframe { position:absolute; inset:0; border:0; }
.kv-video-load { position:absolute; inset:0; border:0; padding:0; cursor:pointer; background:#081b2c; color:#fff; font:inherit; }
.kv-video-load img { object-fit:contain; }
.kv-video-play-icon { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:72px; height:52px; display:grid; place-items:center; border-radius:14px; background:#e52222; box-shadow:0 3px 16px #0006; font-size:25px; }
.kv-video-load:hover .kv-video-play-icon { background:#ff3333; }
.kv-video-load:focus-visible { outline:4px solid #67e8f9; outline-offset:-4px; }
.kv-video-duration { position:absolute; right:10px; bottom:10px; padding:3px 7px; border-radius:4px; font-size:.8rem; background:#081b2ce8; }
.kv-video-caption { padding:1rem 1.1rem; }
.kv-video-caption h3 { margin:0 0 .6rem; color:#f1f5f9; font-size:1rem; line-height:1.4; }
.kv-video-caption a,.kv-video-links a { color:#67e8f9; text-underline-offset:3px; font-size:.9rem; }
.kv-video-caption a:focus-visible,.kv-video-links a:focus-visible { outline:3px solid #67e8f9; outline-offset:4px; }
.kv-video-links { display:flex; gap:1rem 1.5rem; flex-wrap:wrap; margin-top:1.2rem; }
.kv-video-note { color:#b7c6d8; font-size:.86rem; line-height:1.65; }
.kv-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; margin:1.5rem 0; }
.kv-video-library { margin:2.5rem 0; padding-bottom:1rem; border-bottom:1px solid #334155; scroll-margin-top:6rem; }
.kv-video-library h2 { margin:0 0 .6rem; }
.home-page .kv-home-video { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); align-items:center; gap:2.5rem; }
.kv-guide-video { margin:1.5rem 0 2rem; max-width:850px; }
.kv-guide-video h2 { font-size:1.3rem; margin-bottom:.6rem; }
@media(max-width:800px) { .home-page .kv-home-video { grid-template-columns:1fr; gap:1.5rem; } }
@media(max-width:650px) { .kv-video-grid { grid-template-columns:1fr; } }
