
@font-face {
    font-family: "Hylia";
    src: url("../fonts/HyliaSerifBeta.otf") format("opentype");
}

body {
    margin: 0;
    padding: 0;
    background-color: #434343;
    overflow: hidden;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

#map {
    height: 100% !important;
    background-color: #434343;
    cursor: default;
    width: 100%;
}

.map-container {
    display: grid;
    grid-template-columns: repeat(4, 256px); /* 4 columns */
    grid-template-rows: repeat(4, 256px);    /* 4 rows */
    gap: 0px; /* No space between tiles */
    width: fit-content;
    margin: auto;
    padding: 10px;
    position: relative;
    user-select: none;
    transition: transform 0.2s ease;
}

.map-part {
    width: 256px;
    height: 256px;
    pointer-events: none;
    user-select: none;
}

/* Icône marker */
.icon-template {
    height: 32px;
    width: auto;
}

.subtitle {
    font-family: Hylia, sans-serif;
    font-weight: unset;
    margin-bottom: 10px;
    text-align: center;
}

.marker {
    position: absolute;
    height: 24px;
    /* pointer-events: none; */
    transform-origin: bottom center;
    transition: transform 0.2s ease;
}
.marker:hover { opacity: 0.6; }

/* -------------Contrôle zoom/dézoom/reset------------- */
#leaflet-control-reset {
    font-size: 22;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
    color: black;
}

.capsule-zoom {
    position: absolute;
    display: grid;
    right: 0;
    bottom: 0;
    margin: 20px 20px;
    transform: scale(1.3);
    box-shadow: 0 16px 32px rgba(0, 0, 0, .6) !important;
    border-radius: 16px;
    z-index: 1000;
}

.capsule-zoom a {
    text-decoration: none;
    color: white;
    font-size: larger;
    text-align: center;
    font-weight: bold;
    padding: 1px 7px;
    background-color: rgba(0, 0, 0, .8);
}