/* Main application styles */

/* CSS Variables for theming */
:root {
    --bg-primary: 255 255 255;
    --bg-secondary: 249 250 251;
    --bg-sidebar: 31 41 55;
    --text-primary: 17 24 39;
    --text-secondary: 107 114 128;
    --text-sidebar: 243 244 246;
    --border-color: 229 231 235;
    --accent: 59 130 246;
    --accent-hover: 37 99 235;
}

/* Dark mode via prefers-color-scheme */
@media (prefers-color-scheme: dark) {
    :root {
        --bg-primary: 17 24 39;
        --bg-secondary: 31 41 55;
        --bg-sidebar: 15 23 42;
        --text-primary: 243 244 246;
        --text-secondary: 156 163 175;
        --text-sidebar: 243 244 246;
        --border-color: 55 65 81;
        --accent: 96 165 250;
        --accent-hover: 59 130 246;
    }
}

/* Dark theme override class */
body.dark-theme {
    --bg-primary: 17 24 39;
    --bg-secondary: 31 41 55;
    --bg-sidebar: 15 23 42;
    --text-primary: 243 244 246;
    --text-secondary: 156 163 175;
    --text-sidebar: 243 244 246;
    --border-color: 55 65 81;
    --accent: 96 165 250;
    --accent-hover: 59 130 246;
}

/* Light theme override class */
body.light-theme {
    --bg-primary: 255 255 255;
    --bg-secondary: 249 250 251;
    --bg-sidebar: 31 41 55;
    --text-primary: 17 24 39;
    --text-secondary: 107 114 128;
    --text-sidebar: 243 244 246;
    --border-color: 229 231 235;
    --accent: 59 130 246;
    --accent-hover: 37 99 235;
}

/* Smooth transitions for theme changes */
body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Sidebar transitions */
.sidebar {
    transition: transform 0.3s ease-in-out;
}

.sidebar-overlay {
    transition: opacity 0.3s ease-in-out;
}

/* Hide sidebar overlay by default */
.sidebar-overlay {
    opacity: 0;
    pointer-events: none;
}

.sidebar-overlay.active {
    opacity: 1;
    pointer-events: auto;
}

/* Mobile sidebar hidden state */
@media (max-width: 768px) {
    .sidebar.hidden {
        transform: translateX(-100%);
    }
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: rgb(var(--bg-secondary));
}

::-webkit-scrollbar-thumb {
    background: rgb(var(--text-secondary) / 0.3);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgb(var(--text-secondary) / 0.5);
}

/* Form error messages - visible in dark and light mode */
.form-error-message {
    background-color: rgba(239, 68, 68, 0.1);
    color: rgb(239, 68, 68);
    border: 1px solid rgba(239, 68, 68, 0.2);
    padding: 0.75rem;
    border-radius: 0.5rem;
    margin-top: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    display: flex;
    align-items: start;
    gap: 0.5rem;
}

/* Override Symfony form error default styles */
form ul.form-errors {
    list-style: none;
    padding: 0;
    margin: 0;
}

form ul.form-errors li {
    background-color: rgba(239, 68, 68, 0.1);
    color: rgb(239, 68, 68);
    border: 1px solid rgba(239, 68, 68, 0.2);
    padding: 0.75rem;
    border-radius: 0.5rem;
    margin-top: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
}

/* Import markdown content styles */
@import "markdown-content-zCBYqCD.css";
