/* Test documents are designed for a 640x360 viewport: it is rendered at that size, then scaled to fit */
.frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #a9a9a9;
  border: 1px solid var(--bs-border-color);
}

.stage {
  position: absolute;
  left: 0;
  top: 0;
  width: 640px;
  height: 360px;
  transform-origin: 0 0;
  background: #a9a9a9;
}

.messages li {
  padding: 2px 6px;
  margin-bottom: 2px;
  border-left: 3px solid var(--bs-border-color);
  word-break: break-word;
}

.messages li.level-warn { border-color: var(--bs-warning); }
.messages li.level-error, .messages li.level-fatal { border-color: var(--bs-danger); }
.messages li.parse-failure { background: var(--bs-danger-bg-subtle); font-weight: 600; }
.messages li.none { color: var(--bs-secondary-color); }
