:root{--red: #ee594e;--red-l: #ff8376;--red-d: #c8392f;--blue: #3f9cde;--blue-l: #86ceff;--blue-d: #2a6fa8;--sky: #83c7d3;--orange: #fba528;--orange-d: #c97a12;--teal: #20abc2;--green: #49b265;--violet: #8b5bd6;--gold: #ffd360;--gold-d: #e0a62b;--star: #ffc928;--cream: #fff6e2;--cream-d: #e8d5b0;--ink: #3a2a1a;--vh: 100vh}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--sky);color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif;touch-action:none;overscroll-behavior:none}button{font:inherit;border:0;color:#fff;font-weight:850;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.45;cursor:default}button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}#app{position:absolute;inset:0;height:var(--vh);overflow:hidden}#view{display:block;width:100%;height:100%}.hidden{display:none!important}.layer{position:absolute;inset:0;pointer-events:none}.layer button,.layer #stick{pointer-events:auto}.screen{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#0b2b3eb0,#0b2b3e40);padding:16px}.card{width:min(520px,92vw);padding:26px;text-align:center;border:2px solid #ffffff48;border-radius:28px;background:#113747ee;box-shadow:0 20px 60px #001b2f66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card{border:40px solid transparent;border-image:url(../ui_panel_cream.png) 170 fill / 40px / 0 stretch;background:none;border-radius:0;padding:0 6px 8px;color:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.card h1,.card h2{color:var(--ink);text-shadow:0 2px 0 #ffffffaa}.card p{color:#6f5c45}.card .eyebrow{color:#b07a28}.card .record{color:#8b7656}.card.wide{width:min(640px,94vw)}.eyebrow{font-size:12px;letter-spacing:4px;color:#a6e8cf;font-weight:800}h1{font-size:clamp(36px,7vw,68px);letter-spacing:-2px;margin:8px 0;color:var(--cream);line-height:1}h2{font-size:clamp(24px,5vw,34px);margin:6px 0 10px}p{color:#c9dfe4;line-height:1.5;margin:10px 0 18px}.record{margin-top:16px;color:#a8d0da;font-size:13px}.rotate-icon{font-size:60px;animation:tilt 1.6s ease-in-out infinite}@keyframes tilt{0%,to{transform:rotate(0)}50%{transform:rotate(90deg)}}.btn{border-radius:18px;padding:15px 26px;font-size:20px;margin:6px;box-shadow:0 5px #0003;transition:transform .1s}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:none}.primary{background:var(--orange);color:#43310f;box-shadow:0 6px 0 var(--orange-d)}.secondary{background:var(--teal);box-shadow:0 6px #16798b}.small{background:#285564;padding:9px 14px;font-size:14px;box-shadow:0 4px #1b3b46}.primary,.secondary{background:center/100% 100% no-repeat;box-shadow:none;border:0;width:clamp(190px,33vw,250px);aspect-ratio:512 / 192;height:auto;padding:0 22px;font-size:clamp(16px,2.5vw,20px)}.primary{background-image:url(../ui_btn_primary.png);color:#5a3708}.primary:active:not(:disabled){background-image:url(../ui_btn_primary_press.png)}.secondary{background-image:url(../ui_btn_secondary.png);color:#0d3d47}.secondary:active:not(:disabled){background-image:url(../ui_btn_secondary_press.png)}.primary:active:not(:disabled),.secondary:active:not(:disabled){transform:translateY(5px)}.modes{display:flex;justify-content:center;gap:8px;margin:4px 0 12px}.modes button{flex:0 0 auto;padding:9px 16px;border-radius:14px;font-size:15px;background:#fff;color:#8a7352;border:2px solid var(--cream-d);box-shadow:0 3px 0 var(--cream-d)}.modes button.on{background:var(--orange);color:#43310f;border-color:var(--orange-d);box-shadow:0 3px 0 var(--orange-d)}#hud{z-index:2}#scoreboard{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);text-align:center}.scores{display:flex;align-items:center;gap:14px;font-size:clamp(22px,4.5vw,34px);font-weight:900;background:#123443e8;border:2px solid #ffffff80;border-radius:20px;padding:4px 22px}.colon{opacity:.65}.red{color:var(--red-l)}.blue{color:var(--blue-l)}#timer{font-variant-numeric:tabular-nums;background:#123443e6;border-radius:0 0 12px 12px;display:inline-block;padding:2px 16px;font-weight:800;font-size:14px}#tools{position:absolute;top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));display:flex;gap:8px}.tool{width:42px;height:38px;border-radius:12px;background:#123443d9;border:1px solid #ffffff50;font-size:17px;display:grid;place-items:center}.tool img{width:26px;height:26px}.btn img{width:26px;height:26px;vertical-align:-6px;margin-right:8px}.ricon{width:30px;height:30px;vertical-align:-7px;margin-right:4px}.rewards{gap:10px}#phase{position:absolute;top:max(10px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));background:#123443ba;border-radius:14px;padding:8px 12px;font-size:12px;font-weight:800}#hint{position:absolute;top:84px;width:100%;text-align:center;pointer-events:none}#hintText{display:inline-block;background:#0f2f3cd0;border-radius:14px;padding:5px 14px;color:#fff2a2;font-size:clamp(14px,2.8vw,19px);font-weight:850}#hintText:empty{display:none}#toast{position:absolute;inset:20% 6% auto;text-align:center;font-size:clamp(30px,7vw,70px);font-weight:900;color:var(--cream);text-shadow:0 5px var(--red-d);transform:rotate(-3deg);pointer-events:none}#countdown{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-weight:900;color:var(--cream);font-size:clamp(90px,26vw,240px);line-height:1;text-shadow:0 8px 0 var(--orange-d),0 14px 30px #0006}#countdown:empty{display:none}#countdown span{display:block;animation:cdPop .9s ease-out}#countdown span.go{color:var(--gold);font-size:.62em;letter-spacing:-2px}@keyframes cdPop{0%{transform:scale(1.6);opacity:0}35%{transform:scale(1);opacity:1}to{transform:scale(.92);opacity:.85}}#stickZone{position:absolute;left:0;bottom:0;width:42%;height:72%;pointer-events:auto}#stick{position:absolute;width:124px;height:124px;margin:-62px 0 0 -62px;border-radius:50%;background:url(../ui_stick_base.png) center/contain no-repeat,#103a3f30;pointer-events:none}#knob{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:#ffffffe0;box-shadow:0 5px #0002}#actions{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;gap:14px}.round{border-radius:50%;border:0;text-shadow:0 2px #0004;background-size:100% 100%;background-repeat:no-repeat}#shoot{width:clamp(84px,15vh,118px);height:clamp(84px,15vh,118px);background-image:url(../ui_btn_round.png);color:#43310f;font-size:16px}#jump{width:clamp(66px,11vh,90px);height:clamp(66px,11vh,90px);background-image:url(../ui_btn_round_small.png);color:#0d3d47;font-size:13px}#actions button{display:grid;place-content:center;line-height:1.05;padding:0}#actions span{display:block;font-size:20px;line-height:1;margin-bottom:2px}#shoot.ready{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}#keyboard{position:absolute;bottom:8px;left:50%;transform:translate(-50%);font-size:11px;color:#e3f2dbad;white-space:nowrap}@media (pointer: coarse){#keyboard{display:none}}#floaters{position:absolute;inset:0;overflow:hidden}.float{position:absolute;font-size:22px;font-weight:900;color:var(--cream);text-shadow:0 2px 3px #123;animation:rise .85s ease-out forwards}@keyframes rise{to{transform:translateY(-60px);opacity:0}}.ribbon{display:grid;place-items:center;min-height:72px;color:#fff;background:url(../ui_ribbon_red.png) center/100% 100% no-repeat;padding:10px 70px;font-size:clamp(20px,4.2vw,30px);font-weight:900;text-shadow:0 2px 2px #00000040}.mvp{margin:14px 0 6px;display:flex;flex-direction:column;gap:2px}.mvp-label{font-size:12px;letter-spacing:3px;color:#a4661a;font-weight:800}.mvp b{font-size:26px;color:var(--ink)}.mvp span:last-child{font-size:13px;color:#6f5c45}.rewards{display:flex;justify-content:center;gap:14px;align-items:center;font-size:24px;font-weight:900;color:#7a4f12;margin:10px 0}.rewards .sep{opacity:.4}.result-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:12px 0 6px}#hotCorner{position:absolute;z-index:4;left:0;top:0;width:40px;height:40px}#panel{position:absolute;z-index:30;top:8px;right:8px;bottom:8px;width:min(380px,96vw);overflow:auto;padding:16px;background:#102e3bf7;border:1px solid #ffffff55;border-radius:18px;touch-action:pan-y;font-size:13px}#panel h3{margin:0 0 10px;display:flex;justify-content:space-between;align-items:center}#panel .group{margin:12px 0 6px;font-weight:900;color:var(--gold);letter-spacing:1px;font-size:12px}#panel label{display:block;margin:8px 0;color:#b9dbe1}#panel output{float:right;color:var(--cream);font-variant-numeric:tabular-nums}#panel input[type=range]{display:block;width:100%;margin:6px 0;accent-color:var(--orange);touch-action:auto}#panel .toggle{display:flex;gap:8px;margin:10px 0}#panel .toggle button{flex:1;padding:10px;border-radius:12px;background:#27566a;font-size:13px}#panel .toggle button.on{background:var(--orange);color:#43310f}#panel .note{color:#8fb3bd;font-size:11px;line-height:1.45;margin-top:12px}#panel .stat{background:#ffffff0f;padding:6px 8px;border-radius:8px;margin:4px 0;display:flex;justify-content:space-between}#panel .stat b{color:#fff}@media (max-height: 430px){.card{padding:16px}.btn{padding:11px 20px;font-size:17px}#hint{top:68px}.mvp{margin:8px 0 2px}.mvp b{font-size:20px}.rewards{margin:6px 0;font-size:18px}}.nick{display:block;width:min(260px,80%);margin:2px auto 10px;padding:10px 14px;border-radius:14px;border:2px solid var(--cream-d);background:#fffdf6;font:700 17px system-ui,sans-serif;color:var(--ink);text-align:center;outline:none}.nick:focus{border-color:var(--orange)}.note{font-size:14px;min-height:1.2em;margin:8px 0 4px}.share{display:flex;gap:8px;justify-content:center;align-items:center;margin:4px 0 10px}.share input{flex:1 1 auto;min-width:0;max-width:360px;padding:9px 12px;border-radius:12px;border:2px solid var(--cream-d);background:#fffdf6;color:#6f5c45;font:600 14px system-ui,sans-serif}.share .btn{margin:0}.teams{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0}.team{border-radius:16px;padding:8px 10px 10px;background:#fff8}.team h3{margin:2px 0 6px;font-size:18px}.team.red h3{color:#c8392f}.team.blue h3{color:#2a6fa8}.team ul{list-style:none;margin:0 0 8px;padding:0;min-height:3.6em;text-align:left}.team li{padding:3px 8px;border-radius:8px;font-weight:700;color:var(--ink)}.team li.me{background:#ffd36066}.team li.bots{color:#a08a6a;font-weight:600}.team .btn{width:100%;margin:0}.btn:disabled{opacity:.55}@media (max-height: 520px){#lobby .card h2{margin:2px 0 4px}.team ul{min-height:0}}.tname{font-size:clamp(11px,1.7vw,15px);font-weight:800;letter-spacing:.2px;max-width:clamp(84px,20vw,200px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tname.red{text-align:right}.tname.blue{text-align:left}#scoreboard .scores{gap:10px;padding:4px 16px}
