/* Shared canvas lab layout — keeps the drawing fully on screen */
html, body {
  height: 100%;
  margin: 0;
  overflow: hidden;
}
.wrap {
  flex: 1;
  display: flex;
  min-height: 0;
  min-width: 0;
}
.stage {
  flex: 1;
  position: relative;
  min-width: 0;
  min-height: 0;
  background: #07080c;
}
.stage canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
aside.hud {
  width: 300px;
  max-width: 42vw;
  flex-shrink: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
header { flex-shrink: 0; }
@media (max-width: 900px) {
  .wrap { flex-direction: column; }
  .stage { flex: 1 1 auto; min-height: 54vh; }
  aside.hud { width: 100%; max-width: none; max-height: 40vh; }
}
