.vision-shell {
  max-width: 1320px;
  margin: 0 auto;
  padding: 14px;
  display: grid;
  gap: 12px;
}

#questCanvas {
  width: 100%;
  height: auto;
  max-height: 62vh;
  aspect-ratio: 1120 / 640;
  display: block;
  border: 1px solid rgba(150, 229, 140, 0.75);
  background: linear-gradient(180deg, #b5eca4, #8bd079 58%, #67b85d);
  box-shadow: inset 0 0 30px rgba(0, 0, 0, 0.25), 0 0 22px rgba(122, 223, 122, 0.24);
  touch-action: none;
}

.controls-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 12px;
}

.action-buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 8px;
  align-self: center;
}

.feed-box {
  background: linear-gradient(180deg, rgba(16, 34, 20, 0.75), rgba(12, 26, 18, 0.7));
  border: 1px solid rgba(160, 244, 160, 0.5);
  min-height: 105px;
  max-height: 190px;
  overflow-y: auto;
  padding: 8px;
}

.feed-line {
  margin: 0 0 6px;
}

@media (max-width: 1366px) and (orientation: landscape) {
  .vision-shell {
    gap: 6px;
    padding: 6px;
  }

  #questCanvas {
    max-height: 48vh;
  }

  .panel {
    padding: 7px;
  }

  .top-bar h1 {
    font-size: 1.02rem;
  }

  .top-meta {
    gap: 8px;
    font-size: 0.72rem;
  }
}

@media (max-width: 920px) {
  .controls-grid {
    grid-template-columns: 1fr;
  }

  .action-buttons {
    grid-template-columns: 1fr;
  }
}
