*{box-sizing:border-box}body{margin:0;background:#dfedf2;color:#080e12;font:700 16px/1.5 system-ui,sans-serif}button,input,select{font:800 15px system-ui;color:#05090c}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{padding:13px 17px;border:1px solid #789caf;border-radius:10px;background:#badced;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}button:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #0a667a;outline-offset:3px}a{color:#081e2b}header{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:20px 4vw;border-bottom:1px solid #a6c3d0}header strong,.eyebrow{font-size:12px;letter-spacing:2px}main{max-width:1100px;margin:45px auto;padding:0 24px}h1{font-size:clamp(30px,5vw,54px);line-height:1.1;margin:14px 0}p{max-width:85ch}.notice{padding:16px;border-left:4px solid #3b7488;background:#f2f8fa}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:28px 0}.card{text-align:left;background:#edf6fa;padding:24px;display:flex;flex-direction:column;gap:16px;min-height:160px}.card b{font-size:20px}.card.selected{border:3px solid #145069;background:#b8daeb;padding:22px}.setup{padding:24px;background:#f3f8fa;border-radius:15px}.setup button{margin:5px 5px 5px 0}input,select{padding:12px;border:1px solid #7195a7;background:white;border-radius:7px;max-width:100%}label{display:block}input{display:block;width:100%;margin:8px 0}select{margin-left:8px}.green{background:#98d9b9}.red{background:#f0b7aa}#error{color:#8a170b}details{margin:25px 0}summary{cursor:pointer}#arena{padding:10px 2vw}#arena[hidden],[hidden]{display:none!important}.score{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.score strong:first-child{font-size:24px}#stage{position:relative;height:calc(100dvh - 175px);min-height:380px;background:#103747;border-radius:15px;overflow:hidden}canvas{width:100%;height:100%;display:block}#hint{position:absolute;top:10px;left:10px;max-width:calc(100% - 20px);margin:0;background:#eef7faed;padding:10px 14px;border-radius:8px;pointer-events:none}.view{position:absolute;bottom:12px;left:12px;display:flex;gap:4px;flex-wrap:wrap;max-width:52%}.view button,.view select{padding:10px;margin:0}#pad{position:absolute;right:12px;bottom:12px;display:grid;grid-template-columns:repeat(3,56px);grid-template-rows:repeat(3,56px);gap:4px}#pad button{padding:0;border-radius:8px;touch-action:none}#pad button[data-axis=x],#pad button[data-axis=y]{font-size:28px}.up{grid-area:1/2}.raise{grid-area:1/3}.left{grid-area:2/1}.grab{grid-area:2/2}.right{grid-area:2/3}.down{grid-area:3/2}.lower{grid-area:3/3}#pad .ready{background:#8fe0b3;border:3px solid #174e38}#race{margin:8px 0}dialog{border:1px solid #7097a8;border-radius:18px;background:#e9f4f8;color:#060c10;max-width:550px;width:calc(100% - 28px);max-height:90dvh;padding:26px}dialog::backdrop{background:#052433bb}dialog button{margin:8px 5px 0 0}#shareBox{border-top:1px solid #9fbfca;padding-top:18px}#shareCode{font-size:14px}#pad button:active{background:#83b8cf}@media(max-width:650px){header{padding:12px;font-size:13px}header strong{font-size:10px;letter-spacing:1px}main{margin:25px auto;padding:0 15px}.cards{grid-template-columns:1fr;gap:8px}.card{min-height:0;padding:16px;gap:6px}.card.selected{padding:14px}.card b{font-size:18px}.setup{padding:16px}.score{gap:7px;font-size:12px}.score button{padding:9px;font-size:12px}.score strong:first-child{font-size:20px}#stage{height:calc(100dvh - 200px);min-height:370px}#pad{right:8px;bottom:8px;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(3,48px)}#pad button{font-size:12px}.view{left:8px;bottom:8px;max-width:calc(100% - 174px);gap:3px}.view select{width:100%;order:-1}.view button{padding:9px}#hint{font-size:13px;padding:8px}#race{font-size:13px}}@media(max-height:520px) and (min-width:651px){header{display:none}#stage{height:calc(100dvh - 115px);min-height:220px}}
