map_id: The ID of your mapboxgl, maplibre, or leaflet output defined in the server, e.g. "map"
sections: A named list of story_section objects. Names will correspond to map events defined within the server using on_section().
map_type: One of "mapboxgl", "maplibre", or "leaflet". This will use either mapboxglOutput(), maplibreOutput(), or leafletOutput() respectively, and must correspond to the appropriate render*() function used in the server.
root_margin: The margin around the viewport for triggering sections by the intersection observer. Should be specified as a string, e.g. "-20% 0px -20% 0px".
threshold: A number that indicates the visibility ratio for a story ' panel to be used to trigger a section; should be a number between 0 and 1. Defaults to 0, meaning that the section is triggered as soon as the first pixel is visible.
styles: Optional custom CSS styles. Should be specified as a character string within shiny::tags$style().
bg_color: Default background color for all sections