/* PANE TERMINAL CSS - STRICT MODAL */
.pane-phase {
    position: absolute;
    /* OU relative, mas NÃO fixed */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    padding: 0;
    /* Remove padding extra */
    margin: 0;
    background: transparent;
    overflow: hidden;
    /* PREVINE scroll do modal */
}

.pane-phase.active {
    display: flex !important;
    flex-direction: column !important;
}

.pane-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Terminal interno */
.terminal-output-pane {
    flex: 1;
    width: 100%;
    height: 100%;
    overflow-y: auto !important;
    /* Scroll apenas aqui */
    overflow-x: hidden !important;
    font-size: 0.85rem;
    padding: 1rem;
    box-sizing: border-box;
    color: #ff0000;
    font-family: 'Courier New', monospace;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* ESCONDER cabeçalho durante PANE */
.pane-phase.active~#terminalHeader {
    display: none !important;
}

/* Scrollbar personalizada */
.terminal-output-pane::-webkit-scrollbar {
    width: 6px;
}

.terminal-output-pane::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.3);
}

.terminal-output-pane::-webkit-scrollbar-thumb {
    background: #ff0000;
    border-radius: 3px;
}

/* Progress no rodapé */
.progress-section {
    padding: 1rem;
    border-top: 1px solid #ff0000;
    flex-shrink: 0;
    /* NÃO encolhe */
    background: rgba(0, 0, 0, 0.8);
}

/* REMOVER scrollbar do modal */
.login-container {
    overflow: hidden !important;
    position: relative;
    /* Container para posicionamento absoluto */
    display: flex;
    flex-direction: column;
}

.terminal-body {
    position: relative;
    height: 100%;
    overflow: hidden;
    /* PREVINE scroll do body */
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Utility Animations */
@keyframes terminal-appear {
    from {
        opacity: 0;
        transform: translateY(2px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.pane-line {
    margin-bottom: 2px;
    animation: terminal-appear 0.1s forwards ease-out;
}

.pane-line.error {
    color: #ff3333;
}

.pane-line.fatal {
    color: #ff0000;
    font-weight: bold;
}

.pane-line.system {
    color: #ff0000;
    text-transform: uppercase;
    font-weight: bold;
    margin-top: 0.5rem;
}

.infiltration-msg {
    font-size: 2rem;
    font-weight: 900;
    color: #ff0000;
    text-align: center;
    text-transform: uppercase;
}

.dot-anim {
    animation: dot-blink 1s infinite step-end;
}

@keyframes dot-blink {
    50% {
        opacity: 0;
    }
}