@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700;900&family=Inter:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0a090d;--panel:#17121b;--line:#46303b;--muted:#b5a4ac;--accent:#f5a477}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:#f5e9e5;font-family:Inter,Arial,sans-serif}body{background:radial-gradient(ellipse at 48% 5%,#38202b 0%,#150e17 43%,#09080d 88%);overflow-x:hidden}.fog{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 80%,#7a222316,transparent 55%)}main{position:relative;width:min(1190px,100%);margin:auto;padding:16px 24px;min-height:100dvh;display:flex;flex-direction:column;gap:12px}header{display:flex;justify-content:space-between;align-items:center;padding-bottom:11px;border-bottom:1px solid #65415055}.brand{font:900 18px Cinzel,serif;letter-spacing:3px;text-decoration:none;color:#f5e6dc}.brand span{color:#f58b55}.edition,.section-kicker,.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#d88969}.hero{text-align:center}.hero h1{font:900 clamp(30px,3.6vw,49px)/1 Cinzel,serif;margin:5px 0}.hero h1 em{font-style:normal;color:#f1a070}.hero p{font-size:12px;color:var(--muted);margin:7px 0 12px}.mode-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.mode{background:#19131d;color:#f3e7e5;border:1px solid #513741;padding:9px;border-radius:10px;font-size:11px;font-weight:800;cursor:pointer}.mode small{display:block;font-size:10px;font-weight:400;color:#ae9ba4;margin-top:4px}.mode.active{border-color:#ef9975;background:#3b2028;box-shadow:0 0 0 1px #bd674444}.layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.38fr) minmax(300px,.9fr);gap:13px}.wheel-card,.panel{border:1px solid var(--line);border-radius:15px;background:linear-gradient(150deg,#231724f2,#130f18f5);box-shadow:0 15px 50px #0004}.wheel-card{padding:18px 22px;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;min-height:0}.wheel-top{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:54px}.wheel-top h2,.panel h2{font:700 17px Cinzel,serif;color:#f5c5a1;margin:5px 0 10px}.hellhound-art{width:105px;height:70px;pointer-events:none}.hellhound-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 8px #a52233)}.wheel-area{width:min(35vh,310px);height:min(35vh,310px);position:relative;isolation:isolate;flex-shrink:0;margin:0 auto 4px}canvas{width:100%;height:100%;filter:drop-shadow(0 0 14px #9c513c55);transition:transform 4.3s cubic-bezier(.13,.85,.13,1)}.pointer{position:absolute;top:-10px;left:50%;transform:translateX(-50%);z-index:3;color:#ffbd8d;font-size:28px}.hub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border:3px solid #e6a06d;border-radius:50%;background:#1c111a;display:grid;place-items:center;font-size:23px}.status{font:700 12px Cinzel,serif;color:#f0b48b;margin:8px 0}.outcome{min-height:35px;text-align:center;font-size:13px;line-height:1.5;color:#f4d0b5;max-width:100%;overflow-wrap:anywhere}button,.login{cursor:pointer}#spin,.login,.event-box button{display:block;width:100%;padding:12px 16px;border:0;border-radius:9px;background:linear-gradient(100deg,#b64c43,#ef9860);color:#160e14;font-size:12px;font-weight:900;letter-spacing:1px;text-align:center;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}.fine,.mini{font-size:11px;line-height:1.5;color:#b8a6b2;margin:9px 0}.code-alert{padding:9px;background:#4c202a;border:1px solid #b95661;border-radius:8px;font-size:12px;margin:8px 0}.code-alert[hidden],.event-modal[hidden]{display:none!important}aside{display:flex;flex-direction:column;gap:12px;min-height:0}.panel{padding:17px}.contract{flex:1;min-height:0}.panel label{display:block;font-size:10px;font-weight:800;letter-spacing:1px;color:#db9b80;margin:12px 0 7px}select{width:100%;padding:10px;border:1px solid #624555;border-radius:8px;background:#1b121d;color:#f4e8e7}.login{margin:10px 0}.wish-heading{display:flex;justify-content:space-between;align-items:center;margin-top:13px}.wish-heading span{font-size:10px;color:#d7a182}.wishes{height:92px;overflow:auto;border:1px solid #503442;border-radius:9px;padding:6px;scrollbar-width:thin}.wish-count{font-size:10px;color:#e9aa7c;text-align:right}.wish-item{display:flex;gap:8px;align-items:center;padding:5px;font-size:11px;cursor:pointer}.wish-item input{accent-color:#e68157}.rules-panel .rule{border-top:1px solid #5b3a493d;padding:7px 0}.rule strong{font-size:10px;color:#f0a37b}.rule p{font-size:11px;line-height:1.4;color:#b9a9b4;margin:4px 0}footer{text-align:center;font-size:9px;letter-spacing:2px;color:#89717d;padding:4px}.event-modal{position:fixed;inset:0;background:#08040bea;display:grid;place-items:center;z-index:20;padding:18px}.event-box{width:min(420px,100%);background:#231620;border:1px solid #bf775b;border-radius:18px;padding:32px;text-align:center}.event-icon{font-size:58px}.event-box h2{font-family:Cinzel,serif}.event-box p{color:#c9b5bb}.event-box button{margin-top:20px}body[data-mode=inferno] .wheel-area{filter:drop-shadow(0 0 15px #a82e16)}body[data-mode=shadow] .wheel-area{filter:drop-shadow(0 0 15px #6b428f)}@media(min-width:950px) and (min-height:740px){body{overflow:hidden}main{height:100dvh}.layout{overflow:hidden}.wheel-card{overflow:hidden}.rules-panel{flex-shrink:0}}@media(max-height:780px) and (min-width:950px){main{gap:7px;padding:9px 22px}.hero p{display:none}.wheel-area{width:min(29vh,240px);height:min(29vh,240px)}.wheel-top{min-height:35px}.panel{padding:11px}.rules-panel .rule{padding:4px 0}.rules-panel .rule p{margin:2px 0}.wishes{height:65px}.fine{margin:4px 0}.wheel-card{padding:9px 15px}}@media(max-width:949px){.layout{grid-template-columns:1fr}.wheel-area{width:min(65vw,320px);height:min(65vw,320px)}.wheel-card{min-height:460px}main{height:auto}.wishes{height:120px}}@media(max-width:480px){main{padding:12px}.edition{display:none}.mode{padding:8px 3px}.mode small{font-size:9px}.wheel-card{padding:14px}.hero h1{font-size:32px}}@media(prefers-reduced-motion:reduce){.fog{animation:none}}

/* V12: immersive wheel-first experience */
html,body{margin:0;min-height:100%;background:#080b16!important;color:#f6edf0!important}body{background:radial-gradient(ellipse at 8% 45%,#4a142c88,transparent 44%),radial-gradient(ellipse at 90% 60%,#68271855,transparent 38%),#080b16!important}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,#ffffff04 48%,transparent 70%);z-index:0}main{position:relative;z-index:1;max-width:1380px!important;width:min(96vw,1380px);margin:auto;padding:10px 18px!important}header{padding:6px 0!important}.hero{padding:6px 0 12px!important;text-align:center}.hero h1{font-size:clamp(32px,4vw,55px)!important;letter-spacing:-.035em}.hero p{margin:2px 0 8px!important}.mode-switch{display:flex!important;flex-direction:row!important;gap:9px!important;margin:10px auto!important;max-width:760px}.mode-switch .mode{flex:1!important;padding:10px!important;border-radius:11px!important}.layout{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(275px,.75fr)!important;gap:14px!important;align-items:stretch!important}.wheel-card{min-height:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;padding:18px!important;position:relative;overflow:hidden;border-radius:22px!important;background:radial-gradient(ellipse at 50% 50%,#321b2e 0%,#17121f 68%,#0d101d 100%)!important}.wheel-top{width:100%;display:flex;justify-content:space-between;align-items:center}.hellhound-art{position:absolute!important;right:12px;top:12px;max-width:150px!important;opacity:.8;pointer-events:none;filter:drop-shadow(0 0 12px #e23e3877)}.hellhound-art img{width:100%;height:auto}.wheel-area{width:min(46vh,410px)!important;height:min(46vh,410px)!important;margin:0 auto 6px!important;filter:drop-shadow(0 8px 36px #ea55433d)}.wheel-card #spin{width:min(100%,500px)!important;padding:15px!important;border-radius:12px!important;font-weight:900;letter-spacing:.08em;background:linear-gradient(105deg,#ad384c,#f08c5a)!important}.wheel-card .fine{font-size:10px!important;margin-top:8px!important}aside{display:flex!important;flex-direction:column!important;gap:12px!important;min-height:0}.panel{padding:15px!important;border-radius:18px!important;background:linear-gradient(145deg,#201523,#12121e)!important}.panel.contract{flex:1!important}.rules-panel .rule{padding:7px 0!important}.rules-panel .rule p{margin:3px 0!important}.wishes{max-height:115px!important;overflow-y:auto}.status{margin:4px 0!important}.fog{pointer-events:none}footer{padding:8px!important}body.embedded-game{height:100dvh;overflow:hidden!important}body.embedded-game main{height:100dvh!important;display:flex;flex-direction:column;max-width:1380px!important}body.embedded-game .layout{flex:1;min-height:0}body.embedded-game .wheel-area{width:min(43vh,370px)!important;height:min(43vh,370px)!important}body.embedded-game .wheel-card{justify-content:space-evenly!important}body.embedded-game .rules-panel{flex:0 0 auto}body.embedded-game .panel.contract{overflow:hidden}body.embedded-game .wishes{max-height:95px!important}@media(max-width:850px){body.embedded-game{height:auto;overflow-y:auto!important}body.embedded-game main{height:auto!important}.layout{grid-template-columns:1fr!important}.wheel-area,body.embedded-game .wheel-area{width:min(70vw,350px)!important;height:min(70vw,350px)!important}.hellhound-art{max-width:100px!important}.mode-switch .mode{font-size:11px!important}}@media(max-height:750px) and (min-width:851px){body.embedded-game .wheel-area{width:min(36vh,310px)!important;height:min(36vh,310px)!important}body.embedded-game .hero h1{font-size:30px!important}body.embedded-game .panel{padding:9px!important}.rules-panel .rule{padding:4px 0!important}}

/* Ticket status and expanded Wish Bucket */
.ticket-status{margin:10px 0;padding:10px 12px;border:1px solid #6b4c59;border-radius:10px;background:#211725;font-size:11px;font-weight:700;letter-spacing:.02em;line-height:1.5}
.ticket-status[data-status=open]{color:#9ee5bf;border-color:#366d57;background:#11251e}
.ticket-status[data-status=missing]{color:#ffbf8c;border-color:#a65a3d;background:#302019}
.ticket-invite{display:block;text-align:center;padding:10px;border-radius:9px;background:linear-gradient(100deg,#5059e8,#6b7dff);color:white;font-size:11px;font-weight:800;text-decoration:none;margin-bottom:8px}
.ticket-invite[hidden]{display:none!important}
.wishes{height:auto!important;max-height:none!important;overflow:visible!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px!important;padding:8px!important}
.wish-count{grid-column:1/-1;text-align:left;padding:2px 5px;font-weight:800}
.wish-item{display:flex!important;align-items:center;gap:6px!important;margin:0!important;padding:8px 7px!important;border:1px solid #533747;border-radius:8px;background:#241724;font-size:10px!important;letter-spacing:0!important;line-height:1.3;min-width:0}
.wish-item:has(input:checked){background:#482532;border-color:#ed9975;color:#ffe6d4}
.wish-item span{overflow-wrap:anywhere}.wish-item input{flex:0 0 auto;margin:0}
body.embedded-game .wishes{max-height:none!important}
body.embedded-game .panel.contract{overflow:auto!important;scrollbar-width:thin}
@media(max-width:480px){.wishes{grid-template-columns:1fr!important}}

.ticket-select-wrap{margin:10px 0 12px;padding:12px;border:1px solid #986046;border-radius:12px;background:#231923}.ticket-select-wrap[hidden]{display:none!important}.ticket-select-wrap label{display:block;color:#f1b58d;font-size:11px;font-weight:800;letter-spacing:.08em;margin-bottom:7px}.ticket-select-wrap select{width:100%;min-height:39px;border:1px solid #a16d59;border-radius:8px;background:#130f1b;color:#fff;padding:8px}.ticket-status[data-status=multiple]{color:#ffd6a4;border-color:#9c6943;background:#2b1c1b}

/* v14: remove decorative character and target panel entirely */
.hellhound-art,#product-wrap{display:none!important}

/* 2026 staff & cursed wheel polish */
.internal-reset{background:linear-gradient(135deg,#182a31,#251425)!important;border:1px solid #538e98!important}.internal-reset strong{color:#a8f3e9;letter-spacing:.13em}.wheel-area.inferno{filter:drop-shadow(0 0 22px #ff542c99)}.wheel-area canvas{will-change:transform}.wheel-card{isolation:isolate}

/* Blood clock — decorative antique dial, responsive and compact */
.blood-clock{display:flex;align-items:center;justify-content:center;gap:16px;margin:10px 0;padding:12px;border:1px solid #9b3b48;border-radius:14px;background:radial-gradient(circle at 20% 50%,#501a2a,#170f1c 70%);box-shadow:inset 0 0 25px #100609,0 8px 25px #0006;color:#f3d2bc}
.blood-clock[hidden]{display:none!important}.clock-face{position:relative;flex:none;width:82px;height:82px;border:6px ridge #a06b50;border-radius:50%;background:radial-gradient(circle,#d4b59a 0%,#9e726a 60%,#53262e 100%);box-shadow:0 0 0 3px #42141e,inset 0 0 12px #5a121a}
.clock-face:before{content:'';position:absolute;inset:9px;border:1px dashed #64272c;border-radius:50%}.clock-hand{position:absolute;left:50%;bottom:50%;width:3px;background:#59131d;transform-origin:bottom center;border-radius:4px}.clock-hand.hour{height:20px;transform:rotate(35deg)}.clock-hand.minute{height:29px;transform:rotate(245deg)}.clock-center{position:absolute;left:calc(50% - 4px);top:calc(50% - 4px);width:8px;height:8px;border-radius:50%;background:#3c0710}.clock-twelve,.clock-six{position:absolute;left:50%;transform:translateX(-50%);font:700 11px Georgia;color:#4c1520}.clock-twelve{top:2px}.clock-six{bottom:1px}.clock-copy{display:flex;flex-direction:column;gap:3px;text-align:left}.clock-copy strong{font:700 12px Georgia;letter-spacing:2px;color:#e49a85}.clock-copy span{font:700 clamp(23px,3vw,32px) Georgia;letter-spacing:2px;color:#f5d1bb;font-variant-numeric:tabular-nums;text-shadow:0 0 12px #d53048}.clock-copy small{font-size:11px;color:#c7a3a2;max-width:280px}@media(max-width:480px){.clock-face{width:66px;height:66px}.blood-clock{gap:10px;padding:9px}}

/* Ancient relics and readable odds ledger */
.relic-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:8px auto}.relic-strip span{font:700 10px Georgia,serif;letter-spacing:.07em;color:#e3b998;border:1px solid #8e594c88;border-radius:6px;padding:6px 10px;background:linear-gradient(120deg,#39222a,#1b1822);box-shadow:inset 0 1px #f2b37d18}.odds-disclosure{margin:8px auto 0;max-width:1000px;text-align:center;border-top:1px solid #8d584855;padding:9px 8px;color:#bca2a2;font-size:10px}.odds-disclosure strong{display:block;color:#e4b18e;font:700 11px Georgia,serif;letter-spacing:.1em}.odds-disclosure span{display:block;margin:5px 0;color:#f0d2bc}.odds-disclosure small{display:block;font-size:10px}.wheel-card:before{content:'✧';position:absolute;left:17px;top:16px;color:#c38a6277;font-size:24px}.wheel-card:after{content:'☽';position:absolute;right:18px;bottom:14px;color:#c38a6277;font-size:26px}.mode:hover{border-color:#e6a577;box-shadow:0 0 18px #b9463d30}.relic-strip span:hover{border-color:#d9a577}@media(max-width:650px){.relic-strip span{font-size:9px;padding:5px}.odds-disclosure{line-height:1.5}}

/* Reaper's Kiss — modern haunted arcade polish */
.return-home{color:#ffd1a5;text-decoration:none;border:1px solid #9d5e5477;border-radius:20px;padding:7px 13px;font:700 10px Inter,Arial,sans-serif;letter-spacing:.06em;background:#201923;transition:.2s}.return-home:hover{background:#5a2937;color:#fff}.dice-roll{width:min(100%,500px);margin:9px auto;padding:13px 16px;border-radius:12px;border:1px solid #d6a05f;background:linear-gradient(110deg,#4b1d2c,#8b3340,#c07848);color:#fff4e5;font-weight:900;letter-spacing:.07em;box-shadow:0 0 22px #a9323544;cursor:pointer}.dice-roll[hidden]{display:none}.wheel-card{border-color:#82505c!important;box-shadow:0 18px 65px #0009,inset 0 1px #b8877244!important}.wheel-area{filter:drop-shadow(0 0 22px #bc51466a)!important}.panel{border-color:#694353!important}.hero h1{text-shadow:0 3px 22px #b84c4555}.mode.active{box-shadow:0 0 22px #ce695044!important}.rules-panel{overflow:auto;scrollbar-width:thin}@media(max-width:949px){.edition{font-size:9px}.return-home{display:inline-block;margin:3px}}

/* v30 layout reconstruction: predictable sizing, no panel collision */
*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:hidden!important}
main{max-width:1340px!important;width:min(96%,1340px)!important;height:auto!important;min-height:100dvh;display:flex;flex-direction:column;gap:12px;padding:14px 18px 22px!important}
.hero{padding:5px 0 2px!important}.hero h1{margin:2px 0!important}.hero p{max-width:850px;margin:4px auto 6px!important;line-height:1.45}.relic-strip{margin:5px auto!important}.mode-switch{margin:8px auto 4px!important}
.layout{display:grid!important;grid-template-columns:minmax(0,1.48fr) minmax(340px,.92fr)!important;gap:16px!important;align-items:stretch!important;min-height:0!important;overflow:visible!important}
.wheel-card{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:580px!important;padding:24px 26px!important;overflow:visible!important}
.wheel-top{align-self:stretch}.wheel-area{width:clamp(270px,29vw,390px)!important;height:clamp(270px,29vw,390px)!important;max-width:100%!important;flex-shrink:0!important;margin:4px auto 8px!important}
.wheel-card #spin{margin:5px auto!important;min-height:46px}.status,.outcome{margin:2px auto!important;text-align:center}.wheel-card .fine{line-height:1.5;text-align:center}
aside{display:flex!important;flex-direction:column!important;gap:14px!important;min-height:0!important;overflow:visible!important}.panel{min-width:0!important;min-height:0!important;padding:18px!important;overflow:visible!important}.panel.contract{flex:0 0 auto!important;overflow:visible!important}.rules-panel{flex:1 0 auto!important;overflow:visible!important}
.wishes,body.embedded-game .wishes{height:auto!important;max-height:none!important;overflow:visible!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:8px!important}.wish-item{min-height:33px!important;padding:7px 8px!important}.wish-item span{line-height:1.35}.contract .mini{line-height:1.55;margin:9px 0!important}.rule p{font-size:12px!important;line-height:1.55!important}.rule{padding:9px 0!important}
.how-win{border:1px solid #774958;background:linear-gradient(125deg,#211722,#10121f);border-radius:18px;padding:20px 24px;margin:2px 0}.how-win h2{font:700 21px Georgia,serif;color:#f1c5a5;margin:6px 0 16px}.win-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.win-steps>div{background:#130f1c;border:1px solid #69424c;border-radius:12px;padding:13px}.win-steps b{font-size:11px;letter-spacing:.04em;color:#efa782}.win-steps p{font-size:12px;line-height:1.6;color:#d1bfc6;margin:8px 0 0}.win-note{color:#bca6ae;font-size:11px;line-height:1.6;margin:13px 0 0}
body.embedded-game{height:auto!important;overflow-y:auto!important}body.embedded-game main{height:auto!important;min-height:100dvh!important;display:flex!important}body.embedded-game .layout{flex:initial!important;min-height:0!important}body.embedded-game .wheel-card{justify-content:center!important}body.embedded-game .panel.contract{overflow:visible!important}body.embedded-game .wheel-area{width:clamp(270px,29vw,390px)!important;height:clamp(270px,29vw,390px)!important}
@media(max-width:980px){.layout{grid-template-columns:minmax(0,1fr)!important}.wheel-card{min-height:0!important}.wheel-area,body.embedded-game .wheel-area{width:min(75vw,370px)!important;height:min(75vw,370px)!important}.win-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){main{padding:10px 12px 18px!important}.wheel-card{padding:17px 12px!important}.panel{padding:14px!important}.wishes,body.embedded-game .wishes{grid-template-columns:repeat(2,minmax(0,1fr))!important}.win-steps{grid-template-columns:1fr}.how-win{padding:16px}.hero h1{font-size:clamp(30px,8vw,42px)!important}}

/* Cursed wheel event strip */
.wheel-challenges{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:4px auto 8px;max-width:95%}.wheel-challenges span{font-size:10px;letter-spacing:.09em;border:1px solid #70404d;background:linear-gradient(110deg,#261521,#401b29);color:#f4b6a0;padding:5px 9px;border-radius:99px;white-space:nowrap}.wheel-card{min-height:0}.wheel-area{margin-top:6px!important} .contract{min-height:0!important} .rules-panel{min-height:0!important}

/* One-screen desktop ritual, with accessible modal for long rules. */
@media(min-width:1000px) and (min-height:650px){
html,body{height:100%;overflow:hidden!important}main{height:100dvh!important;min-height:0!important;max-width:1380px!important;padding:7px 18px 9px!important;gap:5px!important;overflow:hidden!important}
header{min-height:26px!important;padding:0!important}.hero{padding:0!important}.hero h1{font-size:clamp(29px,3.1vh,42px)!important;line-height:1!important}.hero p{display:none!important}.relic-strip{display:none!important}.mode-switch{margin:3px auto!important;max-width:530px!important}.mode{padding:5px!important}
.layout{flex:1!important;min-height:0!important;overflow:hidden!important;grid-template-columns:minmax(0,1.35fr) minmax(335px,.85fr)!important;gap:10px!important}
.wheel-card{min-height:0!important;height:100%!important;overflow:hidden!important;justify-content:center!important;padding:10px 15px!important;gap:4px!important}.wheel-area{width:min(39vh,380px)!important;height:min(39vh,380px)!important;margin:2px auto!important}.wheel-card #spin{min-height:36px!important;margin:2px auto!important}.wheel-challenges{margin:2px auto!important}.status,.outcome{font-size:11px!important}.wheel-card .fine{font-size:9px!important}
aside{height:100%!important;min-height:0!important;overflow:hidden!important;gap:8px!important}.panel{padding:11px!important}.panel.contract{flex:1!important;min-height:0!important;overflow:hidden!important}.rules-panel{display:none!important}.wish-heading{margin:5px 0!important}.wishes{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;padding:5px!important}.wish-item{padding:3px 5px!important;min-height:24px!important;font-size:10px!important}.mini{font-size:10px!important;margin:3px 0!important}.ticket-status{padding:5px!important}.ticket-select-wrap{padding:5px!important}.how-win,.odds-disclosure,footer,.reward-binding-terms{display:none!important}.blood-clock{margin:3px auto!important}.internal-reset{padding:6px!important;margin:4px auto!important}
}
@media(min-width:1000px) and (max-height:760px){.wheel-area{width:min(34vh,320px)!important;height:min(34vh,320px)!important}.wheel-challenges span{font-size:9px!important}.partner-note{font-size:9px!important}}
.product-target{display:block;margin:7px 0}.product-target label{display:block;color:#dca787;font-size:10px;letter-spacing:.07em;margin-bottom:3px}.product-target select{width:100%;padding:7px;border-radius:8px;border:1px solid #71434b;background:#191421;color:#f8d7c7}
.partner-note{border:1px solid #654657;background:#221621;border-radius:9px;padding:7px;margin:5px 0;font-size:10px;line-height:1.4;color:#e5c8c6}.partner-note a{color:#ffb77b}.guide-open{display:block;margin:2px auto 4px;background:#2d1925;border:1px solid #885064;color:#ffcfac;border-radius:8px;padding:7px 15px;font-size:11px;cursor:pointer}.ritual-guide{position:fixed;inset:0;margin:auto;max-width:min(640px,92vw);max-height:82dvh;overflow:auto;border:1px solid #98535e;border-radius:18px;padding:28px;background:#17101d;color:#eed7ce;box-shadow:0 0 0 100vmax #000b;line-height:1.6}.ritual-guide::backdrop{background:#000b}.ritual-guide h2{color:#f5ac82;font:700 26px Georgia,serif}.ritual-guide button{background:#8e4053;color:white;border:0;border-radius:7px;padding:9px 14px;cursor:pointer}.ritual-guide .guide-close{float:right}.ritual-guide p{font-size:14px}
@media(max-width:999px){.rules-panel{display:none!important}.how-win{display:none!important}.partner-note{font-size:11px}}

/* v57: Compact balanced viewport, visible rules, no dead space */
@media(min-width:1000px){html,body{height:100%;overflow:hidden!important}main{height:100dvh!important;max-height:100dvh!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important;padding-top:8px!important;padding-bottom:9px!important}header{flex:0 0 30px!important}.hero{flex:0 0 auto!important;padding:2px 0 5px!important}.hero h1{font-size:clamp(27px,3.1vh,41px)!important;margin:0!important}.hero p{display:none!important}.relic-strip{display:none!important}.mode-switch{margin:4px auto 5px!important}.mode{padding:6px 10px!important}.layout{flex:1 1 auto!important;min-height:0!important;align-items:stretch!important;gap:12px!important}.wheel-card{height:100%!important;min-height:0!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:center!important;padding:12px 18px!important;gap:3px!important}.wheel-top{margin:0!important}.wheel-area,body.embedded-game .wheel-area{width:min(37vh,370px)!important;height:min(37vh,370px)!important;flex:0 0 auto!important;margin:4px auto!important}.wheel-challenges{margin:3px auto!important}.wheel-challenges span{padding:3px 7px!important}.guide-open{margin:2px auto!important;padding:5px 10px!important}#spin{margin:5px auto!important;padding:10px!important}.status{margin:1px!important}.fine{font-size:10px!important}.layout aside{height:100%!important;min-height:0!important;overflow:hidden!important;display:flex!important;gap:8px!important}.panel.contract{flex:1!important;min-height:0!important;overflow:auto!important;padding:12px!important}.panel.rules-panel{display:none!important}.wishes{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important;padding:5px!important}.wish-item{min-height:24px!important;padding:4px 5px!important;font-size:10px!important}.mini{font-size:10px!important;line-height:1.4!important;margin:5px 0!important}.partner-note{font-size:11px!important;padding:8px!important}.how-win,.odds-disclosure,footer,.reward-binding-terms{display:none!important}}
@media(min-width:1000px) and (max-height:700px){.wheel-area,body.embedded-game .wheel-area{width:min(32vh,300px)!important;height:min(32vh,300px)!important}.wheel-card{padding:7px 12px!important}.mode{padding:4px 8px!important}}
.quick-terms{margin:4px auto;text-align:center;color:#d7b1a7;font-size:11px;line-height:1.45;max-width:540px}.quick-terms strong{color:#f4b48a}.quick-terms button{color:#ffbb91;background:transparent;border:0;text-decoration:underline;cursor:pointer;font:inherit}.ritual-guide{max-width:min(710px,94vw)!important}.ritual-guide a{color:#ffbb91}

/* v58: use available space for rules and clear reward terms */
.contract-terms{border-top:1px solid #57313f;margin-top:9px;padding-top:9px;font-size:11px;line-height:1.42;color:#d7bbc1}
.contract-terms strong{color:#f2ae8c;letter-spacing:.07em;font-size:10px}
.contract-terms p{margin:6px 0}.contract-terms b{color:#f4d5c2}
.contract-terms a,.contract-terms button{color:#ffbd8e;text-decoration:underline;background:none;border:0;padding:0;cursor:pointer;font:inherit}
@media(min-width:1000px){
 .layout aside{display:grid!important;grid-template-rows:minmax(0,1.1fr) minmax(0,.9fr)!important;gap:9px!important;min-height:0!important}
 .panel.contract{min-height:0!important;overflow:auto!important;scrollbar-width:thin!important}
 .panel.rules-panel{display:block!important;min-height:0!important;overflow:auto!important;scrollbar-width:thin!important;padding:12px!important}
 .rules-panel .rule{padding:5px 0!important}.rules-panel .rule p{font-size:10px!important;line-height:1.3!important}
 .rules-panel .rule strong{font-size:10px!important}
 .wheel-card{justify-content:center!important}
 .wheel-area{width:min(38vh,380px)!important;height:min(38vh,380px)!important}
 .panel.contract .mini{line-height:1.25!important}
}
@media(max-width:999px){.panel.rules-panel{display:block!important}.contract-terms{font-size:12px}}

.risk-panel{margin:12px auto;padding:15px;max-width:490px;text-align:center;border:1px solid #bd745e;border-radius:14px;background:linear-gradient(140deg,#29101c,#160f20);color:#f8d9c5;box-shadow:0 0 28px #ad30251c}.risk-panel[hidden]{display:none!important}.risk-panel strong{font:700 15px Georgia,serif;letter-spacing:.07em}.risk-panel p{font-size:12px;line-height:1.6}.risk-actions{display:flex;gap:10px;justify-content:center}.risk-actions button{flex:1;min-width:0;border-radius:8px;border:1px solid #c17b66;background:#35202b;color:#ffe0d0;padding:11px;cursor:pointer}.risk-actions button:last-child{background:linear-gradient(120deg,#8e243b,#d75b38);font-weight:800}.risk-actions button:disabled{opacity:.5;cursor:wait}

/* Full-width dashboard */
@media(min-width:1000px){main{width:calc(100vw - 32px)!important;max-width:none!important;padding-left:clamp(12px,1.5vw,30px)!important;padding-right:clamp(12px,1.5vw,30px)!important}.layout{grid-template-columns:minmax(0,1.65fr) minmax(360px,.85fr)!important;gap:clamp(12px,1vw,22px)!important}.wheel-card{width:100%!important}.wheel-area{width:min(48vh,480px)!important;height:min(48vh,480px)!important}.layout aside{grid-template-rows:minmax(0,1.05fr) minmax(0,.95fr)!important}}
@media(min-width:1000px) and (max-height:740px){.wheel-area{width:min(38vh,360px)!important;height:min(38vh,360px)!important}}
