:root{color-scheme:dark;font-family:Inter,Segoe UI,system-ui,sans-serif;background:#0c1620;color:#e7f1f4}*{box-sizing:border-box}body{margin:0}main{max-width:920px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow{color:#7de0c2;font-size:11px;letter-spacing:2px;font-weight:750}h1{font-size:clamp(24px,5vw,38px);letter-spacing:-1px;margin:24px 0 8px}p{line-height:1.55}#status{min-height:24px;color:#a8bdca}.screen{position:relative;overflow:hidden;border:1px solid #345268;border-radius:14px;background:linear-gradient(145deg,#101e30,#1b3440);box-shadow:0 18px 60px #0004;margin:22px 0}canvas{display:block;width:100%;height:auto}#clock{position:absolute;top:12px;left:14px;color:#ffe5a3;font-size:12px;letter-spacing:1px;pointer-events:none}.actions,.touch{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}button{font:inherit;font-size:13px;font-weight:650;border:1px solid #517b83;background:#244b4b;color:#e8fff6;border-radius:9px;padding:11px 15px;cursor:pointer;touch-action:none}button:hover{border-color:#80e0c0;background:#2c5e56}button:disabled{opacity:.45;cursor:default}.quiet{background:transparent;border-color:#334a5e;color:#a8bdca}label{display:block;margin:20px 0 8px;font-size:13px;color:#a8bdca}textarea{width:100%;resize:none;border-radius:10px;padding:15px;border:1px solid #436079;background:#121f30;color:#9cecd0;font:inherit;font-size:14px;cursor:pointer}textarea:focus{outline:2px solid #81daba;border-color:transparent;background:#172d36}.hint,footer{font-size:12px;color:#92a9b7}.touch button{flex:1;min-width:58px}#identity{color:#8ce7c5;font-size:13px}footer{margin-top:24px;padding-top:16px;border-top:1px solid #253a4e}#login{background:#6441a5;border-color:#9873d3}#finish{color:#e8c27e}@media(max-width:400px){main{padding:14px}.actions button{padding:9px;font-size:12px}.touch{gap:6px}}

.touch{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.touch button{min-height:60px}.touch .held{background:#467a63;border-color:#b9ffe4;box-shadow:inset 0 0 0 2px #8ce7c5}.auto-run{display:flex;align-items:center;gap:8px;margin:10px 0}.auto-run input{width:20px;height:20px}button:focus-visible{outline:2px solid #b9ffe4;outline-offset:2px}
body.mobile main{padding:12px 12px calc(155px + env(safe-area-inset-bottom))}body.mobile h1{font-size:22px;margin:12px 0}body.mobile label[for=keys],body.mobile #keys,body.mobile #keys+.hint{display:none}body.mobile .touch{position:fixed;z-index:10;bottom:0;left:0;right:0;margin:0;padding:12px max(12px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#0c1620ed;display:grid;grid-template-columns:1fr 1fr .65fr 1.4fr;gap:10px;border-top:1px solid #345268}body.mobile #left{grid-column:1;grid-row:1}body.mobile #right{grid-column:2;grid-row:1}body.mobile #run{grid-column:1/3;grid-row:2;min-height:36px;padding:7px}body.mobile #jump{grid-column:4;grid-row:1/3;font-size:20px;border-radius:30px;min-height:110px}body.mobile #dance{grid-column:3;grid-row:1/3;padding:6px}body.mobile footer{display:none}body.mobile .screen{margin:12px 0}body.mobile header{gap:6px;flex-wrap:wrap}body.mobile header button{padding:8px;font-size:12px}body.mobile .eyebrow{flex:1}
body.playing{min-height:100dvh;background:#0c1620}body.playing main{max-width:none;padding-top:max(8px,env(safe-area-inset-top))}body.playing h1,body.playing footer,body.playing #finish,body.playing #identity,body.playing .eyebrow{display:none}body.playing #status{font-size:11px;margin:4px 0;min-height:14px}body.playing .screen{margin:6px 0}body.playing canvas{max-height:calc(100dvh - 285px);object-fit:contain}body.playing .actions{margin:6px 0}body.playing .actions button{padding:6px;font-size:11px}body.playing .auto-run{margin:4px 0;font-size:12px}
@media(orientation:landscape) and (max-height:600px){body.mobile.playing main{padding-bottom:145px}body.mobile.playing canvas{max-height:calc(100dvh - 180px)}body.mobile.playing .touch{background:#0c1620b8;padding-top:6px}body.mobile.playing .touch button{min-height:40px}body.mobile.playing #jump{min-height:86px}body.mobile.playing #run{min-height:30px}}

#control-help{font-size:12px;color:#b4cad1;margin:12px 0}#control-help summary{cursor:pointer;font-weight:700}#fight[aria-pressed=true]{background:#7b3043;border-color:#ff829c}body.mobile #control-help{margin:6px 0}

body.mobile main{padding-bottom:calc(215px + env(safe-area-inset-bottom))}body.mobile .touch{grid-template-columns:repeat(6,1fr)}body.mobile #left{grid-column:1/3;grid-row:1}body.mobile #right{grid-column:3/5;grid-row:1}body.mobile #jump{grid-column:5/7;grid-row:1/3}body.mobile #run{grid-column:1/3;grid-row:2}body.mobile #dance{grid-column:3/5;grid-row:2}body.mobile #fight{grid-column:1/4;grid-row:3;min-height:42px}body.mobile #confetti{grid-column:4/7;grid-row:3;min-height:42px}body.mobile.playing main{padding-bottom:calc(205px + env(safe-area-inset-bottom))}body.mobile.playing canvas{max-height:calc(100dvh - 330px)}
@media(orientation:landscape) and (max-height:600px){body.mobile.playing canvas{max-height:calc(100dvh - 225px)}body.mobile #fight,body.mobile #confetti{min-height:34px;padding:6px}}

body.mobile #grenadeleft{grid-column:1/4;grid-row:4;min-height:38px}body.mobile #grenaderight{grid-column:4/7;grid-row:4;min-height:38px}body.mobile main{padding-bottom:calc(265px + env(safe-area-inset-bottom))}body.mobile.playing main{padding-bottom:calc(255px + env(safe-area-inset-bottom))}body.mobile.playing canvas{max-height:calc(100dvh - 380px)}

#aimdock{display:none}#weapon-hud{color:#ffd5a1;font-size:13px;min-height:20px}body.slayer canvas{cursor:crosshair;touch-action:none}body.mobile.armed #aimdock{display:flex;position:fixed;right:max(12px,env(safe-area-inset-right));bottom:20px;z-index:20;width:34%;max-width:180px;align-items:center;flex-direction:column;gap:12px}#shoot{width:100%;min-height:48px;background:#7c3443;border-color:#e6828b}#aimstick{width:120px;height:120px;border:2px solid #7996ab;border-radius:50%;background:#152a3ee8;position:relative;touch-action:none;user-select:none}#aimknob{position:absolute;width:44px;height:44px;left:36px;top:36px;border-radius:50%;background:#82b2b9;border:2px solid #e0f4fa;pointer-events:none}#aimstick span{position:absolute;left:42px;bottom:8px;font-size:10px;color:#c8d7df;pointer-events:none}body.mobile.armed .touch{right:39%;grid-template-columns:repeat(4,1fr);gap:5px;padding:8px}body.mobile.armed #left{grid-column:1/3;grid-row:1}body.mobile.armed #right{grid-column:3/5;grid-row:1}body.mobile.armed #jump{grid-column:3/5;grid-row:2;min-height:54px;font-size:15px}body.mobile.armed #run{grid-column:1/3;grid-row:2}body.mobile.armed #dance{grid-column:1/3;grid-row:3}body.mobile.armed #fight{grid-column:3/5;grid-row:3}body.mobile.armed #confetti{grid-column:1/5;grid-row:4}body.mobile.armed #grenadeleft{grid-column:1/3;grid-row:5}body.mobile.armed #grenaderight{grid-column:3/5;grid-row:5}body.mobile.armed .touch button{min-width:0;padding:6px;font-size:11px;min-height:32px}
@media(orientation:landscape) and (max-height:600px){body.mobile.armed #aimdock{bottom:8px;right:16px;width:135px;gap:4px}body.mobile.armed #aimstick{width:100px;height:100px}body.mobile.armed #aimknob{left:26px;top:26px}body.mobile.armed #aimstick span{left:32px}body.mobile.armed #shoot{min-height:36px}body.mobile.armed .touch{right:160px;grid-template-columns:repeat(8,1fr)}body.mobile.armed #left{grid-column:1/3;grid-row:1}body.mobile.armed #right{grid-column:3/5;grid-row:1}body.mobile.armed #jump{grid-column:5/7;grid-row:1/3}body.mobile.armed #run{grid-column:1/5;grid-row:2}body.mobile.armed #dance{grid-column:7/9;grid-row:1}body.mobile.armed #fight{grid-column:7/9;grid-row:2}body.mobile.armed #confetti{grid-column:1/4;grid-row:3}body.mobile.armed #grenadeleft{grid-column:4/7;grid-row:3}body.mobile.armed #grenaderight{grid-column:7/9;grid-row:3}body.mobile.armed.playing main{padding-bottom:150px}body.mobile.armed.playing canvas{max-height:calc(100dvh - 190px)}}

#weapon-hud{position:absolute;right:12px;top:12px;text-align:right;font-size:11px;line-height:1.5;max-width:48%;background:#0c1620b8;border-radius:5px;padding:4px 7px;pointer-events:none;min-height:0}#weapon-hud:empty{display:none}

body{background:linear-gradient(#0c1620e0,#0c1620ef),url("rust-map.jpg") center/cover fixed}.screen{background:linear-gradient(#0c162073,#0c162099),url("rust-map.jpg") center/cover}

#killstreak-controls{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0}#reward-status{font-size:11px;color:#ffcf89;flex-basis:100%}#missile-steer button{touch-action:none}body.mobile.slayer #killstreak-controls{position:fixed;top:4px;left:4px;right:4px;background:#101c2eea;z-index:25;margin:0;padding:5px;border-radius:8px}body.mobile.slayer #killstreak-controls button{font-size:10px;padding:5px;min-height:30px}body.mobile.slayer main{padding-top:85px}body.mobile #missile-steer:not([hidden]){display:flex;gap:5px}
