/*=============================================================*/
/* THE ULTIMATE OVERDRIVE TERMINAL STYLES                      */
/*=============================================================*/

/*=============================================================*/
/* OVERDRIVE TERMINAL - OBSIDIAN LORE THEME                    */
/*=============================================================*/

.scifi-terminal {
    --text-neon: #00ff66;
    --text-faded: #004411;
    --bg-terminal: #020802;
    --ui-amber: #ffb800;
    --ui-cyan: #00f0ff;
    --ui-crimson: #ff003c;
}

/* Page Setup */
.scifi-terminal.markdown-rendered, 
.scifi-terminal .markdown-source-view.mod-cm6 .cm-content {
    color: var(--text-neon) !important;
    font-family: 'Courier New', monospace !important;
    line-height: 1.4;
    position: relative;
}



/* Tabular Vibes */
.scifi-terminal table {
    border: 1px solid var(--text-neon) !important;
    background: rgba(0, 40, 0, 0.4);
}

.scifi-terminal th {
    background-color: var(--text-neon) !important;
    color: var(--bg-terminal) !important;
    text-transform: uppercase;
    font-weight: 900;
}

.scifi-terminal td {
    border: 1px solid var(--text-faded) !important;
    color: var(--text-neon);
}

/* Popouts (Callouts) Style */
.scifi-terminal .callout {
    border-radius: 0 !important;
    background-color: rgba(0, 20, 0, 0.8) !important;
    border: 1px solid var(--ui-cyan) !important;
}

.scifi-terminal .callout[data-callout="abstract"] { border-color: var(--text-neon) !important; }
.scifi-terminal .callout[data-callout="abstract"] .callout-title { color: var(--text-neon) !important; }

.scifi-terminal .callout[data-callout="quote"] { 
    border-left: 5px solid var(--ui-amber) !important; 
    border-color: var(--ui-amber) !important;
}
.scifi-terminal .callout[data-callout="quote"] .callout-title { color: var(--ui-amber) !important; }

/* Special Stat Colors */
.scifi-terminal strong {
    color: var(--ui-cyan);
}

/* Links */
.scifi-terminal a {
    color: var(--ui-amber) !important;
    text-decoration: underline wavy;
}

.scifi-terminal a:hover {
    background: var(--ui-amber);
    color: black !important;
}

/* Custom Scrollbar */
.scifi-terminal ::-webkit-scrollbar { width: 8px; }
.scifi-terminal ::-webkit-scrollbar-track { background: var(--bg-terminal); }
.scifi-terminal ::-webkit-scrollbar-thumb { background: var(--text-faded); border: 1px solid var(--text-neon); }

/* The Main Terminal Container */
.decipher-terminal {
    background: repeating-linear-gradient(
        45deg,
        rgba(255, 184, 0, 0.02),
        rgba(255, 184, 0, 0.02) 10px,
        rgba(255, 184, 0, 0.05) 10px,
        rgba(255, 184, 0, 0.05) 20px
    );
    border: 2px solid #ffb800;
    margin: 20px 0;
    padding: 0; /* Header handles top padding */
    font-family: 'Courier New', Courier, monospace;
}

/* The Warning Header */
.terminal-header {
    background-color: #ffb800;
    color: #000;
    padding: 5px 15px;
    font-weight: bold;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 0.85em;
}

/* The content area inside the box */
.decipher-container {
    padding: 20px;
}

.decipher-line {
    margin-bottom: 8px;
    display: block;
    line-height: 1.4;
}

/* State: Corrupted */
.decipher-line.corrupted {
    color: #004411; /* Dim green */
    font-style: italic;
    opacity: 0.6;
}

/* State: Decrypted */
.decipher-line.decrypted {
    color: #00f0ff !important; /* Cyan glow */
    text-shadow: 0 0 8px #00f0ff;
    font-weight: bold;
}

/* The Button */
.decipher-button {
    background: #004411 !important;
    color: #39ff14 !important;
    border: 1px solid #39ff14 !important;
    padding: 10px 20px;
    width: 100%;
    margin-top: 15px;
    cursor: crosshair;
    font-family: inherit;
    font-weight: bold;
    text-transform: uppercase;
    transition: 0.2s;
}

.decipher-button:hover {
    background: #39ff14 !important;
    color: #000 !important;
    box-shadow: 0 0 20px #39ff14;
}