html, body {
  height: 100%;
  margin: 0;
}

.sidebar {
  width: 300px;
  border-right: 1px solid #ccc;
  padding: 1rem;
  background-color: #f8f9fa;
  overflow-y: auto;
}

.sidebar:last-of-type {
  border-left: 1px solid #ccc;
}

.main-content {
  flex-grow: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #111;
}

canvas {
  width: 100%;
  height: 100%;
  display: block;
}

@media (max-width: 768px) {
  .layout {
    flex-direction: column;
  }
  .sidebar {
    width: 100%;
  }
  .main-content {
    height: 60vh;
  }
}
