#arter-spin-save-root{position:relative;z-index:2147482000}.ass-overlay{position:fixed;inset:0;display:grid;place-items:center;padding:18px;background:rgba(2,5,14,.74);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);z-index:2147482000;opacity:0;pointer-events:none;transition:.22s}.ass-overlay.show{opacity:1;pointer-events:auto}.ass-modal{--p:#ff2ca8;--c:#00e7f2;--u:#8b5cf6;--b1:#050816;--b2:#11182a;position:relative;width:min(920px,calc(100vw - 28px));max-height:92vh;overflow:auto;border-radius:28px;padding:28px;color:#fff;border:1px solid color-mix(in srgb,var(--c) 42%,transparent);background:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--p) 22%,transparent),transparent 30%),radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--c) 20%,transparent),transparent 28%),radial-gradient(circle at 50% 100%,color-mix(in srgb,var(--u) 18%,transparent),transparent 36%),linear-gradient(145deg,var(--b2),var(--b1) 72%);box-shadow:0 32px 100px rgba(0,0,0,.62),0 0 35px color-mix(in srgb,var(--p) 18%,transparent),0 0 55px color-mix(in srgb,var(--c) 15%,transparent)}.ass-close{position:absolute;right:16px;top:14px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;font-size:27px;display:flex;align-items:center;justify-content:center;cursor:pointer}.ass-layout{display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(270px,.95fr);gap:28px;align-items:center}.ass-copy h2{font-size:34px;margin:0 0 8px}.ass-copy p{color:#bdc7d7}.ass-wheel-wrap{position:relative;width:min(470px,82vw);aspect-ratio:1;margin:auto}.ass-wheel{position:absolute;inset:0;border-radius:50%;border:8px solid #0b1020;box-shadow:0 0 35px color-mix(in srgb,var(--p) 36%,transparent),0 0 32px color-mix(in srgb,var(--c) 26%,transparent);transition:transform 3.2s cubic-bezier(.12,.8,.14,1);overflow:hidden}.ass-seg{position:absolute;left:50%;top:50%;width:39%;transform-origin:0 0;text-align:right;font-weight:900;font-size:12px;text-shadow:0 1px 4px #000;line-height:1.05}.ass-seg small{display:block;font-size:8px;font-weight:600;opacity:.75}.ass-pointer{position:absolute;left:50%;top:-10px;transform:translateX(-50%);border-left:18px solid transparent;border-right:18px solid transparent;border-top:34px solid #fff;filter:drop-shadow(0 0 7px var(--c));z-index:5}.ass-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:90px;height:90px;border-radius:50%;display:grid;place-items:center;z-index:4;text-align:center;background:radial-gradient(circle,#15213a,#070b16 72%);box-shadow:0 0 18px var(--c),0 0 28px var(--p);font-size:11px;font-weight:900}.ass-spin{width:100%;margin-top:18px;border:0;border-radius:14px;padding:15px;background:linear-gradient(90deg,var(--p),var(--u),var(--c));color:#fff;font-weight:950;font-size:15px;cursor:pointer;box-shadow:0 0 24px color-mix(in srgb,var(--p) 35%,transparent)}.ass-result{display:none;margin-top:16px;padding:14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}.ass-result.on{display:block}.ass-result strong{display:block;font-size:22px}.ass-ad{width:min(760px,calc(100vw - 28px));padding:0;overflow:hidden}.ass-ad-visual{min-height:260px;background:radial-gradient(circle at 20% 30%,color-mix(in srgb,var(--p) 34%,transparent),transparent 33%),radial-gradient(circle at 80% 25%,color-mix(in srgb,var(--c) 30%,transparent),transparent 30%),linear-gradient(145deg,#0b1020,#03050d);background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:30px}.ass-ad-copy{max-width:620px}.ass-ad-copy h2{font-size:36px;margin:0 0 8px}.ass-ad-copy p{color:#d0d6df}.ass-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.ass-actions a{text-decoration:none;border-radius:12px;padding:12px 16px;font-weight:900;color:#fff}.ass-primary{background:linear-gradient(90deg,var(--p),var(--u))}.ass-secondary{border:1px solid var(--c);background:rgba(0,231,242,.07)}@media(max-width:760px){.ass-modal{padding:20px 16px}.ass-layout{grid-template-columns:1fr}.ass-copy{text-align:center}.ass-wheel-wrap{width:min(390px,84vw)}.ass-copy h2{font-size:27px}.ass-ad-copy h2{font-size:28px}}
.ass-notice{width:min(680px,calc(100vw - 28px));text-align:center;padding:36px 30px 32px}
.ass-notice-icon{width:92px;height:92px;border-radius:50%;margin:0 auto 18px;display:grid;place-items:center;background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.16)}
.ass-notice-icon span{width:44px;height:24px;border:4px solid var(--c);border-radius:999px;box-shadow:0 0 8px var(--c),0 0 18px var(--c),inset 0 0 8px var(--c);transform:rotate(-8deg)}
.ass-notice-kicker{font-size:11px;letter-spacing:.22em;font-weight:900;color:var(--c);margin-bottom:8px}
.ass-notice h2{font-size:34px;line-height:1.08;margin:0 0 12px}
.ass-notice p{max-width:560px;margin:0 auto;color:#d3dae6;line-height:1.65;font-size:15px}
.ass-notice .ass-actions{justify-content:center;margin-top:22px}
.ass-notice-announcement .ass-notice-kicker,.ass-notice-announcement .ass-notice-icon span{color:var(--p);border-color:var(--p);box-shadow:0 0 8px var(--p),0 0 18px var(--p),inset 0 0 8px var(--p)}
.ass-notice-warning{--c:#ffb020}
.ass-notice-warning .ass-primary{background:linear-gradient(90deg,#ff8a00,#ffb020)}
@media(max-width:760px){.ass-notice{padding:30px 18px 26px}.ass-notice h2{font-size:28px}.ass-notice-icon{width:78px;height:78px}}


/* V1.1.1 — desktop spacing refinement */
@media (min-width:761px){
  .ass-layout > .ass-copy{
    transform:translateX(24px);
  }
}
@media (max-width:760px){
  .ass-layout > .ass-copy{
    transform:none;
  }
}


/* V1.1.3 — exact wheel label alignment + faster spin */
.ass-seg{
  position:absolute;
  left:50%;
  top:50%;
  width:0;
  height:0;
  transform:rotate(var(--seg-angle));
  transform-origin:0 0;
  pointer-events:none;
  z-index:2;
}
.ass-seg-text{
  position:absolute;
  left:72px;
  top:-27px;
  width:120px;
  min-height:54px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-weight:900;
  font-size:12px;
  line-height:1.05;
  color:#fff;
  text-shadow:0 1px 4px #000;
  transform:rotate(90deg);
  transform-origin:center;
}
.ass-seg-text small{
  display:block;
  margin-top:3px;
  font-size:8px;
  line-height:1.05;
  font-weight:650;
  opacity:.78;
}
@media(max-width:760px){
  .ass-seg-text{left:60px;width:100px;font-size:10px}
}


/* V1.1.5 — wheel label/color synchronization
   conic-gradient starts at 12 o'clock; CSS transform rotation starts from 3 o'clock.
   JS subtracts 90deg from label-position angle so each label sits inside its true prize slice. */


/* V1.1.7 — start rotating immediately on click while the server selects the prize. */
.ass-wheel.ass-pre-spinning{
  animation:assPreSpin .65s linear infinite !important;
  transition:none !important;
}
@keyframes assPreSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}


/* V1.1.9 — optional center logo in wheel hub */
.ass-hub{overflow:hidden;padding:0}
.ass-hub.ass-hub-logo{background:radial-gradient(circle at 30% 30%,rgba(21,30,56,.98),rgba(3,7,18,.98));}
.ass-hub-logo-img{display:block;width:72%;height:72%;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,255,255,.15));}
.ass-hub-text{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:12px;line-height:1.15;text-align:center;font-weight:900;color:#fff;padding:10px;box-sizing:border-box}


/* V1.2.2 — circular crop for uploaded center logo */
.ass-hub-logo{
  overflow:hidden !important;
  border-radius:50% !important;
}
.ass-hub-logo-img{
  border-radius:50% !important;
  object-fit:cover !important;
  display:block !important;
}

/* Admin preview should match the real wheel */
#assLogoPreviewWrap{
  overflow:hidden !important;
  border-radius:50% !important;
}
#assLogoPreviewWrap img,
#assLogoPreview{
  border-radius:50% !important;
  object-fit:cover !important;
  display:block !important;
}


/* V1.2.3 — animated bell teaser + urgent promo styling */
.ass-bell{
  position:fixed;
  bottom:24px;
  z-index:2147481999;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(135deg,rgba(10,15,32,.96),rgba(20,15,40,.96));
  color:#fff;
  border-radius:999px;
  padding:9px 14px 9px 9px;
  box-shadow:0 10px 35px rgba(0,0,0,.38),0 0 22px color-mix(in srgb,var(--ass-pink,#ff2ca8) 35%,transparent);
  cursor:pointer;
  opacity:0;
  transform:translateY(16px) scale(.95);
  transition:.28s ease;
}
.ass-bell-right{right:24px}.ass-bell-left{left:24px}
.ass-bell.ass-bell-show{opacity:1;transform:translateY(0) scale(1)}
.ass-bell-icon{
  width:48px;height:48px;border-radius:50%;
  display:grid;place-items:center;
  font-size:26px;
  background:radial-gradient(circle,#ffe08a,#ffb020 58%,#d97706);
  box-shadow:0 0 12px rgba(255,176,32,.75),0 0 26px rgba(255,176,32,.38);
  transform-origin:50% 10%;
  animation:assBellRing .8s ease-in-out 2;
}
.ass-bell-ring .ass-bell-icon{animation:assBellRing .8s ease-in-out 2}
.ass-bell-text{font-weight:900;font-size:13px;white-space:nowrap}
@keyframes assBellRing{
  0%,100%{transform:rotate(0)}
  18%{transform:rotate(16deg)}
  36%{transform:rotate(-13deg)}
  54%{transform:rotate(10deg)}
  72%{transform:rotate(-7deg)}
  88%{transform:rotate(3deg)}
}
.ass-ad-badge{
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--p),var(--u));
  color:#fff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.13em;
  box-shadow:0 0 18px color-mix(in srgb,var(--p) 38%,transparent);
  margin-bottom:12px;
}
.ass-ad-copy h2{line-height:1.06;text-shadow:0 0 18px rgba(255,255,255,.08)}
.ass-ad-copy p{max-width:600px;font-size:16px;line-height:1.6}
@media(max-width:760px){
  .ass-bell{bottom:16px;max-width:calc(100vw - 24px)}
  .ass-bell-right{right:12px}.ass-bell-left{left:12px}
  .ass-bell-text{font-size:11px;white-space:normal;text-align:left}
  .ass-bell-icon{width:42px;height:42px;font-size:23px}
}


/* V1.2.4 — centered gold bell teaser before popup */
.ass-bell-center{
  left:50% !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  transform:translate(-50%,-50%) scale(.78) !important;
  padding:0 !important;
  width:126px !important;
  height:126px !important;
  border-radius:50% !important;
  justify-content:center !important;
  background:
    radial-gradient(circle at 34% 28%,rgba(255,255,255,.55),transparent 18%),
    radial-gradient(circle,#ffd766 0 28%,#ffb400 56%,#c77700 78%,#7d3f00 100%) !important;
  border:2px solid rgba(255,235,150,.9) !important;
  box-shadow:
    0 0 18px rgba(255,207,64,.95),
    0 0 46px rgba(255,174,0,.78),
    0 0 88px rgba(255,122,0,.42),
    inset 0 0 18px rgba(255,255,255,.35) !important;
}
.ass-bell-center.ass-bell-show{
  opacity:1 !important;
  transform:translate(-50%,-50%) scale(1) !important;
}
.ass-bell-center .ass-bell-icon{
  width:auto !important;
  height:auto !important;
  background:none !important;
  box-shadow:none !important;
  font-size:68px !important;
  line-height:1 !important;
  filter:
    drop-shadow(0 2px 0 rgba(111,53,0,.8))
    drop-shadow(0 0 9px rgba(255,255,180,.9))
    drop-shadow(0 0 20px rgba(255,184,0,.9));
}
.ass-bell-center .ass-bell-text{display:none !important}
.ass-bell-exit{
  opacity:0 !important;
  transform:translate(-50%,-50%) scale(.55) !important;
  transition:opacity .4s ease,transform .4s ease !important;
}
@media(max-width:760px){
  .ass-bell-center{
    width:108px !important;
    height:108px !important;
    left:50% !important;
    top:50% !important;
    right:auto !important;
    bottom:auto !important;
  }
  .ass-bell-center .ass-bell-icon{font-size:58px !important}
}
