/* Terminal app. */

.term {
  flex: 1; min-height: 0; display: flex; flex-direction: column;
  background: var(--term-bg);
  font-family: var(--font-mono); font-size: 12.5px; line-height: 1.55;
  padding: 10px 12px; overflow: hidden;
}
.term-out { flex: 1; overflow-y: auto; overflow-x: hidden; user-select: text; cursor: text; }
.term-line { white-space: pre-wrap; word-break: break-word; color: #cdd3da; min-height: 1.2em; }
.term-line .hl { color: #6ea8ff; }
.t-err { color: #ff7b72; }
.t-ok { color: #4ec96a; }
.t-dim { color: #6e7884; }
.t-dir { color: #59a7ff; font-weight: 600; }
.t-pkg { color: #f5c211; }
.t-ls { color: #cdd3da; }
.nf-z { color: #3b82f6; font-weight: 700; }
.nf-k { color: #e8ebef; font-weight: 700; }
.nf-d { color: #55606c; }

.term-input-row { display: flex; align-items: baseline; gap: 0; flex: none; }
.term-ps1 { color: #4ec96a; white-space: pre; font-weight: 600; }
.term-ps1 .at { color: #6ea8ff; }
.term-cmd { flex: 1; background: none; border: none; outline: none; color: #e8ebef; font: inherit; caret-color: #4ec96a; }
.term-cursor { display: inline-block; width: 8px; height: 15px; background: #4ec96a; vertical-align: -2px; animation: blink 1.1s infinite; }
.term-sel-hint { color: #4ec96a; }

.term-suggest {
  position: absolute; z-index: 20; left: 12px;
  background: #16181d; border: 1px solid #2c3138; border-radius: 8px;
  box-shadow: 0 12px 30px rgba(0,0,0,.5); padding: 4px; max-height: 180px; overflow: auto;
}
.term-suggest div { padding: 4px 10px; border-radius: 5px; color: #aab3bd; font-size: 12px; cursor: pointer; }
.term-suggest div:hover, .term-suggest div.sel { background: #1F63EC; color: #fff; }

.term-scroll::-webkit-scrollbar { width: 8px; }
