.story_nicks {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #818c99;
  margin: 5px 0 0;
  font-size: 12px;
}
.story-wrapper {
  width: 76px;
  display: inline-block;
  text-align: center;
}
.story-username {
  color: #818c99;
  margin: 5px 0 0;
  font-size: 12px;
  word-break: break-all;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  box-sizing: border-box;
  padding: 0 2px;
  text-align: center;
}
.story-box {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 10px;
  background: #fff;
}
.story-item {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  border: 0;
  position: relative;
  overflow: hidden;
  padding: 0;
  cursor: pointer;
}

.story-item img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.story-me {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  background: #f5f5f5;
  position: relative;
  cursor: pointer;
}
.story-me:active {
  box-shadow: 0 4px 8px rgba(0,0,0,.2) inset;
  transform: scale(.99);
}
#storyLikeContainer {
  position: absolute;
  bottom: 66px;
  right: 10px;
  cursor: pointer;
  user-select: none;
  z-index: 111;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.storyLikeContainer {
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.08);
  border: solid 1px rgba(255,255,255,0.60);
  text-shadow: 0 1px 8px rgba(0,0,0,0.12);
  color: #fff;
}
.liked {
  color: red !important;
  animation: pulse 0.5s ease forwards;
  fill: red !important;
}
.Story__like--set {
  background-color: #ff3347;
  border: 0;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.08);
}
@keyframes like-pulse {
  0% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 transparent);
  }
  50% {
    transform: scale(1.3);
    filter: drop-shadow(0 0 8px #ff3347);
  }
  100% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 transparent);
  }
}

.like-pulse {
  animation: like-pulse 0.5s ease forwards;
}

.storyImageBase__children {
  display: flex;
  justify-content: center;
  align-items: center;
}
.storyImageBase__border {
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: inherit;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  pointer-events: none;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  z-index: 0;
}
.storyImageBase__border, .storyImageBase__children {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.story-menu-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 24px;
  cursor: pointer;
  z-index: 10;
}
.story-menu {
  position: absolute;
  top: 40px;
  right: 0;
  background: rgba(255, 255, 255, .99);
  border-radius: 8px;
  padding: 8px;
  z-index: 9999;
  transform-origin: 100% 100%;
  -webkit-animation: 275ms cubic-bezier(.28,-.42,.67,1.42) ScaleOut;
  animation: 275ms cubic-bezier(.28,-.42,.67,1.42) ScaleOut;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
  pointer-events: auto;
  white-space: nowrap;
  box-shadow: 0 8px 16px rgba(46,47,51,.17);
  min-width: 200px;
}
.story-menu button {
  display: flex;
  width: 100%;
  color: #000;
  background: none;
  border: none;
  padding: 8px;
  text-align: left;
  cursor: pointer;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  border-radius: 8px;
}
.story-menu button:hover {
  background: rgba(0, 0, 0, 0.1);
}

#storyMenuBtn svg {
    pointer-events: none;
}
a.dp_c11c2, .dp_c11c2 a {
  color: #fff;
}
.story-me img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  z-index: 1;
  position: relative;
}
#storyViewer {
  display: none;
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #222324;
  z-index: 8000;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  user-select: none;
  touch-action: manipulation;
}
#storyContainer {
  position: relative;
  max-width: 532px;
  max-height: 100%;
  overflow: hidden;
  box-shadow: 0 0 12px rgba(0,0,0,0.7);
  width: 100%;
  height: 100%;
  aspect-ratio: 9 / 16;
  border-radius: 16px;
}
#story-overlay_bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  filter: blur(8px);
  z-index: 0;
  opacity: 1;
  transition: background-image 0.3s ease, opacity 0.3s ease;
}
#storyVideo {
  width: 100%;
  height: 100%;
  display: block;
  max-height: 100%;
  max-width: 100%;
  z-index: 0;
}
#storyImage {
  position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  display: none;
  pointer-events: none;
}
#storyVideo {
  pointer-events: all;
  z-index: 11;
  width: auto;
}
#progressBarsContainer {
  position: absolute;
  height: 6px;
  display: flex;
  gap: 4px;
  box-sizing: border-box;
  top: 10px;
  left: 10px;
  right: 10px;
  border-radius: 3px;
  overflow: hidden;
}

.progressBarSegment {
  flex-grow: 1;
  background: rgba(255,255,255,0.40);
  border-radius: 3px;
  position: relative;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08);
  height: 6px;
}
.progressBarSegment {
  position: relative;
  overflow: visible; 
}
.progressBarFill{
  background:#fff;
  height:100%;
  width:100%;                 /* гарантируем 100%, а не 0% */
  border-radius:3px;
  transition:none;
  transform-origin:left center;
  will-change:transform;      /* можно оставить постоянно */
}
#storyHeader {
  position: absolute;
  top: 28px;
  left: 8px;
  display: flex;
  align-items: center;
  background: rgba(0, 0, 0, 0.5);
  padding: 6px 10px;
  border-radius: 20px;
  z-index: 2;
}
#storyHeader_close {
  position: absolute;
  top: 28px;
  right: 8px;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  z-index: 2;
  min-height: 44px;
  color: #fff;
  min-width: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
#storyHeader_close button {
  color: #fff;
  font-size: 20px;
  cursor: pointer;
}
#storyHeader img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  margin-right: 12px;
}
#storyHeader a {
  color: white;
  text-decoration: none;
  font-weight: bold;
  font-size: 15px;
}  
.dp_52c07 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 28px;
  left: 10px;
  right: 10px;
  margin-top: 0;
  margin-top: constant(safe-area-inset-top);
  margin-top: env(safe-area-inset-top);
}
.dp_c11c2 {
  pointer-events: auto;
  color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  max-width: 100%;
  text-decoration: none;
  align-items: center;
}
.dp_f2703 {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  min-width: 0;
  overflow: hidden;
}
.dp_98d41 {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  height: 36px;
  width: 36px;
    margin-right: 12px;
}
.dp_1d118 {
  background: #dedede;
  border-radius: 50%;
  height: 100%;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.dp_b0e59 {
  border-radius: 50%;
  display: block;
  height: 100%;
  left: 0;
  line-height: 0;
  position: absolute;
  top: 0;
  width: 100%;
  object-fit: cover;
}.dp_1d118::after {
  border: 2px solid rgba(0,0,0,.04);
  border-radius: 50%;
}.dp_1d118.dp_afc7f::before, .dp_1d118::after {
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}.dp_51840 {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  min-width: 0;
}.dp_02656 {
  color: #fff !important;
  font-size: 14px;
  font-weight: 500;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-shadow: 0 2px 8px rgba(0,0,0,0.15);
}.dp_38f9a:not(.dp_a1ac4) {
  font-weight: 700;
}.dp_38f9a {
  text-decoration: none;
}.dp_e929b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}.dp_e3cb2 {
  color: #fff;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-shadow: 0 2px 8px rgba(0,0,0,0.15);
}.dp_28c40 {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -ms-flex-negative: 0;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  margin-left: 12px;
  pointer-events: auto;
  height: 36px;
}.dp_e5ab2 {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 36px;
  justify-content: center;
  width: 36px;
}
.dp_e5ab2 button {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 36px;
  justify-content: center;
  align-items: center;
  width: 36px;
  font-size: 20px;
  color: #fff;

  border-radius: 50%;
}
.dp_e5ab2 svg {
  filter: drop-shadow(0 0 1px rgba(0, 0, 0, 0.5));
}
.StoryAuthor__prev, .StoryAuthor__next {
  position: absolute;
  top: 74px;
  bottom: 65px;
  min-width: 60px;
  width: 25%;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
  z-index: 11;
}.StoryAuthor__next {
  right: 0;
  z-index: 5;
  width: 25%;
}
.shapka_story {
  display: flex;
  width: 100%;
  height: 75px;
  pointer-events: all;
  z-index: 25;
  position: relative;
  top: 8px;
}
.bodys_story {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  max-height: 100%;
  margin-top: -75px;
}
.Story__stats {
  position: absolute;
  height: 24px;
  padding: 7px 16px 7px 11px;
  border-radius: 20px;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.08);
  border: solid 1px rgba(255,255,255,0.60);
  text-shadow: 0 1px 8px rgba(0,0,0,0.12);
  pointer-events: auto;
  bottom: 10px;
  left: 0;
  cursor: pointer;
  z-index: 111;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.StoryAuthorMuteButton {
  position: absolute;
  left: 10px;
  bottom: 66px;
  border-radius: 40px;
  background: #fff;
  padding: 8px 12px 8px 8px;
  display: flex;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  z-index: 333;
}
.StoryAuthorMuteButton__icon {
  width: 24px;
  height: 24px;
}
.StoryAuthorMuteButton__text {
  font-size: 13px;
  font-weight: 600;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: auto;
  color: #000;
  text-transform: uppercase;
  margin-left: 8px;
}
.StoryAuthor__prev {
  bottom: 100px;
}
.storyy_view-count_1 {
  position: absolute;
  background: #fff;
  color: black;
  margin: 0 auto;
  max-width: 532px;
  max-height: 75vh;
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: 0 0 12px rgba(0,0,0,0.7);
  overflow: hidden;
  bottom: 0;
  left: 0;
  right: 0;
  min-height: 262px;
}
#viewersModal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9900;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  user-select: none;
  width: 100%;
  max-width: 532px;
  margin: 0 auto;
}
#viewedByContainer {
  width: 100%;
  height: 100%;
  display: block;
  max-width: 532px;
  max-height: 100%;
  overflow-x: auto;
}
.storyy_view-count_2 {
  padding: 15px;
  display: block;
  margin-bottom: 10px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  font-size: 15px;
  position: relative;
}
.storyy_view-count_3 {
  display: block;
}
.storyy_view-count_3 a, a.storyy_view-count_3 {
  padding: 6px 12px;
  display: block;
}
.storyy_view-count_3 a:hover, a:hover.storyy_view-count_3 {
  background: #f2f3f5;
}
.storyy_view-count_3 img, img.storyy_view-count_3 {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
}
.storyy_view-count_3 span {
  font-size: 15px;
  margin-left: 4px;
  color: #000;
}
.story-toast {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: #222;
    color: #fff;
    padding: 10px 16px;
    border-radius: 8px;
    font-size: 14px;
    opacity: 0;
    pointer-events: none;
    z-index: 9999;
    transition: opacity 0.3s ease, bottom 0.3s ease;
}
.story-toast.show {
    opacity: 1;
    bottom: 40px;
}
#storyViewer {
  transition: transform 0.3s ease;
  opacity: 1;                      
}
#storyVideo {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}










.story-reply-trigger {
  position: absolute;
  bottom: 12px;
  left: 8px;
  right: 8px;
  color: #fff;
  border-radius: 20px;
  font-size: 15px;
  cursor: pointer;
  z-index: 111;
  height: 40px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.08);
  border: solid 1px rgba(255,255,255,0.60);
  text-shadow: 0 1px 8px rgba(0,0,0,0.12);
  margin-bottom: 0;
  margin-bottom: constant(safe-area-inset-bottom);
  margin-bottom: env(safe-area-inset-bottom);
}
.emoji-list span {
  font-size: 20px;
  margin-right: 8px;
  cursor: pointer;
}
.viewer-avatar-wrapper {
    position: relative;
    display: inline-block;
}
.Views__avatarBadgeIcon {
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 20px;
  height: 20px;
}
img.Views__reactionIcon, .Views__reactionIcon img {
  width: inherit;
  height: inherit;
}
.Views__avatarBadgeIcon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 2px 4px rgba(0,0,0,0.12);
  border-radius: 10px;
}

.preview-tooltip {
  position: absolute;
  top: 100%; 
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 100px;
  max-height: 80px;
  object-fit: cover;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
  background: #000;
  pointer-events: none;
  z-index: 1000;
  margin-top: 8px;
}
#storyContainer {
  
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none; 
  
}








#storyImage { z-index: 1 !important; }
#storyVideo { z-index: 1 !important; }

:root {
  --glass-bg: rgba(16,16,20,0.50);
  --glass-bg-hover: rgba(16,16,20,0.65);
  --glass-border: rgba(255,255,255,0.18);
  --glass-shadow: 0 6px 16px rgba(0,0,0,0.20);
}

.dp_52c07 { z-index: 15; }

.dp_e5ab2 button:hover { background: var(--glass-bg-hover) !important; }

#storyLikeContainer {
  box-shadow: var(--glass-shadow) !important;
  color: #fff !important;
  z-index: 20;
}
#storyLikeContainer:hover { background: var(--glass-bg-hover) !important; }

.Story__like--set {
  background: rgba(255,51,71,0.90) !important;
  border-color: rgba(255,255,255,0.22) !important;
}
.dp_28c40, #storyHeader_close, #closeBtn { z-index: 20; }
.StoryAuthor__prev, .StoryAuthor__next {
  z-index: 18;
  min-width: 68px;
}



.viewerTabsWrap{ display:flex; gap:6px; position:sticky; top:0; background:#fff; z-index:2; border-bottom:1px solid #eee; }
.vt{
  appearance:none; border:1px solid #e6e6e6; background:#f9f9f9; color:#111; padding:6px 10px; border-radius:10px; font-size:13px; cursor:pointer;
}
.vt.active{ background:#111; color:#fff; border-color:#111; }
.vc-badge{ margin-left:6px; font-size:12px; padding:2px 6px; background:#eee; border-radius:999px; }
.vt.active .vc-badge{ background:rgba(255,255,255,.2); color:#fff; }

.viewerList{ padding:10px; }
.viewerItem{
  display:flex; align-items:center; gap:10px; padding:10px; border-bottom:1px solid #f0f0f0;
}
.viewerItem:last-child{ border-bottom:none; }
.viewerItem img{ width:44px; height:44px; border-radius:50%; object-fit:cover; }
.viewerItem .name{ font-size:15px; color:#000; }
.viewerItem .sub{ font-size:13px; color:#666; }
.rea-badge{ margin-left:auto; font-size:18px; }

.story-quick-reactions{ display:none; position:absolute; bottom:94px; left:50%; transform:translateX(-50%); z-index:21; gap:8px; }
.story-quick-reactions.show{ display:flex; }
.story-quick-reactions .qr-btn{
  font-size:18px; line-height:1; padding:8px 10px; border-radius:999px;
  background: rgba(16,16,20,.50); border:1px solid rgba(255,255,255,.18); color:#fff; cursor:pointer;
}
.story-quick-reactions .qr-btn:active{ transform: scale(.96); }

#storyImage, #storyVideo{
  z-index: 10;   
}

.dp_52c07, .Story__stats, #storyLikeContainer, .StoryAuthorMuteButton{
  z-index: 100;
}

.story-top-scrim, .story-bottom-scrim{
  position: absolute;
  left: 0; right: 0;
  pointer-events: none;
  z-index: 20;
  transition: opacity .2s ease;
  opacity: 1;
}
.story-top-scrim{
  top: 0;
  height: 112px;
  background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0.24)),to(rgba(0,0,0,0)));
  background: linear-gradient(to bottom,rgba(0,0,0,0.24) 0%,rgba(0,0,0,0) 100%);
}
.story-bottom-scrim{
  bottom: 0;
  height: 112px;
  background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,0.24)));
  background: linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.24) 100%);
}








.like-splash{
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%) scale(.6);
  opacity:0;
  pointer-events:none;
  z-index:40;
  font-size:110px;         
  line-height:1;
  color:#ff3366;            
  text-shadow:0 8px 28px rgba(0,0,0,.45);
}
.like-splash.show{ animation:likeSplash .8s ease both; }

@keyframes likeSplash{
  0%   { opacity:0; transform:translate(-50%,-50%) scale(.6); }
  25%  { opacity:1; }
  60%  { transform:translate(-50%,-50%) scale(1.05); }
  100% { opacity:0; transform:translate(-50%,-50%) scale(1); }
}


@media (min-width:768px){
  .like-splash{ font-size:96px; }
}







.visually-hidden{position:absolute!important;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden}

.replyOverlay{
  position:fixed; inset:0; z-index:9901;
  display:none; align-items:center; justify-content:center;
}
.replyOverlay--show{ display:flex; }

.replyOverlay__modal{
  position:relative; width:min(560px, 92vw); max-height:86vh;
  background:rgba(28,29,31,.96); color:#fff;
  border-radius:16px; box-shadow:0 12px 40px rgba(0,0,0,.45);
  display:flex; flex-direction:column; gap:12px;
  padding:16px; z-index:1; animation:replyPop .14s ease-out;
}
@keyframes replyPop{ from{ transform:scale(.98); opacity:0 } to{ transform:scale(1); opacity:1 } }

.replyOverlay__close{
  position:absolute; top:10px; right:10px; line-height:0;
  background:transparent; border:0; color:#ddd; cursor:pointer;
}
.replyOverlay__close:hover{ color:#fff }

.replyOverlay__header{ display:flex; flex-direction:column; gap:8px; }
.replyOverlay__title{ font-size:14px; color:#aeb3b8; }

.replyOverlay__reactions{ display:flex; gap:8px; flex-wrap:wrap }
.replyOverlay__reactions .qr-btn{
  font-size:20px; line-height:1; padding:8px 10px; border-radius:12px;
  background:#2f3136; border:1px solid #3a3d42; cursor:pointer;
}
.replyOverlay__reactions .qr-btn:hover{ background:#3a3d42 }

.replyOverlay__body textarea{
  width:100%; min-height:88px; max-height:40vh; resize:vertical;
  padding:12px 14px; border-radius:12px; border:1px solid #3a3d42;
  background:#1f2023; color:#fff; font-size:15px; outline:none;
}
.replyOverlay__body textarea:focus{ border-color:#5b9cff; box-shadow:0 0 0 3px rgba(91,156,255,.15) }

.replyOverlay__footer{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.replyOverlay__emojis button{
  background:#2f3136; border:1px solid #3a3d42; border-radius:10px; padding:6px 8px; cursor:pointer;
  color:#fff; font-size:16px; margin-right:6px;
}
.replyOverlay__emojis button:hover{ background:#3a3d42 }

.replyOverlay__send{
  padding:10px 14px; border-radius:12px; border:0; cursor:pointer;
  background:#5b9cff; color:#0c1424; font-weight:700;
}
.replyOverlay__send:disabled{ opacity:.6; cursor:not-allowed }

.body--lock{ overflow:hidden; }

.replyOverlay--show ~ .story-reply-bar{ display:none !important; }





.story-reply-bar.show{ display:flex; }


.story-reply-bar .reply-row {
  display: flex;
  gap: 8px;
  align-items: center;
}
.story-reply-bar #replyInput {
  flex: 1;
  resize: none;
  max-height: 120px;
  min-height: 46px;
  background: rgba(255,255,255,.25);
  color: #fff;
  border-radius: 25px;
  margin: 0;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  align-items: center;
  height: 46px;
  padding: 0 12px;
  overflow: hidden;
  line-height: 46px;
  font-size: 15px;
  border: 0;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.08);
  border: solid 1px rgba(255,255,255,0.60);
}
.story-reply-bar .reply-send, .story-reply-bar .reply-close {
  border-radius: 50%;
  color: #fff;
  border: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  width: 46px;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.08);
  border: solid 1px rgba(255,255,255,0.60);
  background: rgba(255,255,255,.15);
}

.story-reply-bar.show ~ .story-quick-reactions{ display:none !important; }

.like-splash{
  position:absolute; left:50%; top:50%;
  transform: translate(-50%,-50%) scale(0);
  opacity:0; pointer-events:none;
  font-size:72px;
}
.like-splash.show{ animation: likePop .65s ease forwards; }
@keyframes likePop{
  0%{transform:translate(-50%,-50%) scale(0); opacity:0}
  20%{transform:translate(-50%,-50%) scale(1.15); opacity:1}
  60%{transform:translate(-50%,-50%) scale(1)}
  100%{transform:translate(-50%,-50%) scale(.9); opacity:0}
}

#replyBar{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.45);
  z-index: 111;
}
#replyBar.show{ display: flex; }

#replyBar .reply-modal {
  border-radius: 16px;
  padding: 0;
  position: absolute;
  bottom: 16px;
  left: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
}
#replyBar .reactions-row {
  display: flex;
  gap: 5px;
  justify-content: center;
  margin-bottom: 20px;
  width: 100%;
}


/* чтобы видео и контент не перекрывали модалку */
#storyVideo{ z-index: 1; }
.story-quick-reactions{ z-index: 10020; }

#storyContainer{ position:relative; }
#storyVideo{ z-index:1; }











.reactions-row .qr-btn {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  transition: transform .12s ease, background .2s;
  border-radius: 12px;
  cursor: pointer;
}
.reactions-row .qr-btn:hover{ transform:translateY(-1.5px); background:rgba(255,255,255,.12); }
.reactions-row .qr-btn.active{ background:rgba(255,255,255,.12); }
.reactions-row .qr-btn img {
  width: 100%;
  height: 100%;
  display: block;
  max-width: 60px;
}





.rea-badge { display:flex; align-items:center; justify-content:center; }
.rea-badge img { width:28px; height:28px; display:block; }
#dt-like-splash.like-splash img { width:96px; height:96px; }
.scroll-locked, .scroll-locked * { overscroll-behavior: contain; }


.progressBarFill{
  transform-origin: left center;
}






/* контейнер прогресса — поверх скримов и в своём стэке */
#progressBarsContainer{
  z-index: 40;          /* было 12 — теперь выше скримов (20) */
  isolation: isolate;   /* исключаем "подмешивание" фона */
}




/* скримы — ниже полосы (если где-то переопределялось) */
.story-top-scrim, .story-bottom-scrim{ z-index: 20; }

.progressBarFill{
  height: 100%;
  background: #fff;      /* или твой цвет */
  opacity: 1;            /* фиксируем непрозрачность */
  transform: none !important;
  transition: none;      /* мы сами двигаем width через RAF */
  backface-visibility: hidden;
  will-change: width;
}

.progressBarFill{
  width: 0;
  transform: none;
  transition: none; /* важно, мы сами анимируем в JS */
}







.bodys_story::before, .bodys_story::after {
  opacity: 1;
  transition: opacity .2s ease;
}
.bodys_story::after, .bodys_story::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 112px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translate3d(0,0,0);
}


.bodys_story::before {
  bottom: 0;
  background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,0.24)));
  background: linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.24) 100%);
  z-index: 52;
}
.bodys_story::after {
  top: 0;
  background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0.24)),to(rgba(0,0,0,0)));
  background: linear-gradient(to bottom,rgba(0,0,0,0.24) 0%,rgba(0,0,0,0) 100%);
  z-index: 51;
}


#viewedByContainer { min-height: 160px; }

/* сам спинер */
.viewer-spinner {
  display:flex; align-items:center; justify-content:center;
  padding:20px;
}
.viewer-spinner__dot {
  width:36px; height:36px;
  border: 3px solid rgba(255,255,255,.55);
  border-top-color: currentColor;
  border-radius:50%;
  animation:spin .8s linear infinite;
  color: #2688eb;
}
@keyframes spin { to { transform: rotate(360deg); } }










.v-sheet--visible{display:flex;}

.v-sheet--dragging .v-sheet__backdrop{transition:none;}


.v-sheet__panel{
  position:absolute;left:0;right:0;bottom:0;
  background:#fff;border-radius:16px 16px 0 0;
  box-shadow:0 -10px 30px rgba(2,6,23,.22);
  transform:translate3d(0,100%,0);
  max-width:532px;margin:0 auto;
  padding: 8px 0 0;
  will-change:transform;
  display:flex;flex-direction:column;max-height:75vh;
}
.v-sheet--animating .v-sheet__panel{transition:transform .26s cubic-bezier(.2,.8,.2,1);}
.v-sheet--dragging .v-sheet__panel{transition:none;}
.v-sheet--open .v-sheet__panel{transform:translate3d(0,0,0);}
.v-sheet--lite .v-sheet__panel{box-shadow:0 -6px 18px rgba(2,6,23,.18);}

.v-sheet__handle{width:42px;height:5px;border-radius:999px;background:#e6e9ee;margin:6px auto 8px;}

.v-sheet__scroll{
  flex:1 1 auto;min-height:160px;overflow-y:auto;overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
}

/* табы пусть фикс высоту не съедают скролл */
#viewerTabs{flex:0 0 auto;}





.v-sheet__backdrop{ 
  opacity:0; 
  pointer-events:none; 
  transition:opacity .26s cubic-bezier(.2,.8,.2,1); 
  will-change:opacity;
}
.v-sheet--open .v-sheet__backdrop {
  opacity: 1;
  pointer-events: auto;
  background: rgba(0,0,0,.5);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

#storyViewer.blocked{
  touch-action: none;
}



@supports ((backdrop-filter: blur(0)) or (-webkit-backdrop-filter: blur(0))) {
  #replyBar, .v-sheet--open .v-sheet__backdrop {
    background: rgba(0,0,0,.35); 
    -webkit-backdrop-filter: blur(5px) saturate(120%);
    backdrop-filter: blur(5px) saturate(120%);
  }
}



/* --- СТИЛИ ДЛЯ ПЛАВНОГО ИСЧЕЗНОВЕНИЯ UI ПРИ ПАУЗЕ --- */
.ui-hidden .shapka_story,
.ui-hidden .story-reply-trigger,
.ui-hidden #muteToggle,
.ui-hidden .Story__stats,
.ui-hidden #storyLikeContainer,
.ui-hidden .story-top-scrim,
.ui-hidden .story-bottom-scrim {
    opacity: 0 !important;
    pointer-events: none !important;
}
.shapka_story, .story-reply-trigger, #muteToggle, .Story__stats, #storyLikeContainer, .story-top-scrim, .story-bottom-scrim {
    transition: opacity 0.25s ease-in-out !important;
}


.reverse-rain-reaction {
    position: absolute;
    bottom: 0; 
    z-index: 99999;
    pointer-events: none;
    opacity: 0;
    animation: floatUp ease-out forwards;
}

@keyframes floatUp {
    0% {
        transform: translate(0, 20px) scale(0.7) rotate(0deg);
        opacity: 0;
    }
    15% {
        opacity: 1; 
    }
    75% {
        opacity: 1; 
    }
    100% {
        transform: translate(var(--tx), var(--ty)) scale(1) rotate(var(--rot));
        opacity: 0;
    }
}



