/* Global */

@font-face {
    font-family: ps2;
     src: url("/assets/fonts/Px437_IBM_PS2thin4.ttf")
}

@font-face {
    font-family: sans;
     src: url("/assets/fonts/Roboto-Regular.ttf")
}

body {
    padding-left: .2em;
    padding-right: .2em;
    background-color: #FFFFFF;
    font-family: sans, sans-serif;
    font-size: clamp(8px, 5vw, 18px);
    color: #000000;
    max-width: 60em;
    margin-left: auto;
    margin-right: auto;
}

#pagetitle {
    padding: 0 .9em 0 0;
    font-size: clamp(.3em, .6vw, 1.2em);
    overflow: auto;
    top: 50%;
    right: 0;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin: 0;
    position: absolute;
}

#sitename {
    float: right;
    color: yellow;
    clear: none;
    margin-right: 1%;
    vertical-align: middle;
    font-family: ps2;
}

.centertext {
    text-align: center;
}

.centerimage {
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-top: 3px;
    margin-bottom: 3px;
}

.leftimage {
    float: left;
    margin: 10px;
}

.rightimage {
    float: right;
    margin: 10px;
}

.chunk {
    clear: both;
}


/* HEADER START */


#header-topline {
    display: flex;
    align-items: center;
    min-height: 3vh;
    border-radius: 6px 6px 0px 0px;
    margin-top: 5px;
    padding: 4px 4px 4px 4px;
    position: relative;
    clear: both;
    color: #FFFFFF;
    background: #000000;
}

#header-sitename-text {
    display: flex;
    align-items: center;
    position: absolute;
    left: 0;
    padding-left: 5px;
    color: #ff8236;
    font-family: ps2;
    font-size: clamp(1rem, 1vw, 1.2rem);
    font-weight: bold;
}

.url-nodec {
    text-decoration: none;
    color: #ff8236;
}

.url-nodec-black {
    text-decoration: none;
    color: #000000;
}

#header-lastupdated-text {
    display: flex;
    align-items: center;
    position: absolute;
    right: 0;
    padding-right: 5px;
    color: #ffffff;
    font-family: sans;
    font-size: clamp(.6rem, .9vw, 1.2rem);
}

#header-bottomline {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0px 0px 6px 6px;
    margin-bottom: 10px;
    padding: 4px 4px 4px 4px;
    color: #FFFFFF;
    background: #c91e00;
    font-weight: bold;
    font-family: sans;
    font-size: clamp(.9rem, 1.2vw, 1.5rem);
}



/* Footer */

#footer {
    clear: both;
    border-radius: 6px 6px 6px 6px;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: center;
}

#footeroptions {
    position: relative;
    background: #ffd7d7;
    border-radius: 6px 6px 6px 6px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #c91e00;
}

.footeroptions a {
    text-align: center;
    margin-left: 1em;
    margin-right: 1em;
    text-decoration: none;
    color: #ffffff;
    font-weight: bold;
}

.footeroption {
    background: #c91e00;
    color: #ffffff;
    clear: none;
    padding: 5px 15px 5px 15px;
    margin: 5px 5% 5px 5%;
    border: 1px solid #ff8236;
    font-size: clamp(.8rem, 1.1vw, 1.2rem);
    display: inline-block;
    border-radius: 6px 6px 6px 6px;
}

.privacypolicy {
   clear: both;
   text-align: center;
   font-size: 75%;
   padding-top: 5px;	
}

<!--

#footericons {
    clear: both;
    text-align: center;
    display: block;
}

#footericons a {
    text-align: center;
    margin-left: 1em;
    margin-right: 1em;
}

-->


#lastupdated {
    background: #c91e00;
    color: #ffffff;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-right: .5em;
    border-radius: 0px 0px 6px 6px;
    text-align: right;
    margin-left: .5em;
    margin-right: .5em;
    clear: both;
}

#updatedtext {
    font-size: clamp(.7rem, .9vw, 1.2rem);
}

.embeddedimagecontainer {
    padding: 5px;
    display: table;
    text-align: center;
    margin: auto;
}

.imagecontainer {
    display: inline-block;
    text-align: center;
    margin: auto;
    display: table-cell;
}

.embeddedimage {
    text-align: center;
    display: inline-block;
    height: auto;
    max-width: 100%;
}

.caption {
    border: 1px black solid;
    padding: 3px;
    display: block;
    clear: both;
    text-align: center;
    font-size: clamp(10px, 5vw, 14px);
    font-weight: bold;
}

.linkback {
    text-align: center;
    margin-top: 5rem;
    margin-bottom: 5rem;
}

ul.spacedlist li {
    margin-bottom: 1em;
    list-style-type: none;
    list-style-position: inside;
}

ol.spacedlist li {
    margin-bottom: 1em;
}

ul.indexlist {
    padding: 0;
    list-style-type: none;
}

ul.indexlist li {
    margin-bottom: 1em;
    list-style-type: none;
}

ul.indexlist li a {
    text-decoration: none;
    font-size: 1.2em;
}

ul.linklist li {
    margin-bottom: 1rem;
}

.archive {
    width: 100%;
}

.archive tbody tr td {
    border: 1px solid black;
    padding: 1rem;
}

.archive tbody tr td:nth-child(1) {
    text-align: center;
    min-width: 25%;
}

.archive tbody tr td:nth-child(2) {
    width: 75%;
}

.section-sub {
    margin-left: 2rem;
}

.keytable {
    padding: 1rem;
    margin: auto;
}

.keytable tbody tr td {
    border: 1px solid black;
    padding: 1rem;
}

.quote {
    padding: 10px;
    list-style-type: none;
    margin-bottom: 2vh;
    background: #ffc9cd;
    border: 1px solid #a6000c;
    overflow: auto;
}

.author {
    text-align: right;
    font-weight: bold;
    font-style: italic;
    clear: both;
    float: right;
    display: inline-block;
    margin-top: 10px;
}

.navlist {
    padding-left: 0px;
    text-align: center;
}

.navlist li {
    display: inline-block;
    padding: 10px 15px;
}

#ticketcont {
    text-align: center;
}

.ticket {
    display: inline-block;
    padding: 5px;
    margin-bottom: 15px;
    width: 375px;
}

div.ticket p {
    text-align: center;
    margin-top: 0px;
    margin-bottom: 0px;
}

@media only screen and (min-width: 1366px) {

    #pagecontent {
        clear: both;
        font-size: clamp(10px, 6vw, 16px);
        padding-left: .6em;
        padding-right: .6em;
        max-height: 65%;
    }
}

@media only screen and (max-width: 1365px) {

    #pagecontent {
        clear: both;
        font-size: clamp(10px, 6vw, 18px);
        padding-left: .6em;
        padding-right: .6em;
        max-height: 65%;
    }
}

/* Happy Place - Global and Mobile */

#happypagetitle {
    clear: both;
    margin-bottom: 0px;
}

h1.happy {
    font-size: 12vw;
    margin-top: 5px;
    margin-bottom: 0px;
    color: #8e5700;
}

.happylastupdated {
    text-align: center;
    margin-top: 5px;
    font-size: 4vw;
    margin-bottom: 0px;
}

.happynav {
    width: 240px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5px;
}

.happyleft {
    float: left;
}

.happyright {
    float: right;
}

.happymiddlecontainer {
    text-align: center;
    vertical-align: bottom;
}

.happymiddle {
    display: block;
    padding-top: 15px;
}

.happyvideocontainer {
    text-align: center;
}

.happygif {
    margin-left: auto;
    margin-right: auto;
    width: auto;
    max-width: 100%;
    max-height: 440px;
}

.happyvideo {
    margin-left: auto;
    margin-right: auto;
    width: auto;
    max-width: 100%;
    max-height: 440px;
}

.happynote {
    clear: both;
    text-align: center;
    margin-top: 10px;
    width: 100%;
    font-size: 90%;
    font-family: ps2;
}

#happyfootercontainer {
    max-width: 120px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
}

#happyfooter {
    text-align: center;
    display: block;
}

.happyfooterhomeimage {
    margin-right: 20px;
}



/* Gallery */

.gallery-tn {
    float: left;
    clear: none;
    margin-right: 5px;
}

.gallery-text {
    clear: none;
    font-size: clamp(.8rem, .7vw, 1.5rem);
    text-align: left;
    max-height: 75px;
}

.gallery-container {
    width: auto;
    float: left;
    clear: none;
    margin: 5px;
    padding: 5px;
    display: inline-block;
    text-align: center;
    width: 100%;
}

#gallery-all {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
}

.galtitletext {
    font-weight: bold;
    font-size: clamp(.5rem, 1rem, 1.5rem);
}

.galdesctext {
    font-weight: bold;
    font-size: clamp(.4rem, .9rem, 1.4rem);
}

.galmetatext {
    font-size: clamp(.6rem, .6rem, .8rem);
}

#galfooter {
    clear: both;
    border-radius: 6px 6px 6px 6px;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: center;
}

#galfooteroptions {
    position: relative;
}

.galoption {
    background: #c91e00;
    color: #ffffff;
    clear: none;
    padding: 3px;
    margin: 1px 5px 0px 5px;
    border: 1px solid #ff8236;
    font-size: clamp(.6rem, 1vw, 1.5rem);
    display: inline-block;
    border-radius: 6px 6px 6px 6px;
}

.galoption a {
    text-align: center;
    margin-left: 1em;
    margin-right: 1em;
    text-decoration: none;
    color: #ffffff;
    font-weight: bold;
}

#galnavnote {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    background: #00014b;
    color: #ffffff;
    font-size: clamp(.7rem, 1vw, 1.5rem);
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 0px;
    width: auto;
    border-radius: 6px 6px 6px 6px;
    font-weight: bold;
}

#galimgcontainer {
    max-width: 90vw;
    max-height: 60vh;
    clear: both;
    display: inline-block;
}

#galpagecontent {
    clear: both;
    font-size: clamp(10px, 6vw, 16px);
    padding-left: .6em;
    padding-right: .6em;
    text-align: center;
}

#galimg {
    max-width: 100%;
    max-height: 50vh;
}

.tnimg {
    max-width: 90%;
}


/* Chart */

.chart {
	background: #fffb89;
}

.chart thead tr td {
        border: 1px solid black;
        padding: 5px;
	background: #ffea00;
}

.chart tbody tr td {
	border: 1px solid black;
	padding: 5px;
}

.chart tbody tr td:first-of-type {
        border: 1px solid black;
        padding: 5px;
	white-space: nowrap;
}
