:root {
	--mygreen: #00b140;
	--myorange: #b06c00;
	--mypurple: #5e00b0;
	--mysilver: #dedede
}

a.bibtexcopylink{
    color: var(--mypurple);
    cursor: url("http://tomcuchta.com/img/copy-solid.png"), auto;
}
div.logobox{
	vertical-align:top;
	display:inline-block;
	text-align:center;
	width:120px;
}
.logocaption{
	display:block;
	text-size:4pt;
}

input[type='checkbox'] {
  display: none;
}

.lbl-toggle {
  display: block;

  font-weight: bold;
  font-family: monospace;
  font-size: 1.2rem;
  text-transform: uppercase;
  text-align: center;

  padding: 1rem;

  color: #000000;
  background-color: var(--mysilver);

  cursor: pointer;

  border-radius: 7px;
  transition: all 0.25s ease-out;
}

.lbl-toggle::before {
  content: ' ';
  display: inline-block;

  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid currentColor;

  vertical-align: middle;
  margin-right: .7rem;
  transform: translateY(-2px);

  transition: transform .2s ease-out;
}


.collapsible-content {
  max-height: 0px;
  overflow: hidden;

  transition: max-height .25s ease-in-out;
}


.toggle:checked + .lbl-toggle + .collapsible-content {
  max-height: 500vh;
}


.toggle:checked + .lbl-toggle::before {
  transform: rotate(90deg) translateX(-3px);
}

.toggle:checked + .lbl-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}


.codebox {
    color: #AA80FF;
    font-family: monospace;
    font-size: 14px;
    background-color: #131313;
    width: 95%;
    overflow: auto;
    margin: 0px 0px 25px !important;
    padding: 7px;
    white-space: pre;
}
@font-face {
  font-family: "Computer Modern";
  src: url('http://tomcuchta.com/fonts/cmunss.otf');
}
@font-face {
  font-family: "Computer Modern";
  src: url('http://tomcuchta.com/fonts/cmunsx.otf');
  font-weight: bold;
}
@font-face {
  font-family: "Computer Modern";
  src: url('http://tomcuchta.com/fonts/cmunsi.otf');
  font-style: oblique;
}
@font-face {
  font-family: "Computer Modern";
  src: url('http://tomcuchta.com/fonts/cmunbxo.otf');
  font-weight: bold;
  font-style: oblique;
}


body {
 background-color: var(--mysilver);
 font-family: "Computer Modern", sans-serif;
}

.left_col, .descrip_col, .right_col, .material_col, .contact_col, .wrapper {
	width: 100%;
}

.left_col {
	margin: 0px 0px 25px 0px;
}

.quotebox {
	width:80%;
	border-style: inset;
	border-color: #336699;
	margin: 25px 0px 25px 0px !important;
	padding: 7px;
}

.container {
	display: flex;
	flex-flow: row wrap;
}

@media (min-width:1500px) {
	.quotebox {
		width:30%;
	}
	.left_col {
		width: 50%;
		float: left;
	}
	.right_col {
		width: 50%;
		float: right;
	}
	.descrip_col, .contact_col {
		width: 30%;
		float: left;
	}
	.material_col {
		width: 65%;
		float: right;
	}

}
a.main:link {
    color: #336699;
}

a.main:visited {
    color: #336699;
}

a.main:hover {
    color: var(--myorange);
}

a:link {
	color: #336699;
}
a:visited {
	color: #336699;
}
a:hover {
	color: var(--myorange);
}
.pubnames {
	font-size: 19pt;
	color: var(--mypurple);
}


table.sched, tr.sched, th.sched, td.sched, td.course, td.help, td.meeting {
    border: 1px solid black !important;
    border-color: black;
    text-align:center;
    }
    tr.sched {
	border:solid;
	border-width: 1px 0;
    }
    td.sched a {
        display:block;
        width:100%;
        height:100%;
    }
    td.course {
        background:#336699;
	color:#ffffff;
    }
    td.prepclass {
      background:#692337;
      color:#ffffff;
    }
    a.facsen {
      color:#ffffff;
    }
    a.facsen:hover {
      color:var(--myorange);
    }
    td.officehour {
	     background:#923dd3;
	      color:#ffffff;
    }
    td.rocket{
      background:#9fd629;
    }
    td.help{
      background-color: var(--mygreen);
      color:#ffffff;
    }
    td.meeting{
      background:#d92558;
      color:#ffffff;
    }
    td.reu{
      background:#7025be;
      color:#ffffff;
    }
    td.grant{
	background:#377dcc;
	color:#ffffff;
    }
    a.courselink {
      color:#ffffff;
    }
    td.travel{
      background:#a8531e;
      color:#ffffff;
    }
    td.wvu{
      background:#002855;
      color: #EAAA00;
    }
    td.radio, a.radio{
      background:#FC6E00;
      color:#FFFFFF;
    }
    a.wvu{
      color:#EAAA00;
    }
    a.wvu:hover{
      color: var(--myorange);
    }
td.nosched{
  background:#000000;
  color:#ffffff;
}
table.contact, th.contact, td.contact {
    border-style: none;
    }

    table.courses, th.courses, td.courses {
        border: 1px solid black;
        text-align: center;
        padding:7px;
    }

    td.courses:hover a {
        background-color:#31deac;
        color:#31deac;
    }

    td.courses a{
        display:block;
        width:100%;
        height:100%
    }
a.table:link{color:black;text-decoration:none;}
a.table:visited{color:black;text-decoration:none;}
a.table:hover{color:#efefef;text-decoration:none;}
a.courselink:hover{
  color: var(--myorange);
}
.nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: var(--mysilver);
    text-align: center;
}

.nav li.nav {
    display: inline-block;
    margin-right: -4px;
}

.nav a, .dropbtn {
    display: block;
    color: #336699;
    padding: 14px 16px;
    text-decoration: none;
}

.nav a:hover, dropdown:hover .dropbtn {
    background-color: #336699;
    color: #bcbcbc;
}

.nav li.dropdown {
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    box-shadow: 0px 8px 16px 0px #cccccc;
    background-color: #e3e3e3;
}

.dropdown-content a {
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: center;
}

.dropdown-content a:hover {
    background-color: #31deac;
}

.dropdown:hover .dropdown-content {
     display: block;
}

hr {
    display: block;
    margin-top:0.5em;
    margin-bottom:0.5em;
    margin-left:auto;
    margin-right:auto;
    border-style:inset;
    border-width:1px;
}

span.Contact {
    text-decoration: underline;
    font-weight: bold;
    color: #000000;
    font-variant: small-caps;
    font-size: 110%;
}

h1 {
    font-size: 250%;
    color: #ff3b73;
    font-weight: bold;
    text-align: center;
    }

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

h3 {
    font-size: 125%;
   }

a.facsen {

}
div.grid {
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}

a.grid {
display: inline-block;
width:calc(50%-4px);
margin-bottom: 50px;
text-decoration: none;
color: black;
}

@media screen and (min-width: 1000px) {
	a.grid {
	width: calc(20% - 6.4px);
	}
}

figure.grid {
    margin:0;
    overflow: hidden;
}

figcaption.grid {
    margin-top: 15px;
}

img.grid {
  border: none;
  max-width: 100%;
  height: 150px;
  display: block;
  margin: 0 auto;
  background: #ccc;
  transition: .2s ease-in-out;
}

img.grid:hover {
  opacity:.5;
}
.specialsession, a.specialsession{
	font-weight:bold;
	color:#000000;
	text-decoration: underline;
}
a.conflink{
	color:#336699;
}
a.conflink:hover,a.confphoto:hover{
	color: var(--myorange);
}
a.confphoto{
	color:#336699;
}
