n@charset "UTF-8";
/* CSS Document */
/* perpetua */
header,footer,
article,section,
hgroup,nav,
figure{
  display: block;
}
html {
  width: 100%;
  height:100%;
}

/* Default light theme */
:root {
    --background-color: #fff;
    --text-color: #333333;
    --link-color: #286dc0;
    --button-background-color: #286dc0;
    --button-text-color: #ffffff;
    --container-background: #f9f9f9;
    --column-background: #ededed;
    --h-color: #333;
    --header-background: #7da1c4;
    --header-background: #00356b;
    --nav-background: #333333;
    --nav-link: #f9f9f9;
    --background:  radial-gradient(100% 50% at 50% 0%, #f9f9f9ff 0%, #f9f9f9aa 30%, #f9f9f966 40%, #f9f9f933 100%);
    --pre-background: #eaeaea;
    /* --background: transparent radial-gradient(100% 50% at 50% 0%, #00356bff 0%, #00356b77 30%, #00356b55 40%, #00356b00 100%); */
}
@media (prefers-color-scheme: dark) {
    :root {
        --background-color: #222222;
        --text-color: #ffffff;
        --link-color: rgb(155,223,220);
        --button-background-color: #286dc0;
        --button-text-color: #ffffff;
        --container-background: #222222;
        --column-background: #4a4a4a;
        --h-color: #eee;
        --header-background: #00356b;    
        --background:  #222222;
        --nav-background: #002040;
        --nav-link: #f9f9f9;
    --pre-background: #343434;

        /* --background: transparent radial-gradient(100% 50% at 50% 0%, #00356bff 0%, rgba(14, 31, 47, 1) 70%, #000 100%); */
        a {
            color: rgb(155,223,220);
        }
       .title a {
            color: #222222;
        }

    }
}

/* * { border: solid 1px aqua; } */
body {
  background: var(--background-color);
  width: 100%;
  height:100%;
  margin: 0;
  font-family: Open Sans, Gill Sans MT,  Raleway, century gothic,  Helvetica;
  font-weight: 300;
  font-size: 1.0em;
  color: rgba(62,62,62,1);

}

::selection {
  background: #B8E9F3; /* WebKit/Blink Browsers */
  background: #C3EBF3; /* WebKit/Blink Browsers */

  color: #000000;
}

body > * {
  vertical-align: top;
  overflow: hidden;
}

body  nav {
  font-family: Raleway;
  min-width: 150px;
  width: 10%;
  font-weight: 400;
  /*background: var(--background-color);*/
  background: transparent;
  padding-top: 50px;
  position: absolute;
  left: 0;
  margin-bottom: 50px;
  height: 100%;
  line-height: 1.3em;
  /* 			min-height: 100%; */
}

.fixedNav {
  position: fixed;
  top: 0px;
  /*         overflow: auto; */
  overflow: scroll;
  margin-bottom: 100px;
  height: 100%;
}
.topNav {
  position: absolute;
  top: 50px;
}

body > div {

}

#tablediv {
  display: table;
  padding-top:5px;
  width:100%;
}

header
{
  width: 100%;
  display: block;
  background: #996d8f;
  /*background: #91CEDA;*/
  box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.3);
  height: 80px;
    background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.1)),url('/images/science-header.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

header > h1
{
  margin: 0px 0px;
  color: white;
  display: inline-block;
  line-height: 53px;
  vertical-align: top;
  padding-top: 12px;
  letter-spacing:1px;
  font-size: 2.5em;
}
header > a
{
  padding-left: 10px;
  margin-top: 10px;
}
header > a  > img
{
  padding-top: 2px;
}

nav
{
  display:block;
  height: 100%;
  color: var(--text-color);
  background-color: var(--background-color);
  margin: 0 auto;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
}
nav ul
{
  padding: 0px;
  margin: 0px;
  list-style-type: none;
  color: var(--text-color);
}


nav ul li
{
  /* 		border-bottom: solid 1px white; */
}

nav a
{
  /* 		color: white; */
  /* 		color: #F5F4EB; */
  display: block;
  text-decoration: none;
  text-align: left;
  font-size: 22px;
  line-height: 32px;
  color: var(--text-color);
  border-left: solid 8px var(--background-color);
  padding-left: 6px;
}

nav a:hover
{
  /* 		color: #fff; */
  /* 		background-color: #999d8f; */
  border-left: 8px solid rgb(201,31,62);
  color: var(--text-color);
}
nav	a:visited
{
  /* 		color: white; */
  color: var(--text-color);
}

nav > ul li.current_item a
{
  /* 	   background: #92a2a2; */
  border-left: 8px solid #92a2a2;
  border-left: 8px solid rgb(157,43,147);
  color: var(--text-color);
  box-sizing: border-box;
}
/*
nav > ul li.current_item a:hover
{
background: #999d8f;
}
*/

/*--- Hide  Sublists ---*/
nav li {
}

nav li ul {
  /* 	position: absolute; */
  position: relative;
  /* 	border-top: solid 1px white; */
  width: 150px;
  /* 	left: -999em; */
  display: none;
}


nav li ul.show {
  display: block;
  margin-bottom: 70px;
}

nav li:hover ul, a:hover ul li {
  left: auto;
  /* 	font-size: 18px; */
  /* 	display: block; */
  /* 	text-align: right; */
}

nav > ul li.submenu a {
  background: none;
  font-size: 20px;
  text-align: left;
  padding-left: 10px;
  border-left: 8px solid var(--background-color);
}
nav > ul li.submenu_current a {
  /*
  border-bottom: 1px solid #92a2a2;
  border-top: 1px solid #92a2a2;
  border: 1px dashed #92a2a2;
  */
  border-left: 8px solid rgb(201,31,62);
}
nav > ul li.submenu a:hover {
  /* background: #999d8f; */

  /* border: 1px dashed #999d8f; */
  border-left: 8px solid rgb(201,31,62);
}
a {
  color: #92a2a2; /* #999d8f; */
  color: #577979;
  /*position: relative;*/
}

a:visited
{
  color: #999;
}
a:hover
{
  color: #999d8f;
}

.content
{
  background-color: white;
  background: var(--background-color);
  color: var(--text-color);
  /*     display: table-cell; */
  /*         width: 90%; */
  /*         position: absolute; */
  padding-left: 120px;
  /*         min-height: 400px; */
  /*     height: 600px; */
  min-height: 700px;

}

section
{
  /*         font-size: 1.07em; */
  text-align: justify;
  margin: 15px auto;
  /* 		margin: 15px 10px 15px 50px;	 */
  width: 85%;
}

h2
{
  text-align: center;
  margin-bottom: 0.3em;
}
h1, h2, h3, h4, h5
{
  font-family: Raleway, century gothic,  Gill Sans MT,  Helvetica;
  font-weight: 400;
  /* 		font-weight: 600; */
}
h3 {
  font-size: 1.3em;
}
h2 {
  font-size: 1.7em;
}
h4 {
  font-size: 1.2em;
}
.alignleft
{
  text-align: left;
  padding-left: 10px;
}
.alignright
{
  text-align: right;
  padding-left: 10px;
}

p
{
  padding: 0 15px 0 15px;
}
footer
{
  margin-top: 25px;
  padding: 10px 0 8px 0;
  border-top: solid 1px #aaa;
  clear: left;
  /* 	z-index:2; */
  /* 	position: absolute; */
  /* 	bottom:2px; */
  /* 	width: 100%; */
}

footer ul {
  margin: 0;
  padding-left: 5px;
}

footer li {
  display: inline;
  list-style-type: none;
  padding: 0 5px 0 5px;
  /*         border-left: solid 1px #555; */
  vertical-align: middle;
}

footer li:first-child {
  border-left: none;
}

footer a {
  text-decoration: none;
}

table {
  margin: 0 15px 0 15px;
}
thead, thead th {
  background-color:#E2F1F5;
}
/*
h2,h3,h4,h5 {
font-weight: 400;
}
*/

/*
li {
margin-bottom: 5px;
}
*/

br {
  line-height: 180%;
}

blockquote {
  /*background-color: white;*/
  /* 	border: solid 1px #555; */
  border-left: solid 10px rgb(157,43,147);
  padding: 10px;
  margin: 10px;
  font-style:italic;
  quotes: "\201C""\201D""\2018""\2019";
  /*background: #f9f9f9;*/

}

details {
  margin: 10px 0;
}
summary {
  font-family:  Raleway, century gothic, Gill Sans MT, Helvetica;
  font-size: 1.2em;
  font-weight: 500;
}

.post {
  border-radius:0px;
  margin:5px;
  padding:10px;
}

.titlediv {
  background:#DBF0F5;
}

.spaced li {
  margin: 10px 0;
  line-height: 1.4em;
}
.spaced ul li {
  margin: 10px 0;
  line-height: 0.9em;
}


.resume ul {
  margin-bottom: 10px;
}

.horz {
  /*width: 100%;*/
  /*margin: 0 auto;*/
  /*text-align: center;*/
}
.horz li {
  display: inline;
}

.address {
  padding: 0;
  margin: 0;
}

.pubs {
  text-align: left;
}

.pubs li{
  margin-top: 5px;
}

.nostyle {
  list-style-type: none;
  padding-left:15px;
}

.nostyle li {
  margin-bottom: 5px;
}


/*
.smallstyle li:before {
content: "– ";
}
*/


.valign {
  vertical-align: middle;
}

.clear {
  clear: both;
  /* 	visibility: hidden; */
  line-height: 0;
  height: 0;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

/* ~~for weather page ~~ */
.tableholder, .tableholder3
{
  display: table;
  width: 96%;
}
.tableholder2
{
  display: table;
  /* 	width:100%; */
  border-collapse:separate;
  border-spacing:5px 5px;
}

.tableholder div
{
  display: table-cell;
  vertical-align: middle;
}
.tableholder3 div
{
  display: table-cell;
  width: 50%;
}

div.tablecol
{
  width: 50%;
  vertical-align: top;
  padding: 0px 25px 0px 15px;
}

.floatcolleft
{
  padding-right:2px; float:left;width: 48%;
}
.floatcolright
{
  padding-left:20px;float:right;width: 48%; border-left: solid 2px black;
}

ul.spaced_list > li {
  margin-top: 20px;
}

pre
{
  background: var(--pre-background);
  padding: 5px;
  border-radius: 5px;
  white-space: pre-line;
  text-align: left;
  margin: 5px;
  border: 1px solid #aaa;
  font-family: Monaco, Consolas, Courier New, monospace;
  font-size: 0.8em;
  /* 	overflow: scroll; */
  /*     width: 100%; */
}

.python {
  white-space: pre;
}

code {
  background: var(--pre-background);
  padding: 1px 3px;
  font-family: Monaco, Consolas, Courier New, monospace;
  font-size: 0.8em;
}

kbd{
  padding: 0.0em 0.6em;
  border: 1px solid #ccc;
  font-size: 0.8em;
  font-family:Arial,Helvetica,sans-serif;
  background-color:#f7f7f7;
  color:#333;
  -moz-box-shadow:0 1px 0px rgba(0, 0, 0, 0.2), 0 0 0 2px #ffffff inset;
  -webkit-box-shadow:0 1px 0px rgba(0, 0, 0, 0.2), 0 0 0 2px #ffffff inset;
  box-shadow:0 1px 0px rgba(0, 0, 0, 0.2), 0 0 0 2px #ffffff inset;
  -moz-border-radius:3px;
  -webkit-border-radius:3px;
  border-radius:3px;
  display:inline-block;
  margin:0 0.1em;text-shadow:0 1px 0 #fff;
  line-height:1.4;
  white-space:nowrap;
}

samp
{
  background: var(--pre-background);
  padding: 5px;
  margin: 10px;
  border-radius: 5px;
}

.k, .bp {
  color: #c0c;
}

.nf {
  color: #00d;
}


.sd {
  color: #a44;
}

.placetitle
{
  margin: 0px 2px;
}

.fixed
{
  min-width: 200px;
  padding: 0 15px 0 15px;
}

.small
{
  font-size: 14px;
  /* 	font-size: 0.8em; */
  padding: .5em;
}

.medium
{
  font-size: 20px;
  color: #000;
  vertical-align: middle;
}

.bigger
{
  font-size: 36px;
  vertical-align: middle;
}

.quiet {
  color: #888;
  font-size: 14px;
  padding: .5em;
}

.center {
  text-align: center;
  margin-left: auto ;
  margin-right: auto ;
  margin-top: 10px;
  margin-bottom: 10px;
}

.resume {
  border: 1px solid gray;
  box-shadow: 4px 4px 4px rgba(0,0,0,0.3);
  border-radius: 3px;
  background-image: url('/images/paper_texture_transp.png');
  width: 90%;
}


.grid, .grid div,.grid2, .grid2 div
{
  display: table-cell;
  vertical-align: middle;
  padding: 0px 15px 0px 15px;
}

.wide {
  min-width:830px;
}

div.vline {
  max-width:1px;
  padding:0px;
  margin:15px;
  border-left:solid 1px black;
  /* 	border-right:solid 1px black; */
}

table, td, th
{
  border: 1px solid #999;
  border-collapse:collapse;
  padding: 3px;
  text-align: center;
}

.round
{
  -webkit-border-radius: 10px;
  -webkit-border-top-right-radius: 1px;
  -webkit-border-bottom-left-radius: 1px;
  -moz-border-radius: 10px;
  -moz-border-radius-topright: 1px;
  -moz-border-radius-bottomleft: 1px;
  border-radius: 10px;
  border-top-right-radius: 1px;
  border-bottom-left-radius: 1px;
  border:solid 1px gray;
  width: 100%;
}

.roundmargin
{
  -webkit-border-radius: 20px;
  -webkit-border-top-right-radius: 2px;
  -webkit-border-bottom-left-radius: 2px;
  -moz-border-radius: 20px;
  -moz-border-radius-topright: 2px;
  -moz-border-radius-bottomleft: 2px;
  border-radius: 20px;
  border-top-right-radius: 2px;
  border-bottom-left-radius: 2px;
  /* 	border: ridge 5px gray; */
  border: solid 5px gray;
  width: 150px;
  /* 	width: 19%; */
  padding: 10px 10px 8px 10px;
}


/*
.wrapper-with-intrinsic-ratio {
position: relative;
padding-bottom: 20%;
height: 10px;
width: 350px;
min-width:350px;
max-width:350px;
}
*/
.element-to-stretch {
  position: absolute;
  text-align: justify;
  margin-left: auto ;
  margin-right: auto ;
  /*
  top: 0;
  left: 0;
  */
  margin: auto;
  width: 350px;
  /* 	height: 100%; */


}

.inlineimg {
  float:left;
  margin-right: 10px;
  box-sizing: border-box;
  /*border: ridge 2px #999d8f;*/
}

.rightlineimg {
  float:right;
  margin-left: 10px;
  box-sizing: border-box;
  /*border: ridge 2px #999d8f;*/
}

.floatright {
  float:right;
  margin:30px 10px 30px 10px;
}

.color-swatch {
  position:relative;
  left:20px;
  top:4px;
  height:50px;
  width:58px !important;
  min-width:56px !important;
  max-width:56px !important;
  border: 4px inset #fff;
  padding: 3px !important;
  font-size: 0.9em;
}

.color-swatch-name {
  font-size: 0.8em;
  padding: 5px;
  text-transform: uppercase;
}

.cube {
  display: none;
}

#aliases {
  display: none;
}

.bashrc pre {
  display: block;
  /* 	display: none; */
}

a:hover.hoveract + .cube  {
  display: inline;
  color: #000;
  background-color: white;
  padding: 0px 5px 0px 5px;
  margin: 0px 2px 0px 2px;
}

.nopad {
  padding: 0 !important;
}

.smallmargin {
  margin: 5px;
}


#site_map {
  font-size: 1.2em;
}

#map {
  width: 600px;
  height: 450px;
}
.mapframe {
  width:600px;
  height:450px;
}

figure {
  display: table;
  width: 80px;
}

figcaption{
  display: table-row;
  vertical-align: bottom;
}

caption {
  vertical-align: bottom;
}

#social {
  float:right;
  padding: 8px 10px 0 0;
}

.underl {
  text-decoration: underline;
}

.underline {
  border-bottom: 2px solid black;
}

.navnarrow {
  display: none;
}

/*
.showdevice {
display: none;
}
*/

.ans {
  border:1px solid #aaa;
  background-color: #fff;
  padding: 2px 4px;
}


.box{
  display: none;
  width: 100%;
}

a:hover + .box,.box:hover{
  display: block;
  position: relative;
  z-index: 100;
}

.thumbnail{
  position: relative;
  z-index: 0;
}

.thumbnail:hover{
  background-color: transparent;
  z-index: 50;
}

.thumbnail span{ /*CSS for enlarged image*/
  position: absolute;
  background-color: white; /* lightyellow; */
  padding: 5px;
  left: -1000px;
  /* border: 1px solid gray; */
  box-shadow: 1px 1px 5px rgba(150,150,150,0.5);
  visibility: hidden;
  color: black;
  text-decoration: none;
}

.thumbnail span img{ /*CSS for enlarged image*/
  border-width: 0;
  padding: 2px;
}

.thumbnail:hover span{ /*CSS for enlarged image on hover*/
  visibility: visible;
  top: 0;
  left: 60px; /*position where enlarged image should offset horizontally */
}

.w50 {
  width: 48%;
}

/*
.toggle-canvas {
display: none;
left: -999;
}
*/

#showLeftPush, #showLeft {
  display: none;
  margin-top:5px;
  z-index: 10000;
}

#KGlogo {
  height: 60px;
  width: 60px;
  margin: 10px;
}
#social img {
  height: 30px;
  width: 30px;
}

#petAnim {
  width: 355px;
  height: 194px;
}

.slides img {
  width: 360px;
  height: 270px;
}

#resumehead {
  text-align:right;
  margin:20px 40px 0 0;
}


.red {
  color: red;
}
.orange {
  color: orange;
}
.yellow {
  color: yellow;
}

.ttip {
  display: inline;
  position: relative;
  cursor: pointer;
  vertical-align: top;
  text-decoration:none;
}
.ttip:hover:after{
  background: #3a4c69;
  /*spring*/
  background: rgba(153, 109, 143, 0.8);
  /*autumn*/
  background: rgba(165, 104, 104, 0.8);
  background: rgba(92, 127, 66, 0.8);
  border-radius: 5px;
  bottom: 26px;
  color: #fff;
  content: attr(data-tooltip);
  left: -50%;
  padding: 5px 15px;
  position: absolute;
  z-index: 98;
  width: 200px;
  text-align: left;
  font-size: 0.9em;

  position: absolute;
  left: 65%;
  margin-left: -80px;
  padding: 7px;
  width: 160px;
  font-size: 14px;
  line-height: 1.2;


}
.ttip:hover:before{
  border: solid;
  /*border-color: #333 transparent;*/
  /*spring*/
  border-color: rgba(153, 109, 143,0.8) transparent;
  /*autumn*/
  border-color:  rgba(165, 104, 104,0.8) transparent;
  border-color: rgba(92, 127, 66, 0.8) transparent;
  border-width: 6px 6px 0 6px;
  bottom: 20px;
  content: "";
  left: 50%;
  position: absolute;
  z-index: 99;
}

#nextup {
  border:1px solid gray;
}

#nextup ul {
  list-style-type: none;
  padding-left:15px;
  display: inline-block;
}


.coldiv {
  column-count: 3;
  column-gap: 10px;
  width: 95%;
}


.grid-container {
  display: grid;
  grid-template-columns: 1fr 2fr 3fr;
  grid-gap: 20px;
  grid-template-rows: 100px 200px;
}

.grid-container2 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 20px;
}

.grid-container div {
  background: #aabbff;
}
.grid-container2 div {
  background: pink;
}

.centered {
  margin: 0 auto;
  text-align: center;
}

.clock_display {
  font-family: monaco, monospace;
  font-size: 3em;
}

.clockdiv {
  margin: 40px;
}

.clockdiv select, .clockdiv startclock {
  height: 30px;
  font-size: 0.9em;
}

.MathJax {
  /* font-size: 60% !important; */
    font-size: 0.9em !important;
}

button {
  padding:10px;
  border-radius:8px;
  border-top: 1px solid #aaa;
  border-left: 1px solid #aaa;
  border-right: 1px solid gray;
  border-bottom: 1px solid gray;
  display:inline-block;
  box-sizing: border-box;
  text-decoration:none;
  /* text-transform:uppercase; */
  font-weight:300;
  color:#222;
  background-color:#577979;
  background-color:#c5e5eb;
  /* box-shadow:inset 0 -0.4em 0 -0.35em rgba(0,0,0,0.17); */
  box-shadow: 0 1px #999;
  text-align:center;
  position:relative;
  text-decoration:none;
  font-size:1.0em;
  outline: none;

}
/* button a{
text-decoration:none;
  font-size:1.3em;
} */

button:hover{

  background-color:#a1cad1;
}
button:active {
  position: relative;
  transform: translateY(2px);
}

/* @media only screen and (max-width: 980px), only print { */
@media only screen and (max-device-width: 920px) {

  body {
    min-width:100px;
  }
  header
  {
    height: 40px;
  }
  header > h1 {
    letter-spacing: 0.8px;
    font-size: 1.2em;
    margin-left: 30px;
    padding-top: 0px;
  }

  #KGlogo {
    height: 0px;
    width: 0px;
  }
  #social img {
    height: 20px;
    width: 20px;
    display:none;
  }
  #petAnim {
    width: 100%;
    height: 100%;
  }


  section {
    padding: 0px;
    margin: 0px auto;
    width: 98%;
    text-align:left;
  }

  .content {
    box-shadow: none;
    margin: 0;
    padding: 5px;
    padding-top: 0px;
    border: none;
    overflow:visible;
  }

  ul li {
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .floatcolleft
  {
    padding-right:2px; float:none;width: 98%;
  }
  .floatcolright
  {
    padding-left:2px;float:none;width: 98%; border-left: none;
  }

  .wide {
    min-width:230px;
  }

  .w50 {
    width: 100%;
  }

  .slides img {
    width: 180px;
    height: 135px;
    width: 90%;
    height: 100%;
  }

  figure {
    display: block;
    width: 85%;
    margin: 0px 0px 0px 15px;
  }

  .color-swatch {
    height:90px;
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
  }

  #colorcontainer {
    font-size: large;
  }

  #resumehead {
    text-align:left;
    margin:0px 0px 10px 0px;
  }
  .resume {
    border: none;
    box-shadow: none;
    border-radius: 0px;
    background-image: none;
    width: 100%;
  }

  .tableholder div
  {
    display: block;
  }
  .tableholder3 div
  {
    display: block;
    width:100%;
  }

  .coldiv {
    column-count: 1;
    column-gap: 10px;
    width: 95%;
  }

  pre {
    overflow: scroll;
  }

  .grid2, .grid2 div
  {
    display: block;
  }
  .element-to-stretch {
    position: relative;
  }

  .roundmargin
  {
    -webkit-border-radius: 10px;
    -webkit-border-top-right-radius: 2px;
    -webkit-border-bottom-left-radius: 2px;
    -moz-border-radius: 10px;
    -moz-border-radius-topright: 2px;
    -moz-border-radius-bottomleft: 2px;
    border-radius: 10px;
    border-top-right-radius: 2px;
    border-bottom-left-radius: 2px;
    /* 	border: ridge 5px gray; */
    border: none;
    width: 150px;
    /* 	width: 19%; */
    padding: 0px;
  }


  .inlineimg {
    /*  float:none;*/
  }

  .rightlineimg {
    float:none;
  }

}


@media only screen and (max-width: 920px) {
  body {
    /* font-size:large; */
    min-width:660px;
    font-size: large;
  }
  .topNav {
    margin-top: 42px;
  }

  nav > ul li.submenu a {
    font-size: 1.0em;
  }
  .floatcolleft
  {
    padding-right:2px; float:left;width: 98%;
  }
  .floatcolright
  {
    padding-left:20px;float:right;width: 98%; border-left: none;
  }
}

@media only print {
  body {
    font-size:small;
    min-width:660px;
    border: none;
  }
  body > *, nav, .navnarrow, .content, .floatcolleft, .floatcolright {
    border: none;
  }
  nav, nav > * {
    display: none;
  }
}
