:root{color-scheme:dark;--bg:#0b0f13;--panel:#141b21;--line:#34434f;--text:#f3f6f8;--muted:#91a0aa;--accent:#ffb000;--cyan:#54d8ff}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at top,#17212a 0,#0b0f13 55%,#070a0d 100%);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text)}body{padding:18px}button,a,input{font:inherit;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ffc13d;outline-offset:2px}.editor-shell{width:min(100%,1180px);margin:0 auto}.editor-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}.eyebrow{font-size:10px;letter-spacing:.16em;color:#ffbf2f;font-weight:900}.editor-head h1{margin:4px 0 5px;font-size:clamp(28px,5vw,44px)}.editor-head p{margin:0;color:#aeb9c0}.back-link{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;text-decoration:none;border:1px solid #455761;border-radius:10px;background:#202b33;font-weight:900;font-size:12px;white-space:nowrap}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;align-items:start}.board-panel,.tools-panel{background:#0d1216;border:1px solid var(--line);border-radius:18px;overflow:hidden}.board-toolbar{display:flex;justify-content:space-between;gap:10px;padding:10px 13px;background:linear-gradient(#202a32,#141b21);border-bottom:1px solid var(--line);font-size:11px;color:#aeb9c0}.canvas-frame{width:100%;aspect-ratio:1/1;background:#111;overflow:hidden}.canvas-frame canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none}.legend{display:flex;flex-wrap:wrap;gap:14px;padding:10px 13px;font-size:10px;color:#a4b0b8}.legend span{display:flex;align-items:center;gap:6px}.spawn{width:10px;height:10px;border-radius:2px;display:inline-block}.spawn.enemy{background:#ff5252}.spawn.player{background:#52b8ff}.spawn.hq{background:#ffcb45}.tools-panel{padding:14px;display:grid;gap:15px}.tools-panel section+section{border-top:1px solid #26343d;padding-top:13px}.tools-panel h2{margin:0 0 9px;font-size:10px;letter-spacing:.13em;color:#9dacb6}.palette{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.palette button{min-height:58px;display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;align-items:center;text-align:left;gap:0 8px;padding:7px;border:1px solid #40505b;border-radius:10px;background:linear-gradient(#25313a,#182128);cursor:pointer}.palette img,.empty-swatch{grid-row:1/3;width:38px;height:38px;border-radius:7px;image-rendering:pixelated}.empty-swatch{background:#2a2421;border:1px solid #51473f}.palette strong{font-size:10px;align-self:end}.palette small{font-size:9px;color:#91a0aa;align-self:start}.palette button.selected{border-color:#64d8ff;box-shadow:inset 0 0 0 1px rgba(100,216,255,.25);background:#1b323c}.action-grid,.io-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.action-grid button,.io-row button{min-height:40px;border:1px solid #43545f;background:#26323b;border-radius:9px;font-size:10px;font-weight:900;cursor:pointer}.validation-card ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.validation-card li{font-size:10px;color:#9fabb3;padding:7px 8px;background:#11181d;border-radius:8px;border-left:3px solid #56636c}.validation-card li.ok{border-left-color:#52d87a;color:#c7f3d2}.validation-card li.bad{border-left-color:#ff5d57;color:#ffcbc8}.save-card{display:grid;gap:7px}.save-card>button{min-height:46px;border:0;border-radius:10px;font-weight:1000;cursor:pointer}.save-card .primary{background:linear-gradient(#ffc52f,#f28c00);color:#171009}.save-card .play{background:linear-gradient(#3ad27a,#178d50);color:#07150d}.note{margin:0;color:#87959e;font-size:10px;line-height:1.45}.tools-panel button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:900px){body{padding:8px}.editor-head{align-items:flex-start;flex-direction:column}.editor-layout{grid-template-columns:1fr}.tools-panel{grid-template-columns:1fr 1fr}.tools-panel section+section{border-top:0;padding-top:0}.save-card,.note{grid-column:1/-1}}
@media(max-width:580px){.tools-panel{grid-template-columns:1fr}.save-card,.note{grid-column:auto}.palette{grid-template-columns:1fr 1fr}.board-toolbar{font-size:9px}.editor-head p{font-size:12px}}
