:root {
    /* Primary Brand Colors */
    --color-primary: #1e40af;
    --color-secondary: #3b82f6;
    --color-accent: #f59e0b;
    
    /* Layout Colors */
    --color-sidebar-bg: #1F2937;
    --color-header-bg: #FFFFFF;
    
    /* Typography */
    --font-family: Inter, system-ui, sans-serif;
    
    /* Logo */
    --logo-url: url('/images/default-logo.png');
    --favicon-url: url('/favicon.ico');
}

/* Apply primary color to common elements */
.btn-primary,
.bg-primary {
    background-color: var(--color-primary) !important;
}

.text-primary {
    color: var(--color-primary) !important;
}

.border-primary {
    border-color: var(--color-primary) !important;
}

/* Secondary color */
.btn-secondary,
.bg-secondary {
    background-color: var(--color-secondary) !important;
}

.text-secondary {
    color: var(--color-secondary) !important;
}

/* Accent color */
.bg-accent {
    background-color: var(--color-accent) !important;
}

.text-accent {
    color: var(--color-accent) !important;
}

/* Sidebar styling */
.sidebar {
    background-color: var(--color-sidebar-bg);
}

/* Header styling */
.site-header {
    background-color: var(--color-header-bg);
}

/* Logo */
.tenant-logo {
    content: var(--logo-url);
}

/* Font family */
body {
    font-family: var(--font-family);
}

/* Link hover states with primary color */
a:hover:not(.btn) {
    color: var(--color-primary);
}

/* Focus states */
*:focus {
    outline-color: var(--color-primary);
    outline-offset: 2px;
}

/* Button hover states */
.btn-primary:hover {
    filter: brightness(0.9);
}

.btn-secondary:hover {
    filter: brightness(0.9);
}

/* Custom scrollbar with brand colors */
::-webkit-scrollbar-thumb {
    background-color: var(--color-primary);
}

::-webkit-scrollbar-thumb:hover {
    background-color: var(--color-secondary);
}