:root {
    --gold: #C4B454;
    --gold-press: #A89940;
    --gold-tint: #F5EFD0;
    --gold-border: #D9CD8A;
    --gold-text: #75692E;
    --gold-deep: #6B5D3F;
    --gold-text-dark: var(--gold);
    --section-indigo-fg: #4F46E5; --section-indigo-bg: #EEF2FF;
    --section-teal-fg: #0D9488; --section-teal-bg: #F0FDFA;
    --section-green-fg: #16A34A; --section-green-bg: #F0FDF4;
    --section-blue-fg: #2563EB; --section-blue-bg: #EFF6FF;
    --section-orange-fg: #EA580C; --section-orange-bg: #FFF7ED;
    --section-purple-fg: #9333EA; --section-purple-bg: #FAF5FF;
    --section-red-fg: #DC2626; --section-red-bg: #FEF2F2;
    --primary-color: #C4B454;
    --navbar-color: #000000;
    --background-color: #FFFFFF;
    --accent-color: #111827;
    --logo-height: 90px;
    --logo-height-mobile: 50px;
    --logo-glow-color: #d4c77a;
    --hub-page-bg: #fafaf8;
    --hub-tile-bg: #ffffff;
    --hub-tile-text: #4a4a4a;
    --hub-title-color: #3a3a3a;
    --hub-subtitle-color: #6b6b6b;
    --hub-card-hover-shadow: #c4b454;
    --hub-card-hover-border: #d4c77a;
    --hub-card-hover-title: #c4b454;
    --hub-particle-glow-1: #c4b454;
    --hub-particle-glow-2: #d4c77a;
    --hub-particle-size: 800px;
    --hub-particle-blur: 200px;
    --hub-particle-opacity: 0.08;
    --hub-particle-speed: 30s;
    --hub-particle-display: block;
    --hub-card-glow-center: #c4b454;
    --hub-card-glow-edge: #2c2c2c;
    --hub-icon-shadow: #c4b454;
    --hub-icon-color: #c4b454;
    --hub-icon-hover-color: #d4c77a;
    --hub-card-shadow: #3a3a3a;
    --hub-card-border: #e8e8e8;
    --hub-card-description: #757575;
    --hub-card-hover-description: #5a5a5a;
    --hub-card-hover-description-shadow: #333333;
    --hub-no-sections-bg: #f5f5f3;
    --hub-no-sections-shadow: #3a3a3a;
    --header-height: 122px;
    --footer-height: 40px;
    --header-bg-color: #000000;
    --header-text-color: #ffffff;
    --header-subtitle-color: #C4B454;
    --header-title-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --header-subtitle-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --header-title-font-size: 1rem;
    --header-subtitle-font-size: 0.85rem;
    --footer-bg-color: #111827;
    --footer-text-color: #e5e7eb;
    --footer-text-size: 0.875rem;
    --sidebar-bg: #ffffff;
    --sidebar-text-color: #1f2937;
    --sidebar-active-highlight: #C4B454;
    --sidebar-active-text-color: #000000;
    --sidebar-hover-bg: #f0ecd9;
    --active-menu-font-size: 17px;
    --active-menu-font-weight: bold;
    --btn-primary-bg: #c4b454;
    --btn-primary-text: #000000;
    --btn-secondary-bg: #6b6b6b;
    --btn-secondary-text: #ffffff;
    --btn-danger-bg: #b85c5c;
    --btn-danger-text: #ffffff;
    --btn-success-bg: #7a9b6d;
    --btn-success-text: #ffffff;
    --unsaved-changes-glow-color: #c4b454;
    --role-staff-bg: #F5F3E8;
    --role-staff-text: #6B5D3F;
    --role-maintenance-bg: #E8E4CE;
    --role-maintenance-text: #6B5D3F;
    --role-maintenance-director-bg: #D4C675;
    --role-maintenance-director-text: #4A3F2A;
    --role-manager-bg: #C4B454;
    --role-manager-text: #000000;
    --role-admin-bg: #8B7E3F;
    --role-admin-text: #FFFFFF;
    --role-super-admin-bg: #6B5D3F;
    --role-super-admin-text: #FFFFFF;
    --role-teacher-bg: #EFF6FF;
    --role-teacher-text: #1E40AF;
    --role-counselor-bg: #F5F3FF;
    --role-counselor-text: #6B21A8;
    --role-principal-bg: #DBEAFE;
    --role-principal-text: #1E3A8A;
    --role-superintendent-bg: #1E3A8A;
    --role-superintendent-text: #FFFFFF;
    --role-secretary-bg: #FFF7ED;
    --role-secretary-text: #9A3412;
    --role-librarian-bg: #F0FDF4;
    --role-librarian-text: #166534;
    --role-it-support-bg: #F3F4F6;
    --role-it-support-text: #374151;
    --badge-success-bg: #059669;
    --badge-success-text: #FFFFFF;
    --badge-system-bg: #2C2C2C;
    --badge-system-text: #FFFFFF;
    --text-primary: #000000;
    --text-secondary: #2C2C2C;
    --text-muted: #6B7280;
    --text-disabled: #D1D5DB;
    --text-inverse: #FFFFFF;
    --link-color: #C4B454;
    --border-primary: #E5E7EB;
    --border-secondary: #D1D5DB;
    --border-light: #f3f4f6;
    --border-focus: #C4B454;
    --bg-secondary: #f9fafb;
    --bg-hover: #f3f4f6;
    --bg-active: #e5e7eb;
    --bg-modal-overlay: rgba(0,0,0,0.5);
    --bg-code: #1f2937;
    --success-bg: #D1FAE5;
    --success-text: #065F46;
    --success-border: #A7F3D0;
    --success-button: var(--success);
    --success-button-hover: var(--success-dark);
    --danger-bg: #FEE2E2;
    --danger-text: #991B1B;
    --danger-border: #FECACA;
    --danger-button: var(--error);
    --danger-button-hover: var(--error-dark);
    --warning-bg: #FEF3C7;
    --warning-text: #92400E;
    --warning-border: #FDE68A;
    --warning-button: var(--warning);
    --warning-button-hover: var(--warning-dark);
    --info-bg: #DBEAFE;
    --info-text: #1E40AF;
    --info-border: #BFDBFE;
    --info-button: var(--info);
    --info-button-hover: var(--info-dark);
    --scrollbar-track: #F3F4F6;
    --scrollbar-thumb: #C4B454;
    --scrollbar-thumb-hover: #A89940;
    --shadow-light: 0.1;
    --shadow-medium: 0.15;
    --shadow-heavy: 0.2;
}

.btn {
    padding: 0.625rem 1.25rem;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-primary {
    background: var(--btn-primary-bg);
    color: var(--btn-primary-text);
}
.btn-primary:hover { opacity: 0.9; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(0,0,0,0.15); }

.btn-secondary {
    background: var(--btn-secondary-bg);
    color: var(--btn-secondary-text);
}
.btn-secondary:hover { opacity: 0.9; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(0,0,0,0.15); }

.btn-danger {
    background: var(--btn-danger-bg);
    color: var(--btn-danger-text);
}
.btn-danger:hover { opacity: 0.9; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(0,0,0,0.15); }

.btn-success {
    background: var(--btn-success-bg);
    color: var(--btn-success-text);
}
.btn-success:hover { opacity: 0.9; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(0,0,0,0.15); }

@media (max-width: 768px) {
    .btn, .btn-primary, .btn-secondary, .btn-danger, .btn-success { min-height: var(--tap-target, 2.75rem); }
}

:root {
    --bs-primary: var(--primary-color);
    --bs-primary-rgb: 196, 180, 84;
    --bs-link-color: var(--gold-text, #75692E);
    --bs-link-hover-color: var(--gold-deep, #6B5D3F);
}
.btn-primary {
    --bs-btn-bg: var(--primary-color);
    --bs-btn-border-color: var(--primary-color);
    --bs-btn-color: var(--btn-primary-text, #000);
    --bs-btn-hover-bg: var(--gold-press, #A89940);
    --bs-btn-hover-border-color: var(--gold-press, #A89940);
    --bs-btn-hover-color: var(--btn-primary-text, #000);
    --bs-btn-active-bg: var(--gold-press, #A89940);
    --bs-btn-active-border-color: var(--gold-press, #A89940);
    --bs-btn-active-color: var(--btn-primary-text, #000);
}
.text-primary { color: var(--gold-text, #75692E) !important; }
.bg-primary { background-color: var(--primary-color) !important; }

[data-section="fleet"] { --section-accent: var(--section-blue-fg); --section-tint: var(--section-blue-bg); }
[data-section="vehicle_maint"] { --section-accent: var(--section-orange-fg); --section-tint: var(--section-orange-bg); }
[data-section="trip_inspections"] { --section-accent: var(--section-blue-fg); --section-tint: var(--section-blue-bg); }
[data-section="reimbursements"] { --section-accent: var(--section-green-fg); --section-tint: var(--section-green-bg); }
[data-section="bullying_reports"] { --section-accent: var(--section-red-fg); --section-tint: var(--section-red-bg); }
[data-section="student_directory"] { --section-accent: var(--section-teal-fg); --section-tint: var(--section-teal-bg); }
[data-section="staff_directory"] { --section-accent: var(--section-teal-fg); --section-tint: var(--section-teal-bg); }
[data-section="work_orders"] { --section-accent: var(--section-orange-fg); --section-tint: var(--section-orange-bg); }
[data-section="assets"] { --section-accent: var(--section-purple-fg); --section-tint: var(--section-purple-bg); }
[data-section="budgets"] { --section-accent: var(--section-green-fg); --section-tint: var(--section-green-bg); }
[data-section="checks"] { --section-accent: var(--section-teal-fg); --section-tint: var(--section-teal-bg); }
[data-section="purchase_orders"] { --section-accent: var(--section-indigo-fg); --section-tint: var(--section-indigo-bg); }
[data-section="substitute_requests"] { --section-accent: var(--section-indigo-fg); --section-tint: var(--section-indigo-bg); }
[data-section="staff_portal"] { --section-accent: var(--section-purple-fg); --section-tint: var(--section-purple-bg); }
[data-section="receipts"] { --section-accent: var(--section-teal-fg); --section-tint: var(--section-teal-bg); }

.nav-brand img {
    filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.55))
            drop-shadow(0 0 10px rgba(255, 255, 255, 0.3));
}

@media (max-width: 768px) {
    .nav-brand img {
        filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.55))
                drop-shadow(0 0 8px rgba(255, 255, 255, 0.3));
    }
}
