/* Latest-videos rail, shared by both concepts. Each page themes it with --yt-* variables. */
.yt{--yt-card:#111;--yt-ink:#fff;--yt-muted:rgba(255,255,255,.75);--yt-ctrl-bg:transparent;--yt-ctrl-ink:currentColor;--yt-ctrl-line:rgba(127,127,127,.35);--yt-radius:18px;--yt-shadow:none;--yt-font:inherit;--yt-accent:#ed1c24}
.yt-ctrl{display:flex;gap:10px}
.yt-ctrl button{width:46px;height:46px;border-radius:50%;border:1px solid var(--yt-ctrl-line);background:var(--yt-ctrl-bg);color:var(--yt-ctrl-ink);display:grid;place-items:center;cursor:pointer;transition:transform .25s,background .25s,opacity .25s}
.yt-ctrl button:hover{transform:translateY(-2px)}
.yt-ctrl button:disabled{opacity:.35;cursor:default;transform:none}
.yt-ctrl svg{width:20px;height:20px}
.yt-rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(200px,19vw,236px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 22px;scrollbar-width:none;overscroll-behavior-x:contain}
.yt-rail::-webkit-scrollbar{display:none}
.yt-card{position:relative;display:block;aspect-ratio:9/16;border-radius:var(--yt-radius);overflow:hidden;background:var(--yt-card);scroll-snap-align:start;box-shadow:var(--yt-shadow);cursor:pointer;border:0;padding:0;text-align:left;color:#fff;font:inherit;isolation:isolate}
.yt-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.yt-card:hover img{transform:scale(1.06)}
.yt-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.82) 100%);z-index:1}
.yt-play{position:absolute;top:50%;left:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(255,255,255,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;z-index:2;transition:transform .35s,background .35s}
.yt-play svg{width:22px;height:22px;margin-left:3px;fill:#fff}
.yt-card:hover .yt-play{transform:scale(1.1);background:var(--yt-accent);border-color:transparent}
.yt-meta{position:absolute;left:0;right:0;bottom:0;padding:16px;z-index:2}
.yt-title{font-family:var(--yt-font);font-weight:600;font-size:15px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.yt-sub{margin-top:6px;font-size:12.5px;color:rgba(255,255,255,.72)}
.yt-skel{aspect-ratio:9/16;border-radius:var(--yt-radius);background:linear-gradient(100deg,rgba(127,127,127,.12) 30%,rgba(127,127,127,.22) 50%,rgba(127,127,127,.12) 70%);background-size:300% 100%;animation:ytsk 1.4s linear infinite}
@keyframes ytsk{to{background-position:-150% 0}}
.yt-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:rgba(5,8,14,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.yt-modal.open{opacity:1;visibility:visible}
.yt-frame{position:relative;height:min(82vh,760px);aspect-ratio:9/16;max-width:100%;border-radius:20px;overflow:hidden;background:#000;box-shadow:0 30px 80px rgba(0,0,0,.5);transform:scale(.96);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.yt-frame.wide{height:auto;width:min(1100px,100%);aspect-ratio:16/9}
.yt-modal.open .yt-frame{transform:none}
.yt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-close{position:absolute;top:18px;right:18px;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;display:grid;place-items:center}
.yt-close svg{width:22px;height:22px}
@media (max-width:640px){.yt-rail{grid-auto-columns:62%;gap:14px}.yt-ctrl{display:none}}
@media (prefers-reduced-motion:reduce){.yt-card img,.yt-play,.yt-frame{transition:none}.yt-skel{animation:none}}
