*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#10192b;color:#edf3ff}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,canvas:focus-visible{outline:3px solid #ffcd61;outline-offset:3px}[hidden]{display:none!important}.arcade{max-width:1080px;margin:auto;padding:14px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.title small{display:block;color:#8cadd4;font-size:10px;letter-spacing:2px;font-weight:800}.title h1{font-size:clamp(17px,3vw,25px);margin:2px 0}.tools{display:flex;gap:6px}.tools button,.actions button{border:1px solid #344969;border-radius:10px;background:#1c2b44;color:#fff;padding:10px 14px;min-height:44px}.hud{display:flex;gap:8px;align-items:center;margin-bottom:9px}.hud span{background:#1a2942;border:1px solid #2b4160;padding:7px 12px;border-radius:8px;font-size:12px;font-weight:750}.hud #mission{margin-left:auto;color:#ffd077}.screen{position:relative;border-radius:16px;overflow:hidden;background:#14213b;border:1px solid #33465e;box-shadow:0 12px 40px #0005}canvas{display:block;width:100%;aspect-ratio:8/5;touch-action:none}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;background:linear-gradient(130deg,#071326e8,#14243ace);backdrop-filter:blur(4px)}.overlay .label{font-size:11px;letter-spacing:3px;color:#78dcca;font-weight:800}.overlay h2{font-size:clamp(22px,4vw,42px);line-height:1.1;max-width:600px;margin:12px 0}.overlay p{max-width:530px;font-size:clamp(12px,2vw,16px);color:#d1dfef;line-height:1.6;margin:0 0 18px}.primary{background:#ffca62!important;color:#253047!important;border:0!important;font-weight:850;font-size:16px;padding:13px 30px;border-radius:12px;box-shadow:0 6px 0 #ad742c;min-height:48px}.best{font-size:12px;color:#9faeca;margin-top:15px}.controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;min-height:62px;touch-action:none;user-select:none}.control-group{display:flex;gap:8px}.control{border:1px solid #4c617b;background:linear-gradient(#29405e,#1c2b43);color:white;min-width:56px;min-height:52px;border-radius:12px;box-shadow:0 4px 0 #060f20;font-size:20px;font-weight:800;touch-action:none;user-select:none}.control.action{background:linear-gradient(#e9ad46,#bc812e);color:#182337;font-size:14px;padding:0 18px;min-width:86px}.control[aria-pressed=true]{transform:translateY(3px);box-shadow:0 1px 0 #060f20}.hint{font-size:11px;color:#93aaca;text-align:center;margin:9px 0 0;line-height:1.5}.actions{display:flex;gap:8px;justify-content:center;margin-top:10px}.result-score{font-size:32px;color:#ffcf75;font-weight:900;margin:0 0 12px}.stars{color:#ffcf75;font-size:27px;letter-spacing:6px;margin-bottom:8px}@media(max-width:520px){.arcade{padding:9px}.topbar .tools button{font-size:11px;padding:8px;min-height:40px}.hud{flex-wrap:wrap;gap:5px}.hud span{font-size:11px;padding:6px 8px}.hud #mission{margin-left:0}.screen{border-radius:12px}.controls{padding-top:8px}.control{min-width:49px;min-height:52px}.overlay{padding:12px}.overlay p{margin-bottom:10px;font-size:12px}.overlay h2{margin:5px 0 8px;font-size:24px}.overlay .best{margin-top:10px}.overlay .label{font-size:9px}.primary{padding:10px 20px;min-height:42px;font-size:14px}.hint{font-size:10px}}@media(prefers-reduced-motion:reduce){.screen{box-shadow:none}}

@media(max-width:350px){.control{min-width:42px}.control.action{min-width:70px;padding:0 10px}.control-group{gap:5px}.controls{gap:4px}.hud span{font-size:10px}.tools button{padding:7px!important}}

.controls{flex-wrap:wrap;align-items:flex-start}.control-group{flex-wrap:wrap}.controls .control-group:last-child{justify-content:flex-end}.control.action{font-size:13px;min-width:72px;padding:0 14px}.title h1{max-width:600px}@media(max-width:650px){.controls{gap:8px}.control-group{gap:6px}.control.action{min-width:62px;padding:0 9px;font-size:12px}.controls .control-group:last-child{justify-content:flex-start}.tools{flex-shrink:0}.title h1{font-size:17px}.hint{margin-top:10px}}@media(max-width:350px){.control.action{min-width:57px;padding:0 7px}}

.load-note{color:#d7e2f1;font-size:12px;line-height:1.5;max-width:520px;margin:10px auto 0}.load-note.error{color:#ffcf95}.load-note[hidden]{display:none!important}button:disabled{cursor:wait;opacity:.65}.load-retry{margin-top:10px;padding:10px 18px;background:#eec774;color:#243248;border:0;border-radius:9px;font-weight:800;min-height:44px}
