body, html { margin: 0; padding: 0; height: 100%; width: 100%; overflow: hidden; font-family: sans-serif; }

#map { 
    position: absolute; 
    top: 0; 
    bottom: 0; 
    width: 100%; 
    background-color: #ffffff; 
}

/* Sidebar Styling */
.sidebar {
    position: absolute; top: 20px; left: 20px; z-index: 10;
    background: white; padding: 20px; border: 3px solid black;
    box-shadow: 5px 5px 0px black;
}

/* Grayscale the base map via CSS for extra high contrast if needed */
/* canvas.maplibregl-canvas {
    filter: grayscale(1) contrast(1.2);
} */

/* A3 PRINT RULES */
@media print {
    @page { size: A3 landscape; margin: 0; }
    .sidebar, .maplibregl-ctrl { display: none !important; }
    #map {
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
    }
}