/* Custom Styles */
body {
    font-family: 'Inter', sans-serif;
}

/* CodeMirror specific styles */
.CodeMirror {
    height: 100% !important; /* Ensure CM fills container */
    font-size: 14px;
    border: none;
}
/* Theme overrides if needed */
.cm-s-material-darker.CodeMirror {
     background-color: #263238; /* Match theme bg or use Tailwind bg-gray-800/900 */
}

/* Ensure editor container allows CodeMirror to fill it */
#editor-container {
     flex-grow: 1;
     position: relative;
     overflow: hidden; /* Important for CM height */
}

/* Resizer visual cue */
#resizer::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 40%;
    bottom: 40%;
    width: 2px;
    background-color: rgba(255, 255, 255, 0.2);
    transform: translateX(-50%);
    border-radius: 1px;
    display: none; /* Hide by default */
}
/* Show cue only on large screens */
@media (min-width: 1024px) {
     #resizer::before {
         display: block;
     }
}


/* Custom Scrollbar Styling (Webkit for CodeMirror) */
.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
    background-color: #263238; /* Match CodeMirror background */
}
.CodeMirror-vscrollbar::-webkit-scrollbar,
.CodeMirror-hscrollbar::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
.CodeMirror-vscrollbar::-webkit-scrollbar-track,
.CodeMirror-hscrollbar::-webkit-scrollbar-track {
    background: #263238; /* Match CodeMirror background */
    border-left: 1px solid #37474F; /* Subtle border */
}
.CodeMirror-vscrollbar::-webkit-scrollbar-thumb,
.CodeMirror-hscrollbar::-webkit-scrollbar-thumb {
    background: #546E7A; /* Darker scrollbar thumb */
    border-radius: 4px;
}
.CodeMirror-vscrollbar::-webkit-scrollbar-thumb:hover,
.CodeMirror-hscrollbar::-webkit-scrollbar-thumb:hover {
    background: #78909C; /* Lighter thumb on hover */
}

/* Fullscreen specific styles */
#right-pane:-webkit-full-screen { background-color: #111827; } /* bg-gray-900 */
#right-pane:-moz-full-screen { background-color: #111827; }
#right-pane:-ms-fullscreen { background-color: #111827; }
#right-pane:fullscreen { background-color: #111827; }

#right-pane:fullscreen #artifact-controls { /* Use artifact-controls ID */
    position: fixed; /* Use fixed positioning in fullscreen */
    top: 10px;
    right: 10px;
}
 #right-pane:fullscreen #artifact-frame {
     height: 100vh; /* Ensure iframe fills fullscreen view */
 }

 /* Loading indicator style */
 .loader {
    border: 2px solid #f3f3f3; /* Light grey */
    border-top: 2px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 14px;
    height: 14px;
    animation: spin 1s linear infinite;
    /* margin-right: 6px; Removed to center it when text is hidden */
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Style for the send button when loading */
#send-button.loading #send-button-text,
#send-button.loading .fa-paper-plane {
    display: none;
}
#send-button.loading #loading-indicator {
    display: block;
    margin: 0; /* Remove margin when loader is shown */
}