/* Global Overrides for CAISG - Unified Premium Corporate Dark Mode Theme */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
    --primary-color: #0ea5e9;
    --accent-color: #38bdf8;
    --dark-bg: #0f172a;       /* Slate 900 */
    --surface-bg: #1e293b;    /* Slate 800 */
    --border-color: #334155;  /* Slate 700 */
    --text-color: #374151;    /* Light mode text */
    --text-light: #f8fafc;    /* Slate 50 - Dark mode text */
    --text-muted: #94a3b8;    /* Slate 400 */
    --heading-color: #0f172a;
    --light-bg: #f8fafc;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: var(--text-color);
    line-height: 1.6;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

main {
    flex: 1;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    color: var(--heading-color);
    letter-spacing: -0.025em;
}

/* Global Dark Mode Overrides */
.bg-dark {
    background-color: var(--dark-bg) !important;
    color: var(--text-light) !important;
}

.bg-dark h1, .bg-dark h2, .bg-dark h3, .bg-dark h4, .bg-dark h5, .bg-dark h6 {
    color: var(--text-light);
}

.bg-dark .text-muted, .text-muted {
    color: var(--text-muted) !important;
}

.bg-dark a.text-muted:hover {
    color: var(--text-light) !important;
}

/* Primary Colors and Buttons */
.text-primary {
    color: var(--primary-color) !important;
}
.bg-primary {
    background-color: var(--primary-color) !important;
}

.btn-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}
.btn-primary:hover {
    background-color: #0284c7;
    border-color: #0284c7;
    color: #fff;
}
.btn-outline-primary {
    color: var(--primary-color);
    border-color: var(--primary-color);
}
.btn-outline-primary:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}

/* Cards & Layout */
.hero-section {
    background-color: var(--dark-bg);
    color: var(--text-light);
    position: relative;
    overflow: hidden;
}
.hero-section h1 {
    color: var(--text-light);
}

.card, .feature-card, .pricing-card {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 2rem;
    height: 100%;
    background: white;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.card:hover, .feature-card:hover, .pricing-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}
.pricing-card.premium {
    border: 2px solid var(--primary-color);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
}

/* Ensure navbar aligns with LMS dark mode */
.navbar.bg-dark {
    background-color: #020617 !important; /* Slate 950 */
    border-bottom: 1px solid var(--border-color);
}
.navbar-brand {
    letter-spacing: 1px;
}
.nav-link {
    font-weight: 500;
}

/* Footer link hovers */
footer a:hover {
    color: var(--text-light) !important;
    text-decoration: underline !important;
}
