/* GLOBAL DARK MODE */
html, body {
    font-family: 'Segoe UI', Helvetica, Arial, sans-serif;
    background-color: #121212; /* Deep Charcoal */
    color: #e0e0e0; /* Off-white text */
}

/* HEADERS */
h1, h2, h3, h4, h5, h6 {
    color: #ffffff;
    font-weight: 600;
}

/* LINKS */
a {
    color: #ff6b6b; /* Light Red */
    text-decoration: none;
}

    a:hover {
        color: #ff3b3b;
        text-decoration: underline;
    }

/* CARDS (The main containers) */
.card {
    background-color: #1e1e1e; /* Slightly lighter gray */
    border: 1px solid #333;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
}

.card-header {
    background-color: #252525 !important; /* Override Bootstrap bg-dark */
    border-bottom: 1px solid #333;
    font-weight: bold;
    color: #dc3545; /* Bootstrap Danger Red */
}

.list-group-item {
    background-color: #1e1e1e;
    border-color: #333;
    color: #e0e0e0;
}

/* FORMS & INPUTS */
.form-control {
    background-color: #2d2d2d;
    border: 1px solid #444;
    color: #fff;
}

    .form-control:focus {
        background-color: #333;
        color: #fff;
        border-color: #dc3545;
        box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); /* Red Glow */
    }

/* BUTTONS */
.btn-primary {
    background-color: #721c24; /* Dark Red */
    border-color: #5c161d;
}

    .btn-primary:hover {
        background-color: #a71d2a;
    }

.btn-success {
    background-color: #198754; /* Keep Green for "Draft" but slightly darker */
    border-color: #146c43;
}

/* TABLES (Leaderboard) */
.table {
    color: #e0e0e0;
    --bs-table-color: #e0e0e0;
    --bs-table-bg: transparent;
    --bs-table-border-color: #333;
}

.table-hover > tbody > tr:hover > * {
    color: #fff;
    background-color: #333;
}

/* SIDEBAR (The Navigation) */
.sidebar {
    background-image: linear-gradient(180deg, #1a0505 0%, #000000 70%);
}

    .sidebar .nav-item a {
        color: #d7d7d7;
    }

        .sidebar .nav-item a:hover {
            background-color: rgba(255, 255, 255, 0.1);
            color: white;
        }

.top-row {
    background-color: #1e1e1e;
    border-bottom: 1px solid #333;
}

/* Apply Spooky Font to the Main Title Only */
h1.display-4 {
    font-family: 'Creepster', cursive;
    color: #ff3b3b;
    letter-spacing: 2px;
    text-shadow: 2px 2px 4px #000;
}