@import url("https://puuli.fi/lib/leaflet/leaflet.css");
@import url("https://puuli.fi/lib/leaflet/MarkerCluster.css");
@import url("https://puuli.fi/lib/leaflet/MarkerCluster.Default.css");

* {box-sizing: border-box; margin: 0; padding: 0; font-family: system-ui; font-size: 16px; font-weight: 400;}

::backdrop {opacity: 0.9;}

html, body {height: 100%;}

body 
  {
  padding: 10px;
  background: rgb(46,80,68);
  }

.kehys
  {
  display: grid;
  grid-template-areas:
    "otsikkopalkki"
    "kartta";
  grid-template-columns: auto;
  grid-template-rows: 50px auto;
  gap: 2px;

  margin: 0 auto;
  padding: 4px;
  height: 100%;
  width:  1400px;
  max-width: 100%;
  background-color: #ccc;

  }

.kehys>*
  {
  border: solid 1px grey; 
  overflow: auto;
  }

/*==========================================================================================*\
|  OTSIKKOPALKKI - Grid-alue "otsikkopalkki"
\*==========================================================================================*/

header
  {
  grid-area:        otsikkopalkki;
  display:          grid;
  justify-content:  center;
  align-items:      center;
  background-color: #99BBFF
  }

h1 
  {
  color:          #fff;
  font-size:      1.6rem;
  font-weight:    600;
  letter-spacing: 3px;
  }

/*==========================================================================================*\
|  KARTTA - Grid-alue "kartta"
\*==========================================================================================*/

#map
  {
  grid-area:  kartta;
  position:   relative;
  overflow:   hidden;
  }


/*==========================================================================================*\
|  KOHDE-INFO -IKKUNA
\*==========================================================================================*/

.kohde_info_ikkuna
  {
  position: absolute;

  margin: auto;

  top:    80px;
  bottom: 40px;
  width:  300px;

  background-color: #ade;
  border: solid 3px #ccc;
  border-radius: 5px;

  z-index:  450;
  }

.kohde_info_ikkuna>h2
  {
  font-size:      1.2rem;
  text-align:     center;
  padding:        3px;
  }

.vuosi
  {
  font-size:      0.7rem;
  text-align:     center;
  padding:        0px;
  }

.kohde_toimet
  {
  width:    100%;
  display:  grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:      3px;
  padding:  2px;
  margin-top: 5px;

  background-color: #ddd;
  border: solid 1px #888;
  border-radius: 5px;
  }

.kohde_toimet>*
  {
  padding: 0.1rem 0.5rem;
  }

.pdf_kartta_linkki, .sulje_kohde_info_nappi
  {
  display: block;
  cursor: pointer;
  padding: 4px;
  background-color: #eee;
  border: solid 1px #bbb;
  border-radius: 5px;
  font-size: 1rem;
  text-decoration: none;
  text-align: center;
  height: 56px;
  }

.pdf_kartta_linkki
  {
  float: left;
  }

.sulje_kohde_info_nappi
  {
  float: right;
  }

/*==========================================================================================*\
|  MUUT KARTAT
\*==========================================================================================*/

.muut_kartat_valikko
  {
  position: absolute;
  z-index: 500;

  top: 80px;
  bottom: 40px;
  width: 300px;

  background-color: #888;
  border: solid 3px #ccc;
  }

.muut_kartat_valikko ul
  {
  list-style-type: none;
  }

.muut_kartat_valikko a
  {
  display: block;
  background-color: white;
  padding: 3px;
  margin: 3px;
  text-decoration: none;
  border: solid 1px #888;
  border-radius: 5px;
  }



/*==========================================================================================*\
|  KOHTEET -LISTA
\*==========================================================================================*/

.kohteet_lista
  {
  position: absolute;
  top: 80px;
  bottom: 40px;
  width: 300px;
  max-width: 80%;
  height: 500px;
  max-height: 80%;
  color: #567;
  font-size: 1.2rem;
  background-color: #888;
  border: solid 3px #ccc;
  z-index: 450;
  overflow-y: auto;


  padding: 0.5rem;
  border: solid 1px grey;
  border-radius: 0.5rem;
  margin: auto;
  background-color: rgba(200,200,250,0.9);

  box-shadow: 0px 0px 14px 0px rgba(0,0,0,0.75);
  -webkit-box-shadow: 0px 0px 14px 0px rgba(0,0,0,0.75);
  -moz-box-shadow: 0px 0px 14px 0px rgba(0,0,0,0.75);
  }

.kohteet_lista ul
  {
  position: absolute;
  list-style-type: none;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  }

.kohteet_lista li
  {
  background-color: #aaa;
  cursor: pointer;

  margin: 0;
  border-bottom: solid 1px #ccf;
  overflow-x: ellipses;
  }

.kohteet_lista li:nth-child(6n+1) {background-color: #f0f0f0;}
.kohteet_lista li:nth-child(6n+2) {background-color: #f0f0f0;}
.kohteet_lista li:nth-child(6n+3) {background-color: #f0f0f0;}

.kohteet_lista li:nth-child(6n+4) {background-color: #d7e7f0;}
.kohteet_lista li:nth-child(6n+5) {background-color: #d7e7f0;}
.kohteet_lista li:nth-child(6n+6) {background-color: #d7e7f0;}

.kohteet_lista a
  {
  display: block;
  text-decoration: none;
  padding: 5px;
  }


/*==========================================================================================*\
|  TEEMAVALIKKO
\*==========================================================================================*/

.teema_valikko
  {
  position: absolute;
  display: none;
  left: 0;
  top: 0;
  padding: 0;
  list-style-type: none;
  font-size: 0.9rem;
  background-color: #8de;
  z-index: 1001;
  }

.teema_valikko li
  {
  display: block;
  padding: 16px;
  margin-top: 1px;
  border-bottom: #aaa;
  background-color: #f0f0f0;
  cursor: pointer;
  }


/*==========================================================================================*\
|  LATAUSKERTOJEN LASKURI
\*==========================================================================================*/

.laskuri
  {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 114px;
  height: 23px;
  padding-top: 2px;
  padding-left: 5px;
  color: #567;
  font-size: 0.8rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background-color: rgba(255,255,255,0.6);
  z-index: 450;
  }