@font-face {
    font-family: 'Linux Libertine'; /* normal */
    src: url('/static/fonts/LinLibertine_R.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Linux Libertine'; /* italic */
    src: url('/static/fonts/LinLibertine_RI.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'Linux Libertine'; /* bold */
    src: url('/static/fonts/LinLibertine_RB.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Linux Libertine'; /* bold */
    src: url('/static/fonts/LinLibertine_RBI.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}
body {
    font-family: Linux Libertine;
    max-width: 800px;
    margin: 1em auto;
    color: #2e3436;
}
h1, h2, h3, h4, h5, h6{
    font-family: Noto Sans;
    font-weight: 700;
}
hr {
    border: 0;
    border-top: 1px solid rgb(192, 192, 192);
}
button{
    font-family: Linux Libertine;
    background-color: rgb(255,255,255);
    border: 1px solid rgb(192,192,192);
}
button:hover{
    font-family: Linux Libertine;
    background-color: rgb(0,0,0,0.1);
}


@counter-style paren-decimal {
  system: extends decimal;
  prefix: "(";
  suffix: ") ";
}
@counter-style paren-lower-alpha {
  system: extends lower-alpha;
  prefix: "(";
  suffix: ") ";
}
ol {
  list-style: paren-decimal;
}
ol[type="a"] {
  list-style: paren-lower-alpha;
}

mjx-container {
    display: inline-flex;
    overflow-x: auto;
    overflow-y: hidden;
    max-width: 100%;
}

div.header, div.content, div.footer {
    padding: 1em;
}
div.box{
    background-color: #ffffff;
}
div.header{
    padding: 0.1em 0.6em;
    margin-bottom: 0em;
}


.menu {
  overflow: hidden;
  background-color: #dddddd;
  padding: 0em 0em 0em 0em;
  font-size: 16px;
  font-weight: bold;
}

/* Links inside the menu */
.menu a {
  color: #000000;
  float: left;
  text-align: center;
  padding: 0.8em 0.8em;
  text-decoration: none;
}

/* The dropdown container */
.dropdown {
  float: left;
  overflow: hidden;
}

/* Dropdown button */
.dropdown .dropbtn {
  background-color: #dddddd;
  border: none;
  outline: none;
  padding: 0.8em 0.8em;
  font-family: inherit; /* Important for vertical align on mobile phones */
  font-size: inherit;
  font-weight: inherit;
  margin: 0; /* Important for vertical align on mobile phones */
}

/* Add a red background color to menu links on hover */
.menu a:hover, .dropdown:hover .dropbtn {
  background-color: #eeeeee;
}

/* Dropdown content (hidden by default) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
  float: none;
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  text-align: left;
}

/* Add a grey background color to dropdown links on hover */
.dropdown-content a:hover {
  background-color: #ddd;
}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
  display: block;
}

.dropbtn::after{
    content: " ▼";
}

.dropdown:hover > .dropbtn::after{
    content: " ▲";
}



div.footer {
    color: gray;
    text-align: center;
    font-size: small;
}
div.footer a {
    color: gray;
    text-decoration: none;
}
pre {
    border: dotted black 1px;
    background: #eeeeec;
    font-size: small;
    padding: 1em;
}
a:hover{
    text-shadow: 0px 0px 4px rgba(0,0,255,0.1)
}
a:visited:hover{
    text-shadow: 0px 0px 4px rgba(128,0,128,0.1)
}
a.hash-link {
    padding-left: 7px;
}
a.hash-link:link, a.hash-link:visited {
    opacity: 10%;
}
a.hash-link:hover, a.hash-link:active {
    opacity: 100%;
    text-decoration: none;
}


details summary::-webkit-details-marker {
  display:none;
}
details{
    position: relative;
}
details summary{
    padding: 6px 0;
    display: flex;
    cursor: pointer;
    list-style: none;
    border-top: 1px solid rgb(192, 192, 192);
    border-bottom: 1px solid rgb(192, 192, 192);
}
details + details > summary{
    border-top: none;
}
details > summary:hover {
    background-color: rgb(0,0,0,0.1);
} 
[open]::details-content{
    border: 1.5px solid #a00000;
    padding: 12px 12px 12px 12px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
div.paper-table{
    display: flex;
}
div.paper-header{
    flex-grow: 1;
}
div.paper-title{
    font-size: 1em;
    font-family: Noto Sans;
    font-weight: 700;
    flex-grow: 1;
}
div.paper-link{
    width: fit-content; 
    align-content:center;
}
div.problem-box {
    background-color: #ffffff;
    border: 2px solid #a00000;
    padding: 15px 15px 15px 15px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
div.problem-box :last-child{
    margin-bottom: 0em;
}

details#paper-header > summary {
    padding: 10px 0;
}
details#paper-header > summary:hover {
    background-color: rgb(0,0,0,0.1);
}  
div.details-content > p{
    margin-top: 0em;
}
div.details-content :last-child{
    margin-bottom: 0em;
}

div.homepage-box{
    display: grid;
    grid-template-columns: minmax(450px,0.7fr) minmax(148px,0.3fr);
    column-gap: 4px;
}

div.homepage-bio{
    align-content: center;
}

div.homepage-photo{
    align-content: center;
}

.starred {
  position: relative;
}

.starred::before {
  content: "★";
  position: absolute;
  left: -1.5em;      /* sits in the left margin/gutter */
  top: 50%;
  transform: translateY(-50%);
}

@media (max-width: 810px) {
  .starred::before {
    position: static;
    display: inline-block;
    transform: none;
    margin-right: 0.4em;
  }
}

@media (max-width: 600px) {
  div.homepage-box {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  div.homepage-photo{
    max-width: 50%;
    place-self: center;
  }
}