body.fun-page:has(.ult){background:#090909;color:#fff}
body.fun-page:has(.ult) .fun-shell{width:min(1200px,calc(100% - 32px));padding:20px 0 80px}
.ult{font:17px/1.5 "Atkinson Hyperlegible",Arial,sans-serif;color:#fff}
.ult *{box-sizing:border-box}
.ult button{font:inherit;cursor:pointer}
.ult-back{display:inline-block;color:#fff;font-weight:800;text-decoration:none;border-bottom:3px solid #f0182b;padding:8px 0;margin-bottom:26px}
.ult-back:hover,.ult-back:focus-visible{color:#ffc928}
.ult-hero{position:relative;background:linear-gradient(125deg,#4c0a15,#160709 70%,#050505);padding:clamp(30px,6vw,70px);border-bottom:8px solid #f0182b;overflow:hidden}
.ult-hero h1{font-size:clamp(3rem,8vw,7.6rem);line-height:.91;letter-spacing:-.07em;margin:0 0 25px;font-weight:900;position:relative}
.ult-hero h1 em{font-style:normal;color:#f0182b}
.ult-hero p{font-size:clamp(17px,2vw,22px);max-width:660px;margin:0;position:relative}
.ult-star{position:absolute;right:3%;top:-80px;font-size:360px;line-height:1;color:#f0182b;opacity:.13}
.ult-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;margin-top:22px}
.ult-intro>div:first-child{background:#242424;padding:clamp(25px,4vw,48px)}
.ult-intro h2{font-size:clamp(2.5rem,5vw,4rem);line-height:1;margin:0 0 25px}
.ult-intro p{max-width:58ch;color:#eee;font-size:19px}
.ult-poster{background:#f0182b;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;min-height:350px}
.ult-poster span{font-size:clamp(8rem,18vw,15rem);line-height:.9;font-weight:900}
.ult-poster strong{font-size:clamp(1.8rem,3vw,3rem);line-height:1}
.ult-primary{background:#f0182b;color:#fff;border:2px solid #f0182b;padding:16px 24px;font-weight:900!important;margin-top:18px;min-height:55px}
.ult-primary:hover,.ult-primary:focus-visible{background:#ffc928;color:#050505;border-color:#ffc928}
.ult-play{max-width:950px;margin:34px auto 0}
.ult-progress{display:flex;justify-content:space-between;gap:12px;font-weight:900;font-size:14px;color:#ddd}
.ult-progressbar{height:10px;background:#393939;margin:14px 0 35px}
.ult-progressbar span{display:block;height:100%;background:#f0182b;transition:width .25s}
.ult-question{padding:clamp(25px,4vw,45px);background:#252525;border-left:7px solid #f0182b}
.ult-question>span,.ult-consequence>span,.ult-finish>span{color:#ffc928;font-size:16px;font-weight:900}
.ult-question h2,.ult-consequence h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;margin:15px 0 0}
.ult-choices{display:grid;gap:12px;margin-top:18px}
.ult-choices button{display:flex;align-items:center;gap:20px;text-align:left;background:#161616;border:2px solid #555;color:#fff;padding:20px;min-height:86px;font-weight:800}
.ult-choices button>span:nth-child(2){flex:1}
.ult-choices button>span:last-child{color:#ffc928;font-size:24px}
.ult-choices button:hover,.ult-choices button:focus-visible{border-color:#ffc928;background:#39101a}
.ult-letter{background:#f0182b;color:#fff;width:43px;height:43px;flex-shrink:0;display:grid;place-items:center;font-weight:900}
.ult-hint{color:#bbb;font-size:15px}
.ult-consequence{background:#252525;padding:clamp(28px,5vw,58px);border-top:6px solid #ffc928}
.ult-consequence p{font-size:21px;max-width:650px}
.ult-finish{margin-top:28px;padding:clamp(30px,5vw,60px);background:linear-gradient(125deg,#4d0b16,#1a1a1a);border-top:8px solid #ffc928}
.ult-finish h2{font-size:clamp(3rem,7vw,6rem);line-height:.95;margin:18px 0}
.ult-finish h2,.ult h1{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:380px){.ult-finish h2{font-size:clamp(2rem,9vw,3rem)}.ult-finish{padding:22px}.ult h1{font-size:clamp(2.3rem,10vw,4rem)}}
.ult-finish>p{font-size:21px;max-width:690px}
.ult-results{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:32px 0}
.ult-results>div{display:grid;grid-template-columns:1fr auto;gap:9px}
.ult-bar{grid-column:1/-1;background:#333;height:12px}
.ult-bar span{display:block;height:100%;background:#f0182b}
@media(max-width:700px){.ult-intro{grid-template-columns:1fr}.ult-poster{min-height:200px}.ult-poster span{font-size:8rem}.ult-results{grid-template-columns:1fr}.ult-choices button{padding:15px;gap:12px}}
@media(prefers-reduced-motion:reduce){.ult-progressbar span{transition:none}}
