
.rw-screen {
  --rw-bg: #070b14; --rw-panel: rgba(255, 255, 255, .045); --rw-line: rgba(255, 255, 255, .09);
  --rw-text: #f2f5fa; --rw-muted: #9aa8bd; --rw-accent: #e8c840; --rw-accent2: #3868c0; --rw-live: #ff4d6d; --rw-out: #120e1c;
  position: fixed; inset: 0; z-index: 9400; display: none;
  overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
  background:
    radial-gradient(70% 46% at 50% 30%, rgba(56, 104, 192, .22) 0%, transparent 70%),
    radial-gradient(60% 40% at 50% 100%, rgba(232, 200, 64, .07) 0%, transparent 70%),
    var(--rw-bg);
  color: var(--rw-text); font-family: 'Syne', system-ui, sans-serif; font-variant-numeric: lining-nums tabular-nums;
  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
}
.rw-screen.is-open { display: block; }
.rw-screen *, .rw-screen *::before, .rw-screen *::after { box-sizing: border-box; }
html.rw-lock, html.rw-lock body { overflow: hidden !important; }
html.rw-lock body { visibility: hidden; }
.rw-toast { position: fixed; left: 50%; bottom: calc(24px + env(safe-area-inset-bottom)); z-index: 50; transform: translateX(-50%); max-width: calc(100% - 32px); padding: 12px 16px; background: #1b2236; border: 1px solid var(--rw-line); color: var(--rw-text); font-size: 14px; }
.rw-screen.rw-hw {
  --rw-bg: #110d1a; --rw-panel: rgba(255, 240, 220, .045); --rw-line: rgba(255, 200, 150, .12);
  --rw-accent: #ffa048; --rw-accent2: #e07012; --rw-muted: #b4a9c8;
  background:
    radial-gradient(70% 46% at 50% 30%, rgba(140, 255, 58, .10) 0%, transparent 70%),
    radial-gradient(60% 44% at 50% 100%, rgba(224, 112, 18, .14) 0%, transparent 70%),
    var(--rw-bg);
}
.rw-px { image-rendering: pixelated; }

.rw-top {
  position: sticky; top: 0; z-index: 30; display: flex; align-items: center; gap: 12px;
  padding: 8px 16px; min-height: 56px; background: var(--rw-bg); border-bottom: 1px solid var(--rw-line); margin-bottom: 10px;
}
.rw-back {
  flex: none; width: 44px; height: 44px; border: 1px solid var(--rw-line); border-radius: 12px;
  background: var(--rw-panel); color: var(--rw-text); font-size: 28px; line-height: 1; cursor: pointer;
  display: grid; place-items: center; padding-bottom: 4px;
}
.rw-back:focus-visible, .rw-screen button:focus-visible, .rw-search:focus-visible { outline: 2px solid var(--rw-accent); outline-offset: 2px; }
.rw-title { display: grid; min-width: 0; flex: 1; }
.rw-title b { font-size: 18px; font-weight: 800; line-height: 1.15; }
.rw-sub { font-size: 13px; color: var(--rw-muted); }
.rw-live {
  flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 999px;
  background: rgba(255, 77, 109, .14); border: 1px solid rgba(255, 77, 109, .45); color: #ffd6de;
  font: 600 13px/1 'Syne', sans-serif; text-transform: uppercase; letter-spacing: .06em;
}
.rw-live i { width: 8px; height: 8px; border-radius: 50%; background: radial-gradient(circle, #ff4d6d 55%, transparent 60%); animation: rwBlink 1.2s steps(2, jump-none) infinite; }
.rw-live[hidden] { display: none; }

.rw-body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 0 16px 28px; max-width: 1360px; margin: 0 auto; }
.rw-stage { display: flex; flex-direction: column; align-items: center; min-width: 0; }
@media (min-width: 1000px) {
  .rw-body { grid-template-columns: minmax(0, 1fr) 400px; align-items: start; gap: 28px; padding: 0 28px 32px; }
  .rw-side { position: sticky; top: 64px; max-height: calc(100vh - 80px); overflow-y: auto; overscroll-behavior: contain; padding-right: 4px; }
}

.rw-prize { display: flex; align-items: center; gap: 12px; width: 100%; max-width: 640px; min-height: 56px; margin: 2px 0 10px; }
.rw-prize-img { width: 56px; height: 56px; object-fit: contain; flex: none; }
.rw-prize-tok { flex: none; width: 56px; height: 56px; display: grid; place-items: center; border-radius: 14px; background: rgba(232, 200, 64, .14); color: var(--rw-accent); font: 22px 'Bebas Neue', sans-serif; }
.rw-prize-t { display: grid; min-width: 0; }
.rw-prize-t b { font-size: 17px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rw-prize-t span { font-size: 13px; color: var(--rw-muted); min-height: 2.7em; line-height: 1.35; }
.rw-none { color: var(--rw-muted); margin: 8px 0; }

.rw-lens { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; width: 100%; max-width: 640px; margin-bottom: 10px; }
@media (min-width: 1000px) { .rw-lens { grid-template-columns: repeat(7, minmax(0, 1fr)); } }
.rw-tile {
  display: grid; justify-items: center; gap: 2px; min-width: 0; padding: 7px 4px 6px; border-radius: 12px;
  background: var(--rw-panel); border: 1px solid var(--rw-line); opacity: .62;
}
.rw-tile--empty { visibility: hidden; }
.rw-tile--on { opacity: 1; border-color: var(--rw-accent); background: rgba(232, 200, 64, .12); transform: translateY(-3px); }
.rw-hw .rw-tile--on { background: rgba(255, 160, 72, .14); }
.rw-tile--me .rw-no { color: #ffe27a; }
.rw-tile .rw-ava { width: 34px; height: 34px; }
.rw-no { font: 17px/1 'Bebas Neue', sans-serif; letter-spacing: .02em; }
.rw-nm { width: 100%; font-size: 11.5px; line-height: 1.2; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--rw-muted); }
.rw-tile--on .rw-nm { color: var(--rw-text); }
.rw-lens.is-fast .rw-nm { opacity: .55; }

.rw-ava { position: relative; display: inline-grid; place-items: center; width: 32px; height: 32px; flex: none; border-radius: 50%; overflow: visible; }
.rw-ava, .rw-ava > img, .rw-ava > b { border-radius: 50% !important; }
.rw-ava > img, .rw-ava > b { width: 100%; height: 100%; object-fit: cover; display: grid; place-items: center; }
.rw-ava > b { color: #fff; font: 700 15px 'Syne', sans-serif; border: 2px solid var(--rw-out); }
.rw-ava > img { border: 2px solid var(--rw-out); background: #2a2340; }
.rw-ava > .rw-fr { display: block; position: absolute; left: 50%; top: 50%; width: 167%; height: 167%; max-width: none; transform: translate(-50%, -50%); border: 0 !important; border-radius: 0 !important; background: none !important; image-rendering: pixelated; pointer-events: none; }
.rw-row .rw-ava { margin: 0 10px; }

.rw-wheelbox { position: relative; width: min(100%, 58vh, 640px); aspect-ratio: 1; margin: 22px auto 58px; }
@media (min-width: 1000px) { .rw-wheelbox { width: min(100%, 68vh, 640px); } }
.rw-wheel, .rw-fx { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.rw-rot { position: absolute; inset: 0; z-index: 2; overflow: hidden; border-radius: 50% !important; box-shadow: 0 18px 50px -18px rgba(0, 0, 0, .8); }
.rw-wheel { will-change: transform; border-radius: 50% !important; }
.rw-fx { z-index: 4; pointer-events: none; }
.rw-bulbs { position: absolute; inset: -12px; z-index: 1; border-radius: 50% !important;
  background: radial-gradient(circle, transparent calc(50% - 15px), #120e1c calc(50% - 14px), #2b2440 calc(50% - 11px), #1b1629 calc(50% - 2px), #120e1c calc(50% - 1px), transparent 50%); }
.rw-hw .rw-bulbs { background: radial-gradient(circle, transparent calc(50% - 15px), #120e1c calc(50% - 14px), #4e331f calc(50% - 11px), #3a2617 calc(50% - 2px), #120e1c calc(50% - 1px), transparent 50%); }
.rw-bulbs canvas { position: absolute; left: 0; top: 0; }
.rw-bulb-b { animation: rwBlink 1s steps(2, jump-none) infinite; }
.rw-bulb-a { animation: rwBlink 1s steps(2, jump-none) infinite reverse; }
@keyframes rwBlink { 0% { opacity: 1; } 100% { opacity: .18; } }

.rw-pointer {
  position: absolute; left: 50%; top: -30px; z-index: 6; width: 44px; height: 56px; margin-left: -22px;
  background: url(/raffle-wheel/pointer.png?v=rw6) 0 0 / 100% 100% no-repeat; image-rendering: pixelated;
  pointer-events: none;
}
.rw-hw .rw-pointer { background-image: url(/raffle-wheel/pointer-hw.png?v=rw6); height: 54px; top: -30px; }
@media (min-width: 1000px) { .rw-pointer { width: 66px; height: 84px; margin-left: -33px; top: -46px; } .rw-hw .rw-pointer { height: 81px; } }

.rw-hub {
  position: absolute; left: 50%; top: 50%; z-index: 5; width: 31%; aspect-ratio: 1; transform: translate(-50%, -50%);
  display: grid; place-content: center; text-align: center; border-radius: 50% !important;
  background: radial-gradient(circle at 38% 34%, #2a3352 0%, #141a2c 62%, #0b0f1a 100%);
  border: 3px solid var(--rw-out); box-shadow: 0 0 0 3px rgba(232, 200, 64, .5), inset 0 -6px 0 rgba(0, 0, 0, .35);
  pointer-events: none;
}
.rw-hw .rw-hub { background: radial-gradient(circle at 38% 34%, #3b2c55 0%, #1d1530 62%, #120e1c 100%); box-shadow: 0 0 0 3px rgba(255, 160, 72, .55), inset 0 -6px 0 rgba(0, 0, 0, .35); }
.rw-hub-n { font: clamp(26px, 7.6vw, 54px)/1 'Bebas Neue', sans-serif; letter-spacing: .02em; color: #fff; }
.rw-hub.is-timer .rw-hub-n { font-size: clamp(20px, 5.4vw, 38px); }
.rw-hub-t { font-size: clamp(11px, 2.6vw, 14px); color: var(--rw-muted); margin-top: 2px; }
.rw-hub { transition: opacity .15s ease-out; }
.rw-screen.is-won .rw-hub { opacity: 0; }
@media (min-width: 1000px) { .rw-hub-n { font-size: 58px; } .rw-hub.is-timer .rw-hub-n { font-size: 40px; } .rw-hub-t { font-size: 15px; } }

.rw-standwrap { position: absolute; left: 50%; bottom: -56px; z-index: 0; width: 144px; height: 88px; margin-left: -72px; pointer-events: none; }
.rw-standwrap::before { content: ''; position: absolute; left: -46px; right: -46px; bottom: -6px; height: 12px; background: radial-gradient(closest-side, rgba(0, 0, 0, .45), rgba(0, 0, 0, .22) 60%, transparent); }
.rw-stand { position: absolute; inset: 0; background: url(/raffle-wheel/stand.png?v=rw6) 0 0 / 100% 100% no-repeat; image-rendering: pixelated; }
.rw-hw .rw-stand { background-image: url(/raffle-wheel/stand-hw.png?v=rw6); }
.rw-pk { display: none; position: absolute; bottom: -2px; width: 32px; height: 28px; background: url(/raffle-wheel/pumpkin.png?v=rw6) 0 0 / 100% 100% no-repeat; image-rendering: pixelated; }
.rw-hw .rw-pk { display: block; }
.rw-pk-l { left: -30px; }
.rw-pk-r { right: -30px; transform: scaleX(-1); }
@media (min-width: 1000px) { .rw-standwrap { width: 216px; height: 132px; margin-left: -108px; bottom: -84px; } .rw-pk { width: 48px; height: 42px; } .rw-pk-l { left: -44px; } .rw-pk-r { right: -44px; } .rw-wheelbox { margin-bottom: 92px; } }

.rw-ticker { width: 100%; max-width: 640px; min-height: 44px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.rw-tick { display: block; font-size: 15px; line-height: 1.4; color: var(--rw-muted); opacity: 0; transform: translateY(10px); transition: opacity .25s ease-out, transform .25s ease-out; text-align: center; }
.rw-tick b { color: var(--rw-text); }
.rw-nw { white-space: nowrap; }
.rw-tick.is-in { opacity: 1; transform: none; }
.rw-grave { display: inline-block; flex: none; width: 24px; height: 28px; margin: -6px 6px 0 0; background: url(/raffle-wheel/grave.png?v=rw6) 0 0 / 100% 100% no-repeat; image-rendering: pixelated; vertical-align: middle; }
.rw-row .rw-grave, .rw-feed .rw-grave { width: 12px; height: 14px; margin: 0; }

.rw-side { display: grid; gap: 14px; min-width: 0; }
.rw-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.rw-stats:empty { display: none; }
.rw-stat { display: grid; gap: 2px; padding: 10px 12px; border-radius: 14px; background: var(--rw-panel); border: 1px solid var(--rw-line); min-width: 0; }
.rw-stat b { font: 28px/1 'Bebas Neue', sans-serif; letter-spacing: .02em; }
.rw-stat span { font-size: 12.5px; color: var(--rw-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.rw-me { display: grid; gap: 10px; padding: 12px 14px; border-radius: 16px; background: var(--rw-panel); border: 1px solid var(--rw-line); }
.rw-me:empty { display: none; }
.rw-me.is-cue { animation: rwCue .9s ease-out 2; }
@keyframes rwCue { 0% { transform: none; } 30% { transform: translateX(-4px); } 60% { transform: translateX(4px); } 100% { transform: none; } }
.rw-me-line { display: flex; align-items: center; gap: 10px; font-size: 15px; line-height: 1.35; }
.rw-me-line b { font: 22px/1 'Bebas Neue', sans-serif; color: #ffe27a; letter-spacing: .02em; margin-right: 2px; }
.rw-find, .rw-mine { margin-left: auto; flex: none; min-height: 40px; padding: 0 14px; border-radius: 12px; border: 1px solid var(--rw-line); background: rgba(255, 255, 255, .06); color: var(--rw-text); font: 600 14px 'Syne', sans-serif; cursor: pointer; }
.rw-mine[hidden] { display: none; }
.rw-hide { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; padding-top: 2px; }
.rw-hide input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.rw-sw { flex: none; position: relative; width: 46px; height: 28px; border-radius: 14px; background: rgba(255, 255, 255, .14); border: 1px solid var(--rw-line); margin-top: 2px; }
.rw-sw::after { content: ''; position: absolute; left: 3px; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .18s ease-out; }
.rw-hide input:checked + .rw-sw { background: var(--rw-accent2); border-color: transparent; }
.rw-hide input:checked + .rw-sw::after { transform: translateX(18px); }
.rw-hide input:focus-visible + .rw-sw { outline: 2px solid var(--rw-accent); outline-offset: 2px; }
.rw-hide-t { display: grid; gap: 2px; font-size: 14.5px; }
.rw-hide-t small { font-size: 12.5px; color: var(--rw-muted); line-height: 1.35; }

.rw-feed { display: none; padding: 12px 14px; border-radius: 16px; background: var(--rw-panel); border: 1px solid var(--rw-line); }
.rw-feed:has(li) { display: block; }
.rw-feed h3, .rw-listhead h3 { margin: 0 0 8px; font-size: 15px; font-weight: 800; }
.rw-feed ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.rw-feed li { display: flex; align-items: center; gap: 8px; font-size: 13.5px; min-width: 0; }
.rw-feed li span:nth-child(2) { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rw-feed em { font-style: normal; color: var(--rw-muted); font-size: 12px; flex: none; }
@media (max-width: 999px) { .rw-feed { display: none !important; } }

.rw-listbox { padding: 12px 14px 6px; border-radius: 16px; background: var(--rw-panel); border: 1px solid var(--rw-line); min-width: 0; }
.rw-listhead { display: flex; align-items: center; gap: 10px; }
.rw-listhead h3 { margin: 0; }
.rw-search { width: 100%; min-height: 44px; margin: 10px 0 8px; padding: 0 14px; border-radius: 12px; border: 1px solid var(--rw-line); background: rgba(0, 0, 0, .25); color: var(--rw-text); font: 15px 'Syne', sans-serif; }
.rw-list { position: relative; height: min(60vh, 460px); overflow-y: auto; overscroll-behavior: contain; contain: strict; }
.rw-list-pad { position: relative; }
.rw-row { position: absolute; left: 0; right: 0; top: 0; height: 52px; display: flex; align-items: center; gap: 10px; padding: 0 6px; border-bottom: 1px solid var(--rw-line); }
.rw-row-no { flex: none; width: 56px; font: 18px/1 'Bebas Neue', sans-serif; letter-spacing: .02em; color: var(--rw-muted); }
.rw-row-nm { flex: 1; min-width: 0; font-size: 14.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rw-row-nm em { font-style: normal; font-size: 11px; padding: 2px 6px; border-radius: 6px; background: rgba(255, 226, 122, .18); color: #ffe27a; margin-left: 4px; }
.rw-row-st { flex: none; display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--rw-muted); }
.rw-dot { width: 8px; height: 8px; border-radius: 50%; background: radial-gradient(circle, #54c48b 55%, transparent 60%); }
.rw-row.is-out .rw-row-nm, .rw-row.is-out .rw-ava { opacity: .45; }
.rw-row.is-me { background: rgba(255, 226, 122, .07); }
.rw-row.is-flash { background: rgba(255, 226, 122, .2); }
.rw-empty { padding: 24px 0; text-align: center; color: var(--rw-muted); }

.rw-fair { padding: 12px 14px; border-radius: 16px; background: var(--rw-panel); border: 1px solid var(--rw-line); font-size: 13.5px; }
.rw-fair[hidden] { display: none; }
.rw-fair summary { cursor: pointer; font-weight: 800; font-size: 15px; min-height: 28px; }
.rw-fair p { margin: 8px 0; color: var(--rw-muted); line-height: 1.45; }
.rw-fair-k { margin-bottom: 2px !important; color: var(--rw-text) !important; font-weight: 700; }
.rw-fair code { display: block; word-break: break-all; font: 12px/1.4 'DM Mono', monospace; color: var(--rw-text); background: rgba(0, 0, 0, .3); padding: 6px 8px; border-radius: 8px; }
.rw-fair-ok { color: #8ef0b6 !important; }
.rw-fair-bad { color: #ffb3c0 !important; }

.rw-final { position: fixed; left: 50%; top: 42%; z-index: 20; display: grid; justify-items: center; gap: 4px; padding: 14px 28px 16px; background: rgba(20, 10, 30, .88); border: 2px solid var(--rw-accent); box-shadow: 0 0 0 3px #120e1c, 0 20px 60px rgba(0, 0, 0, .6); pointer-events: none; opacity: 0; transform: translateX(-50%); }
.rw-final b { font: clamp(56px, 16vw, 120px)/.9 'Bebas Neue', 'Oswald', 'Arial Narrow', sans-serif; color: #fff; letter-spacing: .04em; text-shadow: 0 4px 0 #120e1c; }
.rw-final span { font: 800 clamp(16px, 4.4vw, 24px) 'Syne', sans-serif; color: #ffe9c7; }
.rw-final.is-on { animation: rwFinal 2.6s ease-out both; }
@keyframes rwFinal { 0% { opacity: 0; transform: translateX(-50%) scale(1.5); } 14% { opacity: 1; transform: translateX(-50%) scale(1); } 78% { opacity: 1; transform: translateX(-50%) scale(1); } 100% { opacity: 0; transform: translateX(-50%) scale(.94); } }
.rw-screen.is-final .rw-rot { box-shadow: 0 0 0 4px rgba(232, 200, 64, .35), 0 18px 60px -12px rgba(232, 200, 64, .45); }

.rw-win { position: fixed; inset: 0; z-index: 30; display: grid; place-items: center; padding: 16px; background: rgba(5, 8, 16, .8); opacity: 0; transition: opacity .3s ease-out; }
.rw-win.is-in { opacity: 1; }
.rw-win[hidden] { display: none; }
.rw-win:not(.is-in) { transition-duration: .25s; }
.rw-win-card {
  position: relative; width: min(100%, 420px); display: grid; justify-items: center; text-align: center; gap: 6px;
  padding: 44px 22px 22px; border-radius: 24px; background: linear-gradient(180deg, #1a2238 0%, #0d1220 100%);
  border: 1px solid rgba(232, 200, 64, .45); box-shadow: 0 30px 80px -20px rgba(232, 200, 64, .45);
  transform: translateY(16px) scale(.96); transition: transform .35s cubic-bezier(.2, .9, .3, 1.2);
}
.rw-win.is-in .rw-win-card { transform: none; }
.rw-hw .rw-win-card { background: linear-gradient(180deg, #2a1f3d 0%, #140f20 100%); border-color: rgba(255, 160, 72, .5); box-shadow: 0 30px 80px -20px rgba(224, 112, 18, .5); }
.rw-crown { position: absolute; top: -22px; left: 50%; width: 72px; height: 48px; margin-left: -36px; background: url(/raffle-wheel/crown.png?v=rw6) 0 0 / 100% 100% no-repeat; image-rendering: pixelated; }
.rw-win-frame { position: relative; height: 0; width: 160px; z-index: 2; }
.rw-win-frame .rw-fr { display: block; position: absolute; left: 0; top: -20px; width: 160px; height: 160px; image-rendering: pixelated; pointer-events: none; border-radius: 0 !important; }
.rw-win-card.has-frame .rw-win-ava { margin: 34px 0 32px; }
.rw-win-card.has-frame .rw-win-frame .rw-fr { top: 8px; }
.rw-win-ava { width: 96px; height: 96px; border-radius: 50% !important; overflow: hidden; border: 3px solid #ffe27a; box-shadow: 0 0 0 3px #120e1c; margin-top: 6px; }
.rw-win-ava > img, .rw-win-ava > b { width: 100%; height: 100%; object-fit: cover; display: grid; place-items: center; color: #fff; font: 800 40px 'Syne', sans-serif; }
.rw-win-kicker { margin-top: 8px; font-size: 14px; color: var(--rw-muted); text-transform: uppercase; letter-spacing: .08em; }
.rw-win-name { font-size: clamp(22px, 6vw, 30px); font-weight: 800; line-height: 1.15; max-width: 100%; overflow-wrap: anywhere; }
.rw-win-no { font: 24px/1 'Bebas Neue', sans-serif; color: #ffe27a; }
.rw-win-prize { position: relative; width: 168px; height: 150px; display: grid; place-items: end center; margin-top: 4px; }
.rw-win-prize-img { position: relative; z-index: 2; width: 132px; height: 132px; object-fit: contain; }
.rw-win-tok { font: 44px/1 'Bebas Neue', sans-serif; color: var(--rw-accent); align-self: center; }
.rw-win-pname { font-size: 15px; color: var(--rw-muted); }
.rw-win-pname b { color: var(--rw-text); }
.rw-win-note { margin: 4px 0 0; font-size: 13.5px; color: #8ef0b6; }
.rw-win-close { margin-top: 12px; min-height: 48px; min-width: 160px; padding: 0 22px; border-radius: 14px; border: 0; background: var(--rw-accent2); color: #fff; font: 700 16px 'Syne', sans-serif; cursor: pointer; }
.rw-cauldron { position: absolute; left: 50%; bottom: 0; width: 128px; height: 88px; margin-left: -64px; z-index: 1; }
.rw-cauldron b { position: absolute; inset: 0; overflow: hidden; }
.rw-cauldron i { position: absolute; left: 0; top: 0; width: 6144px; height: 100%; background: url(/season/halloween/raffle/cauldron-sheet.png?v=r1) 0 0 / 100% 100% no-repeat; image-rendering: pixelated; animation: rwBrew 2s steps(48) infinite; }
@keyframes rwBrew { to { transform: translateX(-6144px); } }
.rw-hw .rw-win-prize { height: 196px; }
.rw-hw .rw-win-prize-img { width: 104px; height: 104px; margin-bottom: 66px; }

.rw-confetti { position: fixed; left: 0; top: 0; z-index: 40; pointer-events: none; }

.rw-raffle { margin: 0 0 18px; }
.rw-home { margin: 0 0 14px; }
@media (max-width: 760px) { .rw-home { margin-bottom: 26px; } }
.rw-card {
  display: flex; align-items: center; gap: 14px; padding: 12px 14px; border-radius: 18px;
  border: 1px solid rgba(232, 200, 64, .36);
  background: radial-gradient(90% 140% at 0% 50%, rgba(232, 200, 64, .12) 0%, transparent 60%), rgba(255, 255, 255, .03);
}
.rw-card.is-live { border-color: rgba(255, 77, 109, .5); background: radial-gradient(90% 140% at 0% 50%, rgba(255, 77, 109, .14) 0%, transparent 60%), rgba(255, 255, 255, .03); }
.rw-card-art { flex: none; width: 52px; height: 52px; display: grid; place-items: center; }
.rw-card-img { width: 52px; height: 52px; object-fit: contain; }
.rw-card-tok { font: 20px 'Bebas Neue', sans-serif; color: #e8c840; }
.rw-card-t { flex: 1; min-width: 0; display: grid; gap: 2px; }
.rw-card-k { display: inline-flex; align-items: center; gap: 6px; font: 800 15.5px 'Syne', sans-serif; color: #fff; }
.rw-card-l { font-size: 13.5px; color: rgba(230, 236, 245, .74); line-height: 1.35; }
.rw-card-l b { color: #fff; }
.rw-card-dot { width: 8px; height: 8px; border-radius: 50%; background: radial-gradient(circle, #ff4d6d 55%, transparent 60%); animation: rwBlink 1.2s steps(2, jump-none) infinite; }
.rw-card-b { flex: none; min-height: 44px; padding: 0 16px; border-radius: 12px; border: 0; background: #e8c840; color: #15100a; font: 700 14.5px 'Syne', sans-serif; cursor: pointer; }
.rw-card.is-live .rw-card-b { background: #ff4d6d; color: #fff; }
body.season-halloween .rw-card { border-color: rgba(255, 160, 72, .42); background: radial-gradient(90% 140% at 0% 50%, rgba(224, 112, 18, .16) 0%, transparent 60%), rgba(255, 240, 220, .03); }
body.season-halloween .rw-card-b { background: #e07012; color: #fff; }
@media (max-width: 520px) {
  .rw-card { flex-wrap: wrap; }
  .rw-card-b { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .rw-bulb-a, .rw-bulb-b, .rw-live i, .rw-card-dot, .rw-cauldron i { animation: none; }
  .rw-final.is-on { animation-duration: .01s; }
}
.rw-screen:not(.is-open) * { animation-play-state: paused !important; }
