/* Vushiss Spotlight 1.1.10 — optional popup animations.
   NO effect classes => no visual changes to the original popup.
   Namespaced to the Vushiss popup and its own admin preview. */
.vss-modal .vss-modal-fx-edge{display:none;pointer-events:none}
.vss-modal--cover.vss-fx-star.vss-modal-open .vss-modal-cover-star,
.vss-fx-preview.vss-fx-star .vss-fx-preview-star{
  display:inline-block;
  transform-origin:center center;
  animation:vss-fx-starspin var(--vss-fx-period,12s) linear infinite;
  filter:drop-shadow(0 0 5px rgba(255,169,235,var(--vss-fx-strength,.45)));
}
@keyframes vss-fx-starspin {from{transform:rotate(0)}to{transform:rotate(360deg)}}
.vss-modal--cover.vss-fx-frame.vss-modal-open .vss-modal-fx-edge{
  display:block;position:absolute;z-index:5;inset:13px;border-radius:15px;overflow:hidden;
  border:1px solid rgba(255,204,239,calc(var(--vss-fx-strength,.45) * .22));
  box-shadow:inset 0 0 14px rgba(255,177,224,calc(var(--vss-fx-strength,.45) * .27));
}
.vss-modal--cover.vss-fx-frame.vss-modal-open .vss-modal-fx-edge:before,
.vss-fx-preview.vss-fx-frame .vss-fx-preview-trail:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  padding:2px;
  border-radius:inherit;
  background:linear-gradient(110deg,transparent 23%,rgba(255,239,251,calc(var(--vss-fx-strength,.45) * .62)) 48%,transparent 73%);
  background-size:250% 100%;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask-composite:exclude;
  animation:vss-fx-edgeglow 9s linear infinite;
}
@keyframes vss-fx-edgeglow{from{background-position:160% 50%}to{background-position:-160% 50%}}
.vss-modal--cover.vss-fx-badge.vss-modal-open .vss-modal-cover-badge,
.vss-fx-preview.vss-fx-badge .vss-fx-preview-badge{
  animation:vss-fx-badgeglow 7s ease-in-out infinite;
}
@keyframes vss-fx-badgeglow{
  0%,100%{box-shadow:0 0 0 5px rgba(255,255,255,.055),0 9px 30px rgba(0,0,0,.2)}
  50%{box-shadow:0 0 0 5px rgba(255,255,255,.065),0 0 27px rgba(255,190,240,var(--vss-fx-strength,.45)),0 9px 30px rgba(0,0,0,.2)}
}
/* This enhances the existing entrance only when enabled. */
.vss-modal.vss-fx-entrance .vss-modal-panel{
  opacity:1;
  transition:transform .68s cubic-bezier(.17,.85,.27,1),opacity .68s ease;
}
.vss-modal.vss-fx-entrance:not(.vss-modal-open) .vss-modal-panel{
  transform:translateY(35px) scale(.925);
  opacity:.64;
}
.vss-modal.vss-fx-entrance.vss-modal-open .vss-modal-panel{
  transform:translateY(0) scale(1);
  opacity:1;
}
/* Admin preview: same effect types, speed and strength as the saved public popup. */
.vss-fx-preview{position:relative;width:min(255px,100%);aspect-ratio:530/720;overflow:hidden;
 border-radius:18px;border:1px solid rgba(255,233,250,.65);background:#24132f;
 isolation:isolate;color:#fff;box-shadow:0 12px 32px rgba(31,12,45,.24);
 font-family:Arial,sans-serif;margin:10px auto 13px;
}
.vss-fx-preview-photo{position:absolute;inset:0;background-image:linear-gradient(145deg,#955d9c,#150b27);background-size:cover;background-position:center 30%}
.vss-fx-preview-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,6,22,.35),transparent 36%,rgba(12,6,22,.94) 100%)}
.vss-fx-preview-frame{position:absolute;inset:10px;border:1px solid #ffd9f166;border-radius:12px;z-index:2;pointer-events:none}
.vss-fx-preview-trail{display:none;position:absolute;inset:10px;border-radius:12px;z-index:2;pointer-events:none}
.vss-fx-preview.vss-fx-frame .vss-fx-preview-trail{display:block;border:1px solid rgba(255,204,239,calc(var(--vss-fx-strength,.45)*.22));}
.vss-fx-preview-top{position:absolute;z-index:3;left:20px;right:10px;top:20px;display:flex;align-items:center;gap:6px;font-size:9px;font-weight:800;letter-spacing:.09em;text-shadow:0 2px 7px #160e1c}
.vss-fx-preview-star{display:inline-block;color:#ffc4ec;font-size:21px;line-height:1;transform-origin:center}
.vss-fx-preview-badge{position:absolute;z-index:3;top:60px;right:20px;width:60px;height:60px;background:#27142ca6;border:1px solid #e6c5e4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:50%;color:#ffe1f1;font-size:16px;text-align:center}
.vss-fx-preview-badge small{font-size:5px;letter-spacing:.03em;max-width:53px;line-height:1.2}
.vss-fx-preview-bottom{position:absolute;z-index:3;bottom:28px;left:12px;right:12px;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:18px;text-align:center;font-weight:800;text-shadow:0 2px 8px #100716}
.vss-fx-preview-bottom em{color:#ffc1e7;font:italic 24px Georgia,serif}
.vss-fx-preview-bottom span{font:italic 28px Georgia,serif}
.vss-fx-preview.vss-fx-replaying.vss-fx-entrance{animation:vss-fx-previewenter .68s cubic-bezier(.17,.85,.27,1) both}
@keyframes vss-fx-previewenter {from{opacity:.65;transform:translateY(19px) scale(.925)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:480px){.vss-modal--cover.vss-fx-frame.vss-modal-open .vss-modal-fx-edge{inset:10px;border-radius:11px}}
@media(prefers-reduced-motion:reduce){
 .vss-modal.vss-fx-star .vss-modal-cover-star,
 .vss-modal.vss-fx-frame .vss-modal-fx-edge:before,
 .vss-modal.vss-fx-badge .vss-modal-cover-badge,
 .vss-fx-preview .vss-fx-preview-star,
 .vss-fx-preview .vss-fx-preview-trail:before,
 .vss-fx-preview .vss-fx-preview-badge,
 .vss-fx-preview.vss-fx-replaying,
 .vss-modal.vss-fx-entrance .vss-modal-panel{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}
}
