.ravix-shorts-latest-wrap{direction:rtl;text-align:right;font-family:var(--rvx-font,'PeydaWebFaNum',Tahoma,Arial,sans-serif);margin:22px 0;color:inherit;--rvx-short-gap:16px;--rvx-mobile-side:16px;box-sizing:border-box}
.ravix-shorts-latest-wrap *,.ravix-shorts-latest-wrap *::before,.ravix-shorts-latest-wrap *::after{box-sizing:border-box}
.ravix-shorts-latest-head{max-width:1400px;margin:0 0 18px;padding:0 14px 0 0;text-align:right;display:block}
.ravix-shorts-latest-title{margin:0;font-size:28px;font-weight:950;color:#111827;letter-spacing:-.45px;line-height:1.3}
.ravix-shorts-latest-kicker{margin-top:10px;display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;color:#2635d9;font-size:14px;font-weight:900;line-height:1.8;letter-spacing:-.2px;padding-right:2px}
.ravix-shorts-latest-kicker::before{content:"";width:10px;height:10px;border-radius:999px;background:#2635d9;box-shadow:0 0 0 6px rgba(38,53,217,.10);flex:0 0 10px}
.ravix-shorts-latest-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--rvx-short-gap);overflow:visible;padding:0}
.ravix-shorts-latest-card{display:block;min-width:0;text-decoration:none;color:inherit;outline:none;-webkit-tap-highlight-color:transparent;touch-action:pan-y pinch-zoom}
.ravix-shorts-latest-card.is-loading .ravix-shorts-latest-thumb{transform:scale(.985);filter:saturate(1.05) brightness(.96)}
.ravix-shorts-latest-card:focus-visible .ravix-shorts-latest-thumb{box-shadow:0 0 0 3px rgba(37,99,235,.34),0 20px 44px rgba(15,23,42,.18)}
.ravix-shorts-latest-thumb{position:relative;display:block;width:100%;aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:#111827;box-shadow:0 14px 34px rgba(15,23,42,.18);transform:translateZ(0);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;contain:paint;isolation:isolate}
.ravix-shorts-latest-card:hover .ravix-shorts-latest-thumb{transform:translateY(-3px);box-shadow:0 20px 48px rgba(15,23,42,.24);filter:saturate(1.04)}
.ravix-shorts-latest-thumb img,.ravix-shorts-latest-thumb video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#111827}
.ravix-shorts-latest-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.04) 45%,rgba(0,0,0,.50));pointer-events:none;z-index:1}
.ravix-shorts-latest-play{position:absolute;inset:auto 10px 10px auto;z-index:2;width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(145deg,rgba(15,23,42,.92),rgba(0,0,0,.74));-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 7px 16px rgba(0,0,0,.20)}
.ravix-shorts-latest-play svg{width:18px;height:18px;fill:currentColor;transform:translateX(-1px)}
.ravix-shorts-latest-views{position:absolute;left:9px;bottom:10px;z-index:2;display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:9px;background:rgba(15,23,42,.86);color:#fff;font-size:12px;font-weight:800;line-height:1;-webkit-backdrop-filter:none;backdrop-filter:none}
.ravix-shorts-latest-views svg{width:13px;height:13px;fill:currentColor;opacity:.95}
.ravix-shorts-latest-caption{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:10px 0 0;font-size:15px;font-weight:800;line-height:1.85;color:inherit;min-height:3.5em;text-shadow:none}
.ravix-shorts-latest-empty{padding:18px;border:1px dashed rgba(148,163,184,.55);border-radius:16px;color:#64748b;background:rgba(148,163,184,.08);font-weight:700}

/* همان موتور Swiper محلی کاروسل محصولات/افزونه‌ها؛ فقط در موبایل فعال می‌شود. */
.ravix-shorts-latest-stage{position:relative;width:100%;max-width:100%;direction:rtl}
.ravix-shorts-latest-carousel{position:relative;width:100%;max-width:100%;overflow:hidden;direction:rtl;touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain;overscroll-behavior-y:auto;cursor:grab}
.ravix-shorts-latest-carousel .swiper-wrapper{align-items:stretch;direction:rtl}
.ravix-shorts-latest-row.swiper-wrapper{will-change:auto!important}
.ravix-shorts-latest-wrap.rvx-short-interacting .ravix-shorts-latest-row.swiper-wrapper{will-change:transform!important}
.ravix-shorts-latest-card.swiper-slide{height:auto}
.ravix-shorts-latest-dots{display:none;align-items:center;justify-content:center;gap:7px;margin-top:16px;min-height:10px;padding:0;user-select:none}
.ravix-shorts-latest-dots.swiper-pagination-lock{display:none!important}
.ravix-shorts-latest-dots .swiper-pagination-bullet,.ravix-shorts-latest-dots span{width:10px;height:10px;margin:0;background:#c7d2df;border-radius:999px;opacity:1;border:0;padding:0;cursor:pointer;transition:width .055s linear,background-color .055s linear;flex:0 0 auto}
.ravix-shorts-latest-dots .swiper-pagination-bullet-active,.ravix-shorts-latest-dots .swiper-pagination-bullet-active-main{width:24px;background:#1400ec}

@media (hover:none),(pointer:coarse){
  .ravix-shorts-latest-thumb{transition:none}
  .ravix-shorts-latest-card:hover .ravix-shorts-latest-thumb{transform:none;box-shadow:0 7px 20px rgba(15,23,42,.14);filter:none}
}
@media (max-width:1100px){
  .ravix-shorts-latest-row{grid-template-columns:repeat(3,minmax(0,1fr));--rvx-short-gap:14px}
  .ravix-shorts-latest-caption{font-size:14px}
}
@media (min-width:641px){
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-carousel{overflow:visible;cursor:default}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-row.swiper-wrapper{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--rvx-short-gap);transform:none!important;width:100%;will-change:auto!important}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-card.swiper-slide{width:auto!important;margin:0}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-dots{display:none!important}
}
@media (min-width:641px) and (max-width:1100px){
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-row.swiper-wrapper{grid-template-columns:repeat(3,minmax(0,1fr));--rvx-short-gap:14px}
}
@media (max-width:640px){
  .ravix-shorts-latest-wrap{margin:18px 0;--rvx-short-gap:16px}
  .ravix-shorts-latest-head{padding:0;margin-bottom:16px}
  .ravix-shorts-latest-title{font-size:21px}
  .ravix-shorts-latest-kicker{font-size:13px;gap:8px}
  .ravix-shorts-latest-kicker::before{width:8px;height:8px;box-shadow:0 0 0 5px rgba(38,53,217,.10);flex:0 0 8px}
  .ravix-shorts-latest-thumb{border-radius:16px;box-shadow:0 7px 20px rgba(15,23,42,.14);transform:none!important;filter:none!important;transition:none!important}
  .ravix-shorts-latest-caption{font-size:13px;line-height:1.8;pointer-events:none}
  .ravix-shorts-latest-thumb img,.ravix-shorts-latest-thumb video{pointer-events:none;-webkit-user-drag:none;user-select:none}
  .ravix-shorts-latest-play,.ravix-shorts-latest-views{pointer-events:none}

  .ravix-shorts-latest-wrap.is-mobile-carousel{width:100%;max-width:100%;margin:18px 0;padding-inline:16px;overflow:hidden;touch-action:pan-y pinch-zoom!important;-ms-touch-action:pan-y!important}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-head{padding-inline:0}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-stage{width:100%;max-width:100%;overflow:hidden}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-carousel{width:100%;max-width:100%;overflow:hidden;padding:0;touch-action:pan-y pinch-zoom!important;-ms-touch-action:pan-y!important}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-row{display:flex;grid-template-columns:none;gap:0;padding:0;margin:0;transform:translate3d(0,0,0)}
  .ravix-shorts-latest-wrap.is-mobile-carousel .ravix-shorts-latest-card{min-width:0;width:auto;touch-action:pan-y pinch-zoom!important;-ms-touch-action:pan-y!important;user-select:none}
  .ravix-shorts-latest-wrap.is-mobile-carousel.is-swiper-ready .ravix-shorts-latest-dots{display:flex}

  /* چیدمان نهایی قبل از راه‌اندازی Swiper هم دقیقاً 2.15 کارت است؛ بدون CLS/پرش. */
  .ravix-shorts-latest-wrap.is-mobile-carousel:not(.is-swiper-ready) .ravix-shorts-latest-row{gap:16px;transform:none!important}
  .ravix-shorts-latest-wrap.is-mobile-carousel:not(.is-swiper-ready) .ravix-shorts-latest-card{flex:0 0 calc((100% - 16px)/2.15);width:calc((100% - 16px)/2.15)}
}
