.ft-video-listing-root{--ft-bg-base:#f4f4f5;--ft-surface-card:rgba(255,255,255,.68);--ft-surface-hover:rgba(0,0,0,.04);--ft-border-color:rgba(15,23,42,.08);--ft-text-main:#0f172a;--ft-text-muted:#64748b;--ft-primary:#ff3b30;--ft-primary-glow:rgba(255,59,48,.3);--ft-spotlight:rgba(0,0,0,.03);--ft-shadow-card:0 10px 30px rgba(0,0,0,.05);--ft-shadow-card-hover:0 20px 40px rgba(0,0,0,.1),0 0 40px rgba(255,59,48,.1);--ft-spring:cubic-bezier(.34,1.56,.64,1);--ft-smooth:cubic-bezier(.25,1,.5,1);direction:rtl;color:var(--ft-text-main);font-family:inherit;position:relative;z-index:1}.dark .ft-video-listing-root,.farstube-dark .ft-video-listing-root{--ft-bg-base:#050505;--ft-surface-card:rgba(20,20,22,.68);--ft-surface-hover:rgba(255,255,255,.03);--ft-border-color:rgba(255,255,255,.08);--ft-text-main:#fff;--ft-text-muted:#a1a1aa;--ft-primary-glow:rgba(255,59,48,.5);--ft-spotlight:rgba(255,255,255,.08);--ft-shadow-card:0 10px 30px rgba(0,0,0,.5);--ft-shadow-card-hover:0 20px 40px rgba(0,0,0,.8),0 0 40px rgba(255,59,48,.15)}.ft-video-listing-root *{box-sizing:border-box}.ft-video-listing-root button{font-family:inherit}.ft-video-listing-container{max-width:1600px;margin:0 auto;position:relative;z-index:10}.ft-video-section-header{display:flex;flex-direction:column;gap:24px;margin-bottom:34px}.ft-video-header-title{font-size:32px;font-weight:950;display:flex;align-items:center;gap:12px;letter-spacing:-1px;margin:0;background:linear-gradient(135deg,var(--ft-text-main),var(--ft-text-muted));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ft-video-header-title i{color:var(--ft-primary);-webkit-text-fill-color:var(--ft-primary);filter:drop-shadow(0 4px 15px var(--ft-primary-glow));animation:ft-pulse-icon 2s infinite var(--ft-smooth)}@keyframes ft-pulse-icon{0%,100%{transform:scale(1)}50%{transform:scale(1.1);filter:drop-shadow(0 4px 25px var(--ft-primary))}}.ft-filter-track{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;-ms-overflow-style:none;scrollbar-width:none;mask-image:linear-gradient(to left,#000 90%,transparent)}.ft-filter-track::-webkit-scrollbar{display:none}.ft-filter-chip{padding:10px 24px;background:rgba(255,255,255,.03);border:1px solid var(--ft-border-color);border-radius:50px;font-size:14px;font-weight:800;color:var(--ft-text-muted);white-space:nowrap;cursor:pointer;backdrop-filter:blur(10px);transition:all .4s var(--ft-spring);display:flex;align-items:center;gap:8px}.ft-filter-chip:hover{background:rgba(128,128,128,.1);color:var(--ft-text-main);transform:translateY(-2px)}.ft-filter-chip.is-active{background:var(--ft-text-main);color:var(--ft-bg-base);border-color:var(--ft-text-main);box-shadow:0 8px 20px rgba(0,0,0,.15)}.ft-video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--ft-columns-min,320px),1fr));gap:32px;transition:opacity .4s ease,transform .4s ease}.ft-video-grid:hover .ft-vid-card:not(:hover){opacity:.45;transform:scale(.98);filter:grayscale(35%)}.ft-vid-card{position:relative;background:var(--ft-surface-card);border:1px solid var(--ft-border-color);border-radius:24px;padding:12px;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:all .5s var(--ft-spring);backdrop-filter:blur(20px);box-shadow:var(--ft-shadow-card)}.ft-vid-card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(800px circle at var(--mouse-x,50%) var(--mouse-y,50%),var(--ft-spotlight),transparent 40%);z-index:0;opacity:0;transition:opacity .5s;pointer-events:none}.ft-vid-card:hover{border-color:rgba(255,59,48,.2);transform:translateY(-8px) scale(1.02);box-shadow:var(--ft-shadow-card-hover);z-index:2}.ft-vid-card:hover::before{opacity:1}.ft-vid-content{position:relative;z-index:1}.ft-thumb-box{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#000;box-shadow:inset 0 0 20px rgba(0,0,0,.5)}.ft-thumb-img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ft-smooth),opacity .4s ease;z-index:2;position:relative}.ft-vid-card:hover .ft-thumb-img{transform:scale(1.08);filter:brightness(.6)}.ft-preview-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s ease;z-index:1;background:#000}.ft-vid-card.is-previewing .ft-preview-video{opacity:1;z-index:3}.ft-vid-card.is-previewing .ft-thumb-img{opacity:0}.ft-vid-card.is-previewing .ft-play-overlay{opacity:0;display:none}.ft-scrub-bar{position:absolute;bottom:0;left:0;right:0;height:5px;background:rgba(255,255,255,.2);z-index:5;opacity:0;transform:translateY(10px);transition:all .4s var(--ft-spring);pointer-events:none}.ft-vid-card.is-previewing .ft-scrub-bar{opacity:1;transform:translateY(0)}.ft-scrub-progress{height:100%;background:var(--ft-primary);width:0;box-shadow:0 0 10px var(--ft-primary-glow);transition:width .1s linear}.ft-mobile-preview-btn{position:absolute;top:10px;right:10px;z-index:8;display:none;align-items:center;gap:6px;padding:8px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:12px;font-weight:950;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 18px rgba(0,0,0,.35);cursor:pointer}.ft-mobile-preview-btn i{font-size:17px;color:var(--ft-primary)}.ft-sound-toggle{position:absolute;top:10px;left:10px;z-index:9;width:38px;height:38px;border-radius:50%;display:none;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.55);color:#fff;font-size:20px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 18px rgba(0,0,0,.35);cursor:pointer}.ft-vid-card.is-previewing .ft-sound-toggle{display:flex}.ft-vid-card.is-previewing .ft-scrub-progress{transition:width .25s linear}.ft-vid-card.is-inline-playing .ft-preview-video{opacity:1;z-index:7}.ft-vid-card.is-inline-playing .ft-thumb-img{opacity:0}.ft-vid-card.is-inline-playing .ft-mobile-preview-btn,.ft-vid-card.is-inline-playing .ft-duration-tag,.ft-vid-card.is-inline-playing .ft-watch-progress{display:none!important}.ft-vid-card.is-inline-playing .ft-sound-toggle{display:flex}.ft-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .4s var(--ft-spring);z-index:4;pointer-events:none}.ft-vid-card:hover .ft-play-overlay{opacity:1}@media(max-width:768px){.ft-vid-card:hover .ft-play-overlay{opacity:0}.ft-video-grid:hover .ft-vid-card:not(:hover){opacity:1;transform:none;filter:none}.ft-mobile-preview-btn{display:flex}.ft-vid-card:hover{transform:none}}.ft-play-btn{width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.15);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;transform:scale(.5);transition:transform .5s var(--ft-spring);box-shadow:0 10px 25px rgba(0,0,0,.5)}.ft-vid-card:hover .ft-play-btn{transform:scale(1)}.ft-duration-tag{position:absolute;bottom:8px;left:8px;background:rgba(0,0,0,.7);backdrop-filter:blur(4px);color:#fff;font-size:11px;font-weight:900;font-family:monospace;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.1);z-index:5;transition:opacity .3s}.ft-vid-card.is-previewing .ft-duration-tag{opacity:0}.ft-watch-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:rgba(255,255,255,.2);z-index:4}.ft-watch-progress-fill{height:100%;background:var(--ft-primary);width:0;box-shadow:0 0 10px var(--ft-primary)}.ft-vid-info{display:flex;gap:12px;padding:0 8px 8px;position:relative;margin-top:-20px;z-index:10}.ft-avatar-wrap{width:48px;height:48px;border-radius:50%;padding:4px;position:relative;z-index:2;flex-shrink:0;transition:transform .4s var(--ft-spring);background:transparent}.ft-avatar-wrap::before{content:'';position:absolute;inset:0;border-radius:50%;background:var(--ft-bg-base);z-index:0;transition:background .5s ease}.ft-avatar-wrap::after{content:'';position:absolute;inset:0;border-radius:50%;background:linear-gradient(to top,transparent 45%,var(--ft-primary) 45%);opacity:0;transform:rotate(-90deg);transition:all .5s var(--ft-spring);z-index:1;box-shadow:0 -4px 15px var(--ft-primary-glow)}.ft-vid-card:hover .ft-avatar-wrap{transform:translateY(-4px) scale(1.1)}.ft-vid-card:hover .ft-avatar-wrap::after{opacity:1;transform:rotate(0deg)}.ft-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--ft-surface-hover);position:relative;z-index:2}.ft-text-wrap{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0;padding-top:28px}.ft-vid-title{font-size:15px;font-weight:850;line-height:1.5;color:var(--ft-text-main);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;transition:color .3s;margin:0}.ft-vid-card:hover .ft-vid-title{color:var(--ft-primary)}.ft-vid-channel{font-size:13px;font-weight:800;color:var(--ft-text-muted);display:flex;align-items:center;gap:4px;margin-top:4px}.ft-vid-channel i{color:var(--ft-verified-color,#10b981);font-size:14px}.ft-vid-meta{font-size:12px;font-weight:700;color:var(--ft-text-muted);opacity:.85}.ft-video-empty{grid-column:1/-1;text-align:center;color:var(--ft-text-muted);padding:40px}.ft-vid-card.ft-hidden{display:none}@media(max-width:480px){.ft-video-grid{grid-template-columns:1fr;gap:34px}.ft-video-header-title{font-size:24px}.ft-video-listing-root{padding-inline:0}}


/* v4.3 video preview UX fixes */
.ft-vid-card.is-inline-playing .ft-scrub-bar{opacity:1;transform:translateY(0)}
.ft-pause-toggle{position:absolute;top:50%;left:50%;z-index:10;width:48px;height:48px;border-radius:50%;display:none;align-items:center;justify-content:center;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.46);color:#fff;font-size:24px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 12px 28px rgba(0,0,0,.35);cursor:pointer;opacity:.92;transition:all .25s var(--ft-spring)}
.ft-pause-toggle i{color:#fff;font-size:24px;display:block}
.ft-vid-card.is-previewing .ft-pause-toggle{display:flex}
.ft-vid-card.is-previewing:not(.is-paused) .ft-pause-toggle{opacity:0;transform:translate(-50%,-50%) scale(.86)}
.ft-vid-card.is-previewing:not(.is-paused):hover .ft-pause-toggle{opacity:.92;transform:translate(-50%,-50%) scale(1)}
.ft-vid-card.is-paused .ft-pause-toggle{opacity:1;transform:translate(-50%,-50%) scale(1)}
.ft-vid-card.is-paused .ft-preview-video{filter:brightness(.72)}
@media(max-width:768px){.ft-pause-toggle{width:44px;height:44px;font-size:22px}.ft-vid-card.is-inline-playing .ft-pause-toggle{display:flex;opacity:.96}}

/* v4.6 mobile inline progress: keep the YouTube-like red progress line visible while mobile preview is playing. */
.ft-vid-card.is-inline-playing .ft-scrub-bar{opacity:1!important;transform:translateY(0)!important;z-index:12!important}
.ft-vid-card.is-inline-playing .ft-scrub-progress{transition:width .18s linear}
.ft-vid-card.is-inline-playing .ft-pause-toggle{display:flex!important}

/* v6.1 fallback for videos without thumbnail: no black dead cards */
.farstube-video-listing-root .video-card-thumb,
.farstube-video-listing-root .ft-video-thumb,
.ft-video-listing-root .video-thumb{
  background:radial-gradient(circle at 30% 20%,rgba(255,59,48,.28),transparent 38%),linear-gradient(135deg,#18181b,#050505)!important;
}
.farstube-video-listing-root .video-card-thumb:empty:before,
.farstube-video-listing-root .ft-video-thumb:empty:before,
.ft-video-listing-root .video-thumb:empty:before{
  content:'▶';color:#fff;background:linear-gradient(135deg,#f59e0b,#ef4444);width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:auto;box-shadow:0 12px 28px rgba(255,59,48,.35);
}

/* ===== v7.5 reliable hover preview ===== */
.ft-video-listing-root .ft-vid-card.is-preview-error .ft-preview-video{opacity:0!important;}
.ft-video-listing-root .ft-vid-card.is-preview-error .ft-thumb-img{opacity:1!important;}
.ft-video-listing-root .ft-vid-card.is-preview-error .ft-scrub-bar{opacity:0!important;}
.ft-video-listing-root .ft-preview-video{pointer-events:none!important;}
.ft-video-listing-root .ft-vid-card.is-previewing .ft-preview-video{will-change:opacity,transform;}
