@charset "UTF-8";
* {
  padding: 0;
  margin: 0;
}

.ts {
  box-sizing: border-box;
}
.ts--full-height {
  height: 100%;
  overflow: hidden;
}
.ts--full-height body {
  height: 100%;
  overflow: auto;
}

*, *:before, *:after {
  box-sizing: inherit;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}

html, body, input, button, textarea {
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 400;
  font-size: 12pt;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

body {
  background: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
}

body.page__dark-theme-mode--always-enabled {
  background: rgba(0, 0, 0, 0.9);
  color: rgba(255, 255, 255, 0.8);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto {
    background: rgba(0, 0, 0, 0.9);
    color: rgba(255, 255, 255, 0.8);
  }
}

h1 {
  flex-direction: row;
  font-size: 32pt;
  line-height: 40pt;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 300;
  font-style: italic;
}
@media (max-width: 800px) {
  h1 {
    font-size: 25pt;
  }
}

a {
  color: rgba(0, 0, 0, 0.8);
  text-decoration: underline;
}
a:hover {
  color: rgb(0, 0, 0);
}
body.page__dark-theme-mode--always-enabled a {
  color: rgb(255, 255, 255);
}
body.page__dark-theme-mode--always-enabled a:hover {
  color: rgb(255, 255, 255);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto a {
    color: rgb(255, 255, 255);
  }
  body.page__dark-theme-mode--auto a:hover {
    color: rgb(255, 255, 255);
  }
}

.control-bar {
  font-size: 11pt;
  display: flex;
  justify-content: center;
}
.control-bar__content {
  display: flex;
  flex-direction: row;
  width: 100%;
  max-width: 50rem;
  height: 2.7rem;
  padding: 0;
}
.control-bar__navigation {
  flex: 1;
  display: flex;
  flex-direction: row;
}
.control-bar__search {
  width: 180px;
  align-self: center;
}
.control-bar__search input {
  width: 100%;
  border: 0;
  background: rgba(0, 0, 0, 0.05);
  padding: 0.5rem 1rem;
  margin: 0;
  outline: none;
}

.cb-button {
  font-size: 11pt;
  line-height: 16pt;
  display: flex;
  flex-direction: row;
  margin: 0;
}
.cb-button__content {
  align-items: center;
  border-radius: 8px;
  color: inherit;
  display: flex;
  padding: 0 1rem;
  text-decoration: underline;
  font-style: italic;
  transition: background 300ms;
  opacity: 0.8;
}
.cb-button__content:hover {
  opacity: 1;
  text-decoration: none;
}
.cb-button__logo {
  font-weight: 400;
  margin: 0;
  font-style: normal;
  background: rgba(0, 0, 0, 0.05);
}
.cb-button__logo .cb-button__content {
  text-decoration: none;
  background: none !important;
}
.cb-button__title {
  display: flex;
  overflow: hidden;
  font-weight: 600;
}
.cb-button__title .cb-button__content {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.cb-button__subscribe {
  margin: 0;
  border-radius: 0 8px 8px 0;
}

/* Addition styles for colorized breadcrumbs */
.top--page-project .cb-button .cb-button__content,
.top--page-publication.top--colorized-breadcrumbs .cb-button .cb-button__content {
  opacity: 0.9;
}

.top--page-project .cb-button .cb-button__content:hover,
.top--page-publication.top--colorized-breadcrumbs .cb-button .cb-button__content:hover {
  opacity: 1;
}

.html-content {
  word-break: break-word;
  line-height: 22pt;
}
.html-content strong {
  font-weight: 700;
}
.html-content a {
  color: rgb(0, 0, 0);
  text-decoration: underline;
}
.html-content a:hover {
  text-decoration: none;
}
body.page__dark-theme-mode--always-enabled .html-content a {
  color: rgb(255, 255, 255);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto .html-content a {
    color: rgb(255, 255, 255);
  }
}

.html-content h2, .html-content h3, .html-content h4 {
  margin: 2rem 2rem 1rem 2rem;
}
.html-content blockquote {
  color: rgba(0, 0, 0, 0.8);
  line-height: 22pt;
  padding: 2rem 2rem 2rem 1.75rem;
  margin: 0 0 1rem 0;
  border-left: 0.25rem solid;
}
.html-content blockquote.blockquote--theme-default {
  background: rgba(0, 0, 0, 0.02);
  border-color: rgba(0, 0, 0, 0.2);
}
.html-content blockquote.blockquote--theme-grey {
  background: rgba(0, 0, 0, 0.05);
  border-color: rgba(0, 0, 0, 0.5);
}
.html-content blockquote.blockquote--theme-info {
  background: rgba(91, 134, 229, 0.1);
  border-color: transparent;
}
.html-content blockquote.blockquote--theme-warning {
  background: rgba(255, 135, 0, 0.1);
  border-color: transparent;
}
body.page__dark-theme-mode--always-enabled .html-content blockquote {
  color: rgba(255, 255, 255, 0.8);
}
body.page__dark-theme-mode--always-enabled .html-content blockquote.blockquote--theme-default {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.3);
}
body.page__dark-theme-mode--always-enabled .html-content blockquote.blockquote--theme-grey {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.5);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto .html-content blockquote {
    color: rgba(255, 255, 255, 0.8);
  }
  body.page__dark-theme-mode--auto .html-content blockquote.blockquote--theme-default {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.3);
  }
  body.page__dark-theme-mode--auto .html-content blockquote.blockquote--theme-grey {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.5);
  }
}

.html-content h2 {
  font-size: 1.8em;
  line-height: 1.8em;
}
.html-content h3 {
  font-size: 1.5em;
  line-height: 1.5em;
}
.html-content h4 {
  font-size: 1.3em;
  line-height: 1.3em;
}
.html-content ul, .html-content ol {
  margin: 1rem 2rem;
  padding: 0;
  list-style: none;
  counter-reset: counter;
}
.html-content ul li, .html-content ol li {
  margin: 1rem 0 0 0.5rem;
  padding: 0 0 0 38px;
  position: relative;
  counter-increment: counter;
}
.html-content ul li::before, .html-content ol li::before {
  position: absolute;
  top: 0;
  line-height: inherit;
  left: 0;
  width: 36px;
  text-align: center;
}
.html-content ul li::before {
  content: "•";
}
.html-content ol li::before {
  content: counter(counter) ".";
}
.html-content p {
  margin: 0 2rem 1rem;
  line-height: 22pt;
}
.html-content p::before {
  content: "​";
}
.html-content p:last-child:empty {
  line-height: initial;
  min-height: initial;
}
.html-content div.image-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 2rem 0;
}
.html-content div.image-block img {
  display: block;
  max-width: 100%;
  border-radius: 0;
  height: auto;
  object-fit: contain;
}
.html-content div.external-twitter {
  margin: 2rem 2rem;
}
.html-content div.external-youtube {
  margin: 2rem 0;
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}
.html-content div.external-youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.html-content pre {
  padding: 2rem;
  margin: 0 0 2rem 0;
  font-size: 10pt;
  line-height: 18pt;
  overflow-y: scroll;
}
.html-content pre code {
  background: none;
  padding: 0;
}
.html-content span.inline-code, .html-content code {
  font-family: consolas, monaco, monospace;
  font-size: 10pt;
  background: rgba(0, 0, 0, 0.05);
  padding: 0.25rem 0.5rem;
}
body.page__dark-theme-mode--always-enabled .html-content span.inline-code, .html-content code {
  background: rgba(255, 255, 255, 0.1);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto .html-content span.inline-code, .html-content code {
    background: rgba(255, 255, 255, 0.1);
  }
}

.html-content code {
  line-height: 18pt;
}
.html-content :first-child {
  margin-top: 0 !important;
}
.html-content :last-child {
  margin-bottom: 0 !important;
}

.title {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: row;
  padding: 0 1rem 1rem 1rem;
  margin-top: 5rem;
}

.top {
  background: transparent;
  margin-bottom: 2rem;
  width: 100%;
}
.top--page-publication {
  margin-bottom: 0;
  padding-bottom: 2px;
}

.top-cover {
  display: flex;
  justify-content: center;
}
.top-cover__content {
  width: 100%;
  max-width: 50rem;
  padding: 1rem;
  border-radius: 0 0 8px 8px;
}
@media (max-width: 800px) {
  .top-cover__content {
    border-radius: 0;
  }
}

.footer {
  background: transparent;
  width: 100%;
  display: flex;
  justify-content: center;
}
.footer__text {
  width: 100%;
  max-width: 50rem;
  padding: 0.5rem 1rem 2rem 1rem;
  border-top: 0.1rem solid transparent;
  color: rgb(0, 0, 0);
}
body.page__dark-theme-mode--always-enabled .footer__text {
  color: rgba(255, 255, 255, 0.9);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto .footer__text {
    color: rgba(255, 255, 255, 0.9);
  }
}

.footer .html-content {
  margin: 1rem 0 0 0;
}
.footer .html-content p {
  font-size: 11pt;
  line-height: 16pt;
  margin: 0 1rem 1rem;
}

.code-block--theme-default {
  color: rgb(0, 0, 0);
  background-color: #F5F5F5 !important;
}
.code-block--theme-default .token.comment, .code-block--theme-default .token.prolog, .code-block--theme-default .token.doctype, .code-block--theme-default .token.cdata {
  color: #969896;
}
.code-block--theme-default .token.property, .code-block--theme-default .token.tag, .code-block--theme-default .token.boolean, .code-block--theme-default .token.number, .code-block--theme-default .token.constant, .code-block--theme-default .token.symbol, .code-block--theme-default .token.deleted {
  color: #ED6A43;
}
.code-block--theme-default .token.operator, .code-block--theme-default .token.entity, .code-block--theme-default .token.string {
  color: #183691;
}
.code-block--theme-default .token.regex {
  color: #183691;
}
.code-block--theme-default .token.function {
  color: #795DA3;
}
.code-block--theme-default .token.keyword {
  color: #A71D5D;
}

.publication {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.publication__container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.publication__content.html-content {
  width: 100%;
  margin: 0.5rem 1rem 4rem 1rem;
  max-width: 50rem;
  word-break: break-word;
}
.publication__content-time {
  font-size: 11pt;
  line-height: 16pt;
  margin-top: 2rem !important;
  color: rgba(0, 0, 0, 0.8);
}
body.page__dark-theme-mode--always-enabled .publication__content-time {
  color: rgba(255, 255, 255, 0.5);
}

@media screen and (prefers-color-scheme: dark) {
  body.page__dark-theme-mode--auto .publication__content-time {
    color: rgba(255, 255, 255, 0.5);
  }
}

/*# sourceMappingURL=publication.css.map */
