body {
    background-color: #0D1B2A; /* Deep Space Blue Theme: Dark Navy */
    color: #E0E1DD;
    font-family: 'Roboto', sans-serif; /* Default font for readability */
}

.accent-color {
    color: #FF9900; /* New Orange Accent */
}
.accent-color-cyan {
    color: #99fefe; /* Vibrant Cyan */
}
.accent-color-red {
    color: #ff1d0e; /* Vibrant Red */
}
.btn-primary {
    background-color: #FF9900; /* New Orange Accent */
    color: #0D1B2A; /* Dark Navy */
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 8px;
    transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
    font-family: 'Orbitron', sans-serif; /* Apply futuristic font to buttons */
    display: inline-block;
}

    .btn-primary:hover {
        background-color: #ffad33; /* Lighter Orange on hover */
        color: #0D1B2A;
        transform: translateY(-3px);
    }

.card-bg {
    background-color: #2A3A4E;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .card-bg:hover {
        transform: translateY(-10px);
        box-shadow: 0 20px 25px -5px rgba(255, 153, 0, 0.1), 0 10px 10px -5px rgba(255, 153, 0, 0.04);
    }

.input-bg {
    background-color: #415A77;
}

.header-bg {
    background-color: #1B263B;
}

h1, h2, h3, h4, h5, h6, nav a {
    font-family: 'Orbitron', sans-serif; /* Apply futuristic font to headings and nav links */
    font-weight: 700;
}

.loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #FF9900; /* New Orange Accent */
    border-radius: 50%;
    width: 24px;
    height: 24px;
    animation: spin 1s linear infinite;
    display: none; /* Hidden by default */
    margin: 10px auto;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Fade-in animation */
.fade-in-section {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

    .fade-in-section.is-visible {
        opacity: 1;
        transform: translateY(0);
    }
