/* Fonts */
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400|Roboto+Mono:300&display=swap');

/* Bootstrap variables */
:root {
  --bs-blue: #1C58A2;
  --bs-indigo: #271C72;
  --bs-purple: #CF4889;
  --bs-pink: #E3A1C2;
  --bs-orange: #D96A31;
  --bs-yellow: #F7C544;
  --bs-green: #409237;
  --bs-teal: #62748A;
  --bs-cyan: #91BFE6;
  --bs-red: #CE2B22;
  --bs-success: #409237;
  --bs-success-rgb: 64,146,55;
  --bs-info: #FFFEA6;
  --bs-info-rgb: 255,254,166;
  --bs-warning: #F7C544;
  --bs-warning-rgb: 247,197,68;
  --bs-danger: #CE2B22;
  --bs-danger-rgb: 206,43,34;
  --bs-light: #E4E4E4;
  --bs-light-rgb: 228,228,228;
  --bs-dark: #000;
  --bs-dark-rgb: 0,0,0;
  --bs-body-bg: #E4E4E4;
  --bs-body-color: #000;
  --bs-body-font-family: 'Open Sans', sans-serif;
  --bs-body-font-size: 20px;
  --bs-body-font-weight: 300;
  --bs-body-line-height: 150%;
  --bs-body-rgb: 0,0,0;
  --bs-primary: #1C58A2;
  --bs-primary-rgb: 28,88,162;
  --bs-secondary: #558CC1;
  --bs-secondary-rgb: 85,140,193;
}

/* Base styles */
h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 125%;
}
sup, sub {
  font-size: 66%;
}
a.nav-link, a.dropdown-item, a.btn {
  letter-spacing: 0.1em;
}
a.navbar-brand {
  margin-right: 12px;
  padding: 0;
}
img.lrc-logo {
  content: url(/lrc.png);
  float: left;
  height: 30px;
  width: 60px;
}
code, kbd, pre, tt {
  font-family: 'Roboto Mono', monospace;
  font-weight: 300;
}
a:link {
  color: var(--bs-primary);
  font-weight: 400;
}
a:hover {
  color: #558CC1;
}
a:visited {
  color: var(--bs-primary);
}
a.btn-primary {
  color: white;
}
nav.navbar {
  padding: 0 50px;
}

.lrc-bg-bright-blue {
  background-color: #174391;
  color: white;
}
.lrc-bg-bright-green {
  background-color: #34832A;
  color: white;
}
.lrc-bg-bright-red {
  background-color: #C0161B;
  color: white;
}
.lrc-bg-cool-yellow {
  background-color: #FFFF96;
  color: black;
}
.lrc-bg-highlight, .table .lrc-bg-highlight {
  background: rgba(32,32,32,.1);
}
.lrc-bg-highlight2, .table .lrc-bg-highlight2 {
  background: rgba(32,32,32,.2);
}

/* Content styles */
.lrc-body {
  padding: 10px 0 100px;
}

.lrc-footer {
  bottom: 0;
  font-size: 14px;
  height: auto;
  left: 0;
  position: fixed;
  right: 0;
  width: 100%;
}

.lrc-abstract {
  height: 89%;
}

.lrc-link {
  padding-bottom: 10px;
  text-align: right;
  vertical-align: bottom;
}

/* Bootstrap "feature" CSS */
.icon-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.icon-link > .bi {
  margin-top: .125rem;
  margin-left: .125rem;
  transition: transform .25s ease-in-out;
  fill: currentColor;
}
.icon-link:hover > .bi {
  transform: translate(.25rem);
}

.icon-square {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  font-size: 1.5rem;
  border-radius: .25rem;
}

/* iPhone/iPod touch overrides */
@media only screen and (max-width: 414px) {
  nav.navbar {
    padding: 0 5px;
  }
  .lrc-body {
    padding-bottom: 20px;
  }
  .lrc-footer {
    position: relative;
  }
  .lrc-abstract {
    height: auto;
  }
}

/* Dark mode overrides */
@media (prefers-color-scheme: dark) {
  body {
    background: #000;
    color: #E4E4E4;
  }
  .icon-square {
    background: rgba(224,224,224,0.25);
  }
  .lrc-bg-highlight, .table .lrc-bg-highlight {
    background: rgba(224,224,224,.2);
  }
  .lrc-bg-highlight2, .table .lrc-bg-highlight2 {
    background: rgba(224,224,224,.4);
  }
  .table {
    color: #E4E4E4;
  }
}

/* Print overrides */
@media print {
  nav.navbar {
    display: none;
  }

  div.footer {
    font-style: italic;
    position: relative;
  }

  .hidden-print {
    display: none;
  }

  /* Bootstrap adds URLs after every link, stop doing that... */
  a[href]:after {
    content: none !important;
  }

  /* and don't print any form controls, either */
  input {
    display: none;
  }
}

