@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&display=swap');
:root{font-family:Manrope,system-ui,sans-serif;color:#f6f3e9;background:#141620}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 0,#353042,transparent 55%);min-height:100vh}main{max-width:560px;margin:auto;padding:28px 22px 35px;padding-top:max(28px,env(safe-area-inset-top))}header{display:flex;justify-content:space-between;align-items:center;gap:12px}.badge{font-size:9px;letter-spacing:1.4px;color:#d8e78e}#net{font-size:10px;color:#aaa}h1{font-size:clamp(56px,14vw,82px);letter-spacing:-5px;margin:20px 0 0;line-height:1.1;font-weight:800}h1 span{color:#d8ee87}.intro{color:#9c9daa;margin:8px 0 26px}section{background:#202330;border:1px solid #383b49;border-radius:24px;padding:20px}label{font-weight:700;display:block;margin-bottom:12px}input{width:100%;border:1px solid #4b4e60;background:#141620;color:white;padding:16px;border-radius:12px;font:inherit;font-size:14px}button{font:inherit;cursor:pointer;border:0}button:disabled{cursor:default;opacity:.4}.primary,.secondary{width:100%;padding:16px;border-radius:14px;font-weight:800;margin-top:12px}.primary{background:#d8ee87;color:#1a2016}.secondary{background:#303442;color:#f6f3e9}.task{font-size:18px;font-weight:700;overflow-wrap:anywhere}.round{display:flex;justify-content:space-between;align-items:center;color:#c6c7d0;margin:20px 0 12px}#clock{font-size:30px;color:#d8ee87;font-variant-numeric:tabular-nums}#arena{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;min-height:125px;align-items:center}.hand{text-align:center;min-width:65px}.hand b{font-size:52px;display:block}.hand small{display:block;max-width:90px;overflow:hidden;text-overflow:ellipsis}.shake b{animation:shake .5s infinite alternate}@keyframes shake{from{transform:rotate(-15deg) translateY(-5px)}to{transform:rotate(10deg) translateY(6px)}}#choices{display:flex;gap:8px;margin-top:18px}#choices button{flex:1;background:#303443;color:#eee;padding:12px 4px;border-radius:15px;border:2px solid transparent;font-size:12px}#choices b{font-size:35px;display:block;margin-bottom:8px}#choices .selected{border-color:#d8ee87;background:#424c36}#hint{text-align:center;color:#d8ee87;min-height:38px;font-size:13px}#people{display:flex;flex-wrap:wrap;gap:7px}.player{background:#303442;border-radius:20px;padding:6px 10px;font-size:11px}.player.out{opacity:.5}footer{text-align:center;color:#9294a4;font-size:11px;line-height:1.9;margin-top:25px}#error{color:#ffb4ab;font-size:13px}#entry p{font-size:12px;color:#b7b8c2}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){.shake b{animation:none}}

#winner{position:relative;text-align:center;background:radial-gradient(ellipse at top,#70439b,#332345 75%);border:2px solid #e5be62;border-radius:20px;padding:15px 12px 19px;margin:12px 0 20px;box-shadow:0 0 28px #ab51ff44;animation:win-in .45s ease-out}.cup{font-size:64px;line-height:1.15;filter:drop-shadow(0 0 12px #ffc83d66)}.winner-label{color:#ffe3a0;font-size:10px;letter-spacing:2px;font-weight:800;margin-top:10px}#winner-name{font-size:clamp(26px,8vw,40px);line-height:1.15;margin:10px 0;color:#fff;overflow-wrap:anywhere}#winner-call{display:block;color:#ffe184;font-size:21px;overflow-wrap:anywhere}#winner p{font-size:12px;color:#e4d4f0;margin:10px 0 0}.has-winner .round{margin-bottom:4px}.has-winner #arena{min-height:70px}.has-winner .hand b{font-size:30px}.hand.survivor{background:#d8ee8720;border:1px solid #d8ee87;border-radius:12px;padding:7px}.hand.eliminated{opacity:.45;padding:7px}#round-result{background:#493360;border:1px solid #ad74de;border-radius:14px;padding:15px;text-align:center;font-weight:800;overflow-wrap:anywhere;margin-bottom:16px}@keyframes win-in{from{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){#winner{animation:none}}

.task-box{background:linear-gradient(120deg,#493164,#30263f);border:1px solid #b680e5;border-left:4px solid #d8ee87;border-radius:15px;padding:15px 16px;box-shadow:0 4px 18px #0002}.task-label{text-transform:uppercase;letter-spacing:1.6px;font-size:10px;font-weight:800;color:#d8ee87;margin-bottom:8px}.task-box .task{font-size:22px;line-height:1.35;font-weight:800;color:#fff;overflow-wrap:anywhere}

.has-winner #people,.has-winner .hand small{display:none}.has-winner #hint:empty{display:none}.has-winner .hand{min-width:60px}

.shake.fist-right b{animation:fist-right .48s ease-in-out infinite alternate}.shake.fist-left b{animation:fist-left .48s ease-in-out infinite alternate}@keyframes fist-right{from{transform:translate(-4px,-5px) rotate(-8deg)}to{transform:translate(4px,5px) rotate(8deg)}}@keyframes fist-left{from{transform:translate(4px,-5px) rotate(8deg)}to{transform:translate(-4px,5px) rotate(-8deg)}}@media(prefers-reduced-motion:reduce){.shake.fist-right b,.shake.fist-left b{animation:none}}

.presence-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#818593;margin-right:6px;vertical-align:middle}.presence-dot.online{background:#4ade80;box-shadow:0 0 5px #4ade8055}

#winner-score{margin-top:12px;color:#ffe184;font-weight:800;font-size:16px}#final-scores{margin-top:10px;font-size:12px;color:#dfd3eb;line-height:1.7;overflow-wrap:anywhere}
