/* Terminal page layout */
.terminal-page {
    height: calc(100vh - 66px);
    display: flex;
    flex-direction: column;
    background: #1e1e1e;
}

/* Toolbar */
.terminal-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    background: #252526;
    border-bottom: 1px solid #3c3c3c;
    flex-shrink: 0;
}
.terminal-toolbar .btn {
    padding: 4px 18px;
    font-size: 14px;
}
.terminal-toolbar .status-badge {
    font-size: 12px;
    padding: 4px 10px;
}
.terminal-toolbar .toolbar-info {
    margin-left: auto;
    font-size: 12px;
    color: #888;
}

/* Split pane */
.terminal-split {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.terminal-split .editor-pane {
    flex: 4;
    min-height: 120px;
    overflow: hidden;
}
.terminal-split .resize-handle {
    height: 5px;
    background: #3c3c3c;
    cursor: row-resize;
    flex-shrink: 0;
    transition: background 0.15s;
}
.terminal-split .resize-handle:hover,
.terminal-split .resize-handle.dragging {
    background: #0e639c;
}
.terminal-split .terminal-pane {
    flex: 1;
    min-height: 80px;
    overflow: hidden;
}
.terminal-split .terminal-pane .xterm {
    height: 100%;
    padding: 4px 0 0 8px;
}
.terminal-split .terminal-pane .xterm-viewport {
    scrollbar-width: thin;
    scrollbar-color: #555 #1e1e1e;
}

/* Ensure cursor blink works (fallback for xterm.js dynamic CSS) */
.xterm .xterm-cursor.xterm-cursor-blink {
    animation: terminal-cursor-blink 1s step-end infinite !important;
}
@keyframes terminal-cursor-blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}
