/* General Body Styles */
body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow: hidden;
}

/* Toolbar */
.toolbar {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    background-color: #333;
    color: white;
    flex-shrink: 0;
    gap: 16px;
}

.toolbar select, .toolbar button {
    padding: 6px 10px;
    background-color: #4f4f4f;
    color: white;
    border: 1px solid #666;
    border-radius: 4px;
    font-size: 14px;
}

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

.toolbar .controls .toggle-switch {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: 16px;
}

.toolbar .boss-key-info {
    margin-left: auto;
    font-size: 13px;
}

/* Code & Console Containers */
#code-container, #console-container {
    flex-grow: 1;
    overflow-y: auto;
    padding: 10px;
    font-family: 'Fira Code', 'Courier New', Courier, monospace;
    font-size: 15px;
    line-height: 1.6;
}

#code-container {
    height: 70%;
}

#console-container {
    height: 30%;
    background-color: #1e1e1e;
    border-top: 2px solid #333;
    color: #ccc;
}

pre, code {
    margin: 0;
    padding: 0;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* Themes */
body.vscode-dark {
    background-color: #1e1e1e;
    color: #d4d4d4;
}
body.vscode-dark .toolbar { background-color: #3c3c3c; }
body.vscode-dark #code-container { background-color: #1e1e1e; }
body.vscode-dark #console-container { background-color: #252526; border-top-color: #3c3c3c; }

body.matrix {
    background-color: #000;
    color: #0f0;
}
body.matrix .toolbar { background-color: #0a0a0a; border-bottom: 1px solid #0f0; }
body.matrix .toolbar select, body.matrix .toolbar button { background-color: #111; border-color: #0f0; color: #0f0; }
body.matrix #code-container { background-color: #000; color: #0f0; }
body.matrix #console-container { background-color: #050505; color: #0f0; border-top-color: #0f0; }

body.light {
    background-color: #f3f3f3;
    color: #24292e;
}
body.light .toolbar { background-color: #e8e8e8; color: #333; }
body.light .toolbar select, body.light .toolbar button { background-color: #fff; border-color: #ccc; color: #333; }
body.light #code-container { background-color: #fff; }
body.light #console-container { background-color: #f6f8fa; color: #586069; border-top-color: #e1e4e8; }

.hidden {
    display: none;
}

/* Scrollbar for Webkit browsers */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #2a2a2a;
}
::-webkit-scrollbar-thumb {
    background: #555;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #777;
}
