/* RedFeed story viewer — slide horizontal entre creators */
body.rf-story-page{background:#050508!important;overflow:hidden!important}
body.rf-story-page .rf-header,
body.rf-story-page .rf-site-footer,
body.rf-story-page .rf-bottom-nav{display:none!important}
body.rf-story-page .rf-shell::before{display:none!important}
body.rf-story-page main{padding:0!important;margin:0!important}

.rf-story-view{
  min-height:100dvh;height:100dvh;padding:0;margin:0;
  display:grid;place-items:center;background:#050508;
}
.rf-story-phone{
  position:relative;width:min(430px,calc(100vw - 28px));
  height:min(92dvh,860px);max-height:92dvh;
  border-radius:28px;overflow:hidden;
  background:#050508;border:1px solid rgba(255,255,255,.14);
  box-shadow:0 30px 90px rgba(0,0,0,.65);
  touch-action:none;
}
.rf-story-stage{
  position:absolute;inset:0;z-index:1;background:#050508;
  transform:translateX(0);
  transition:transform .18s ease-out;
  will-change:transform;
}
.rf-story-stage.rf-story-dragging{transition:none}

.rf-story-preload-pool{
  position:absolute;width:0;height:0;overflow:hidden;opacity:0;pointer-events:none;z-index:0;
}

.rf-story-swap-track{
  position:absolute;inset:0;z-index:1;
  display:flex;width:200%;height:100%;
  transform:translateX(0);
  transition:transform .42s cubic-bezier(.4,0,.2,1);
  will-change:transform;
  background:#050508;
}
.rf-story-swap-track.rf-animate{transform:translateX(-50%)}
.rf-story-swap-track.rf-from-prev{transform:translateX(-50%)}
.rf-story-swap-track.rf-from-prev.rf-animate{transform:translateX(0)}
.rf-story-swap-pane{
  flex:0 0 50%;width:50%;height:100%;position:relative;overflow:hidden;
  background:#050508;
}
.rf-story-swap-pane .rf-story-stage{position:absolute;inset:0}

.rf-story-slide{
  position:absolute;inset:0;z-index:1;
  display:none;
  transform:translateX(0);
  transition:transform .42s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.rf-story-slide.active{
  display:block;
  z-index:2;
  pointer-events:auto;
}
.rf-story-phone .rf-story-slide:first-child:last-child{
  display:block;
  z-index:2;
  pointer-events:auto;
}
.rf-story-slide.rf-slide-anim{
  display:block;
  z-index:3;
  pointer-events:none;
}
.rf-story-slide.rf-slide-from-next{transform:translateX(100%)}
.rf-story-slide.rf-slide-from-prev{transform:translateX(-100%)}
.rf-story-slide.rf-slide-to-next{transform:translateX(-100%)}
.rf-story-slide.rf-slide-to-prev{transform:translateX(100%)}

.rf-story-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;background:#08080c;pointer-events:none}
.rf-story-backdrop.is-blur{transform:scale(1.08)}
.rf-story-media-box{position:absolute;inset:0;z-index:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.rf-story-media{position:relative;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center center;background:transparent}
.rf-story-shade{
  position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(180deg,rgba(0,0,0,.62),transparent 26%,rgba(0,0,0,.15) 55%,rgba(0,0,0,.82));
}
.rf-story-overlays{position:absolute;inset:0;z-index:2;pointer-events:none}
.rf-story-overlays .rf-ce-layer.is-gif img{max-width:min(52vw,220px);max-height:min(40vh,260px)}

.rf-story-top{
  position:absolute;top:0;left:0;right:0;
  padding:max(10px,env(safe-area-inset-top)) 14px 10px;z-index:8;
  pointer-events:none;
}
.rf-story-top a,.rf-story-top button{pointer-events:auto}
.rf-story-menu-btn{
  position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;z-index:12;
  width:36px;height:36px;border-radius:50%;border:0;
  background:rgba(0,0,0,.45);color:#fff;font-size:1rem;cursor:pointer;
  display:grid;place-items:center;-webkit-tap-highlight-color:transparent;
}
.rf-story-sound-btn{
  position:absolute;top:calc(12px + env(safe-area-inset-top));right:52px;z-index:12;
  width:36px;height:36px;border-radius:50%;border:0;
  background:rgba(0,0,0,.45);color:#fff;font-size:1rem;cursor:pointer;
  display:grid;place-items:center;-webkit-tap-highlight-color:transparent;
}
.rf-story-sound-btn[hidden]{display:none!important}
.rf-story-share-badge{
  position:absolute;left:16px;top:calc(88px + env(safe-area-inset-top));z-index:6;
  display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;
  background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.18);
  color:#fff;font-size:.72rem;font-weight:800;pointer-events:none;
}
.rf-story-share-badge-ico{font-size:.9rem;line-height:1}
.rf-story-action-menu,.rf-story-source-menu{
  position:fixed;inset:0;z-index:200;display:none;align-items:flex-end;justify-content:center;
}
.rf-story-action-menu.on,.rf-story-source-menu.on{display:flex}
.rf-story-action-backdrop,.rf-story-source-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.rf-story-action-panel,.rf-story-source-panel{
  position:relative;z-index:1;width:min(420px,100%);padding:16px 16px calc(16px + env(safe-area-inset-bottom));
  background:#12121a;border-radius:20px 20px 0 0;border:1px solid rgba(255,255,255,.12);
}
.rf-story-action-panel h4,.rf-story-source-panel h4{margin:0 0 6px;color:#fff;font-size:1rem}
.rf-story-source-sub{margin:0 0 12px;color:#ccc;font-size:.82rem}
.rf-story-action-item,.rf-story-source-act{
  display:flex;align-items:center;gap:10px;width:100%;padding:14px 12px;margin-top:8px;
  border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);
  color:#fff;font-weight:800;font-size:.9rem;cursor:pointer;
}
.rf-story-action-item.is-del{border-color:rgba(255,23,77,.45);color:#ff8fab}
.rf-story-action-cancel,.rf-story-source-cancel{
  display:block;width:100%;margin-top:10px;padding:12px;border:0;background:transparent;color:#aaa;font-weight:700;cursor:pointer;
}
.rf-progress-row{display:grid;grid-template-columns:repeat(var(--count,1),1fr);gap:5px;margin-bottom:10px}
.rf-progress{height:3px;border-radius:999px;background:rgba(255,255,255,.22);overflow:hidden}
.rf-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff174d,#ff4da6)}
.rf-progress.done span{width:100%}
.rf-progress.active span{animation:rfStoryBar var(--rf-story-bar-ms,8s) linear forwards}
@keyframes rfStoryBar{from{width:100%}to{width:0}}

.rf-story-author{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.rf-story-author img{
  flex-shrink:0;width:40px;height:40px;min-width:40px;min-height:40px;
  border-radius:50%;object-fit:cover;object-position:center center;
  border:2px solid rgba(255,23,77,.65);box-shadow:0 0 12px rgba(255,23,77,.35);
}
.rf-story-author strong{display:block;font-size:.92rem;font-weight:900}
.rf-story-author small{color:#d8d8e8;font-size:.74rem}
.rf-story-verified{
  display:inline-flex;align-items:center;justify-content:center;
  width:16px;height:16px;margin-left:4px;border-radius:50%;
  background:linear-gradient(135deg,#ff174d,#ff4da6);font-size:.55rem;color:#fff;vertical-align:middle;
}

.rf-story-close{
  position:absolute;right:12px;top:max(44px,calc(env(safe-area-inset-top) + 36px));z-index:9;
  width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:rgba(0,0,0,.45);border:0;color:#fff;text-decoration:none;cursor:pointer;
}

.rf-story-compose{
  position:absolute;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:8;
  display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;
}
.rf-story-compose-field{
  display:flex;align-items:center;gap:4px;min-width:0;min-height:44px;
  padding:4px 4px 4px 14px;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
}
.rf-story-compose-input{
  flex:1;min-width:0;border:0;background:transparent;color:#fff;
  font-size:.82rem;line-height:1.3;outline:none;
}
.rf-story-compose-input::placeholder{color:#b8b8c8}
.rf-story-compose-send{
  width:36px;height:36px;border-radius:50%;border:0;flex-shrink:0;
  display:grid;place-items:center;background:linear-gradient(135deg,#ff174d,#ff4da6);
  color:#fff;font-size:.85rem;cursor:pointer;
}
.rf-story-compose-send:disabled{opacity:.55;cursor:default}
.rf-story-compose-ico{
  width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;
  background:rgba(255,255,255,.08);color:#fff;font-size:1rem;text-decoration:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;tap-highlight-color:transparent;outline:none;
}
.rf-story-compose-ico.like{color:#ff174d}
.rf-story-compose-toast{
  position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:12;
  padding:10px 14px;border-radius:12px;font-size:.78rem;font-weight:600;text-align:center;
  background:rgba(18,18,24,.92);color:#fff;border:1px solid rgba(255,255,255,.12);
  opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s,transform .2s;
}
.rf-story-compose-toast.on{opacity:1;transform:translateY(0)}
.rf-story-compose-toast.is-ok{border-color:rgba(255,77,166,.45);color:#ffd6ec}

.rf-story-bottom{
  position:absolute;left:16px;right:16px;bottom:calc(64px + env(safe-area-inset-bottom));z-index:6;
  pointer-events:none;
}
.rf-story-bottom h1{font-family:var(--rf-title);font-size:1.2rem;margin:0 0 4px;color:#fff}
.rf-story-bottom p{margin:0;color:#e4e4ef;font-size:.82rem;line-height:1.4;max-height:3.2em;overflow:hidden}

.rf-story-tap-zone{
  position:absolute;top:0;bottom:72px;width:38%;z-index:4;border:0;background:transparent;
  cursor:pointer;pointer-events:none;
  -webkit-tap-highlight-color:transparent;tap-highlight-color:transparent;outline:none;
}
.rf-story-tap-zone:active{background:transparent}
.rf-story-tap-zone.prev{left:0}
.rf-story-tap-zone.next{right:0;width:45%}

.rf-story-poll{
  position:absolute;left:16px;right:16px;bottom:calc(140px + env(safe-area-inset-bottom));z-index:6;
  padding:14px;border-radius:18px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(8px);
}
.rf-story-poll strong{display:block;font-size:.92rem;margin-bottom:10px;line-height:1.3;color:#fff}
.rf-story-poll-btn{
  display:block;width:100%;text-align:left;border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);color:#fff;border-radius:14px;padding:11px 12px;margin-top:8px;
  font-weight:900;cursor:pointer;position:relative;overflow:hidden;
}
.rf-story-poll-btn[disabled]{opacity:.85;cursor:default}
.rf-story-poll-bar{
  position:absolute;left:0;top:0;bottom:0;
  background:linear-gradient(90deg,rgba(255,23,77,.45),rgba(255,46,166,.35));z-index:0;
  transition:width .25s ease;
}
.rf-story-poll-label{position:relative;z-index:1;display:flex;justify-content:space-between;gap:8px}
.rf-story-poll-meta{margin-top:8px;font-size:.72rem;color:#ddd;opacity:.9}

/* Desktop — story ativo sempre no centro da tela; peeks/setas absolutos nas laterais */
@media (min-width:901px){
  .rf-story-view{
    width:100%;max-width:none;margin:0;
    min-height:100dvh;height:100dvh;display:flex;align-items:center;justify-content:center;
    padding:0;box-sizing:border-box;
  }
  .rf-story-desktop-carousel{
    --rf-story-center-w:min(420px,36vw);
    --rf-story-peek-w:min(240px,20vw);
    --rf-story-stage-h:min(860px,calc(100dvh - 40px));
    position:relative;
    width:100%;max-width:100vw;
    height:var(--rf-story-stage-h);
    margin:0 auto;
  }
  .rf-story-desktop-carousel .rf-story-phone{
    position:absolute;left:50%;top:50%;z-index:3;
    transform:translate(-50%,-50%);
    width:var(--rf-story-center-w)!important;
    height:var(--rf-story-stage-h)!important;
    max-height:var(--rf-story-stage-h)!important;
    margin:0!important;
    border-radius:10px!important;border:0!important;
    box-shadow:0 8px 48px rgba(0,0,0,.55)!important;
    flex:none!important;
  }
  .rf-story-phone{
    width:min(420px,36vw)!important;
    height:min(860px,calc(100dvh - 40px))!important;max-height:calc(100dvh - 40px)!important;
    border-radius:10px!important;border:0!important;
    box-shadow:0 8px 48px rgba(0,0,0,.55)!important;
  }
  .rf-story-desktop-peek{
    position:absolute;top:50%;z-index:2;
    width:var(--rf-story-peek-w);
    height:min(520px,calc(100dvh - 120px));
    max-height:calc(100dvh - 120px);
    aspect-ratio:9/16;
    padding:0;border:0;border-radius:10px;overflow:hidden;cursor:pointer;
    background:#141414;
    opacity:.52;
    transform:translateY(-50%) scale(.96);
    transition:opacity .18s ease,transform .18s ease;
    -webkit-tap-highlight-color:transparent;
  }
  .rf-story-desktop-peek.is-prev{
    right:calc(50% + (var(--rf-story-center-w) / 2) + clamp(12px,2vw,28px));
    left:auto;
  }
  .rf-story-desktop-peek.is-next{
    left:calc(50% + (var(--rf-story-center-w) / 2) + clamp(12px,2vw,28px));
    right:auto;
  }
  .rf-story-desktop-peek:hover,.rf-story-desktop-peek:focus-visible{
    opacity:.88;transform:translateY(-50%) scale(.98);
  }
  .rf-story-desktop-peek[hidden]{display:none!important}
  .rf-story-desktop-peek-shade{
    position:absolute;inset:0;z-index:2;pointer-events:none;
    background:linear-gradient(180deg,rgba(0,0,0,.55),transparent 35%,rgba(0,0,0,.45));
  }
  .rf-story-desktop-peek-media{
    position:absolute;inset:0;background-size:cover;background-position:center;background-color:#1a1a1a;
  }
  .rf-story-desktop-peek-user{
    position:absolute;top:14px;left:12px;right:12px;z-index:3;
    display:flex;align-items:center;gap:8px;color:#fff;font-size:.78rem;font-weight:800;
    text-shadow:0 1px 4px rgba(0,0,0,.65);pointer-events:none;
  }
  .rf-story-desktop-peek-user img{
    width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.35);
  }
  .rf-story-desktop-peek-user span{
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .rf-story-desktop-nav{
    position:absolute;top:50%;z-index:4;
    width:32px;height:32px;border-radius:50%;border:0;padding:0;
    display:grid;place-items:center;cursor:pointer;
    transform:translateY(-50%);
    background:rgba(255,255,255,.22);color:#fff;font-size:.85rem;
    transition:background .15s,opacity .15s;
  }
  .rf-story-desktop-nav.is-prev{
    left:calc(50% - (var(--rf-story-center-w) / 2) - 40px);
  }
  .rf-story-desktop-nav.is-next{
    left:calc(50% + (var(--rf-story-center-w) / 2) + 8px);
  }
  .rf-story-desktop-nav:hover:not(:disabled){background:rgba(255,255,255,.32)}
  .rf-story-desktop-nav:disabled{opacity:.22;cursor:default}
  .rf-story-overlay .rf-story-close,
  body.rf-story-page .rf-story-close{
    position:fixed;top:18px;right:22px;z-index:2147483305;
    width:40px;height:40px;background:transparent;border:0;font-size:1.35rem;
    box-shadow:none;
  }
  .rf-story-overlay .rf-story-close:hover,
  body.rf-story-page .rf-story-close:hover{background:rgba(255,255,255,.08)}
  .rf-story-compose-cam{display:none!important}
  .rf-story-compose{
    grid-template-columns:minmax(0,1fr) auto auto!important;
    left:14px!important;right:14px!important;
  }
  .rf-story-compose-field{
    min-height:44px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16);
  }
  .rf-story-author img{width:32px;height:32px;border-width:0;box-shadow:none}
  .rf-story-author strong{font-size:.88rem;font-weight:700}
  .rf-story-tap-zone{pointer-events:none}
}

@media (max-width:640px){
  .rf-story-view{
    padding:0;margin:0;display:block;
    min-height:100dvh;height:100dvh;width:100%;
  }
  .rf-story-phone{
    width:100%;height:100dvh;min-height:100dvh;max-height:none;
    border-radius:0;border:0;box-shadow:none;
    position:fixed;inset:0;z-index:120;
    box-sizing:border-box;
  }
  .rf-story-compose{
    left:10px;right:10px;
    bottom:max(8px,env(safe-area-inset-bottom,0px));
    padding-bottom:0;
  }
  .rf-story-bottom{
    left:14px;right:14px;
    bottom:calc(56px + max(8px,env(safe-area-inset-bottom,0px)));
  }
  .rf-story-poll{
    bottom:calc(128px + max(8px,env(safe-area-inset-bottom,0px)));
  }
  .rf-story-tap-zone{bottom:max(56px,calc(56px + env(safe-area-inset-bottom,0px)))}
}

/* Intro do criador — 1ª vez por perfil (capa blur + avatar na bola neon) */
.rf-story-slide.rf-story-intro-pending .rf-story-media-box{
  opacity:0;visibility:hidden;pointer-events:none;
}
.rf-story-creator-intro{
  position:absolute;inset:0;z-index:24;pointer-events:none;
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .34s ease;
}
.rf-story-creator-intro[hidden]{display:none!important}
.rf-story-creator-intro.is-on{opacity:1}
.rf-story-creator-intro.is-out{opacity:0;transition:opacity .32s ease}
.rf-story-creator-intro-bg{
  position:absolute;inset:-8%;background:#08080c center/cover no-repeat;
  transform:scale(1.06);filter:blur(20px) brightness(.52) saturate(1.08);
}
.rf-story-creator-intro-bg:not(.has-cover){
  background:radial-gradient(circle at 50% 35%,rgba(255,23,77,.22),transparent 55%),#08080c;
  filter:none;transform:none;
}
.rf-story-creator-intro-scrim{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.35) 45%,rgba(0,0,0,.62));
}
.rf-story-creator-intro-center{
  position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:14px;
  padding:24px;text-align:center;max-width:min(320px,88vw);
  transform:scale(.88) translateY(8px);opacity:0;
  transition:transform .48s cubic-bezier(.2,.85,.25,1),opacity .42s ease;
}
.rf-story-creator-intro.is-on .rf-story-creator-intro-center{
  transform:scale(1) translateY(0);opacity:1;
}
.rf-story-creator-intro-ring{
  position:relative;width:96px;height:96px;border-radius:50%;padding:3px;box-sizing:border-box;
  background:conic-gradient(from 210deg,#ff174d 0deg,#ff4d6d 34deg,#ff7a59 68deg,#ffb347 102deg,#ffc857 136deg,#ff6b5a 172deg,#e11d48 208deg,#be123c 244deg,#ff4569 290deg,#ff174d 360deg);
  box-shadow:0 8px 28px rgba(255,23,77,.35);
}
.rf-story-creator-intro-glow{
  position:absolute;inset:-18px;border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,rgba(255,46,166,.55) 0%,rgba(255,23,77,.28) 42%,transparent 72%);
  filter:blur(10px);opacity:.9;
  animation:rfStoryIntroNeon 1.85s ease-in-out infinite;
}
.rf-story-creator-intro-avatar{
  position:relative;z-index:1;display:block;width:100%;height:100%;border-radius:50%;
  object-fit:cover;object-position:center;border:2.5px solid #fff;box-sizing:border-box;background:#0d0d12;
}
.rf-story-creator-intro-name{
  margin:0;font-size:1.06rem;font-weight:800;line-height:1.25;color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.75);
}
@keyframes rfStoryIntroNeon{
  0%,100%{opacity:.62;transform:scale(.94)}
  50%{opacity:1;transform:scale(1.06)}
}
