*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#15211b;color:#dce5d6;font-family:Segoe UI,Arial,sans-serif}main{height:100%;display:flex;align-items:center;justify-content:center}canvas{display:block;outline:none;cursor:crosshair;touch-action:none}#loading{position:fixed;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 35%,#344737,#18251e 70%);z-index:10}.brand{width:min(540px,86vw);padding:40px 20px}.eyebrow{font-size:11px;letter-spacing:4px;color:#a6b992}h1{font-weight:400;letter-spacing:7px;font-size:clamp(34px,7vw,58px);margin:14px 0 16px}.brand p{color:#b4c3aa;line-height:1.7}.brand small{color:#8f9f89}.track{height:3px;background:#44543d;overflow:hidden;margin:34px 0 20px}.track i{display:block;width:40%;height:100%;background:#b4c992;animation:load 1.6s ease-in-out infinite}@keyframes load{from{transform:translateX(-110%)}to{transform:translateX(360%)}}#tools{position:fixed;left:10px;bottom:6px;display:flex;align-items:center;gap:8px;font-size:10px;color:#b7c6b0;background:#15211bb8;border-radius:5px;padding:4px 7px}button{background:#2f4434;color:#dce5d6;border:1px solid #617857;border-radius:4px;padding:5px 10px;font:inherit;cursor:pointer}button:hover{background:#496349}button:focus-visible{outline:2px solid #e1d59b}dialog{max-width:570px;width:90vw;border:1px solid #819472;border-radius:8px;background:#203329;color:#dce5d6;padding:28px;max-height:90vh;overflow:auto}dialog::backdrop{background:#08120bbc}dialog h2{font-weight:400;margin-top:0}dialog p{line-height:1.6;color:#b7c7ad}dl{display:grid;grid-template-columns:150px 1fr;font-size:13px;gap:12px}dt{color:#e7d69f}dd{margin:0}.note{font-size:12px}#closeGuide{width:100%;padding:10px}#loading.error .track{display:none}#loading.error #status{color:#f1ac95;white-space:pre-wrap;overflow-wrap:anywhere}
.roomLine{display:flex;gap:10px;margin:12px 0 20px}.roomLine input{min-width:0;flex:1;background:#15271e;border:1px solid #77916a;color:#e7edcf;padding:10px;border-radius:4px;font:16px Consolas,monospace}#roomCode{font-weight:bold;letter-spacing:1px}#netStatus{min-height:48px}#cancelRoom{width:100%;margin-top:8px}

.tankPicker{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.tankPicker label{display:flex;flex-direction:column;gap:6px}.tankPicker .wide{grid-column:1/-1}.tankPicker select{width:100%;padding:10px;background:#24352d;color:#edf1df;border:1px solid #718474;border-radius:6px}.tankPicker p{margin:0;color:#bacbb5;font-size:14px}#multiplayer{max-height:90vh;overflow:auto}#deployTank{background:#49684a}button:disabled{opacity:.5;cursor:default}

#musicVolume{width:65px;accent-color:#b4c992;cursor:pointer}

#tools{flex-wrap:wrap;max-width:calc(100vw - 20px)}

.roomSettings{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.roomSettings label{display:flex;flex-direction:column;gap:5px;font-size:13px}.roomSettings input,.roomSettings select{min-width:0;width:100%;padding:9px;background:#16291f;border:1px solid #718474;border-radius:5px;color:#edf1df}#playerList{max-height:180px;overflow:auto;margin:12px 0;font-size:13px}.playerRow{display:flex;justify-content:space-between;padding:7px;border-bottom:1px solid #425b48}.playerRow span:last-child{color:#bdd4ad}#publicRooms{max-height:180px;overflow:auto;margin:10px 0}.publicRoom{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px;background:#16291f;margin:6px 0;font-size:13px}#startBattle{margin-bottom:15px}#multiplayer{max-width:680px}

[hidden]{display:none!important}#mpHome{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.mpCard{text-align:left;padding:22px 18px;min-height:125px}.mpCard strong{display:block;font-size:20px;font-weight:500;margin-bottom:10px}.mpCard span{font-size:13px;line-height:1.6;color:#bdcfb8}.playerNameLabel{display:flex;flex-direction:column;gap:7px;font-size:13px;margin:16px 0}.playerNameLabel input{padding:10px;background:#16291f;color:#edf1df;border:1px solid #718474;border-radius:5px}#multiplayer h3{font-size:18px;font-weight:500;margin:20px 0 14px}.mpFooter{display:flex;gap:10px;margin-top:16px}.mpFooter #cancelRoom{width:auto;margin:0}#mpBack{margin-bottom:5px}

#tools{left:0;right:0;bottom:0;max-width:none;border-radius:0;border-top:1px solid #425343;padding:7px 16px;background:#17271f;display:grid;grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr);gap:16px;min-height:43px}#fps{font-size:10px;letter-spacing:.5px;color:#a3b99d}.toolNav,.toolAudio{display:flex;align-items:center;gap:8px}.toolAudio{justify-self:end}.toolNav button,.toolAudio button{padding:6px 10px;border-color:#4f6754;background:#243b2c;font-size:11px}#online{border-color:#91aa79;color:#e0ebce}#tools button:hover{background:#3c5941}#musicVolume{width:58px}@media(max-width:1000px){#tools{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:6px 10px}#fps{margin-right:auto}.toolNav,.toolAudio{gap:5px}.toolNav button,.toolAudio button{padding:5px 7px}}

body.ck-game-page #loading{position:absolute}body.ck-game-page #tools{position:absolute;z-index:5}body.ck-game-page .ck-game-stage>main{height:100%;width:100%}

/* Detailed browser controls, with game rendering kept in its own stage. */
button{box-shadow:inset 0 1px #ffffff17,0 2px 5px #0003;transition:background .15s,border-color .15s}button:hover{border-color:#b4d28f}dialog{background:linear-gradient(145deg,#263c32,#14251e);border-radius:16px;box-shadow:0 24px 80px #0009}dialog h2{letter-spacing:.7px;border-bottom:1px solid #536a50;padding-bottom:16px}dialog select,dialog input{border-radius:8px}#tools{border:1px solid #617259;background:#13251eef;box-shadow:0 4px 18px #0004;padding:7px 10px;border-radius:8px}.brand{border-left:3px solid #bfda8a;padding-left:28px}.track{height:5px;border-radius:10px}.roomLine input{letter-spacing:2px}#netStatus{border-left:2px solid #b4c992;padding-left:12px}
