.container {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background: #0a0e14;
  border-radius: var(--radius-lg);
  border: 1px solid #1a1e29;
}

.fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: var(--z-fullscreen, 9999);
  border-radius: 0;
  border: none;
}

/* Toolbar */

.toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 12px;
  background: linear-gradient(135deg, #0d1117 0%, #161b22 100%);
  border-bottom: 1px solid #1a1e29;
  flex-shrink: 0;
  min-height: 34px;
}

.toolbarLeft {
  display: flex;
  align-items: center;
  gap: 8px;
}

.terminalIcon {
  color: #ff3333;
}

.title {
  font-size: 12px;
  font-weight: 600;
  color: #e6e1cf;
  letter-spacing: 0.3px;
}

.subtitle {
  font-size: 10px;
  color: #4d556a;
  font-family: var(--font-mono, 'JetBrains Mono', monospace);
  padding: 1px 6px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 4px;
  border: 1px solid #1a1e29;
}

.toolbarRight {
  display: flex;
  align-items: center;
  gap: 6px;
}

.statusBadge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 500;
  text-transform: capitalize;
  border: 1px solid transparent;
}

.statusBadge.connected {
  color: #bae67e;
  background: rgba(186, 230, 126, 0.08);
  border-color: rgba(186, 230, 126, 0.2);
}

.statusBadge.connecting {
  color: #ffd580;
  background: rgba(255, 213, 128, 0.08);
  border-color: rgba(255, 213, 128, 0.2);
  animation: pulse 1.5s ease-in-out infinite;
}

.statusBadge.disconnected {
  color: #4d556a;
  background: rgba(77, 85, 106, 0.08);
  border-color: rgba(77, 85, 106, 0.2);
}

.statusBadge.error {
  color: #ff3333;
  background: rgba(255, 51, 51, 0.08);
  border-color: rgba(255, 51, 51, 0.2);
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.toolbarBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 4px;
  background: transparent;
  color: #4d556a;
  cursor: pointer;
  transition: color 0.15s ease, background 0.15s ease;
}

.toolbarBtn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

.toolbarBtn:hover {
  color: #e6e1cf;
  background: rgba(255, 255, 255, 0.06);
}

/* Terminal area */

.terminal {
  flex: 1;
  min-height: 0;
  padding: 4px;
  overflow: hidden;
}

.terminal :global(.xterm) {
  height: 100%;
  padding: 4px;
}

.terminal :global(.xterm-viewport) {
  scrollbar-width: thin;
  scrollbar-color: #1a1e29 transparent;
}

.terminal :global(.xterm-viewport::-webkit-scrollbar) {
  width: 6px;
}

.terminal :global(.xterm-viewport::-webkit-scrollbar-track) {
  background: transparent;
}

.terminal :global(.xterm-viewport::-webkit-scrollbar-thumb) {
  background: #1a1e29;
  border-radius: 3px;
}

.terminal :global(.xterm-viewport::-webkit-scrollbar-thumb:hover) {
  background: #2a2e39;
}
