/*
    AutoCode: Generated or updated by AutoCode.
    Project: project-chimera
    Task: Implement features from README.md based on project files.
*/

/* --- Global & Body Styles --- */
html {
    box-sizing: border-box;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

body {
    background-color: #1e1e1e;
    color: #d4d4d4;
    font-family: 'Consolas', 'Menlo', 'monospace';
    font-size: 16px;
    line-height: 1.5;
    margin: 0;
    padding: 1em;
    height: 100vh;
    display: flex;
    flex-direction: column;
}

/* --- Terminal Layout & Content --- */
#terminal-output {
    flex: 1 1 auto;
    overflow-y: auto;
    white-space: pre-wrap;
    word-break: break-word;
}

#terminal-output p {
    margin: 2px 0;
}

/* Style for ASCII art and titles generated by printTitle() */
#terminal-output pre {
    margin: 2px 0;
    color: #c586c0;
    font-family: 'Consolas', 'Menlo', 'monospace';
}

/* --- Input Line & Prompt --- */
.input-line {
    display: flex;
    flex-shrink: 0;
}

/* The prompt symbol '>' */
.input-line > span {
    color: #569cd6;
    white-space: nowrap;
}

/* --- User Input Field --- */
#terminal-input {
    background: transparent;
    border: none;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    width: 100%;
    outline: none;
    padding: 0;
}

#terminal-input:focus {
    caret-color: #d4d4d4;
}

/* --- Text Color Utility Classes --- */
/*
  NOTE: For these color classes to work, script.js should be
  updated to add classes to the <p> elements instead of using inline styles.
  This centralizes styling and follows best practices.
  e.g., p.className = 'text-success';
*/

.text-input-echo { color: #6A9955; }      /* Echo of user's own input */
.text-success { color: #4ec9b0; }         /* General success messages (saving, healing, victory) */
.text-info { color: #9cdcfe; }            /* Informational messages (player actions like attacking) */
.text-skill { color: #d7ba7d; }           /* Special actions like using a skill */
.text-highlight {
    color: #dcdcaa;       /* Highlighted text (level up, loot, quest complete) */
    font-weight: bold;
}
.text-meta { color: #c586c0; }            /* Headers, quests, shop info */
.text-system { color: #ce9178; }          /* Story/system messages (dungeon entry) */
.text-error { color: #d16969; }           /* Warnings or non-critical errors (enemy attacks) */
.text-danger {
    color: #f44747;          /* Critical errors (game over) */
    font-weight: bold;
}
.text-combat-status {
    color: #569cd6;   /* Combat status box text */
    font-weight: bold;
}


/* --- Custom Scrollbar --- */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #2a2a2a;
}

::-webkit-scrollbar-thumb {
    background: #555;
    border-radius: 5px;
}

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