/* Styles pour la sidebar */ .city-sidebar { background-color: #f8f9fa; border-right: 1px solid #dee2e6; padding: 1rem; height: 100%; position: fixed; top: 0; left: 0; width: 100%; overflow-y: auto; z-index: 1000; } /* Desktop styles */ @media (min-width: 768px) { .city-sidebar { width: 25%; max-width: 280px; } .main-content { margin-left: 25%; width: 75%; padding-top: 20px; } .main-header { margin-left: 25%; width: 75%; z-index: 1001; } .main-footer { margin-left: 25%; width: 75%; } } /* Mobile styles */ @media (max-width: 767px) { .city-sidebar { position: relative; width: 100%; max-height: none; } .main-content { margin-left: 0; width: 100%; } .main-header { margin-left: 0; width: 100%; } .main-footer { margin-left: 0; width: 100%; } } .city-sidebar .nav-link { color: #495057; border-radius: 0.25rem; padding: 0.5rem 1rem; margin-bottom: 0.25rem; } .city-sidebar .nav-link:hover { background-color: #e9ecef; } .city-sidebar .nav-link.active { background-color: #0d6efd; color: white; } .city-sidebar .nav-link i { width: 1.5rem; text-align: center; margin-right: 0.5rem; } .city-sidebar .sidebar-heading { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.1rem; color: #6c757d; margin-top: 1rem; margin-bottom: 0.5rem; padding-left: 0.5rem; } .section-anchor { scroll-margin-top: 2rem; }