/* =========================================
   Training JavaScript - Console Debugger
   ========================================= */

/* Console principale */
#js-debugger {
    background-color: #1e1e1e;
    color: #d4d4d4;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Courier New', monospace;
    font-size: 14px;
    padding: 10px;
    height: 100%;
    min-height: 200px;
    overflow-y: auto;
    overflow-x: auto;
    border: 1px solid #3c3c3c;
    white-space: pre-wrap;
    word-wrap: break-word;
    line-height: 1.4;
}

/* Messages de la console */
.console-log {
    color: #d4d4d4;
    margin: 2px 0;
    padding: 2px 0;
    border-left: 3px solid transparent;
    padding-left: 5px;
}

.console-error {
    color: #f44747;
    margin: 2px 0;
    padding: 2px 0;
    background-color: rgba(244, 71, 71, 0.1);
    border-left: 3px solid #f44747;
    padding-left: 5px;
}

.console-warn {
    color: #ffcc02;
    margin: 2px 0;
    padding: 2px 0;
    background-color: rgba(255, 204, 2, 0.1);
    border-left: 3px solid #ffcc02;
    padding-left: 5px;
}

.console-info {
    color: #3794ff;
    margin: 2px 0;
    padding: 2px 0;
    border-left: 3px solid #3794ff;
    padding-left: 5px;
}

/* Personnalisation de la scrollbar */
#js-debugger::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

#js-debugger::-webkit-scrollbar-track {
    background: #2d2d2d;
    border-radius: 4px;
}

#js-debugger::-webkit-scrollbar-thumb {
    background: #555;
    border-radius: 4px;
}

#js-debugger::-webkit-scrollbar-thumb:hover {
    background: #777;
}

#js-debugger::-webkit-scrollbar-corner {
    background: #2d2d2d;
}

/* Séparateur entre les sorties */
#js-debugger .console-separator {
    border-top: 1px dashed #3c3c3c;
    margin: 5px 0;
    opacity: 0.5;
}

/* Ligne de commande simulée */
#js-debugger .console-prompt {
    color: #569cd6;
    margin-right: 5px;
}

/* Syntaxe highlighting basique pour les objets */
#js-debugger .console-object {
    color: #9cdcfe;
}

#js-debugger .console-string {
    color: #ce9178;
}

#js-debugger .console-number {
    color: #b5cea8;
}

#js-debugger .console-boolean {
    color: #569cd6;
}

#js-debugger .console-null,
#js-debugger .console-undefined {
    color: #808080;
    font-style: italic;
}

/* Animation pour les nouveaux messages */
@keyframes console-message-appear {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

#js-debugger > *:last-child {
    animation: console-message-appear 0.2s ease-out;
}

/* État vide de la console */
#js-debugger:empty::before {
    content: "Console ready...";
    color: #666;
    font-style: italic;
}
