.terminal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(2, 6, 23, 0.72);
  backdrop-filter: blur(12px);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 18px;
  z-index: 100;
}
.terminal-backdrop.open { display: flex; }
.terminal { width: min(760px, 100%); border-radius: 24px; border: 1px solid rgba(148, 163, 184, 0.18); background: rgba(2, 6, 23, 0.96); box-shadow: 0 30px 100px rgba(0,0,0,0.55); overflow: hidden; }
.terminal-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 18px; border-bottom: 1px solid rgba(148, 163, 184, 0.16); background: rgba(15, 23, 42, 0.9); color: #dbeafe; font-size: 0.95rem; }
.terminal-close { border: 0; background: transparent; color: #dbeafe; cursor: pointer; font: inherit; padding: 4px 8px; }
.terminal-body { padding: 16px; color: #d1fae5; font-family: Consolas, "SFMono-Regular", "Cascadia Mono", monospace; line-height: 1.7; }
.terminal-log { min-height: 240px; max-height: 48vh; overflow: auto; white-space: pre-wrap; word-break: break-word; padding-right: 6px; }
.terminal-line { display: flex; align-items: center; gap: 10px; margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(148, 163, 184, 0.14); }
.terminal-prompt { color: #93c5fd; flex: 0 0 auto; }
.terminal-input { flex: 1 1 auto; border: 0; outline: none; background: transparent; color: #d1fae5; font: inherit; min-width: 0; }
@media (max-width: 720px) { .terminal-body { padding: 14px; } }
