/* v644: isolated 1280 × 720 wheel stage, scaled as one composition. */
.dw-modal.uk-root{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:radial-gradient(ellipse at 25% 45%,#fffef6 0%,#ffe5a4 50%,#e6bd85 100%);color:var(--uk-ink);overflow:hidden}
.dw-modal::backdrop{background:#173c68cc}
.dw-canvas{position:absolute;left:50%;top:50%;width:1280px;height:720px;transform-origin:center;background:transparent;padding:24px 40px}
.dw-header{display:flex;align-items:center;gap:28px;height:72px;margin-bottom:0}.dw-header .uk-round{margin-left:auto}.dw-header h1{margin:0;font-size:32px}.dw-header>span{font-size:18px}
.dw-layout{display:grid;grid-template-columns:724px 452px;gap:24px;height:600px}.dw-main{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse,#fff1c9,#fff 68%);padding:12px!important}.dw-eyebrow{letter-spacing:4px;font-size:16px;color:#8b641d}.dw-eyebrow span{color:#b98624;padding-left:12px}.dw-caption{font-size:16px;color:var(--uk-muted);margin-top:9px!important}
.dw-stage{position:relative;width:530px;height:530px;flex-shrink:0;margin:8px 0 0}.dw-rim{position:absolute;inset:0;border-radius:50%;background:linear-gradient(135deg,#fff1af,#d29a28 40%,#a96d14 65%,#f8d877);border:3px solid #fff4bd;box-shadow:0 8px 0 #a87721,0 12px 26px #9d6b2438,inset 0 0 0 7px #eec054}
.dw-rim i{position:absolute;left:calc(50% - 5px);top:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:#fffbe1;box-shadow:0 0 8px #fff3ad;transform:rotate(var(--a)) translateY(-253px);animation:dw-bulb 1.4s var(--delay) ease-in-out infinite}
.dw-stage .cd-disc{position:absolute;inset:23px;width:484px;height:484px;margin:0;border:0;border-radius:50%;background:none;box-shadow:none;overflow:visible}.dw-stage .cd-pointer{left:calc(50% - 29px);top:-13px;width:58px;height:65px;background:linear-gradient(90deg,#ae7518,#ffdf71,#c19026);filter:drop-shadow(0 0 9px #ffcf53) drop-shadow(0 3px 2px #704a25);z-index:3;transform-origin:50% 10%}
.dw-spin.uk-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:122px;height:122px;min-height:0;padding:0;display:flex;flex-direction:column;gap:0;border:5px solid #fff3b8;border-radius:50%;box-shadow:0 5px 0 #ad791d,0 0 0 3px #c4932e,0 0 28px #ffeab1}.dw-spin b{font-size:44px;line-height:1.2}.dw-spin small{font-size:16px}.dw-spin:disabled{background:#eee0bf;color:#6b5734;cursor:default}
.dw-side{display:flex;flex-direction:column;gap:14px}.dw-side .uk-card{padding:16px 20px}.dw-balance{display:flex;gap:14px;min-height:100px}.dw-balance>div{flex:1;display:flex;flex-direction:column}.dw-balance>div+div{border-left:1px solid #d8e0e9;padding-left:18px}.dw-balance span{font-size:16px}.dw-balance b{font-size:32px;color:#8a5b12}.dw-balance small{font-size:16px;color:var(--uk-muted)}
.dw-odds summary{cursor:pointer;font-size:20px}.dw-odds summary small{float:right;font-size:14px;color:var(--uk-muted);padding-top:5px}.dw-odds .cd-prizes{margin-top:8px;gap:0}.dw-odds .cd-prizes li{display:grid;grid-template-columns:27px 1fr 38px;align-items:center;gap:4px;min-height:30px;padding:3px 5px;border-bottom:1px solid #e3e6eb;font-size:15px;line-height:1.4;border-radius:6px}.dw-odds li.hit{background:#fff0b2}.dw-odds li small{text-align:right;color:#526274;font-size:14px}.dw-history{flex:1;min-height:106px}.dw-history h2{font-size:20px;margin-bottom:8px}.dw-history p{display:flex;justify-content:space-between;font-size:15px;line-height:1.8}.dw-history small{font-size:14px;color:var(--uk-muted)}
.dw-result-shade{position:absolute;inset:0;z-index:5;background:#173c6855;display:grid;place-items:center;}.dw-result{position:relative;width:440px;text-align:center;border:3px solid #f4c44f!important;padding:28px!important;background:radial-gradient(ellipse at top,#fff1b8,white 65%);box-shadow:0 20px 70px #173c6855;animation:dw-reveal .4s ease-out}.dw-prize-icon{font-size:86px;line-height:1.35;margin:12px 0}.dw-result h2{font-size:28px}.dw-quantity{display:block;font-size:36px;color:#946216;margin:8px 0}.dw-result .uk-button{width:100%;margin-top:24px}.dw-result .uk-description{line-height:1.6}.dw-confetti{position:absolute;inset:-50px;pointer-events:none;overflow:hidden}.dw-confetti i{position:absolute;left:var(--x);top:8%;width:8px;height:20px;background:#f4c44f;opacity:.55;transform:rotate(var(--r));animation:dw-confetti 2.6s var(--delay) ease-out infinite}.dw-confetti i:nth-child(3n){background:#ecb5c6}.dw-confetti i:nth-child(3n + 1){background:#adc5e9}
.is-spinning .cd-pointer{animation:dw-tick .13s ease-in-out infinite}.wheel-hit{filter:drop-shadow(0 0 5px #ffe38a)}
@keyframes dw-bulb{50%{opacity:.35;box-shadow:none}}@keyframes dw-tick{50%{transform:rotate(-12deg)}}@keyframes dw-reveal{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes dw-confetti{to{top:100%;transform:rotate(calc(var(--r) + 100deg));opacity:0}}
.reduced-motion .dw-modal *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.dw-modal *{animation:none!important;transition:none!important}}
body .cd-wrap .cd-launch{grid-column:1/-1;min-height:0}body .cd-launch .btn{font-size:22px;padding:16px 28px}body .cd-launch p{margin:8px 0}
.dw-error{position:absolute;bottom:16px;left:60px;padding:10px 20px;background:#fff0b2;color:#18334e;border-radius:12px}

/* v645: readable at 844 ? 390 (stage scale 0.5417); warm full-viewport art. */
.dw-modal{--uk-muted:#685844;--uk-ink:#352719}
.dw-header>span{font-size:23px;color:#685844}
.dw-eyebrow{font-size:22px;font-weight:800;letter-spacing:3px}
.dw-caption{font-size:22px;margin-top:4px!important}
.dw-stage{margin-top:4px}
.dw-spin.uk-button{background:radial-gradient(circle at 35% 24%,#fffbd5 0%,#ffe58a 30%,#efbc42 65%,#cf8b22 100%);color:#614016;text-shadow:0 1px #fff4bf;box-shadow:inset 0 3px 3px #fff9d9,inset 0 -5px 7px #bc7a25,0 8px 0 #9a621a,0 11px 16px #80531850,0 0 0 3px #dba635}
.dw-spin:not(:disabled){animation:dw-breathe 2s ease-in-out infinite}
.dw-spin.uk-button:active:not(:disabled){transform:translate(-50%,calc(-50% + 5px));box-shadow:inset 0 3px 8px #bc7a25,0 3px 0 #9a621a;animation:none}
.dw-spin small{font-size:22px}
.dw-side{gap:10px}.dw-side .uk-card{padding:12px 16px}
.dw-balance{min-height:82px}.dw-balance span,.dw-balance small{font-size:23px}.dw-balance b{font-size:30px}
.dw-odds summary{font-size:25px;font-weight:800}.dw-odds summary small{font-size:23px;padding-top:0}
.dw-odds .cd-prizes{margin-top:6px}
.dw-odds .cd-prizes li{grid-template-columns:38px 1fr 52px;min-height:39px;padding:0 3px;font-size:23px;line-height:1.4;color:#352719}
.dw-odds li small{font-size:23px;color:#685844}.dw-odds li.hit{background:#ffe9a0;font-weight:800}
.dw-odds-icon img{display:block;width:38px;height:38px;object-fit:contain}
.dw-history h2{font-size:25px;margin:0 0 3px}.dw-history p{font-size:23px;line-height:1.45;margin:0}.dw-history small{font-size:23px;color:#685844}
.dw-prize-icon{position:relative;isolation:isolate;display:grid;place-items:center;height:150px;margin:12px 0}
.dw-prize-icon img{position:relative;width:150px;height:150px;object-fit:contain;filter:drop-shadow(0 5px 5px #ac752747)}
.dw-rays{position:absolute;z-index:-1;width:230px;height:230px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#f5bc4270 0deg 12deg,transparent 12deg 30deg);mask-image:radial-gradient(circle,#000 15%,transparent 68%);animation:dw-rays 18s linear infinite}
.dw-result-shade{background:#64401655}.dw-result{overflow:hidden}.dw-result .uk-description{font-size:23px;color:#5e472e}
.wheel-celebrate{animation:dw-win 1s ease-in-out both;transform-box:fill-box;transform-origin:center}
@keyframes dw-win{0%,100%{fill:#f4c44f;filter:drop-shadow(0 0 3px #f8cb48)}25%,65%{fill:#fff5a5;filter:drop-shadow(0 0 14px #ffbf00)}}
@keyframes dw-rays{to{transform:rotate(360deg)}}
@keyframes dw-breathe{50%{filter:drop-shadow(0 0 12px #ffcc4d)}}
.reduced-motion .dw-modal *, .reduced-motion.dw-modal *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.dw-modal *{animation:none!important;transition:none!important}}

.dw-canvas{padding:18px 40px}.dw-header{height:60px}.dw-header .uk-ribbon{height:58px}
.dw-layout{height:624px;grid-template-rows:minmax(0,1fr)}
.dw-main{min-height:0}.dw-eyebrow,.dw-caption{line-height:1.1}
.dw-side{min-height:0}.dw-side .uk-card{padding:8px 16px}
.dw-balance{flex-shrink:0;min-height:82px}.dw-balance span,.dw-balance b{line-height:1.1}
.dw-odds .cd-prizes li{min-height:38px}
.dw-history{min-height:0}.dw-history p{line-height:1.3}.dw-history h2{line-height:1.2}
.dw-spin.uk-button:disabled{background:linear-gradient(#f4e9cd,#ddcaa1);color:#685438;filter:none}
.dw-modal button:focus-visible,.dw-modal summary:focus-visible{outline:3px solid #ae741e;outline-offset:3px}

.dw-result-shade{isolation:isolate;background:transparent}
.dw-result-shade::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:calc(100vw / var(--dw-scale,1));height:calc(100dvh / var(--dw-scale,1));transform:translate(-50%,-50%);background:#64401655}

/* v702 英日排版：只套在非中文 */
html:not(:lang(zh)) .dw-modal .dw-side span,html:not(:lang(zh)) .dw-modal .cd-prizes span,html:not(:lang(zh)) .dw-modal .dw-history p span{min-width:0;overflow-wrap:anywhere;line-height:1.2}
html:not(:lang(zh)) .dw-modal .dw-spin small{white-space:normal;overflow-wrap:anywhere;line-height:1.1}
html:not(:lang(zh)) .dw-modal .dw-odds summary small{white-space:nowrap}
html:not(:lang(zh)) .dw-modal .dw-header .uk-ribbon{max-width:none;white-space:nowrap;font-size:clamp(20px,2vw,26px)}
