.eme-stories{
  --bg:#fff; --text:#0f172a;
  background:var(--bg); color:var(--text);
  padding:20px 0 26px;
  overflow:visible;
  isolation:isolate;
}
.eme-stories[data-eme-fullwidth="1"]{ --st-max:100%; }

.eme-stories__head{
  max-width:var(--st-max, 1200px);
  margin:0 auto 12px;
  padding:0 var(--st-pad, 24px);
  display:flex; align-items:center; justify-content:space-between;
}
.eme-stories__head h2{
  margin:0;
  font:800 clamp(1.2rem,2vw,1.8rem)/1.1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}

.eme-stories__viewport{
  position:relative;
  max-width:var(--st-max, 1200px);
  margin:0 auto;
  padding:0 var(--st-pad, 24px);
}
.eme-stories__track{
  display:flex;
  gap:var(--st-gap, 18px);
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:2px 0;
}
.eme-stories__track::-webkit-scrollbar{ display:none; }

.eme-stories__card{
  position:relative;
  flex:0 0 calc((100% - (var(--st-gap, 18px) * (var(--st-per-desk, 6) - 1))) / var(--st-per-desk, 6));
  aspect-ratio:9/16;
  border-radius:var(--st-radius, 22px);
  overflow:hidden;
  background:#0b0f1a;
  box-shadow:0 12px 28px rgba(0,0,0,.14);
  transition:transform .22s ease, box-shadow .22s ease;
  scroll-snap-align:start;
  transform:translateZ(0);
}
.eme-stories__card img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  display:block;
}
.eme-stories__card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 38px rgba(0,0,0,.20);
}

/* arrows */
.eme-stories__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px; height:42px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.10);
  background:rgba(255,255,255,.92);
  color:#111;
  font-size:22px;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(15,23,42,.12);
  z-index:10;
  transition:transform .18s ease, background .18s ease, opacity .18s ease;
}
.eme-stories__arrow:hover{ transform:translateY(-50%) scale(1.04); background:#fff; }
.eme-stories__arrow.prev{ left: calc(var(--st-pad, 24px) + 2px); }
.eme-stories__arrow.next{ right: calc(var(--st-pad, 24px) + 2px); }
.eme-stories__arrow[disabled]{ opacity:.25; pointer-events:none; }

/* mobile: 1 story centrada y swipe */
@media (max-width:768px){
  .eme-stories{ padding:18px 0 22px; }
  .eme-stories__track{
    gap:16px;
    padding-left: calc((100% - var(--st-card-w-mob, 78vw)) / 2);
    padding-right: calc((100% - var(--st-card-w-mob, 78vw)) / 2);
  }
  .eme-stories__card{ flex-basis: var(--st-card-w-mob, 78vw); scroll-snap-align:center; }
  .eme-stories__arrow{
    background:transparent; border:none; box-shadow:none;
    width:auto; height:auto; font-size:34px;
  }
  .eme-stories__arrow.prev{ left: 4vw; }
  .eme-stories__arrow.next{ right: 4vw; }
}

/* Lightbox */
.eme-stories__lightbox{ position:fixed; inset:0; z-index:99999; display:none; }
.eme-stories__lightbox.is-open{ display:block; }
.eme-stories__lb-backdrop{ position:absolute; inset:0; background:rgba(2,6,23,.72); backdrop-filter: blur(8px); }
.eme-stories__lb-panel{
  position:absolute; left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(92vw, 520px);
  aspect-ratio:9/16;
  border-radius:20px;
  overflow:hidden;
  background:#0b1220;
  box-shadow:0 30px 90px rgba(0,0,0,.42);
  display:flex; flex-direction:column;
}
.eme-stories__lb-progress{
  position:absolute; top:10px; left:12px; right:56px;
  height:4px; border-radius:999px;
  background:rgba(255,255,255,.22);
  overflow:hidden;
  opacity:.0; transition:opacity .2s ease;
  z-index:2;
}
.eme-stories__lb-progress span{ display:block; height:100%; width:0%; background:rgba(255,255,255,.92); }
.eme-stories__lightbox.is-open .eme-stories__lb-progress{ opacity:1; }
.eme-stories__lb-img{ width:100%; height:100%; object-fit:cover; display:block; flex:1; }
.eme-stories__lb-close{
  position:absolute; top:10px; right:10px;
  width:40px; height:40px; border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.35);
  color:#fff; font-size:24px; line-height:1;
  cursor:pointer; display:grid; place-items:center; z-index:3;
}
.eme-stories__lb-bar{
  position:absolute; left:0; right:0; bottom:0;
  padding:12px; display:flex; align-items:center; justify-content:space-between; gap:10px;
  background:linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,0));
  color:#fff;
}
.eme-stories__lb-title{ font:700 14px/1.2 system-ui,-apple-system,Segoe UI,Roboto,sans-serif; opacity:.95; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.eme-stories__lb-cta{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 12px; border-radius:999px;
  background:rgba(255,255,255,.92); color:#111;
  text-decoration:none; font:700 13px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif; white-space:nowrap;
}
