/* --- THEME VARIABLES --- */
:root {
    --bg-normal: #2f3e46;       
    --card-normal: #333333;     
    --text-normal: #eaeaea;     
    --accent-gold: #ffa807e8;   
    --toggle-blue: #3b5998;     
    
    --bg-combat: #1a0000;       
    --card-combat: #0b0202;     
    --text-combat: #762001;     
    --header-orange: #ae5e18; /* Dimmed orange for headers */

    /* --- Status Colors (Muted for Low Sensitivity) --- */
    --status-go: #0b6b33;      /* Muted Green */
    --status-caution: #ab8d16; /* Muted Yellow/Gold */
    --status-no: #8b0000;      /* Muted Red */
}

html { scroll-behavior: smooth; overflow-y: scroll; }
body {
    background-color: var(--bg-normal);
    color: var(--text-normal);
    font-family: 'Segoe UI', sans-serif;
    margin: 0; padding: 0;
    transition: background 0.3s ease, color 0.3s ease;
}

/* --- NAVIGATION --- */
.sentry-nav {
    background-color: #222;
    padding: 0.5rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid var(--card-normal);
    position: sticky; top: 0; z-index: 1000;
}

.nav-brand { font-weight: bold; letter-spacing: 1px; color: var(--accent-gold); }
.nav-links { display: flex; gap: 20px; }
.nav-links a { color: white; text-decoration: none; font-size: 0.9rem; transition: 0.3s; }
.nav-links a:hover, .nav-links a.active-link { color: var(--header-orange) !important; }

/* --- NAV BAR --- */
.nav-brand {
    display: flex;
    align-items: center;
    gap: 10px; /* Space between logo and text */
}

.nav-logo {
    height: 32px; /* Adjust this to fit your navbar height */
    width: auto;  /* Keeps the aspect ratio perfect */
    display: block;
}


/* Burger Menu - Hidden on PC */
.menu-toggle { display: none; cursor: pointer; font-size: 1.5rem; color: var(--accent-gold); }

/* Toggle Switch */
.toggle-wrapper { display: flex; align-items: center; gap: 10px; }
.toggle-text { font-size: 0.8rem; color: white; }
.switch { position: relative; display: inline-block; width: 40px; height: 20px; }
.switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 20px; }
.slider:before { position: absolute; content: ""; height: 14px; width: 14px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }
input:checked + .slider { background-color: var(--toggle-blue); }
input:checked + .slider:before { transform: translateX(20px); }

/* --- COMBAT MODE --- */
body.combat-mode { background-color: var(--bg-combat); color: var(--text-combat); }
body.combat-mode .section-card, body.combat-mode .intel-card { 
    background-color: var(--card-combat); 
    border: 1px solid var(--text-combat); 
}
body.combat-mode p, body.combat-mode li { color: var(--text-combat); }
body.combat-mode .sentry-nav { border-bottom: 2px solid var(--text-combat); }
body.combat-mode .nav-links a { color: #767370; }

/* --- CONTENT --- */
.container { max-width: 800px; margin: 20px auto; padding: 0 15px 80px 15px; }
.section-card { background-color: var(--card-normal); padding: 20px; border-radius: 8px; margin-bottom: 20px; }
h2 { color: var(--header-orange); margin-top: 0; }

/* --- Status Classes for Tables --- */
.status-safe, .status-go { color: var(--status-go) !important; font-weight: bold; }
.status-caution { color: var(--status-caution) !important; font-weight: bold; }
.status-no { color: var(--status-no) !important; font-weight: bold; }

/* Emergency Buttons */
.emergency-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin: 20px 0; }
.btn-emergency { 
    background: var(--status-no); 
    color: #000; 
    text-align: center; 
    padding: 12px; 
    border-radius: 5px; 
    text-decoration: none; 
    font-weight: bold; 
    font-size: 0.85rem;
    border: 1px solid #000;
}

/* Intel Links */
.intel-link {
    color: var(--matrix-green); /* Or your primary accent color */
    text-decoration: none;
    border-bottom: 1px dashed var(--matrix-green);
    font-weight: bold;
    transition: all 0.3s ease;
}

.intel-link:hover {
    background: rgba(0, 255, 65, 0.1); /* Subtle glow on hover */
    border-bottom: 1px solid var(--matrix-green);
}



/* Jump Bar: Centered on PC, Left-aligned on Mobile for scroll fix */
.jump-bar { 
    position: fixed; bottom: 0; left: 0; width: 100%; 
    background: #111; 
    display: flex; 
    justify-content: center; /* Centered for Web */
    overflow-x: auto; 
    border-top: 2px solid var(--accent-gold); 
    z-index: 1000; 
}
.jump-bar a { 
    padding: 15px 20px; color: var(--accent-gold); 
    text-decoration: none; font-size: 0.75rem; font-weight: bold; 
    text-transform: uppercase; white-space: nowrap; 
}

@media (max-width: 768px) {
    .menu-toggle { display: block; }
    .nav-links { 
        display: none; flex-direction: column; 
        position: absolute; top: 100%; left: 0; width: 100%; 
        background: #222; padding: 0; 
    }
    .nav-links.active { display: flex; }
    .nav-links a { padding: 20px; border-bottom: 1px solid #333; width: 100%; box-sizing: border-box; font-size: 1.1rem; }
    
    /* Mobile Fix for Jump Bar scroll cutoff */
    .jump-bar { justify-content: flex-start; } 
}

/* Footer Styling */
.terminal-footer {
    margin-top: 60px;
    padding: 30px 20px;
    border-top: 1px dashed rgba(0, 255, 65, 0.2); /* Faded Matrix Green */
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.4);
    text-align: center;
    line-height: 1.5;
}

.footer-link {
    color: var(--matrix-green);
    text-decoration: none;
}