/* Core Branding & Variables */
:root {
    --primary-blue: #004481; /* Professional Blue */
    --primary-hover: #0056a3;
    --accent-gold: #D4AF37;
    --bg-light: #f4f7f6; /* Light gray background from base.html */
    --light-gray: #f8f9fa;
    --text-muted-light: #6c757d;
}

/* General Body & Typography */
body {
    font-family: 'Inter', sans-serif;
    background-color: var(--bg-light);
    min-height: 100vh;
}

.card {
    border-radius: 12px;
}

/* Navbar & User Avatar */
.navbar {
    box-shadow: 0 2px 10px rgba(0,0,0,.1);
}

.user-avatar { 
    width: 32px; 
    height: 32px; 
    line-height: 32px; 
    font-size: 0.85rem; 
    font-weight: 700; 
    background-color: var(--primary-blue); 
    text-align: center; 
}

/* Nav Underline Effect */
.navbar-dark .navbar-nav .nav-link { 
    position: relative; 
    transition: color 0.3s; 
    padding: 0.5rem 1rem; 
}
.navbar-dark .navbar-nav .nav-link.active { 
    color: #fff !important; 
    font-weight: 600; 
}
.navbar-dark .navbar-nav .nav-link.active::after {
    content: ''; 
    position: absolute; 
    bottom: 0; 
    left: 20%; 
    width: 60%; 
    height: 3px;
    background-color: var(--primary-blue); 
    border-radius: 10px 10px 0 0;
}

/* Landing Page Specifics */
.landing-container {
    padding-top: 8vh;
    padding-bottom: 8vh;
}

.landing-hero-icon {
    font-size: 5rem; 
    color: var(--primary-blue);
}

.landing-title {
    font-weight: 700; /* Bold */
}

.landing-subtitle {
    color: var(--text-muted-light);
}

.landing-login-btn {
    background-color: var(--primary-blue);
    border: none;
    transition: background-color 0.2s ease-in-out;
}

.landing-login-btn:hover {
    background-color: var(--primary-hover);
}

/* Dashboard Teaser Animation */
.dashboard-teaser {
    filter: blur(3px) grayscale(30%);
    transition: all 0.5s ease;
    cursor: pointer;
}

.card:hover .dashboard-teaser,
.dashboard-teaser:hover {
    filter: blur(0px) grayscale(0%);
    transform: scale(1.03);
}

