.terminal-wrap{display:flex;flex-direction:column;background:#080808;flex-shrink:0;height:var(--term-h);min-height:80px;max-height:70vh;border-top:1px solid var(--bd);position:relative;overflow:hidden}
.terminal-wrap.collapsed{height:0!important;min-height:0}
.term-header{height:30px;display:flex;align-items:stretch;background:var(--bg1);border-bottom:1px solid var(--bd);flex-shrink:0}
.term-tab-list{display:flex;align-items:stretch;flex:1}
.term-tab{padding:0 14px;display:flex;align-items:center;font-size:10px;font-weight:700;color:var(--tx2);letter-spacing:.8px;border-right:1px solid var(--bd);cursor:pointer}
.term-tab.active{color:var(--ac3)}
.term-actions{display:flex;align-items:center;padding:0 4px;gap:2px}
.term-body{flex:1;overflow:hidden;position:relative}
#xterm-host{width:100%;height:100%;padding:2px 4px}
.xterm .xterm-screen{width:100%!important}
.fallback-term{height:100%;display:flex;flex-direction:column;font-family:var(--mono);font-size:12px;overflow:hidden}
#term-lines{flex:1;overflow-y:auto;padding:6px 10px;scrollbar-width:thin}
.tl{line-height:1.6;white-space:pre-wrap;word-break:break-all}
.tl.out{color:#d4d4d4}
.tl.err{color:#f97316}
.tl.cmd{color:#a78bfa;font-weight:600}
.tl.inf{color:#6b7280;font-style:italic}
.term-input-row{display:flex;align-items:center;gap:6px;padding:5px 10px;border-top:1px solid var(--bd);background:#0a0a0a;flex-shrink:0}
.term-prompt{color:var(--ac);font-family:var(--mono);font-size:12px;font-weight:700;user-select:none}
.term-input{
  flex:1;background:transparent;border:none;outline:none;
  color:var(--tx0);font-family:var(--mono);font-size:12px;
  user-select:text!important;-webkit-user-select:text!important;
  pointer-events:auto!important;caret-color:var(--ac);
}
.term-input::placeholder{color:var(--tx2)}
@media(max-width:768px){.terminal-wrap{height:100%!important;min-height:unset;max-height:unset;border-top:none}}

/* ---- TERMINAL MOBILE ---- */
@media (max-width: 768px) {
  .term-header { height: 40px !important; }
  .term-tab { padding: 0 16px !important; font-size: 11px !important; }
  .term-actions { padding: 0 6px !important; gap: 4px !important; }
  .term-tab-list .ib { width: 34px !important; height: 34px !important; }

  .term-input-row { padding: 8px 12px !important; }
  .term-prompt { font-size: 13px !important; }
  .term-input { font-size: 14px !important; }

  #term-lines { padding: 8px 12px !important; }
  .tl { font-size: 13px !important; line-height: 1.7 !important; }

  .fallback-term { font-size: 13px !important; }
}

/* ======= GIT TERMINAL PANEL (overlay in terminal) ======= */
.git-term-panel {
  position: absolute; inset: 0; z-index: 10;
  background: rgba(8,8,12,0.97);
  display: flex; flex-direction: column;
  font-family: 'JetBrains Mono', monospace;
  overflow: hidden;
}
.git-term-panel.hidden { display: none; }
.git-tp-header {
  display: flex; align-items: center; gap: 7px;
  padding: 8px 12px; background: rgba(20,20,28,1);
  border-bottom: 1px solid rgba(96,165,250,0.2);
  font-size: 12px; font-weight: 700; color: #60a5fa;
  flex-shrink: 0;
}
.git-tp-close {
  margin-left: auto; background: none; border: none;
  color: #666; cursor: pointer; font-size: 16px;
  width: 22px; height: 22px; border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
}
.git-tp-close:hover { background: rgba(248,113,113,.2); color: #f87171; }
.git-tp-quick {
  display: flex; flex-wrap: wrap; gap: 4px;
  padding: 8px 12px; border-bottom: 1px solid rgba(255,255,255,.06);
  flex-shrink: 0;
}
.git-tp-quick button {
  padding: 3px 9px; border-radius: 4px;
  background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1);
  color: #9ca3af; font-size: 10px; cursor: pointer;
  font-family: inherit; transition: all .12s;
}
.git-tp-quick button:hover {
  background: rgba(96,165,250,.15); color: #60a5fa;
  border-color: rgba(96,165,250,.4);
}
.git-tp-input-row {
  display: flex; align-items: center; gap: 7px;
  padding: 7px 12px; border-bottom: 1px solid rgba(255,255,255,.06);
  flex-shrink: 0;
}
.git-tp-input-row span {
  color: #4ade80; font-weight: 800; font-size: 12px; flex-shrink: 0;
}
.git-tp-input-row input {
  flex: 1; background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1); border-radius: 4px;
  padding: 5px 9px; color: #e2e8f0; font-size: 11px;
  font-family: inherit; outline: none;
}
.git-tp-input-row input:focus { border-color: #60a5fa; }
.git-tp-input-row button {
  padding: 5px 12px; background: #3b82f6; border: none;
  border-radius: 4px; color: #fff; font-size: 11px; cursor: pointer;
  font-family: inherit; transition: filter .12s;
}
.git-tp-input-row button:hover { filter: brightness(1.2); }
.git-term-output {
  flex: 1; overflow-y: auto; padding: 8px 12px;
  line-height: 1.55; font-size: 11px;
}
.gto-line { white-space: pre-wrap; word-break: break-all; color: #9ca3af; padding: 1px 0; }
.gto-line.cmd { color: #60a5fa; font-weight: 700; margin-top: 4px; }
.gto-line.err { color: #f87171; }
.gto-line.ok  { color: #4ade80; }

/* Make term-body relative for git panel overlay */
.term-body { position: relative; }

/* git-active indicator on git button */
.git-active { color: #60a5fa !important; }
