:root {
   --astroblue: #009bda;
   --astrogrey: #70706f;
}

* {
   box-sizing: border-box;
}

.astroblue {
   background-color: #009bda;
   color: white;
}

.astrogrey {
   background-color: #444;
   color: white;
}

button, input, label, html, body {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5em;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

body {
   margin:0;
   font-family: 'Open Sans', sans-serif;
   font-weight: 400;
   font-size: 16px;
   line-height: 1.5em;
   -webkit-text-size-adjust: none;
}

header {
   position: -webkit-sticky;
   position: sticky;
   top: 0;
   background-color: #009bda;
   color: white;
   padding: 8px;
   box-shadow: 0 2px 16px rgba(0, 0, 0, 0.3);
   overflow: hidden;
}

main {
   min-height: 90vh;
   padding: 32px 16px;
   background-color: white;
   margin: 16px auto;
   max-width: 934px;
   width:100%;
}

.limiter600 {
   max-width: 600px;
}

#lictable {
   table-layout: fixed; 
   width: 900px; 
   margin: 0.5rem 0;
}

h1, h2, h3 {
   color: #444;
}

h3, h4 {
   margin-bottom: 0.5rem;
}

summary {
   font-size: 1.5em; 
   font-weight: bold; 
   color: #444; 
   margin: 0.5rem 0;
   padding: .375rem 2.25rem .375rem .75rem;
}
footer {
   bottom: 0;
   background-color: #70706f;
   color: white;
   padding: 16px;
   margin-top: 32px;
}

a {
   text-decoration: none;
   font-size: inherit;
   color: inherit;
}

a:hover {
   cursor: pointer;
   text-decoration: underline;
   -webkit-text-underline-position: under;
   -ms-text-underline-position: below;
   text-underline-position: under;
}

footer a {
   color: white;
}

.headerlogo {
   font-size: 24px;
   font-weight: 300;
   cursor: pointer;
   float: left;
   padding: 8px;
}

.headerlogo:hover {
   cursor: pointer;
   color: #fafafa;
   text-shadow: 0 0 4px white;
}

.tablewrapper {
   overflow-x:auto;
   width: 100%;
}

table {
   border: 1px solid #444;
   border-collapse: collapse;
}

th, td {
   padding: 8px;
   white-space:pre-line;
   font-size: 16px;
}

th {
   background-color: #444;
   color: white;
}

td {
   border: 1px solid #ccc;
   background-color: #fafafa;
   overflow:hidden;
   vertical-align: text-top;
}

td ul {
   margin: 0;
}

.custom-input {
   background-color: #fefefe;
   color:#333;
   border-radius: 0px;
   border: none;
   padding: .375rem 2.25rem .375rem .75rem;
   line-height: 1.5em;
   font-family: inherit;
   font-size: 16px;
   margin: 0px;
}

.custom-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: 'Open Sans', sans-serif;
	font-size: 1rem;
	border-radius: 0px;
	border: 1px solid #ccc;
	background-color: #fefefe;
	color: #333;
	line-height: 1.5em;
	padding: .375rem 2.25rem .375rem .75rem;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right .75rem center;
	background-size: 16px 12px;
}

.chevron {
   color: #333;
	line-height: 1.5em;
	padding: .375rem 2.25rem .375rem .75rem;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right .75rem center;
	background-size: 16px 12px;
}

.licSelectDiv {
   background-color: #fafafa;
   color:#555;
   border: 1px solid #ccc;
   padding: 0.5rem 1rem;
}

.inputwrapper {
   margin: 0 auto;
   padding: 8px;
}

summary {
   cursor: pointer;
   padding: 4px;
   line-height: 1.5em;
}

summary::marker {
   color: #444;
}

@media (max-width: 992px) {
   main {
      padding: 16px;
   }

   footer p {
      font-size: 14px;
   }
}

@media (max-width: 600px) {
   .custom-select {
      display: block;
      width:100%;
   }
}
