/* Custom Nullspace Theme - Dark Terminal */
:root {
    --bg-color: #000000;
    --primary-color: #009432;
    --secondary-color: #009432;
    --accent-color: #009432;
    --text-color: #009432;
    --text-light: #74b9ff;
    --border-color: #009432;
    --text-muted: #a0a0a0;
    --error-color: #e84118;
}

/* Override Terminal CSS defaults */
body.terminal {
    background-color: var(--bg-color) !important;
    color: var(--text-color) !important;
}

/* Navigation and prompts */
.terminal-prompt {
    color: var(--primary-color) !important;
}

.terminal-prompt-user {
    color: var(--primary-color) !important;
}

.terminal-prompt-location {
    color: var(--primary-color) !important;
}

.terminal-prompt-bling {
    color: var(--primary-color) !important;
}

.terminal-prompt-input {
    color: var(--text-light) !important;
}

/* Links */
a {
    color: var(--primary-color) !important;
}

a:hover {
    color: var(--text-light) !important;
}

.no-style {
    color: var(--primary-color) !important;
}

/* Cards and containers */
.terminal-card {
    background-color: var(--bg-color) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-color) !important;
}

.terminal-card header {
    background-color: var(--bg-color) !important;
    color: var(--primary-color) !important;
    border-bottom: 1px solid var(--border-color) !important;
}

/* Menu items */
.menu-item {
    color: var(--primary-color) !important;
}

.menu-item:hover {
    color: var(--text-light) !important;
    background-color: rgba(0, 148, 50, 0.1) !important;
}

/* Alerts */
.terminal-alert-primary {
    background-color: rgba(0, 148, 50, 0.2) !important;
    border-color: var(--primary-color) !important;
    color: var(--primary-color) !important;
}

/* Tables */
table {
    border-color: var(--border-color) !important;
}

table td, table th {
    border-color: var(--border-color) !important;
    color: var(--text-color) !important;
}

/* Forms */
input, textarea, select {
    background-color: #1a1a1a !important;
    border: 1px solid var(--border-color) !important;
    color: var(--primary-color) !important;
}

input:focus, textarea:focus, select:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 2px rgba(0, 148, 50, 0.2) !important;
}

/* Autofill styling */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px #1a1a1a inset !important;
    -webkit-text-fill-color: var(--primary-color) !important;
    caret-color: var(--primary-color) !important;
}

input:-moz-autofill,
input:-moz-autofill:hover,
input:-moz-autofill:focus {
    box-shadow: 0 0 0 30px #1a1a1a inset !important;
    color: var(--primary-color) !important;
}

/* Buttons */
.btn {
    background-color: var(--bg-color) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--primary-color) !important;
}

.btn:hover {
    background-color: rgba(0, 148, 50, 0.1) !important;
    border-color: var(--primary-color) !important;
}

.btn-default {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: var(--bg-color) !important;
}

.btn-default:hover {
    background-color: var(--text-light) !important;
    border-color: var(--text-light) !important;
}

/* Code and pre elements */
code {
    background-color: rgba(0, 148, 50, 0.1) !important;
    color: var(--primary-color) !important;
}

pre {
    background-color: rgba(0, 148, 50, 0.05) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-color) !important;
}

/* Lists */
ul li {
    color: var(--text-color) !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
    color: var(--primary-color) !important;
}

/* Fieldsets and legends */
fieldset {
    border-color: var(--border-color) !important;
}

legend {
    color: var(--primary-color) !important;
}

/* Navigation specific */
.terminal-nav {
    background-color: var(--bg-color) !important;
    border-bottom: 1px solid var(--border-color) !important;
}

.terminal-logo {
    color: var(--primary-color) !important;
}

/* Footer */
footer {
    background-color: var(--bg-color) !important;
    border-top: 1px solid var(--border-color) !important;
}

/* Container */
.container {
    background-color: var(--bg-color) !important;
}

/* Fix all text elements that might be black */
p, span, div, label {
    color: var(--text-color) !important;
}

/* Specific overrides for terminal CSS elements */
.terminal * {
    color: var(--text-color) !important;
}

/* Override any remaining black text */
* {
    color: var(--text-color) !important;
}

/* Specific element overrides */
.terminal-card div,
.terminal-card p,
.terminal-card span,
.terminal-card ul,
.terminal-card li {
    color: var(--text-color) !important;
}

/* Form labels */
label {
    color: var(--primary-color) !important;
}

/* Input placeholders */
input::placeholder,
textarea::placeholder {
    color: var(--text-muted) !important;
}

/* Make sure all text in terminal is visible */
body.terminal,
body.terminal * {
    background-color: var(--bg-color) !important;
}

/* Override terminal.css specific classes */
.terminal-menu ul li,
.terminal-menu ul li span {
    color: var(--primary-color) !important;
}

/* Timeline dot color customization */
.terminal-timeline .terminal-card::before {
    background-color: #2d3436 !important;
}

/* Section spacing */
section {
    margin-bottom: 40px;
}

/* Smooth scrolling for anchor links */
html {
    scroll-behavior: smooth;
}

/* Flash messages */
.flash-messages {
    margin-bottom: 20px;
}

.flash-message {
    padding: 10px 15px;
    border: 1px solid var(--border-color);
    background-color: rgba(0, 148, 50, 0.1);
    color: var(--primary-color) !important;
    border-radius: 4px;
    margin-bottom: 10px;
}

.flash-message.success {
    border-color: var(--primary-color);
    background-color: rgba(0, 148, 50, 0.2);
}