@import url(../../../_shared_assets/css/main.css);
body {
  background: rgba(0, 0, 0, 0); }

.page-wrapper {
  width: 100%;
  text-align: center;
  min-height: 350px; }

.title {
  max-width: 680px;
  margin: 1rem auto 0;
  line-height: 1.35em;
  font-size: 18px; }

canvas {
  width: 100%; }

/* Map layers */
.county {
  stroke-width: 0; }

.county:hover {
  opacity: 0.5; }

.borders {
  fill: none;
  stroke: #fff;
  stroke-width: 1px;
  stroke-opacity: 0.15;
  stroke-linejoin: round;
  stroke-linecap: round;
  pointer-events: none; }

.state {
  stroke: #fff;
  stroke-width: 2px;
  fill: none; }

/* Legend */
.legend {
  text-align: center;
  width: 100%;
  margin-top: 30px;
  white-space: nowrap; }

.legend-item {
  height: 25px;
  display: inline-block; }

.legend-item-text {
  margin-top: 30px;
  padding: 0 1em; }

.legend-item:first-child .legend-item-text {
  padding-left: 0; }

.legend-item:last-child .legend-item-text {
  padding-right: 0; }

.legend-footer {
  margin-top: 15px;
  color: #bbb;
  font-size: 18px; }

/* Tooltips */
.tooltip {
  color: #444;
  background: white;
  font-size: 16px;
  position: absolute;
  text-align: left;
  padding: 0.75rem;
  width: 350px;
  box-sizing: border-box;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2); }
  .tooltip .primary {
    margin: 0.5rem 0; }
  .tooltip .name {
    margin-bottom: 0.5rem;
    font-size: 18px;
    color: #222; }
  .tooltip .no-data {
    font-style: italic;
    color: #b4b4b4;
    border-top: 1px solid #ccc;
    text-align: center;
    padding-top: 1rem; }
  .tooltip hr.full-width {
    border-top: 2px solid #ccc;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: -0.75rem;
    margin-right: -0.75rem; }
  .tooltip table {
    width: 100%; }
    .tooltip table td {
      border-top: 1px solid #ccc;
      padding: 0.4rem 0;
      font-size: 13px; }
    .tooltip table tr:first-child td {
      border-top: none;
      font-weight: bold; }
    .tooltip table .small-caps {
      font-size: 17px; }

.small-caps {
  font-weight: bold;
  font-variant: all-small-caps;
  font-size: 17px;
  letter-spacing: -0.1px;
  line-height: 1.25; }

.asterisk {
  padding-left: 0.15em; }

/* Helpers */
.align-right {
  text-align: right; }

.nowrap {
  white-space: nowrap; }

/* Smartphones (portrait) ----------- */
@media only screen and (max-width: 380px) {
  .legend-item {
    height: 20px; }
  .legend-item-text {
    padding: 0 0.25em;
    font-size: 12px;
    letter-spacing: -0.1; }
  .tooltip {
    position: static;
    width: 100%;
    padding: 0 0.5rem;
    margin-top: 1rem;
    font-size: 14px;
    box-shadow: none;
    border: 1px solid #ccc; }
    .tooltip .primary {
      margin: 0.25rem 0; }
    .tooltip .no-data {
      border: none;
      padding: 0.5rem 0; }
  .hide-on-mobile {
    display: none; } }

/* Smallest screens ----------- */
@media only screen and (max-width: 330px) {
  .legend-item-text {
    padding: 0 0.2em;
    font-size: 11px; } }
