@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,700;1,300&display=swap");

html {
  font-family: "Open Sans", sans-serif;
}

body {
  margin: 0;
  padding: 0 1rem;
  display: grid;
  grid-template:
    "title title" auto
    "filters map" auto
    "count map" auto
    "list map" 1fr / 40% 60%;
  height: 100vh;
  overflow-y: hidden;
}

h1 {
  font-weight: 300;
  font-style: italic;
}

h1 { grid-area: title; }
#school-map { grid-area: map; }
#school-filters { grid-area: filters; }
#school-count { grid-area: count; }
#school-list { grid-area: list; }

#school-count {
  margin: 0.5rem 0;
  margin-right: 1rem;
  font-size: 0.8rem;
  text-align: right;
}

#school-map {
  height: 100%;
}

.school-list {
  list-style: none;
  margin: 0 0 0 -1rem;
  padding: 0;
  overflow-y: scroll;
}

.school-list li {
  margin: 0.25rem 0;
  padding: 1rem;
  cursor: pointer;
}

.school-name {
  display: block;
  font-weight: bold;
}

.school-grades-served,
.school-admission-type {
  display: inline-block;
  padding: 0.25rem 0.5rem;
  border-radius: 0.75rem;
  font-size: 0.8rem;
  font-weight: bold;
}

.school-grades-served::before,
.school-admission-type::before {
  font-weight: normal;
}

.school-grades-served {
  background-color: #c0ffc0;
}

.school-admission-type {
  background-color: #c0e0ff;
}

.school-grades-served::before {
  content: "Grades: ";
}

.school-admission-type::before {
  content: "Admission: ";
}

#school-filters {
  column-count: 3;
  margin-right: 1rem;
}

label {
  display: block;
}

[name="school-filter-name"] {
  display: block;
  column-span: all;
  box-sizing: border-box;
  padding: 0.5rem;
  margin-top: 0.5rem;
  width: 100%;
}

.address-input {
  display: block;
  column-span: all;
}

[name="address-search"] {
  box-sizing: border-box;
  padding: 0.5rem;
  margin-top: 0.5rem;
  width: 100%;
}

.address-options {
  padding: 0;
  list-style: none;
  margin: 0;
}

.address-options li {
  border: 1px solid black;
  border-width: 0 1px 1px;
  padding: 0.25rem 0.5rem;
  font-size: 0.8rem;
}

.address-options li:hover {
  background-color: #eee;
  cursor: pointer;
}

.highlighted {
  background-color: #ffffc0;
}
