@font-face {
    font-family: Gotham;
    src: url('fonts/Gotham-Bold.otf');
    font-weight: bold;
}

@font-face {
    font-family: Gotham;
    src: url('fonts/Gotham-Medium.otf');
    font-weight: 600;
}

@font-face {
    font-family: Gotham;
    src: url('fonts/Gotham-Light.otf');
    font-weight: normal;
}

/* https://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
/* apply a natural box layout model to all elements, but allowing components to change */
html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}

html, body {
    width: 100%; /* make the body expand to fill the visible window */
    margin: 0; /* to avoid margins */
    background:  white;
    font-size: 12pt;
}

body {
    font-family:  Helvetica, sans-serif;
    font-weight: normal;
    line-height: 1.4;
    font-size: 90%;
}

h1 {
    font-weight: bold;
}

h2 {
    font-size: 120%;
    font-weight: bold;
}

h3 {
    font-weight: 600;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

a, a:visited {
    color: #0088cc;
}


.caption {
    font-size: 8pt;
    font-style: italic;
    text-align: left;
    margin-top: 0;
}


.columns {
    display: flex;
}

#header {
    border-bottom: 1px solid #eee;
    background: #f8f8f8;
}

#header_nav ul {
    margin: 0;
    text-align: right;
    list-style-type: none;
    padding: 0;
}

#header_nav li {
    display: inline-block;
    margin: 1em;
}

#footer {
    position: relative;

    width: 100%;

    text-align: left; /* to realign your text */
    margin: 0 auto;
    clear: both;
    border: 1px solid white;
    padding: 1em;
    text-align: left;
    border-top: 1px solid #eee;
    background: #f8f8f8;
}

#footer > * {
    vertical-align: middle;
}

#loginbox {
    font-size: 85%;
    background: #f8f8f8;
    padding: 1em;
    margin-top: 1em;
}

#loginbox > * {
    display: inline-block;
}

#loginbox ul {
    list-style-type: none;
    padding: 0;
    margin-top: 0.5em;
    margin-bottom: 0;
}

#loginbox ul li {
    display: inline-block;
    margin-left: 1em;
}

button, input[type=submit], input[type=button] {
    font-size: 90%;
    padding: 0.5em 1em;
    color: white;
    background: #0088cc;
    border-radius: 0.5em;
    border: none;
}

#main {
    position: relative;
    width: 100%;
    max-width: 1024px;
    min-width: 800px;
    text-align: left; /* to realign your text */
    margin: 0 auto;
    padding: 0px 10px;
    border: none;
}

#main.wide {
    max-width: 1280px;
    min-width: 1024px;
}

#main > * {
    vertical-align: top;
}

#right-column {
    display: inline-block;
    width: 60%;
}

#content {
    display: inline-block;
    width: 40%;
    margin-right: 1em;
    margin-bottom: 1em;
}

#main.even #content {
    width: 50%;
}

#content *:first-child {
    margin-top: 0;
}

#graphSection {
    border: 1px solid #eee;
    padding: 1em;
}

.container {
    padding: 1em;
    border: 1px solid #eee;
    /*background: #f8f8f8;*/
}

#graphContainer {
    overflow: hidden;
}

#graphContainer img {
    max-width: 100%;
}

.even > #content {
    width: 50%;
}

.tooltip {
    display: inline-block;
    width: 20px;
    height: 20px;
    font-size: 85%;
    vertical-align: middle;
    font-weight: normal;
    cursor: default;
    color: #0088cc;
}

.tooltip > span {
    display: none;
    color: #333;
    margin-left: 5px; /* moves the tooltip to the right */
    margin-top: 5px; /* moves it down */
    position: absolute;
    z-index: 1000;
    max-width: 30em;
    background: #eee;
    border: 1px solid #888;
    padding: 0.5em 1em;
    box-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

.tooltip:hover > span {
    display: block;
}

table {
    margin-bottom: 1em;
}

table.scientificname tr {
    margin-bottom: 0.25em;
}

/* ----- DIALOG STYLES ----- */

.dijitDialog {
    background : #E5E5D6;
    border : 1px solid #999;
    padding : 4px;
    width: 950px;
    height: 90%; /* if we use this height we see the div when the user zooms out: could make it white to make it invisible, */
    /*but the graph will not be centred in the window so we use the #trialist style below to control the height of the graph window*/
}

#triallist {
    /*text-align: center;*/
    width: 900px; /*625px;*/
    height: 550px; /*this controls the height of the graph.vm html insert. If it is too high, the graph display will go beyond the users screen window and become operationally obscured*/
                /*unless the user knows how to zoom out. So we try to minimise that issue by not setting this too high in the first place*/
    overflow: auto;
    margin: 10px;
}
#userlist {
    /*text-align: center;*/
    width: 800px; /*625px;*/
    height: 500px;
    overflow: auto;
    margin: 10px;
}

table.userlist {
    /*margin-left: auto;
    margin-right: auto;*/
    text-align: left;
    border: none;
    padding: 0px;
}

/* ----- MAP STYLES ----- */
#map {
    position: relative;
    height: 340px; /*340px;*/
    padding: 0px;
    border: 1px solid #eee;
    width: 100%;
    margin-bottom: 1em;
    overflow: hidden;
}

#tools {
    text-align: right;
    position: absolute;
    bottom: 10px;
    right: 10px;
    left: 10px;
    background: rgba(255,255,255,0.5);
    padding: 5px;
    z-index: 100;
}
/*
#legend {
    position: relative;
    min-height: 200px;
    display: none;
}
*/

#legend, #layers {
    border: 1px solid #eee;
    padding: 1em;
}

#legend {
    position: relative;
    height: 340px;
    overflow: auto;
    box-sizing: border-box; /* TODO - see if we can just set border-box for everything */
}

#legend_list {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

#legend_list li {
    float: left;
    width: 45%;
    margin: 0;
    padding: 5px;
}

#layers {
    position: relative;
    height: 340px;
    overflow: auto;
    box-sizing: border-box;
    display: none;
}

#layer_list {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

#layer_list li {
    /*float: left;*/
    /*width: 30%;*/
    margin-bottom: 0.5em;
    /*padding: 5px;*/
}

#layer_list li .dijitCheckBox {
    margin-right: 0.5em;
}


.change_view {
    color: #0088cc;
    font-weight: 500;
    cursor: pointer;
}

.loading {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -5em;
    margin-top: -2em;
    width: 10em;
    text-align: center;
    padding: 1em;

    color: white;
    background: #553300;

    opacity: 0.7;
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    cursor: wait;
    z-index: 10;
}

.map-left {
    width: 64%;
    display: inline-block;
    vertical-align: top;
    margin-right: 2%;
}

.map-right {
    width: 34%;
    display: inline-block;
    vertical-align: top;
}

/* ----- END MAP STYLES ----- */
