html {
    scroll-behavior: smooth;
}

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}

body {
    font-family: 'Manrope', sans-serif;
}

h1,
h2,
h3,
h4,
.font-playfair {
    font-family: 'Playfair Display', serif;
}

.glass-panel {
    background: rgba(242, 240, 237, 0.8);
    backdrop-filter: blur(20px);
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 14px;
    width: 14px;
    border-radius: 50%;
    background: #4A4947;
    cursor: pointer;
    margin-top: -6px;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 2px;
    background: rgba(181, 179, 176, 0.4);
}  
#map-container {
    height: 600px;
    width: 100%;
    background-color: #F5F3F0;
}

/* Filtry pro barvu mapy */
.leaflet-tile-container {
    filter: sepia(80%) hue-rotate(10deg) saturate(40%) brightness(95%) contrast(90%);
}

/* Stylování shluků (clusterů) do tvých barev */
.marker-cluster-small,
.marker-cluster-medium,
.marker-cluster-large {
    background-color: rgba(140, 131, 117, 0.6) !important;
    /* Secondary s průhledností */
}

.marker-cluster-small div,
.marker-cluster-medium div,
.marker-cluster-large div {
    background-color: rgba(51, 51, 51, 0.8) !important;
    /* Primary */
    color: #F5F3F0 !important;
    /* Neutral text */
}

/* Custom scrollbar pro seznam krajů */
.custom-scrollbar::-webkit-scrollbar {
    width: 4px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #F5F3F0;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #8C8375;
}

.leaflet-control-attribution {
    background: transparent !important;
    color: #8C8375 !important;
    font-size: 10px;
}

.leaflet-control-attribution a {
    color: #8C8375 !important;
    text-decoration: none;
}

.leaflet-control-attribution.leaflet-control {
    display: none;
}

nav {
    z-index: 500;
}

section {
    scroll-margin-top: 120px;
}

section#ceny {
    scroll-margin-top: 0px;
}

section#volne-byty {
    scroll-margin-top: 40px;
}