@import url('https://netdna.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.css');

:root {

  --page-width: 100%;
  --nav-bar-height: 5rem;
  --container-padding: 1rem;

  /* --clr-accent-500: hsl(12, 60%, 45%);
  --clr-accent-400: hsl(12, 88%, 59%);
  --clr-accent-300: hsl(13, 88%, 75%); */
  --clr-accent-100: hsl(13, 100%, 96%);

  --clr-primary-500: hsl(228, 39%, 23%);

  --clr-primary-400: #2C73D2;

  --clr-primary-600: #e61e29;
  --clr-primary-700: rgb(0,0,0);
  --clr-primary-400: rgb(219, 70, 63);
  --clr-accent-500: #a59a8e;

  --clr-accent-400: #424656;
  --clr-accent-350: #4b5165;
  --clr-accent-300: #A6ABBD;
  --clr-accent-250: #d2d4de;
  --clr-accent-200: #e8e9ee;
  --clr-background: #F6F9FF;
  --clr-error: #5A2F31;

  /* --clr-accent-400: #3B3B3D;
  --clr-accent-350: #5E5E60;
  --clr-accent-300: #838386;
  --clr-accent-250: #ABABAD;
  --clr-accent-200: #D4D4D7; */

  
  --clr-neutral-100: hsl(0 0% 100%);
  --clr-neutral-900: hsl(232, 12%, 13%);

  --clr-info-background: #D4D4D7;

  --clr-table-border: #A6ABBD;
  --clr-table-header-background: var(--clr-primary-400);
  --clr-table-background: #D4D4D7;
  --clr-table-highlighted: #ADC9C6;

  --clr-modal-border: var(--clr-accent-350);


  --ff-primary: 'Be Vietnam Pro', sans-serif;

  --ff-body: var(--ff-primary);
  --ff-heading: var(--ff-primary);

  --fw-regular: 400;
  --fw-semi-bold: 500;
  --fw-bold: 700;

  --fs-300: 0.8125rem;
  --fs-400: 0.875rem;
  --fs-500: 0.9375rem;
  --fs-600: 1rem;
  --fs-615: 1.15rem;
  --fs-625: 1.25rem;
  --fs-650: 1.5rem;
  --fs-700: 1.875rem;
  --fs-800: 2.5rem;
  --fs-900: 3.5rem;

  --fs-body: var(--fs-600);
  --fs-primary-heading: var(--fs-650);
  --fs-secondary-heading: var(--fs-615);
  --fs-nav: var(--fs-600);
  --fs-button: var(--fs-600);
  --fs-input: var(--fs-600);
  --fs-error: var(--fs-650);
  

  --size-100: 0.25rem;
  --size-200: 0.5rem;
  --size-300: 0.75rem;
  --size-400: 1rem;
  --size-500: 1.5rem;
  --size-600: 2rem;
  --size-700: 3rem;
  --size-800: 4rem;
  --size-900: 5rem;

  --bdr-radius: 1rem;


}

@media (min-width: 50em) {
  :root {
    --fs-primary-heading: var(--fs-700);
    --fs-secondary-heading: var(--fs-650);


    --fs-nav: var(--fs-600);
  }
}

/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
*
{
  padding: 0;
  margin: 0;
  font: inherit;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

html,
body {
  height: 100%;
}

/* Set core body defaults */
body {
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

.bodySpacer {
  height: 1em;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
  color: var(--clr-primary-500);
}

/* Make images easier to work with */
img,
picture,
svg {
  max-width: 100%;
  display: block;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
   scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/*Utility classes */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.hidden {
  display: none !important;
  visibility: hidden;

}

.text-primary-400 {
  color: var(--clr-primary-400);
}

.text-accent-400 {
  color: var(--clr-accent-400);
}

.text-accent-100 {
  color: var(--clr-accent-100);
}

.text-neutral-100 {
  color: var(--clr-neutral-100);
}

.text-neutral-900 {
  color: var(--clr-neutral-900);
}

.bg-primary-400 {
  background-color: var(--clr-primary-400);
}

.bg-accent-400 {
  background-color: var(--clr-accent-400);
}

.bg-accent-100 {
  background-color: var(--clr-accent-100);
}

.bg-neutral-100 {
  background-color: var(--clr-neutral-100);
}

.bg-neutral-900 {
  background-color: var(--clr-neutral-900);
}

.fw-bold {  font-weight: var(--fw-bold);  }
.fw-semibold {  font-weight: var(--fw-semi-bold);  }
.fw-regular {  font-weight: var(--fw-regular);  }

.fs-primary-heading {
  font-size: var(--fs-primary-heading);
}

.fs-secondary-heading {
  font-size: var(--fs-secondary-heading);
  font-weight: var(--fw-bold);
}

.fs-300 {  font-size: var(--fs-300); }
.fs-400 { font-size: var(--fs-400); }
.fs-400 { font-size: var(--fs-500); }
.fs-600 { font-size: var(--fs-600); }
.fs-650 { font-size: var(--fs-650); }

.center { text-align: center;}

.padding-block-400 {
  padding-block: var(--size-400);
}

.padding-block-900 {
  padding-block: var(--size-900);
}

.button {
  border: none;
  cursor: pointer;
  border-radius: 100vmax;
  /* padding: 1.25em 2.5em; */
  padding: 1em 1.25em;
  font-weight: var(--fw-bold);
  font-size: var(--fs-button);
  line-height: 1;
  color: var(--clr-neutral-100);
  background-color: var(--clr-primary-600);
  /*box-shadow: 0 1.125em 1em -1em var(--clr-accent-500);*/
}

.buttonSpacing {
  margin-bottom: 1em;
}

.input {
  border: none;
  border-radius: 100vmax;
  padding: 1em 2em;
  font-weight: var(--fw-bold);
  font-size: var(--fs-input);
  line-height: 1;
}

.button[data-type="inverted"] {
  background-color: var(--clr-neutral-100);
  color: var(--clr-accent-400);
}

.button:hover,
.button:focus-visible{
  background: var(--clr-primary-400);
}

.button[data-type="inverted"]:hover,
.button[data-type="inverted"]:focus-visible {
  background-color: var(--clr-neutral-100);
  color: var(--clr-accent-300);
}

/* General Styling */
/* body {
  
  width: var(--page-width);

  padding: 0;
  margin: 0;
  font-size: var(--fs-body);
  font-family: var(--ff-body);
  color: var(--clr-primary-400);
} */

body {
	margin: 0;
	background: var(--clr-background);
	font-family: 'Work Sans', sans-serif;
	font-size: var(--fs-body);
  font-family: var(--ff-body);
  color: var(--clr-primary-500);
}

.content {
  padding-top: 100px;
  padding-left: 1rem;
  padding-right: 1rem;
  /* height: 200vh; */
  /* background-blend-mode: multiply;
  background-size: cover;
  display: grid;
  place-items: center; */
}

.right{
  text-align: right;
}

/* navigation styles start here */

header {
  display: grid;
  grid-template-columns: 1fr 60px 60px;
  padding-right: 1rem;
  background: var(--clr-primary-700);
  text-align: center;
  position: fixed;
  z-index: 999;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

footer {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding-right: 1rem;
  color: var(--clr-accent-100);
  background: var(--clr-primary-500);
  text-align: center;
  margin-top: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.message {
  display: block;
  text-align: center;
  color: var(--clr-error);
  font-weight: var(--fw-bold);
  font-size: var(--fs-error);
  padding: 1rem;
  border: 1px solid var(--clr-primary-400);
  margin-bottom: 1rem;
}

.message-error {
  border: 1px solid var(--clr-error);
}

.message ul {
  list-style: none;
}


/*** Checkbox Nav Default Styling ***/
.checkbox-menu {
  position: absolute !important;
  top: -9999px !important;
  left: -9999px !important;
}

.checkbox-menu-nav {
  position: absolute;
  text-align: left;
  top: 100%;
  left: 0;
  background: var(--clr-primary-700);
  padding-right: 1rem;
  transform: scale(1, 0);
  transform-origin: top;
  transition: transform 400ms ease-in-out;
}

.checkbox-menu-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.checkbox-menu-nav li {
  margin-bottom: 1em;
  margin-left: 1em;
}

.checkbox-menu-nav a {
  color: var(--clr-accent-100);
  text-decoration: none;
  font-size: 1.2rem;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity 150ms ease-in-out;
}

.checkbox-menu-nav a:hover {
  color: var(--clr-primary-600);
}
/*** END Checkbox Nav Default Styling ***/

/*** Header Profile Icon ***/
#profile-button {
  margin-top: 8px;
  width: 48px;
  height:48px;
  font-weight: var(--fw-bold);
  font-size: var(--fs-button);
  color: var(--clr-neutral-100);
  background-color: var(--clr-accent-400);
  border-radius: 50px;
  overflow:hidden;
  /* float:left; */
}

#profile-button:hover,
#profile-button:hover label span {
  cursor: pointer;
  background: var(--clr-accent-300);
  color: var(--clr-accent-400);
}

#profile-button label {
  cursor: pointer;
}

#profile-button label span {
  color: var(--clr-accent-300);
  text-align: center;
  padding: 12px 0px;
  display: block;
}

#profile-button label input {
  position:absolute;
  top:-20px;
}

#profile-button input:checked + span {
  background-color: var(--clr-accent-300);
  color: var(--clr-accent-100);
}

.header-profile-nav {
  left: auto;
  right: 0%;
  padding-right: 1rem;
}

.profile-button-checkbox:checked ~ .header-profile-nav {
  transform: scale(1,1);
}

.profile-button-checkbox:checked ~ .header-profile-nav a {
  opacity: 1;
  transition: opacity 250ms ease-in-out 250ms;
}

/*** END Header Profile Icon ***/


/*** Header Search Icon ***/
#search-button {
  margin-top: 8px;
  width: 48px;
  height:48px;
  font-weight: var(--fw-bold);
  font-size: var(--fs-button);
  color: var(--clr-neutral-100);
  background-color: var(--clr-accent-400);
  border-radius: 50px;
  overflow:hidden;
  grid-column: 2 / 3;
}

#search-button:hover,
#search-button:hover label span {
  cursor: pointer;
  background: var(--clr-accent-300);
  color: var(--clr-accent-400);
}

#search-button label {
  cursor: pointer;
  /* float:left; */
  /* width:4.0em; */
}

#search-button label span {
  color: var(--clr-accent-300);
  text-align: center;
  padding: 0px 0px;
  display: block;
}

#search-button label input {
  position:absolute;
  top:-20px;
}

#search-button input:checked + span {
  background-color: var(--clr-accent-300);
  color: var(--clr-accent-100);
}

.header-search-nav {
  left: auto;
  right: 0%;
  padding-right: 1rem;
  padding: 1rem;
}

.search-button-checkbox:checked ~ .header-search-nav {
  transform: scale(1,1);
}

.search-button-checkbox:checked ~ .header-search-nav a {
  opacity: 1;
  transition: opacity 250ms ease-in-out 250ms;
}

/*** END Header Search Icon ***/


/*** Header Main Nav ***/
.nav-toggle:focus ~ .nav-toggle-label {
  outline: 3px solid rgba(lightblue, .75);
}

.nav-toggle-label {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: 1em;
  height: 100%;
  display: flex;
  align-items: center;
}

.nav-toggle-label span,
.nav-toggle-label span::before,
.nav-toggle-label span::after {
  display: block;
  background: var(--clr-accent-100);
  height: 2px;
  width: 2em;
  border-radius: 2px;
  position: relative;
}

.nav-toggle-label span::before,
.nav-toggle-label span::after {
  content: '';
  position: absolute;
}

.nav-toggle-label span::before {
  bottom: 7px;
}

.nav-toggle-label span::after {
  top: 7px;
}

.main-nav {
  left: 0;
  width: 100%;


  position: absolute;
  text-align: left;
  top: 100%;
  left: 0;
  background: var(--clr-primary-400);
  width: 100%;
  transform: scale(1, 0);
  transform-origin: top;
  transition: transform 400ms ease-in-out;
}

.main-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.main-nav li {
  margin-bottom: 1em;
  margin-left: 1em;
}

.main-nav a {
  color: var(--clr-accent-100);
  text-decoration: none;
  font-size: 1.2rem;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity 150ms ease-in-out;
}

.main-nav a:hover {
  color: var(--clr-primary-600);
}


.nav-toggle:checked ~ nav {
  transform: scale(1,1);
}

.nav-toggle:checked ~ nav a {
  opacity: 1;
  transition: opacity 250ms ease-in-out 250ms;
}


/*** END Header Main Nav ***/

/*** Header Search Form ***/
.search-div {
  background: white;
  padding: 1rem;
}

.search-div form {
  color: #555;
  display: flex;
  padding: 2px;
  border: 1px solid currentColor;
  border-radius: 5px;
}

.search-div input[type="search"] {
  border: none;
  background: transparent;
  margin: 0;
  padding: 7px 8px;
  font-size: 14px;
  color: inherit;
  border: 1px solid transparent;
  border-radius: inherit;
}

.search-div input[type="search"]::placeholder {
  color: var(--clr-primary-400);
}

.search-div button[type="submit"] {
  text-indent: -999px;
  overflow: hidden;
  width: 40px;
  padding: 0;
  margin: 0;
  border: 1px solid transparent;
  border-radius: inherit;
  background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' class='bi bi-search' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'%3E%3C/path%3E%3C/svg%3E") no-repeat center;
  cursor: pointer;
  opacity: 0.7;
}

.search-div button[type="submit"]:hover {
  opacity: 1;
}

.search-div button[type="submit"]:focus,
.search-div input[type="search"]:focus {
  /* box-shadow: 0 0 3px 0 #1183d6;
  border-color: #1183d6; */
  outline: none;
}
/*** END Header Search Form ***/






.logo {
  display: block;
  margin-left: 4rem;
}

.logo > img {
  max-width: 128px;
  max-height: 64px;;
}

.button-round {
  width: 48px;
  height:48px;
  border-radius: 50px;
  border:none;
  margin: 0;
  padding: 0;
}

.header-profile-container {
  display: flex;
  justify-content: center;
  align-items: center;
}

#profile-button {
  grid-column: 3 / 4;
}

/*** Login Page ***/
.login-body {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100%;
  /* color: #fff;   */
  background: var(--clr-accent-400);
  background: -webkit-linear-gradient(to top, ar(--clr-accent-400) , ar(--clr-accent-300)); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(to top, var(--clr-accent-400) , var(--clr-accent-300)); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

.login {
  background:rgba(58,63,68,0.5);
  border-radius: 5px;
  box-shadow: 0 1.5px 0 0 rgba(0,0,0,0.1);
  width:450px;
  display: flex;  
  flex-direction: column;
}

.login-logo {
  display: flex;
  padding: 20px 20px 0;
  margin:0;
  align-items: center;
  justify-content: center;
}

.login-logo img {
  max-width: 100px;
  max-height: 100px;
}

.login-item {
	color: #ffff;
	padding:25px 25px 0;
	margin: 20px 20px 0;	
	border-radius: 3px;
}

.login-item input {
  border: 0;
  color: inherit;
  font: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.form-login-user:before {
  content: '\f007';
  font: var(--fs-body) fontawesome;
  color: var(--clr-accent-300)
}

.form-login-lock:before {
  content: '\f023';
  font: var(--fs-body) fontawesome;
	color: var(--clr-accent-300)
}

.form-login input[type="password"],
.form-login input[type="text"],
.form-login input[type="submit"] {
  width: 100%;
}

.form-login label,
.form-login input[type="text"],
.form-login input[type="password"],
.form-login input[type="submit"] {
  border-radius: 0.25rem;
  padding: 1rem; 
  color: var(--clr-primary-500)
}

.form-login label {
  background-color: var(--clr-accent-400);
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.form-login input[type="text"], .form-login input[type="password"] {
  background-color: #ffffff;
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.form-login input[type="text"]:focus,
.form-login input[type="text"]:hover,
.form-login input[type="password"]:focus,
.form-login input[type="password"]:hover {
  background-color: #eeeeee;
}
.form-login input[type="submit"] {
  cursor: pointer;
  font-weight: var(--fw-bold);
  font-size: var(--fs-button);
  color: var(--clr-neutral-100);
  background-color: var(--clr-primary-600);
  text-transform: uppercase;
}
.form-login input[type="submit"]:focus,
.form-login input[type="submit"]:hover {
  background-color: var(--clr-primary-400);
}
.form-login-field {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2rem;
}


.form-login-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/*** END Login Page ***/



@media screen and (min-width: 920px) {
  .nav-toggle-label {
    display: none;
  }

  header {
    /* display: grid; */
    grid-template-columns: 1fr auto minmax(600px, 3fr) 60px 60px;
  }
  
  .logo {
    /* padding-left: 2rem; */
    grid-column: 1 / 2;
  }

  #search-button {
    grid-column: 4 / 5;
  } 

  #profile-button {
    grid-column: 5 / 6;
  }

  
  /*** Header Main Nav ***/
  .main-nav {
      /* add Edge support */
    position: relative;
    text-align: left;
    transition: none;
    transform: scale(1,1);
    background: none;
    top: initial;
    left: initial;
    /* end Edge support */
    
    grid-column: 3 / 4;
    display: flex;
    align-items: center;
  }
  
  .main-nav ul {
    display: flex;
  }
  
  .main-nav li {
    margin-left: 2em;
    margin-bottom: 0;
  }
  
  .main-nav a {
    opacity: 1;
    position: relative;
  }
  
  .main-nav a::before {
    content: '';
    display: block;
    height: 5px;
    background: var(--clr-primary-600);
    position: absolute;
    top: -.75em;
    left: 0;
    right: 0;
    transform: scale(0, 1);
    transition: transform ease-in-out 250ms;
  }
  
  .main-nav a:hover::before {
    transform: scale(1,1);
  }
  /*** END Header Main Nav ***/
}

/*** SITES PAGE ***/
.sites-top {
  /* display: grid;
  grid-template-columns: 1fr 1fr; */
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.sites-search {
  margin-top: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  /* display: grid;
  grid-template-columns: 1fr 1fr; */
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  background-color: var(--clr-accent-300);
}

.sites-info {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  background-color: var(--clr-info-background);
}

.sites-info > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}

.sites-info > div > div {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
}

.sites-info > div > div:first-child {
  max-width: 180px;
  font-weight: var(--fw-bold);
  text-align: left;
  margin-right: 1rem;
  min-width: 180px;
}

.sites-info > div > div:nth-child(n+2){
  min-width: 190px;
}

@media (min-width: 449px){
  .sites-info > div > div:first-child {
    text-align: right;
  }
}

.pin-history {
  margin-top: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  background-color: var(--clr-info-background);
}

.pin-history-none {
  font-size: var(--fs-650);
  font-weight: var(--fw-bold);
  text-align: center;
}

.pin-history-top-row {
  border-bottom: 2px var(--clr-neutral-900) solid;  
}

.pin-history-title {
  font-weight: var(--fw-bold);
  font-size: var(--fs-625);
  line-height: 3rem;
  vertical-align: middle;
  padding-right: 0.5rem;
}

.pin-history-title-history {

  font-weight: var(--fw-regular);
  font-size: var(--fs-600);
  line-height: 3rem;
  vertical-align: middle;
  padding-top: 2px;
}

.pin-history-row-divider {
  padding-top: 1rem;
  border-bottom: 2px var(--clr-accent-400) solid;
  font-size: var(--fs-615);
  font-weight: var(--fw-bold);
}

.pin-history > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}

.pin-history-row {
  flex-wrap: wrap;
  width: 100%;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.pin-history-element {
  min-width: 150px;
  margin-top: 1rem;
  width: 25%;
}

.pin-history-element > div:first-child {
  font-weight: var(--fw-bold);
}

.pin-history-element-third {
  min-width: 200px;
  margin-top: 1rem;
  width: 33%;
}

.pin-history-element-third > div:first-child {
  font-weight: var(--fw-bold);
}



  /*** END SITES PAGE ***/

.table-search-form {
  color: #555;
  display: flex;
  padding: 2px;
  border: 1px solid currentColor;
  border-radius: 5px;
}

.table-search-form input[type="search"] {
  width: 100%;
  border: none;
  background: transparent;
  margin: 0;
  padding: 7px 8px;
  font-size: 14px;
  /* color: inherit; */
  color: var(--clr-accent-100);
  border: 1px solid transparent;
  border-radius: inherit;
  font-weight: var(--fw-bold);
}

.table-search-form input[type="search"]::placeholder {
  color: var(--clr-primary-400);
}

.table-search-form input[type="search"]:focus {
  outline: none;
}

/*** START TABLE STYLING ***/
td.no-content {
  font-size: var(--fs-650);
  font-weight: var(--fw-bold);
  text-align: center;

}

  table {
    /* border: 1px solid #ccc; */
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    margin-top: 1rem;
    width: 100%;
    table-layout: fixed;
  }
  
  table caption {
    font-size: 1.5em;
    margin: .5em 0 .75em;
  }
  
  table tr {
    
    border-bottom: 1px solid var(--clr-table-border);
    padding: .35em;
  }

  table tr:nth-child(even){
    background-color: var(--clr-table-background);
  }

  table tr:last-child{
    border-bottom: none;
  }
  
  table th,
  table td {
    padding: .625em;
    text-align: center;
  }
  
  table th {
    background-color: var(--clr-table-header-background);
    font-size: .85em;
    letter-spacing: .1em;
    text-transform: uppercase;
  }

  th a.sort-by { 
    padding-right: 18px;
    position: relative;
  }
  a.sort-by:before,
  a.sort-by:after {
    border: 4px solid transparent;
    content: "";
    display: block;
    height: 0;
    right: 5px;
    top: 50%;
    position: absolute;
    width: 0;
  }
  a.sort-by:before {
    border-bottom-color: #666;
    margin-top: -9px;
  }
  a.sort-by:after {
    border-top-color: #666;
    margin-top: 1px;
  }
  a.sort-by-selected-asc:before {
    border-bottom-color: black;
  }
  a.sort-by-selected-desc:after {
    border-top-color: black;
  }

  @media screen and (max-width: 600px) {
    table {
      border: 0;
    }
  
    table caption {
      font-size: 1.3em;
    }
    
    table thead {
      border: none;
      clip: rect(0 0 0 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      width: 1px;
    }
    
    table tr {
      border-bottom: 3px solid var(--clr-table-border);
      display: block;
      margin-bottom: .625em;
    }
    
    table td {
      border-bottom: 1px solid var(--clr-table-border);
      display: block;
      font-size: .8em;
      text-align: right;
    }
    
    td.no-content {
      text-align: center;
    }

    table td::before {
      /*
      * aria-label has no advantage, it won't be read inside a table
      content: attr(aria-label);
      */
      content: attr(data-label);
      float: left;
      font-weight: bold;
      text-transform: uppercase;
    }
    
    table td:last-child {
      border-bottom: 0;
    }
  }
  /*** END TABLE STYLING ***/



  .modal-block,
  .modal-block-heading,
  .modal-block-footer,
  .modal-block-content {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
  }

.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgb(0,0,0); 
  background-color: rgba(0,0,0,0.7);
}

.modal-block {
  display: flex;
  flex-direction: column;
  background-color: var(--clr-background);
  border: 1px solid var(--clr-accent-400);
  box-shadow: 0.5em 0.5em 0.5em var(--clr-accent-400);
  overflow: hidden;
  max-height: 95%;
  border-radius: 5px;
  width: 750px;
  max-width: 95%;
  vertical-align: initial;
  /* padding: 0.3rem; */
}

.modal-form{
  display: flex;
  flex-direction: column;
  flex: 1 1;
  overflow-x: hidden;
  overflow: hidden;
}

.modal-block-heading {
  /* padding: 0.3rem; */
  display: flex;
  flex-direction: row;
  justify-content: space-between;

  border-bottom: 1px solid var(--clr-modal-border);
}

.modal-block-close:hover {
  cursor: pointer;
  font-weight: var(--fw-bold);
}

.modal-block-content {
  /* padding: 1rem; */
  width: 100%;
  /* display: flex; */
  flex-direction: column;
  flex: 1 1;

  overflow: auto;
  overflow-x: hidden;
}

.modal-error-msg {
  display: flex;
  justify-content: center;
  color: var(--clr-error);
  font-weight: var(--fw-bold);
  font-size: var(--fs-error);
  padding: 1rem;
  border: 1px solid var(--clr-error);
  margin-bottom: 1rem;
}

.modal-block-footer {
  /* padding: 0.3rem; */
  display: flex;
  justify-content: flex-end;
  border-top: 1px solid var(--clr-modal-border);
  flex-wrap: wrap;
  align-items: center;
}

.modal-upload-status {
  flex: 1;
}

.modal-cancel {
  background-color: transparent;
  color: var(--clr-primary-500);
  margin-right: 1rem;
}

.modal-block-content > div > ul {
  list-style-type: none;
}

.modal-block-content > div > ul > li {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 1rem;
}

.modal-block-content > div > ul > li > label {
  flex: 1;
  /* min-width: 180px; */
  text-align: left;
  padding-right: 1rem;
  font-weight: var(--fw-bold);
}

.modal-block-content > div > ul > li > input,
.modal-block-content > div > ul > li > select,
.modal-block-content > div > ul > li > textarea {
  flex: 2;
  /* min-width: 180px; */
  padding: 0 0.5rem 0 0.5rem;
}

.modal-block-content > div > ul > li > input[type=checkbox] {
  min-width: 10px; /* Causes it to center if not unset */
  width: 10px; /* Causes it to center if not unset */
}

@media (min-width: 449px){
  .modal-block-content > div > ul > li > label {
    text-align: right;
  }
}

@media (min-width: 50em){
  .modal-block,
  .modal-block-heading,
  .modal-block-footer,
  .modal-block-content {
    padding: 1rem;
  }

  .modal-block {
    max-height: 75%;
  }

  /* .formRow .question {
    text-align: left;
  } */
}

/* required form items asterisk */
ul > li> label > span {
  color: red;
}

#modalSitesAddFormContent {
  /* width: 100%; */
}

.formRow {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding-bottom: 1rem;
  width: 100%;
}

.formRow .question {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  min-width: 180px;
  margin-right: 1rem;
  text-align: left;
  
  font-weight: var(--fw-bold);
}

.formRow .question > label > span {
  color: red;
}

.formRow .answer {
  display: flex;
  flex-direction: column;
  flex: 1 1 180px;
  align-items: flex-start;
}

.formRow .answer input,
.formRow .answer select,
.formRow .answer textarea {
  min-width: 180px;
  width: 100%;
  padding: 0 0.5rem 0 0.5rem;
}

.formRow .answer input[type=checkbox] {
  /* flex: 0 0 10px; */
  min-width: unset; /* Causes it to center if not unset */
  width: unset; /* Causes it to center if not unset */
  margin-left: 5px;
  margin-top: 4px;
  transform: scale(1.5);
  cursor: pointer;
}

.question-notes {
  font-size: var(--fs-300);
}

.answer-notes {
  margin-top: 5px;
  color: red;
  font-size: var(--fs-300);
}

@media (min-width: 600px){
  .formRow .question {
    text-align: right;
    flex: initial;
  }
}

.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pin-note {
  font-size: var(--size-400);
  font-weight: var(--fw-regular);
  color: red;
}


.formPinRow {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding-bottom: 1rem;
  width: 100%;
  border: 1px outset var(--clr-accent-300);
  border-radius: 1rem;
  box-shadow: 5px 5px;
  margin-bottom: 1rem;
  padding: 1rem;
}

.formPinRow .question {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  min-width: 250px;
  margin-right: 1rem;
  text-align: left;
  font-size: var(--fs-secondary-heading);
  font-weight: var(--fw-bold);
  margin-top: -0.3rem;
}

.formPinRow .question > label > span {
  color: red;
}

.formPinRow .answer {
  display: flex;
  flex-direction: column;
  flex: 1 1 180px;
  align-items: flex-start;
}

.formPinRow .answer-text {
  margin-top: -0.3rem;
  justify-content: center;
  font-size: var(--fs-secondary-heading);
}



.formPinRow .answer input,
.formPinRow .answer select,
.formPinRow .answer textarea {
  min-width: 180px;
  width: 100%;
}

.formPinRow .answer input[type=checkbox] {
  /* flex: 0 0 10px; */
  min-width: unset; /* Causes it to center if not unset */
  width: unset; /* Causes it to center if not unset */
  margin-left: 5px;
  margin-top: 4px;
  transform: scale(1.5);
  cursor: pointer;
}

.formPinRow .answer input[type=submit]{
  min-width: unset;
  width: unset;
}

.formPinRow .answer input[type=number]{
  min-width: unset;
  width: unset;
  font-size: var(--fs-button);
}

@media (min-width: 600px){
  .formPinRow .question {
    text-align: right;
    flex: initial;
    max-width: 250px;
    overflow-wrap: break-word;
  }

  .formPinRow .answer-button {
    margin-top: -0.7rem;
  }
}

#drawing-map {
  width: 100%;
  height: 600px;
}

.drawing-map-large {
  height: 1024px;
}



.leaflet-div-icon {
	background: transparent;
	border: none;
}

.leaflet-marker-icon .number {
	position: relative;
	top: -30px;
  left: 5px;
	font-size: 14px;
  color: var(--clr-neutral-100);
  font-weight: var(--fw-bold);
	width: 22px;
	text-align: center;
}

/* .number{
	position: relative;
	top: -30px;
  left: 5px;
	/* font-size: 1em; */
  /* font-size: 1vw;
  color: var(--clr-neutral-100);
  font-weight: var(--fw-bold);
	width: 0.5rem;
  max-width: 0.5rem;
	text-align: center;
} */

.number {
  left: 3px;
  position: absolute;
  top: 7px;
  width: 24px;
}

.number-sub {
  font-size: 9px !important;
  line-height: 1;
  text-align: center;
  word-break: break-all;
}

.number-sub-new {
  margin-top: 5px;
}

.leaflet-popup-content {
  max-width: 250px;
}

.leaflet-popup-content p {
  margin-block-start: 0em;
  margin-block-end: 0em;
}

.leaflet-popup-content a,
.leaflet-popup-content a:visited,
.leaflet-popup-content a:hover,
.leaflet-popup-content a:active {
  color: var(--clr-primary-400);
  font-weight: var(--fw-bold);
}

.leaflet-popup-content a:hover {
  color: var(--clr-primary-500);
}



.radioButtons input[type=radio]:checked + label {
  
  font-style: normal;
  color: var(--clr-primary-400);
  border: 1px solid var(--clr-primary-400);
  background-color: var(--clr-neutral-400);

  
}

.radioButtons {
  display: flex;
  flex-wrap: wrap;
}

.radioButtons label {
  margin-right: 1rem;
  margin-bottom: 1rem;
  cursor: pointer;

  border: none;
  border: 1px solid var(--clr-accent-400);
  border-radius: 100vmax;
  padding: 1em 1.25em;
  font-size: var(--fs-button);
  line-height: 1;
  color: var(--clr-neutral-100);
  background-color: var(--clr-accent-400);
}

.radioButtons input {
  width: 0px;
  display: none;
  visibility: hidden;
}

.submitButtons {
  display: flex;
  flex-wrap: wrap;
}

#pinFormError {
  width: 90%;
  margin: 1em;
  opacity: 0;
  transition: all 2s linear;
  display: none !important;
  visibility: hidden;
}

#pinFormError.fade {
  opacity: 1;
  display: block !important;
  visibility: visible;
}

.drawingAccessRow {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  border-bottom: 1px solid var(--clr-accent-350);
  padding: 1em;
  font-size: var(--fs-650);
}

.drawingAccessRow input[type=checkbox] {
  transform: scale(1.5);
}

.drawingAccessRow input[type=checkbox]:hover {
  cursor: pointer;
}

.drawingAccessRowSubmit {
  border-bottom: unset;
}

.drawingAccessRowHeader {
  font-weight: var(--fw-bold);
  border-bottom: unset;
}

.twoColumnWrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}

.twoColumnRow {
  width: 50%;
  padding-right: 1em;
}

hr {
  margin-top: 1em;
  margin-bottom: 1em;
  border: 2px solid;
}

.showPhoto:hover{
  cursor: pointer;
}

.reportPageTitleRow {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  /* border-bottom: 1px solid var(--clr-accent-350); */
  /* padding: 1em; */
  /* font-size: var(--fs-650); */
  padding-bottom: 0.5em;
}

.reportPageTitleRow input[type=checkbox] {
  transform: scale(1.5);
  margin-right: 10px;
}

.reportPageTitleRow input[type=checkbox]:hover {
  cursor: pointer;
}

.reportPageTitleRow label:hover {
  cursor: pointer;
}