.xp-terminal {
  height: 100%;
  min-height: 220px;
  display: grid;
  grid-template-rows: 1fr auto;
  gap: 8px;
  background: var(--terminal-shell-bg);
  border: 1px solid var(--terminal-shell-border);
  box-shadow: inset 0 0 0 1px var(--terminal-shell-inset);
  padding: 8px;
}

.xp-terminal-screen {
  overflow: auto;
  background: var(--ink-black);
  color: var(--terminal-screen-text);
  border: 1px solid var(--terminal-screen-border);
  padding: 8px;
  font-family: Consolas, "Courier New", monospace;
  font-size: 13px;
  line-height: 1.35;
  white-space: pre-wrap;
  word-break: break-word;
}

.xp-terminal-line {
  margin: 0;
}

.xp-terminal-input-row {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 8px;
  align-items: center;
  margin: 0;
}

.xp-terminal-prompt {
  font-family: Consolas, "Courier New", monospace;
  color: var(--terminal-prompt);
  font-size: 13px;
}

.xp-terminal-input {
  height: 28px;
  border: 1px solid var(--terminal-input-border);
  background: var(--ink-black);
  color: var(--color-white);
  font-family: Consolas, "Courier New", monospace;
  font-size: 13px;
  padding: 0 8px;
}

.xp-terminal-input:focus {
  outline: 1px solid var(--terminal-input-focus);
  outline-offset: 0;
}
