/* CSS Reset - these rules just standardize browsers to display in the same way */
*,::after,::before{box-sizing:border-box}blockquote,body,dd,dl,figure,h1,h2,h3,h4,p{margin:0}ol[role=list],ul[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}body{text-rendering:optimizeSpeed;line-height:1.5}a:not([class]){text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}button,input,select,textarea{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}

/* Global Page Style Elements */
html {
    margin: 0;
    padding: 0;
}

body {
    font-weight: normal;
    font-size: 12px;
    font-family: "Arial", sans-serif;
    color: #444444;
    background-color: #EEEEEE;
}

a:link {
    font-weight: bold;
    text-decoration: none;
    color: #6666DF;
}

a:visited {
    font-weight: bold;
    text-decoration: none;
    color: #4444DF;
}

table {
    font-size: 12px;
    width: 100%;
    background-color: #e1e1e1;
    border-collapse: collapse;
    border: 1px solid #c4c4c4;
}

table tr{
    border-right: 1px solid #c4c4c4;
    border-left: 1px solid #c4c4c4;
    border-bottom: 1px solid #c4c4c4;
}

table td, table th {
    text-align: left;
}

table td{
    padding: 2px 5px;
}

table th{
    padding: 5px;
}

table thead {
    background-color: #CFCFCF;
}

table.no-border td, table.no-border th, table.no-border tr{
    border-top: 0;
    border-bottom:0;
}

table tr.border-top{
    border-top: 1px solid #c4c4c4;
}

.table-image-link{
    width: 1.8em;
    height: 1.8em;
    display: inline-block;
}

/* Generic Positioning/Style Rules */
.no-border-top{
    border-top: 0;
}

.no-border-bottom{
    border-bottom: 0;
}

.text-center{
    text-align: center;
}

.row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.row-align-center {
    align-items: center;
}

.row-space-around {
    justify-content: space-around;
}

.col {
    margin-right: 16px;
}

.col-no-grow {
    flex: 0 0 auto;
}

.col-grow {
    flex: 1 0 auto;
}

.gray-bg {
    background-color: gray;
}

.light-gray-bg{
    background-color: #dcdcdc;
}

.border-vert-light-gray{
    border-top-color: #d2d2d2;
    border-bottom-color: #d2d2d2;
}

.border-bottom-black{
    border-bottom-color: black;
}

.green-bg{
    background-color: #66aa66;
}

.auto-width {
    width: auto;
}

.mt-1{
    margin-top: 1em;
}

.mt-2{
    margin-top: 2em;
}

.mtb-1{
    margin: 1em 0;
}

.ml-1{
    margin-left: 1em;
}

.ml-15{
    margin-left: 15em;
}

.m-1{
    margin: 1em;
}

.max-w-50-p{
    max-width: 48%;
}

.max-w-80-p{
    max-width: 80%;
}

.w-30-p{
    width: 30%;
}

.w-50-p{
    width: 50%;
}

.w-70-p{
    width: 70%;
}

.w-100-p{
    width: 100%;
}

/* Base/Global CSS rules (base.html) */
.page-title-left-aligned-container {
    display: flex;
    flex-direction: row;
}

.header {
    justify-content: space-between;
}

.page-title {
    font: normal normal 40px "Arial Black", sans-serif;
    color: #444444;
}

.page-sub-title {
    font: normal normal 14px "Arial Black", sans-serif;
    color: #AAAAAA;
}

.page-application-title {
    font-family: "Arial Black", sans-serif;
    font-weight: bold;
    color: #666666;
    max-width: 400px;
    text-align: right;
}

.page-alert {
    background-color: #D0D0FF;
    padding: .3em;
    margin-bottom: 1em;
    font-size: 14px;
}

.page-container {
    width: 1000px;
    margin: 0 auto;
}

.page-footer {
    margin-top: 4em;
    padding: 1em 0;
    border-top: 1px solid gray;
}

.page-footer-section {
    margin-bottom: .5em;
    padding: .3em 0;
    border-bottom: 1px solid #d5d5d5;
    width: 1000px;
    margin: 0 auto;
}

.page-footer-section:last-child {
    border-bottom: 0;
}

.content-header {
    font-weight: lighter;
    margin: 2em 0 .5em 0;
    padding: .3em .5em;
    border-bottom: 1px solid #c6c6c6;
    border-top: 1px solid #c6c6c6;
    font-size: 1.3em;
    background-color: #959595;
    font-weight: bold;
}

.page-header{
    margin: 1em 0;
    /*font-weight: lighter;*/
    font-family: "Lucida Console", Monaco, monospace;
    padding-bottom: .5em;
    border-bottom: 1px solid gray;
}

/* 404 CSS rules (404.html) */
.error-404-container {
    margin-top: 4em;
    color: #a11e1e;
}

/* Home CSS rules (home.html) */
.app-container {
    margin-bottom: .5em;
    padding: 1em 0 1em 2em;
    border-bottom: 1px solid #d5d5d5;
}

.app-container:last-child {
    border-bottom: 0;
}

.app-image-container {
    width: 80px;
}

/* Sites CSS rules (sites.html) */
.sites-region-tbl-col{
    width: 230px
}

/* Application CSS rules (application.html) */
.application-map{
    width: 700px;
    height: 600px;
}

/* Styles for exposure age images */
.calc-image-links{
    text-align: right;
    margin-right: 40px;
}