body { 
    background: #121212; /* Dark mode base */
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; 
    font-size: 16px;
    line-height: 1.5;
    color: #e0e0e0; /* Light text for dark mode */
    min-height: 100vh;
    margin: 0;
}
.outer-container {
    max-width: 960px;
    margin: 0 auto;
    background: #1e1e1e; /* Slightly lighter dark for the main panel */
    border-left: 1px solid #333;
    border-right: 1px solid #333;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
.inner-container {
    max-width: 940px;
    margin: 0 auto;
    flex-grow: 1;
    padding: 2rem;
    color: #e0e0e0;
}
header { 
    background: #1e1e1e; 
    border-bottom: 1px solid #333; 
    padding: 1rem 0; /* Restored original slim padding */
}
footer { 
    background: #1e1e1e; 
    border-top: 1px solid #333; 
    padding: 1rem 0; /* Restored original slim padding to fix fat footer */
}
hr {
    margin: 0.5rem 0;
    border: 0;
    border-top: 1px solid #333;
}
.alert-info { 
    background: #0f2c4d; /* Dark mode alert background */
    border-color: #1a497a; 
    color: #9cd0ff; /* Light blue text */
} 
.auth-success { color: #2ea043 !important; } /* Adjusted for dark mode contrast */
.auth-danger { color: #f85149 !important; } /* Adjusted for dark mode contrast */
.auth-pipe-username { color: #e0e0e0 !important; }

/* Kingfisher Variables */
:root {
    --kingfisher-blue: #2386e8; /* Brighter blue for dark mode */
    --kingfisher-orange: #ff913d; /* Brighter orange for dark mode */
}

/* Base element theming for Dark Mode */
.card {
    background-color: #252525 !important;
    border-color: #333 !important;
    color: #e0e0e0 !important;
}
.card-header {
    background-color: #2a2a2a !important;
    border-bottom-color: #333 !important;
    color: #fff !important;
}
.form-control, .input-group-text {
    background-color: #1e1e1e !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}
.form-control:focus {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
    border-color: var(--kingfisher-blue) !important;
    box-shadow: 0 0 0 0.25rem rgba(35, 134, 232, 0.25) !important;
}
.text-muted, .text-secondary {
    color: #999 !important;
}
.bg-light {
    background-color: #2a2a2a !important;
}
.border-dark-subtle, .border-dashed {
    border-color: #444 !important;
}
.bg-white {
    background-color: #1e1e1e !important;
}

/* Button Theming */
.btn-primary {
    background-color: var(--kingfisher-blue) !important;
    border-color: var(--kingfisher-blue) !important;
    color: #ffffff !important;
}
.btn-primary:hover {
    background-color: #1b6cc2 !important;
    border-color: #1b6cc2 !important;
}
.btn-outline-secondary {
    border-color: #555 !important;
    color: #ccc !important;
}
.btn-outline-secondary:hover {
    background-color: #444 !important;
    color: #fff !important;
    border-color: #555 !important;
}

/* Thematic Overrides for specific UI elements */
.bg-dark {
    background-color: #121212 !important; /* Deepest dark for card headers like Register/Login */
}
.bg-primary {
    background-color: var(--kingfisher-blue) !important;
}
.text-dark {
    color: #e0e0e0 !important;
}