/* ==========================================================================
   assets/css/style.css - Custom Styling, Font Poppins & Leaflet Overrides
   ========================================================================== */

/* --- Import Google Fonts: Poppins --- */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* --- Global Typography Baseline --- */
* {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

body {
    font-family: 'Poppins', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* --- Custom Scrollbar --- */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* --- Leaflet JS Modern Overrides --- */
.leaflet-container {
    font-family: 'Poppins', sans-serif !important;
    border-radius: 0.75rem;
}

.leaflet-popup-content-wrapper {
    padding: 4px;
    border-radius: 0.75rem !important; /* Tailwind rounded-xl */
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #f1f5f9;
    font-family: 'Poppins', sans-serif !important;
}

.leaflet-popup-content {
    margin: 8px !important;
    line-height: 1.4;
}

.leaflet-popup-tip-container {
    margin-top: -1px;
}

.leaflet-container a.leaflet-popup-close-button {
    padding: 6px 8px 0 0 !important;
    color: #64748b !important;
    font-weight: 600;
}

.leaflet-container a.leaflet-popup-close-button:hover {
    color: #0f172a !important;
}

/* --- Text Line Clamping Utilities --- */
.line-clamp-1 {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}