.pps-stories { --pps-purple: #583257; --pps-gray: #756e75; direction: rtl; width: 100%; box-sizing: border-box; }
.pps-stories *, .pps-stories *::before, .pps-stories *::after { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
.pps-stories button, .pps-stories a, .pps-stories [role="button"] { -webkit-tap-highlight-color: rgba(0,0,0,0) !important; tap-highlight-color: transparent; }
.pps-stories__rail { position: relative; display: flex; align-items: center; min-width: 0; }
.pps-story-track { display: flex; align-items: flex-start; flex: 1; min-width: 0; overflow-x: auto; overflow-y: hidden; padding: 2px 1px 8px; scroll-behavior: smooth; scroll-snap-type: x proximity; scrollbar-width: none; overscroll-behavior-inline: contain; }
.pps-story-track::-webkit-scrollbar { display: none; }
.pps-story-button { --pps-size: 90px; appearance: none; align-self: flex-start; border: 0 !important; padding: 0; margin: 0; width: var(--pps-size); flex: 0 0 var(--pps-size); background: transparent !important; color: inherit; font: inherit; box-shadow: none !important; cursor: pointer; text-align: center; vertical-align: top; scroll-snap-align: start; }
.pps-story-button:hover, .pps-story-button:focus, .pps-story-button:active { border: 0 !important; background: transparent !important; box-shadow: none !important; }
.pps-story-button__ring { position: relative; display: block; width: var(--pps-size); height: var(--pps-size); border: 5px solid var(--pps-purple); border-radius: 50%; background: #f9f9f9; transition: border-color .2s ease, transform .2s ease; }
.pps-story-button:hover .pps-story-button__ring { transform: translateY(-2px); }
.pps-story-button:focus-visible { outline: 2px solid var(--pps-purple); outline-offset: 4px; border-radius: 4px; }
.pps-story-button__media { position: absolute; inset: 7px; overflow: hidden; display: grid; place-items: center; border-radius: 50%; background: transparent center/cover no-repeat; }
.pps-story-button__media svg { width: 39%; height: 39%; overflow: visible; fill: none; stroke: var(--pps-purple); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.pps-story-button__media svg .pps-icon-fill { fill: var(--pps-purple); stroke: none; }
.pps-story-button__media > i { color: var(--pps-purple); font-size: calc(var(--pps-size) * .34); line-height: 1; }
.pps-story-button__title { display: -webkit-box; overflow: hidden; margin-top: 7px; color: var(--pps-gray); font-family: "Yekan Bakh FaNum", "Yekan Bakh", Tahoma, sans-serif; font-size: 13px; font-weight: 600; line-height: 1.25; text-align: center; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.pps-story-button.is-seen .pps-story-button__ring { border-color: #b9b4b9; }
.pps-rail-arrow { appearance: none; position: relative; z-index: 2; width: 32px; height: 32px; flex: 0 0 32px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(88,50,87,.18); border-radius: 50%; background: #fff; color: var(--pps-purple); font: 26px/1 Arial, sans-serif; cursor: pointer; box-shadow: 0 3px 12px rgba(0,0,0,.08); }
.pps-rail-arrow:disabled { opacity: .25; cursor: default; }
.pps-rail-arrow--prev { margin-left: 8px; }
.pps-rail-arrow--next { margin-right: 8px; }
.pps-stories-empty { margin: 0; }
body.pps-viewer-open { overflow: hidden !important; }
.pps-viewer[hidden] { display: none !important; }
.pps-viewer { position: fixed; z-index: 999999; inset: 0; display: grid; place-items: center; padding: 14px; background: #151115; direction: rtl; }
.pps-viewer__shell { position: relative; width: min(440px, 100%); height: min(780px, calc(100dvh - 28px)); overflow: hidden; border-radius: 18px; background: #080708; box-shadow: 0 20px 70px rgba(0,0,0,.45); }
.pps-progress { position: absolute; z-index: 8; top: 12px; right: 12px; left: 12px; display: flex; direction: rtl; gap: 4px; height: 3px; }
.pps-progress__item { direction: rtl; flex: 1; overflow: hidden; border-radius: 3px; background: rgba(255,255,255,.32); }
.pps-progress__fill { display: block; width: 0; height: 100%; margin-right: 0; margin-left: auto; border-radius: inherit; background: #fff; }
.pps-viewer__header { position: absolute; z-index: 8; top: 25px; right: 14px; left: 10px; display: flex; align-items: center; gap: 12px; min-height: 42px; color: #fff; text-shadow: 0 1px 5px rgba(0,0,0,.7); }
.pps-viewer__title { flex: 1; overflow: hidden; font: 600 14px/1.5 "Yekan Bakh FaNum", "Yekan Bakh", Tahoma, sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.pps-viewer__controls { display: flex; direction: ltr; align-items: center; gap: 2px; }
.pps-viewer__controls button { appearance: none; width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 0 !important; border-radius: 50%; background: rgba(0,0,0,.18) !important; color: #fff; font: 20px/1 Arial, sans-serif; outline: 0; box-shadow: none !important; cursor: pointer; }
.pps-viewer__controls button:hover, .pps-viewer__controls button:focus, .pps-viewer__controls button:active { border: 0 !important; background: rgba(0,0,0,.28) !important; color: #fff; outline: 0; box-shadow: none !important; }
.pps-viewer__controls button i { display: block; font-size: 20px; line-height: 1; }
.pps-viewer__like { appearance: none; position: absolute; z-index: 9; right: 18px; bottom: 24px; bottom: max(24px, env(safe-area-inset-bottom)); width: 46px; height: 46px; display: grid; place-items: center; padding: 0; border: 0 !important; border-radius: 50%; background: rgba(0,0,0,.34) !important; color: #fff; outline: 0; box-shadow: none !important; cursor: pointer; transition: color .18s ease, background-color .18s ease, transform .18s ease; }
.pps-viewer__like:hover, .pps-viewer__like:focus, .pps-viewer__like:active { border: 0 !important; background: rgba(0,0,0,.46) !important; color: #fff; outline: 0; box-shadow: none !important; }
.pps-viewer__like i { display: block; font-size: 24px; line-height: 1; }
.pps-viewer__like.is-liked, .pps-viewer__like.is-liked:hover, .pps-viewer__like.is-liked:focus, .pps-viewer__like.is-liked:active { background: rgba(255,65,105,.2) !important; color: #ff4169; transform: scale(1.06); }
.pps-viewer__stage, .pps-slide { position: absolute; inset: 0; }
.pps-slide[hidden] { display: none !important; }
.pps-slide { display: flex; align-items: center; justify-content: center; background: #080708; }
.pps-slide img, .pps-slide video, .pps-slide iframe { display: block; width: 100%; height: 100%; border: 0; object-fit: contain; background: #080708; }
.pps-slide img, .pps-slide video { -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; }
.pps-slide[data-type="video"] video { object-fit: cover; object-position: center; }
.pps-slide[data-type="embed"] iframe { position: relative; z-index: 6; width: 100%; height: auto; max-height: 100%; aspect-ratio: 16 / 9; }
.pps-media-status { display: none; position: absolute; z-index: 4; right: 50%; top: 50%; max-width: calc(100% - 60px); padding: 10px 16px; border-radius: 999px; background: rgba(0,0,0,.58); color: #fff; font: 500 13px/1.6 "Yekan Bakh FaNum", "Yekan Bakh", Tahoma, sans-serif; text-align: center; transform: translate(50%,-50%); }
.pps-slide.is-loading .pps-media-status, .pps-slide.is-media-error .pps-media-status { display: block; }
.pps-viewer__cta { position: absolute; z-index: 7; right: 50%; bottom: 24px; min-width: 150px; max-width: calc(100% - 48px); padding: 11px 20px; border-radius: 999px; background: #fff; color: var(--pps-purple); font: 600 14px/1.4 "Yekan Bakh FaNum", "Yekan Bakh", Tahoma, sans-serif; text-align: center; text-decoration: none; transform: translateX(50%); box-shadow: 0 6px 24px rgba(0,0,0,.2); }
.pps-viewer__zone { appearance: none; position: absolute; z-index: 5; top: 72px; bottom: 72px; width: 38%; padding: 0; border: 0 !important; background: transparent !important; color: transparent !important; outline: 0 !important; box-shadow: none !important; cursor: pointer; }
.pps-viewer__zone:hover, .pps-viewer__zone:focus, .pps-viewer__zone:active { border: 0 !important; background: transparent !important; color: transparent !important; outline: 0 !important; box-shadow: none !important; }
.pps-viewer__zone--prev { right: 0; }
.pps-viewer__zone--next { left: 0; }
@media (max-width: 767px) {
	.pps-rail-arrow { display: none; }
	.pps-viewer { padding: 0; }
	.pps-viewer__shell { width: 100%; height: 100dvh; border-radius: 0; }
}
@media (orientation: landscape) and (max-height: 560px) {
	.pps-viewer__shell { width: min(720px, 100%); height: calc(100dvh - 16px); }
}
@media (prefers-reduced-motion: reduce) {
	.pps-story-track { scroll-behavior: auto; }
	.pps-story-button__ring { transition: none; }
}
