:root {
    --color-bg-highlight: #CCF;
    --color-fg-highlight: #1976D2;
    --color-bg: #EEE;
    --color-fg: #000;

    --color-yes: rgb(80, 178, 178);
    --color-no: rgb(195, 106, 195);
    --color-unclear: #FC0;
    --color-slowgrow: #55E;
    --color-platebackground: #CCC;
    --color-nodata: #CCC;
}

body {
    min-width: 300px;
    margin: 0px;
    padding: 0px;
    font-family: 'Roboto', sans-serif;
}
a {
    color: var(--color-fg-highlight) !important;
    text-decoration: none;
}
a:visited {
    color: inherit;
}
a:hover {
    text-decoration: underline;
}
h1 {
    font-size: large;
    font-weight: bold;
}
h2 {
    font-size: medium;
    font-weight: bold;
}
h3 {
    font-size: medium;
    font-weight: normal;
}



.header {
    position: sticky;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1.5em;
    line-height: 1.5em;
    margin: 0px;
    padding: 0px;
    padding-top:2px;
    padding-bottom:10px;
    background: var(--color-bg-highlight);
}
.logo {
    float: left;
    display: block;
}
.logo>img {
    height: 1.5em;
}

div.navicons {
    position: fixed;
    right: 0;
    top: 0;
    margin-top: 0px;
    height: 1.5em;
    background: var(--color-bg-highlight);
    padding-top: 3px;
    padding-bottom: 3px;
}
div.navicons a.iconlink {
    color: var(--color-fg) !important;
    margin-right: 10px;
}

.nav {
    min-width: 200px;
    height: fit-content;
    position: fixed;
    top: 40px;
    right: 0;
    overflow: hidden;
    background: var(--color-bg-highlight);
    z-index: 1;
}
.menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.menu li {
    margin: 0;
    padding: 0;
}
.menu a {
    display: block;
    padding: 3px;
    text-decoration: none;
    font-weight: bold;
    color: black !important;
    margin: 2px;
}
.menu a:hover{
    color: var(--color-fg-highlight) !important;
}
.nav {
    max-height: 0;
    transition: max-height .5s ease-out;
}


.hamb {
    cursor: pointer;
    float: right;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
    padding-right: 1em;
}

.hamb-line {
    background: var(--color-fg);
    display: block;
    height: 2px;
    position: relative;
    width: 24px;
}
.hamb-line::before, .hamb-line::after {
    background: var(--color-fg);
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
}
.hamb-line::before {
    top: 5px;
}
.hamb-line::after {
    top: -5px;
}

form.search-form {
    display: none;
    max-width: 0;
    transition: max-width display .5s ease-out;
}
form.search-form>#search,
form.search-form>#search:hover,
form.search-form>#search:focus,
form.search-form>#search:active {
    width: 100%;
    min-width: 0;
    border: none;
    border-bottom: 2px solid var(--color-fg-highlight);
    appearance: none;
    background-color: transparent;
    outline: none;
}

.side-menu {
    display: none;
}
.side-menu:checked ~ nav {
    max-height: none;
}
.side-menu:checked ~ .navicons .hamb .hamb-line {
    background: transparent;
}
.side-menu:checked ~ .navicons .hamb .hamb-line::before {
    transform: rotate(-45deg);
    top: 0;
}
.side-menu:checked ~ .navicons .hamb .hamb-line::after {
    transform: rotate(45deg);
    top: 0;
}

div.search-container {
    display: inline-block;
}
.search-checkbox {
    display: none;
}
.search-checkbox:checked ~ form.search-form {
    max-width: 200px;
    display: inline-block;
}
.search-checkbox:checked ~ #search-results {
    max-height: 400px;
}

@media (min-width: 900px) {
    .nav {
        max-height: none;
        top: 0;
        position: relative;
        float: left;
        width: fit-content;
        background-color: transparent;
    }
    .menu li {
        display: inline-block;
    }
    .hamb {
        display: none;
    }
}

#search-results {
    position: fixed;
    right: 0;
    background: var(--color-bg-highlight);
    max-height: 0;
    min-width: 300px;
    max-width: 400px;
    max-height: 500px;
    margin-right: 5px;
}
.search-result {
    display: block;
    padding: 2px;
}
.search-result:hover {
    background: var(--color-fg-highlight);
}
.search-result>span.term {
    display: inline-block;
    min-width: 250px;
    overflow: clip;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.search-result>span.type {
    font-size: 0.7em;
    float: right;
    text-align: right;
    color: var(--color-fg);
    width: 30px;
}

div.content {
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
}

ul.tabs {
    width: 100%;
    display: block;
    padding-left: 0px;
    margin: 0px auto;
    position: relative;
}
ul.tabs>li {
    float: left;
    display: block;
}
ul.tabs>li>label {
    display: block;
    padding: 6px 21px;
    position: relative;
    color: var(--color-fg);
    background: var(--color-bg-highlight);
}
ul.tabs li.tab>input[type="radio"] {
    position: absolute;
    top: -9999px;
    left: -9999px;
}
ul.tabs li.tab>label {
    cursor: pointer;
}
ul.tabs div.tab-content {
    z-index: 0;
    overflow: hidden;
    width: 100%;
    padding: inherit;
    position: absolute;
    top: 27px;
    left: 0;
    background: var(--color-bg);
    color: var(--color-fg);
    
    opacity: 0;
    transition: opacity 400ms ease-out;
}
ul.tabs div.tab-content div.tab-content-padding {
    padding: 25px;
}
ul.tabs li.tab>[id^="tab"]:checked + label {
    top: 0;
    background: var(--color-bg);
    color: var(--color-fg);
} 
ul.tabs li.tab>[id^="tab"]:checked ~ [id^=tab-content] {
    z-index: 1;
    opacity: 1;;
    transition: opacity 400ms ease-out;
}

.unordered-collection {
    display: flex;
    flex-wrap: wrap;
    width: calc(100%-50px);
    margin: 25px;
    list-style-type: none;
}
ul.unordered-collection li {
    display: block;
    background: var(--color-bg);
    width: 100px;
    margin: 10px;
}

section.legend {
    margin: 10px;
}
section.legend h2 {
    font-size: 1em;
    font-weight: bold;
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    margin-top: 2px;
    margin-bottom: 2px;
}
section.legend ul {
    list-style-type: none;
    padding: 0px;
    margin: 0px;
    box-sizing: border-box;
}
section.legend ul li {
    width: 100%;
    padding-top: 3px;
    padding-bottom: 3px;
    text-align: center;
    margin-top: 2px;
    margin-bottom: 2px;
    border: 1px solid black;
    box-sizing: border-box;
}

ul.listing {
    border: 1px solid black;
    padding: 0px;
}
ul.listing li {
    display: block;
    margin-top: 3px;
    margin-bottom: 3px;
    padding: 3px;
    padding-left: 10px;
    background-color: var(--color-bg);
    list-style-type: none;
}
ul.listing li:hover {
    filter: brightness(1.1);
}

.successful {
    background: var(--color-yes) !important;
}
.unsuccessful {
    background: var(--color-no) !important;
}

table.plate {
    background: #CCC;
}
table.plate tr td {
    background: #EEE;
}
table.plate tr td>a {
    text-align: center;
    display: block;
    width: 100px;
    height: 100px;
    line-height: 100px;
    text-decoration: none;
    color: black;
    overflow: hidden;
}
table.plate tr td a:target {
    background: #FFA;
}
table.plate tr td a:hover {
    background: #DDD;
}
table.plate tr td a p {
  line-height: 1.5;
  display: inline-block;
  vertical-align: middle;
}
.popup_container>div.popup {
    position: absolute;
    border: 1px black solid;
    display: none;
    z-index: 100;
    background: white;
    padding: 5px;
    text-align: left;
}
.popup_container>div.popup>p {
    margin: 0px;
}
.popup_container:hover>div.popup {
    display: block;
}

.flex {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.indicator[data-value="y"] {
    background-color: var(--color-yes);
}
.indicator[data-value="n"] {
    background-color: var(--color-no);
}
.indicator[data-value="u"] {
    background-color: var(--color-unclear);
}
.indicator[data-value="s"] {
    background-color: var(--color-slowgrow);
}
.indicator[data-value=""] {
    background-color: transparent;
}
