* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    background: #0a0a0a;
    font-family: 'Courier New', monospace;
    height: 100vh;
    overflow: hidden;
}

#terminal {
    background: #1a1a2e;
    color: #00ff41;
    height: 100vh;
    display: flex;
    flex-direction: column;
}

#titlebar {
    background: #16213e;
    padding: 10px 16px;
    border-bottom: 1px solid #0f3460;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#titlebar .title {
    color: #00bcd4;
    font-size: 13px;
    letter-spacing: 1px;
}

#titlebar .status {
    font-size: 12px;
}

#output {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    font-size: 14px;
    line-height: 1.6;
    scrollbar-width: thin;
    scrollbar-color: #0f3460 #1a1a2e;
}

#output::-webkit-scrollbar { width: 8px; }
#output::-webkit-scrollbar-track { background: #1a1a2e; }
#output::-webkit-scrollbar-thumb { background: #0f3460; border-radius: 4px; }

.line { margin-bottom: 2px; white-space: pre-wrap; word-wrap: break-word; }
.prompt-text { color: #00bcd4; }
.info { color: #00ff41; }
.warning { color: #ffbd2e; }
.error { color: #ff5f56; }
.header { color: #e94560; }
.dim { color: #666; }
.highlight { color: #ffffff; }
.cyan { color: #00bcd4; }

#input-line {
    display: flex;
    padding: 12px 16px;
    background: #16213e;
    border-top: 1px solid #0f3460;
    align-items: center;
}

#input-line .prompt {
    color: #00bcd4;
    margin-right: 8px;
    white-space: nowrap;
}

#cmd-input {
    flex: 1;
    background: transparent;
    border: none;
    color: #00ff41;
    font-family: 'Courier New', monospace;
    font-size: 14px;
    outline: none;
    caret-color: #00ff41;
}