@import url('https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,400;0,500;0,600;1,500;1,600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Ubuntu+Mono&display=swap');

body {
  background-color: #fff;
  padding:0px;
  font: 16.0px/1.5 Crimson Pro, serif; 
  color:#595959;
  font-weight:400;
  margin:0
}

.pub-row {
  display: flex; 
  align-items: center;}

.social-icons a{
  display:inline-block;
  height:2.4rem;
  width:2.4rem;
  background-color:transparent;
  color:#043361!important;
  border-radius:100%;
  text-align:center;
  font-size:1.15rem;
  line-height:2.5rem;
  margin-right:1rem}

.social-icons a:last-child{margin-right:0}.social-icons a:hover{background-color:white;
    color:black;
    transform: scale(1.2)}
    /*
    .social-icons a:after {
        content: '';
        display: block;
        margin: 0px;
        height: 1px;
        width: 0px;
        background: transparent;
        transition: width .5s ease, background-color .5s ease;
      }
      .social-icons a:hover:after {
        width: 100%;
        background: #337ab7;
      }
     */

.icon-button{
  background-color:white;
  border-radius:3.6rem;
  cursor:pointer;
  display:inline-block;
  font-size:2.0rem;
  height:3.6rem;
  line-height:3.6rem;
  margin:0 5px;
  position:relative;
  text-align:center;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;width:3.6rem}

.icon-button span{
  border-radius:0;
  display:block;
  height:0;
  left:50%;
  margin:0;
  position:absolute;
  top:50%;
  -webkit-transition:all 0.3s;
  -moz-transition:all 0.3s;
  -o-transition:all 0.3s;
  transition:all 0.3s;
  width:0}

.icon-button:hover span{
  width:3.6rem;
  height:3.6rem;
  border-radius:3.6rem;
  margin:-1.8rem}

.twitter span{
  background-color:#4099ff}

.facebook span{
  background-color:#4286f4}

.linkedin span{
  background-color:#0077B5}

.github span{
  background-color:#000}

email {
    font-size: 14px;
    font-family: "Ubuntu Mono";
}

.icon-button i{
  background:none;
  color:white;
  height:3.6rem;
  left:0;
  line-height:3.6rem;
  position:absolute;
  top:0;
  -webkit-transition:all 0.3s;
  -moz-transition:all 0.3s;
  -o-transition:all 0.3s;
  transition:all 0.3s;
  width:3.6rem;
  z-index:10}

.icon-button .icon-twitter{
  color:#4099ff}

.icon-button .icon-facebook{
  color:#4286f4}

.icon-button .icon-github{
  color:#000;}

.icon-button .icon-linkedin{
  color:#0077B5}

.icon-button:hover .icon-twitter,.icon-button:hover .icon-facebook,.icon-button:hover .icon-github,.icon-button:hover .icon-linkedin{color:white}

autocolor{
  color:#595959;
}

lightonly {
  visibility: visible;
}

darkonly {
  visibility: hidden;
}

education {
    font-weight: 500;
    font-size: 115%;
  }
papertitle {
    font-weight: 600;
    font-size: 100%;
  }

  .image {
    border-radius: 0.35em;
    border: 0;
    display: inline-block;
    position: relative;
  }

    .image:before {
      -moz-transition: opacity 0.2s ease-in-out;
      -webkit-transition: opacity 0.2s ease-in-out;
      -ms-transition: opacity 0.2s ease-in-out;
      transition: opacity 0.2s ease-in-out;
      border-radius: 0.35em;
      content: '';
      display: block;
      height: 100%;
      left: 0;
      opacity: 0.5;
      position: absolute;
      top: 0;
      width: 100%;
    }

    .image.avatar {
      border-radius: 100%;
    }

      .image.avatar:before {
        display: none;
      }

      .image.avatar img {
        border-radius: 100%;
        width: 45%;
        padding: 20px;
      }

    #header .image.avatar {
      margin: 0 0 1em 0;
      width: 8.00em;
    }

h3, h4, h5, h6 {
  font-weight: 600;
  color:#043361;
  margin:0 0 20px;
}

h1 {
  font-weight: 500;
  color:#043361;
  margin:0 0 20px;
}

h2 {
  color:#043361;
  font-weight: 500;
  margin:2px 0px 15px;
  font-size: 157%;
}

p, ul, ol, table, pre, dl {
  margin:0 0 20px;
}

h1, h2, h3 {
  line-height:1.1;
}

h1 {
  font-size:28px;
}

a {
  color:#39c;
  text-decoration:none;
}

a:hover {
  color:#069;
}

a small {
  font-size:11px;
  color:#777;
  margin-top:-0.3em;
  display:block;
}

a:hover small {
  color:#777;
}

.wrapper {
  width:960px;
  margin:0 auto;
}

blockquote {
  border-left:1px solid #e5e5e5;
  margin:0;
  padding:0 0 0 20px;
  font-style:italic;
}

code, pre {
  font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
  color:#333;
}

pre {
  max-width:500px;
  padding:8px 15px;
  background: #f8f8f8;
  border-radius:5px;
  border:1px solid #e5e5e5;
  overflow-x: auto;
}

table {
  width:100%;
  border-collapse:collapse;
}

th, td {
  text-align:left;
  padding:5px 10px;
  border-bottom:1px solid #e5e5e5;
}

dt {
  color:#444;
  font-weight:500;
}

th {
  color:#444;
}

img {
  max-width:100%;
}

header {
  width:232px;
  float:left;
  position:fixed;
  -webkit-font-smoothing:subpixel-antialiased;
  padding-top:4.0em;
  text-align:center
}



header ul {
  list-style:none;
  height:40px;
  padding:0;
  background: #f4f4f4;
  border-radius:5px;
  border:1px solid #e0e0e0;
  width:270px;
}

header li {
  width:89px;
  float:left;
  border-right:1px solid #e0e0e0;
  height:40px;
}

header li:first-child a {
  border-radius:5px 0 0 5px;
}

header li:last-child a {
  border-radius:0 5px 5px 0;
}

header ul a {
  line-height:1;
  font-size:11px;
  color:#999;
  display:block;
  text-align:center;
  padding-top:6px;
  height:34px;
}

header ul a:hover {
  color:#999;
}

header ul a:active {
  background-color:#f0f0f0;
}

strong {
  color:#222;
  font-weight:500;
}

header ul li + li + li {
  border-right:none;
  width:89px;
}

header ul a strong {
  font-size:14px;
  display:block;
  color:#222;
}

section {
  width:650px;
  float:right;
  padding-top:4.0em;
  padding-bottom:50px;
}

small {
  font-size:11px;
}

hr {
  border:0;
  background:#e5e5e5;
  height:1px;
  margin:0 0 20px;
}

footer {
  width:232px;
  float:left;
  position:fixed;
  bottom:30px;
  -webkit-font-smoothing:subpixel-antialiased;
  text-align:center;
}

@media print, screen and (max-width: 960px) {

  .pub-row {
  display: flex; 
  align-items: center;}

  div.wrapper {
    width:auto;
    margin:0;
  }


  header, section, footer {
    float:none;
    position:static;
    width:auto;
  }

  header {
    padding-right:320px;
  }

  section {
    border:1px solid #e5e5e5;
    border-width:1px 0;
    padding:20px 0;
    margin:0 0 20px;
  }

  header a small {
    display:inline;
  }

  header ul {
    position:absolute;
    right:50px;
    top:52px;
  }


   .image.avatar img {
        border-radius: 100%;
        width: 117px;
        padding:20px;
      }
  #head1o2 {
    visibility: hidden;
  }
      
  #head2o2 {
    visibility: hidden;
  }
  
}

@media print, screen and (max-width: 960px) {
  body {
    word-wrap:break-word;
    padding:15px;
  }

  .pub-row {
  display: flex; 
  align-items: center;}

  header {
    padding:0;
  }

  header ul, header p.view {
    
  }

  pre, code {
    word-wrap:normal;
  }
}

@media print, screen and (max-width: 480px) {

  .pub-row {
    display: block; 
    align-items: center;}

  body {
    padding:15px;
  }

  header ul {
    width:99%;
  }

  header li, header ul li + li + li {
    width:33%;
  }

  .image.avatar img {
      border-radius: 100%;
      width: 95px;
      padding:20px;
  }
  #head1o2 {
    visibility: hidden;
  }
  
  #head2o2 {
    visibility: hidden;
  }

}

@media print {
  body {
    padding:0.4in;
    font-size:12pt;
    color:#444;
  }
}

.biblink {
  text-decoration:none;
  display: inline;
  margin-right: 0px;
}

.fakelink {
  text-decoration: none;
  cursor: pointer;
}

.bibref {
  font-size: 70%;
  margin-top: 10px;
  margin-left: 0px;
  display:none;
  font-family: monospace;
}


/* Local adaptation of yaoyao-liu/minimal-light (CC0): single-page academic profile.
   White-only appearance; existing academicpages post layouts remain unchanged. */
:root { color-scheme:light; }
*,*:before,*:after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:#fff!important; color:#4b4b4b; font-size:17px; line-height:1.48; -webkit-font-smoothing:antialiased; }
.wrapper { width:960px; }
header { width:240px; padding-top:3.4em; }
section { width:658px; padding-top:3.1em; padding-bottom:44px; }
h1, h2, h3 {color:#17395b;}
h1 { font-size:29px; margin:0 0 14px; }
h2 { font-size:24px; margin:0 0 13px; line-height:1.2; }
p,ul,ol { margin:0 0 13px; }
section ul { padding-left:1.2em; margin-top:0; }
section li { margin-bottom:7px; }
section > h2:not(:first-child) { margin-top:25px; }
a {color:#276eab;}
a:hover { color:#0d477a; text-decoration:underline; text-underline-offset:2px; }
strong { color:#252525; font-weight:600; }
.image.avatar { display:block; width:160px; margin:0 auto 13px; }
.image.avatar img { width:160px; height:160px; padding:0; display:block; border-radius:100%; object-fit:cover; object-position:center 25%; }
.profile-position { font-size:16px; line-height:1.4; margin:0 0 5px; color:#3c4652; }
.profile-affiliation {font-weight:600;display:block;margin-top:5px;}
.profile-location {font-size:14px;margin:5px 0 13px;color:#687078;}
.profile-email {font-size:13px;color:#525a61;display:block;overflow-wrap:anywhere;margin-top:8px;}
.social-icons {display:flex;justify-content:center;flex-wrap:wrap;gap:5px;align-items:center;margin:15px 0 0;}
.social-icons a {display:inline-flex;align-items:center;justify-content:center;width:37px;height:37px;line-height:1;font-size:20px;margin:0!important;color:#17395b!important;}
.social-icons a:hover {color:#276eab!important;background:#f5f7f9;text-decoration:none;}
.social-icons i {line-height:1;}
.profile-quicklinks {font-family:Arial,sans-serif;font-size:12px;margin:16px auto 0;line-height:1.7;white-space:nowrap;}
.profile-quicklinks a {margin:0 6px;}
.profile-quicklinks .separator {color:#b4bbc1;}
.site-footnote {font-size:11px;color:#858585;margin:24px 0 0;}
.site-footnote a {color:#6d7b85;}
.skip-link {position:absolute;left:-999px;top:0;background:#fff;padding:8px;z-index:99;}
.skip-link:focus {left:10px;}
.section-content {font-size:17px;}
.section-content a {text-decoration:none;}
.section-content a:hover {text-decoration:underline;}
.section-content p {line-height:1.49;}
.section-content li {line-height:1.49;}
.section-content h2+ p {margin-top:0;}
@media print, screen and (max-width:960px) {
  .wrapper { width:auto; }
  header,section,footer { float:none;position:static;width:auto;}
  header { padding:15px 0 19px; }
  section { border:1px solid #e8e8e8;border-width:1px 0 0;padding:22px 0 25px;margin:0; }
  .image.avatar {margin:0 auto 12px;}
  .image.avatar img {width:125px;height:125px;}
}
@media print, screen and (max-width:480px) {
  body {padding:14px 17px;font-size:16px;}
  .section-content {font-size:16px;}
  .section-content h2 {font-size:23px;}
  h1 {font-size:28px;}
  header {padding:10px 0 17px;}
  .profile-quicklinks {white-space:normal;}
}


/* Recent Highlights: paper rows matching Minimal Light's publication-gallery style. */
.featured-publications { margin-top: 7px; }
.publication-row {
  display: grid;
  grid-template-columns: 174px minmax(0,1fr);
  gap: 21px;
  align-items: start;
  margin: 0 0 29px;
}
.publication-row:last-child { margin-bottom: 19px; }
.publication-figure {
  display: block;
  position: relative;
  width: 174px;
  height: 117px;
  border-radius: 4px;
  overflow: visible;
  text-decoration: none!important;
  flex: none;
}
.publication-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-color: #f6f8f9;
  border-radius: 4px;
  border: 1px solid #edf0f2;
  box-shadow: 0 2px 5px rgba(20,34,45,.13);
}
.publication-badge {
  position: absolute;
  top: -6px;
  left: 0;
  max-width: 100%;
  padding: 2px 9px 3px;
  border-radius: 1px;
  background: #063d77;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  font-family: Arial, sans-serif;
  letter-spacing: .01em;
  line-height: 1.2;
  pointer-events: none;
}
.publication-info { min-width: 0; }
.publication-title {
  display: block;
  color: #268ac7!important;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.34;
  margin: -2px 0 5px;
}
.publication-title:hover { color: #116095!important; }
.publication-authors {
  font-size: 14px;
  line-height: 1.45!important;
  margin: 0 0 3px!important;
}
.publication-authors strong { color: #252525; font-weight: 700; }
.publication-venue {
  font-size: 14px;
  line-height: 1.43!important;
  margin: 0 0 7px!important;
}
.publication-links { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.publication-links a {
  display: inline-block;
  border: 1px solid #333;
  border-radius: 0;
  padding: 1px 7px 2px;
  line-height: 1.15;
  color: #242424!important;
  font: 11px/1.15 Georgia, "Times New Roman",serif;
  text-decoration: none!important;
}
.publication-links a:hover { background: #eaf3fa; border-color: #2079b3; color: #07547e!important; }
@media (max-width: 680px) {
  .publication-row { grid-template-columns: 130px minmax(0,1fr);gap: 15px; margin-bottom: 25px; }
  .publication-figure { width: 130px;height: 96px; }
  .publication-title { font-size: 16px; }
  .publication-authors,.publication-venue {font-size: 13px;}
}
@media (max-width: 420px) {
  .publication-row { grid-template-columns: 105px minmax(0,1fr);gap: 12px;margin-bottom: 22px; }
  .publication-figure { width: 105px;height: 90px; }
  .publication-title { font-size: 15px; }
  .publication-badge { font-size: 9px;padding: 2px 5px; }
  .publication-links a { font-size: 10px; padding: 2px 5px; }
}
