/*!
 *  __  __                __                                     __
 * /\ \/\ \              /\ \             __                    /\ \
 * \ \ \_\ \   __  __    \_\ \      __   /\_\      __       ___ \ \ \/'\
 *  \ \  _  \ /\ \/\ \   /'_` \   /'__`\ \/\ \   /'__`\    /'___\\ \ , <
 *   \ \ \ \ \\ \ \_\ \ /\ \L\ \ /\  __/  \ \ \ /\ \L\.\_ /\ \__/ \ \ \\`\
 *    \ \_\ \_\\/`____ \\ \___,_\\ \____\ _\ \ \\ \__/.\_\\ \____\ \ \_\ \_\
 *     \/_/\/_/ `/___/> \\/__,_ / \/____//\ \_\ \\/__/\/_/ \/____/  \/_/\/_/
 *                 /\___/                \ \____/
 *                 \/__/                  \/___/
 *
 * Powered by Hydejack v8.1.1 <https://hydejack.com/>
 */
body {
  --code-font-family: Menlo, Monaco, Consolas, monospace;
  --font-weight: 400;
  --font-weight-bold: 700;
  --font-weight-heading: 400;
  --text-muted: #888;
  --gray-bg: rgba(0, 0, 0, 0.025);
  --gray-text: #666;
  --menu-text: #bbb;
  --body-color: #333;
  --body-bg: #fff;
  --border-color: #ebebeb; }

.clearfix, .sidebar-social::after {
  content: "";
  display: table;
  clear: both; }

.color-transition, body, hr, .hr, blockquote, .faded, .read-more, figure, .figure, table:not(.highlight) td, table:not(.highlight) th, table:not(.highlight) thead, table:not(.highlight) thead + tbody,
table:not(.highlight) tbody + tbody,
table:not(.highlight) tfoot, table:not(.highlight) tbody tr:nth-child(even) td,
table:not(.highlight) tbody tr:nth-child(even) th, table:not(.highlight) tbody tr:nth-child(odd) td,
table:not(.highlight) tbody tr:nth-child(odd) th, .footnotes::before, code, .message, .pagination, #_cookies-banner {
  transition: background-color 1s ease, border-color 1s ease; }

.no-color-transition {
  transition: none !important; }

*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

@-ms-viewport {
  width: device-width; }
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

[tabindex="-1"]:focus {
  outline: none !important; }

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0; }

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit; }

img {
  vertical-align: middle;
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

a,
area,
button,
[role="button"],
input:not([type=range]),
label,
select,
summary,
textarea {
  touch-action: manipulation; }

figure {
  margin: 0 0 1rem; }

label {
  display: inline-block;
  margin-bottom: .25rem; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0; }

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox; }

textarea {
  overflow: auto;
  resize: vertical; }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal; }

progress {
  vertical-align: baseline; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none; }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button; }

output {
  display: inline-block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none !important; }

* {
  box-sizing: border-box; }

html,
body {
  margin: 0;
  padding: 0; }

html {
  font-size: 16px;
  line-height: 1.75; }

body {
  color: var(--body-color);
  background-color: var(--body-bg);
  font-weight: var(--font-weight);
  overflow-y: scroll; }

a {
  text-decoration: none; }

.lead {
  margin-left: -1rem;
  margin-right: -1rem; }

.content img, .img,
.content video, .video {
  max-width: 100%; }
  .content img.lead, .img.lead,
  .content video.lead, .video.lead {
    max-width: calc(100% + 2rem);
    width: calc(100% + 2rem); }

@media print {
  a:not(.no-print-link)::after {
    content: " (" attr(href) ") ";
    font-size: .83em;
    opacity: 0.67; } }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-weight: var(--font-weight-heading);
  margin: 5rem 0 1rem; }

h1, .h1 {
  font-size: 2rem;
  line-height: 1.3; }

h2, .h2 {
  font-size: 1.5rem;
  line-height: 1.4; }

h3, .h3 {
  font-size: 1.17em;
  line-height: 1.5; }

h4, h5, h6, .h4, .h5, .h6 {
  font-size: 1rem;
  margin-bottom: 0.5rem; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }
  p.lead {
    font-size: 1.2em;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    padding: 0 1rem; }

ul, ol, dl {
  margin-top: 0;
  margin-bottom: 1rem; }

ul, ol {
  padding-left: 1.25rem; }

hr {
  position: relative;
  margin: 3rem 0;
  border: 0;
  border-top: 1px solid var(--border-color); }

.hr {
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 1rem;
  margin-bottom: 2rem; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .heading {
  text-rendering: optimizeLegibility; }

h1 + h2, .h1 + .h2, h1 + .h2, .h1 + h2,
h2 + h3, .h2 + .h3, h2 + .h3, .h2 + h3,
h3 + h4, .h3 + .h4, h3 + .h4, .h3 + h4,
h4 + h5, .h4 + .h5, h4 + .h5, .h4 + h5,
h5 + h6, .h5 + .h6, h5 + .h6, .h5 + h6 {
  margin-top: 0; }

dt, strong {
  font-weight: var(--font-weight-bold); }

dd {
  margin-bottom: .5rem; }

abbr {
  font-size: 85%;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase; }
  abbr[title] {
    cursor: help;
    border-bottom: 1px dotted var(--border-color); }

blockquote {
  padding: .5rem 1rem;
  margin: .8rem 0;
  color: var(--text-muted);
  border-left: 0.25rem solid var(--border-color); }
  blockquote.lead {
    font-size: 1.2em;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    border-left-width: 0.4rem; }
  blockquote > p:last-child {
    margin-bottom: 0; }

.heading {
  font-weight: var(--font-weight-heading); }

.fine, figure, .figure {
  font-size: .83em; }

.faded, .read-more, figure, .figure {
  color: var(--text-muted); }

.centered, figure, .figure {
  text-align: center; }

h1[id], h2[id], h3[id], h4[id], h5[id], h6[id] {
  position: relative; }
  @media screen {
    h1[id] > .permalink, h2[id] > .permalink, h3[id] > .permalink, h4[id] > .permalink, h5[id] > .permalink, h6[id] > .permalink {
      border-bottom: none;
      opacity: 0;
      width: 1.5rem;
      text-align: center;
      float: right;
      transition: opacity 400ms;
      will-change: opacity; } }
  @media screen and (min-width: 44em) {
    h1[id] > .permalink, h2[id] > .permalink, h3[id] > .permalink, h4[id] > .permalink, h5[id] > .permalink, h6[id] > .permalink {
      float: none;
      position: absolute;
      top: 0;
      left: -1.75rem; } }
  @media print {
    h1[id] > .permalink, h2[id] > .permalink, h3[id] > .permalink, h4[id] > .permalink, h5[id] > .permalink, h6[id] > .permalink {
      display: none; } }
  h1[id]:hover > .permalink, h2[id]:hover > .permalink, h3[id]:hover > .permalink, h4[id]:hover > .permalink, h5[id]:hover > .permalink, h6[id]:hover > .permalink {
    opacity: 0.5; }
  h1[id] > .permalink:hover, h1[id] > .permalink:focus, h2[id] > .permalink:hover, h2[id] > .permalink:focus, h3[id] > .permalink:hover, h3[id] > .permalink:focus, h4[id] > .permalink:hover, h4[id] > .permalink:focus, h5[id] > .permalink:hover, h5[id] > .permalink:focus, h6[id] > .permalink:hover, h6[id] > .permalink:focus {
    opacity: 1;
    transition: opacity 200ms; }

@media print {
  h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, dt {
    page-break-inside: avoid;
    break-inside: avoid-page;
    page-break-after: avoid;
    break-after: avoid-page; } }
table:not(.highlight) {
  border-collapse: collapse;
  margin-bottom: 2rem;
  margin-left: -1rem;
  display: block;
  vertical-align: top;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  table:not(.highlight) td, table:not(.highlight) th {
    padding: .25rem .5rem;
    border: 1px solid var(--border-color); }
    table:not(.highlight) td:first-child, table:not(.highlight) th:first-child {
      padding-left: 1rem; }
    table:not(.highlight) td:last-child, table:not(.highlight) th:last-child {
      padding-right: 1rem; }
  table:not(.highlight) thead {
    background-color: var(--body-bg); }
  table:not(.highlight) thead + tbody,
  table:not(.highlight) tbody + tbody,
  table:not(.highlight) tfoot {
    border-top: 3px double var(--border-color); }
  table:not(.highlight) tbody tr:nth-child(even) td,
  table:not(.highlight) tbody tr:nth-child(even) th {
    background-color: var(--body-bg); }
  table:not(.highlight) tbody tr:nth-child(odd) td,
  table:not(.highlight) tbody tr:nth-child(odd) th {
    background-color: var(--gray-bg); }

@media print {
  table:not(.highlight) {
    width: 100% !important; } }
table.stretch-table {
  display: table;
  width: 100% !important;
  width: calc(100% + 2rem) !important; }

table.scroll-table {
  white-space: nowrap; }

table.flip-table {
  display: flex;
  overflow: hidden; }
  table.flip-table thead,
  table.flip-table thead + tbody,
  table.flip-table tbody + tbody {
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color); }
  table.flip-table thead, table.flip-table tbody {
    display: flex; }
  table.flip-table thead {
    flex-shrink: 0;
    min-width: min-content; }
    table.flip-table thead th {
      padding-left: 1rem; }
  table.flip-table tbody {
    position: relative;
    overflow-x: auto;
    overflow-y: hidden;
    padding-left: 1px;
    -webkit-overflow-scrolling: touch; }
  table.flip-table tr {
    display: flex;
    flex-direction: column;
    min-width: min-content;
    flex-shrink: 0; }
    table.flip-table tr td {
      border-left: none; }
    table.flip-table tr:first-child td {
      border-left: 1px solid var(--border-color); }
    table.flip-table tr:last-child td {
      padding-right: 1rem;
      border-right: 1px solid var(--border-color); }
  table.flip-table td, table.flip-table th {
    display: block;
    border-bottom: none; }
    table.flip-table td:first-child, table.flip-table th:first-child {
      padding-left: .5rem;
      border-top: none; }
    table.flip-table td:last-child, table.flip-table th:last-child {
      padding-right: .5rem; }

@media screen and (max-width: 72em) {
  table.scroll-table-small {
    white-space: nowrap; }

  table.flip-table-small {
    display: flex;
    overflow: hidden; }
    table.flip-table-small thead,
    table.flip-table-small thead + tbody,
    table.flip-table-small tbody + tbody {
      border-top: 1px solid var(--border-color);
      border-bottom: 1px solid var(--border-color); }
    table.flip-table-small thead, table.flip-table-small tbody {
      display: flex; }
    table.flip-table-small thead {
      flex-shrink: 0;
      min-width: min-content; }
      table.flip-table-small thead th {
        padding-left: 1rem; }
    table.flip-table-small tbody {
      position: relative;
      overflow-x: auto;
      overflow-y: hidden;
      padding-left: 1px;
      -webkit-overflow-scrolling: touch; }
    table.flip-table-small tr {
      display: flex;
      flex-direction: column;
      min-width: min-content;
      flex-shrink: 0; }
      table.flip-table-small tr td {
        border-left: none; }
      table.flip-table-small tr:first-child td {
        border-left: 1px solid var(--border-color); }
      table.flip-table-small tr:last-child td {
        padding-right: 1rem;
        border-right: 1px solid var(--border-color); }
    table.flip-table-small td, table.flip-table-small th {
      display: block;
      border-bottom: none; }
      table.flip-table-small td:first-child, table.flip-table-small th:first-child {
        padding-left: .5rem;
        border-top: none; }
      table.flip-table-small td:last-child, table.flip-table-small th:last-child {
        padding-right: .5rem; } }
footer {
  margin-bottom: 2rem; }

a[href^="#fn:"],
a[href^="#fnref:"] {
  margin-left: .1rem;
  font-weight: var(--font-weight-bold); }
  @media screen and (max-width: 73.5em) {
    a[href^="#fn:"],
    a[href^="#fnref:"] {
      font-weight: normal; } }

sup {
  line-height: 1; }
  @media screen and (max-width: 72em) {
    sup[id^="fnref"] {
      vertical-align: baseline;
      font-size: inherit; }
      sup[id^="fnref"] > a::before {
        content: "["; }
      sup[id^="fnref"] > a::after {
        content: "]"; } }

.footnotes {
  margin-top: 5rem; }
  .footnotes > ol {
    color: var(--text-muted); }
    .footnotes > ol > li {
      padding: .5rem;
      margin-left: .5rem; }
      .footnotes > ol > li > p {
        margin: 0; }
      .footnotes > ol > li:focus {
        outline: none;
        color: var(--gray-text);
        background: var(--gray-bg); }
  .footnotes::before {
    content: "";
    display: block;
    margin: 1.5rem 0;
    border: 0;
    border-top: 1px solid var(--border-color); }

code, pre {
  font-family: var(--code-font-family); }

code {
  padding: .25em .5em;
  background-color: var(--gray-bg);
  font-size: .85em; }

.pre-base, pre, article .katex-display, article div.MathJax_Preview {
  margin-left: -1rem;
  margin-right: -1rem;
  padding: 1rem;
  background-color: var(--gray-bg);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  backface-visibility: hidden; }
  @media print {
    .pre-base, pre, article .katex-display, article div.MathJax_Preview {
      width: 100% !important;
      page-break-inside: avoid;
      break-inside: avoid-page; } }

pre {
  margin-top: 0;
  display: block;
  line-height: 1.4;
  font-size: .85em; }

pre > code {
  padding: 0;
  color: inherit;
  background-color: transparent;
  font-size: 1em; }

pre, .highlight {
  margin-bottom: 2rem; }

.page {
  margin-bottom: 3em; }
  .page li + li {
    margin-top: .25rem; }
  .page > header {
    margin-bottom: 2rem; }

.page-title, .post-title {
  margin-top: 0; }

.post-date {
  display: block;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  color: var(--text-muted); }

hr.dingbat {
  border: 0; }

hr.dingbat::after {
  content: "\2756";
  display: block;
  text-align: center;
  font-size: 1.5rem;
  color: var(--menu-text); }

.related-posts {
  padding-left: 0;
  list-style: none;
  margin-bottom: 2rem; }
  .related-posts > li,
  .related-posts > li + li {
    margin-top: 1rem; }

@media print {
  .comments {
    display: none; } }

.read-more {
  margin-top: 2rem;
  margin-bottom: 3rem; }
  .read-more::after {
    content: " \2192";
    font-family: "icomoon" !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: smaller;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.message {
  margin-bottom: 1rem;
  padding: 1rem;
  color: var(--gray-text);
  background-color: var(--gray-bg);
  margin-left: -1rem;
  margin-right: -1rem; }

.pagination {
  width: calc(100% + 2rem);
  margin: 0 -1rem 1rem;
  color: var(--text-muted);
  text-align: center; }
  .pagination > ul {
    list-style: none;
    padding: 0; }

.pagination-item > * {
  display: block;
  padding: .25rem 1rem;
  border: solid var(--border-color);
  border-width: 1px 0;
  transition: border-color 1s ease; }
.pagination-item > a, .pagination-item > a:hover, .pagination-item > a:focus {
  border-color: var(--border-color) !important; }
.pagination-item:first-child > * {
  margin-bottom: -1px; }
.pagination-item > a:hover, .pagination-item a:focus {
  background-color: var(--gray-bg);
  border-bottom: 1px solid var(--border-color); }

@media (min-width: 23.5em) {
  .pagination {
    width: 100%;
    margin: 3rem 0; }

  .pagination-item > * {
    float: left;
    width: 50%;
    border-width: 1px; }
  .pagination-item:first-child > * {
    margin-bottom: 0;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }
  .pagination-item:last-child > * {
    margin-left: -1px;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem; } }
body {
  /* Prevent side-scrolling on mobile */
  display: block;
  position: relative;
  overflow-x: hidden; }

hy-push-state, hy-drawer {
  display: block;
  overflow: hidden; }

@media screen {
  body::before {
    content: '';
    width: .5rem;
    background: var(--border-color);
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0; } }
@media screen and (min-width: 64em) {
  body::before {
    width: 21rem; } }
@media screen and (min-width: 1666px) {
  body::before {
    width: calc(50% - 28rem); } }
@media screen and (min-width: 42em) {
  html {
    font-size: 17px; } }
@media screen and (min-width: 124em) {
  html {
    font-size: 18px; } }

@media print {
  html {
    font-size: 11pt; } }
.fade-in {
  animation-duration: 500ms;
  animation-timing-function: ease;
  animation-name: fade-in;
  animation-fill-mode: forwards; }

@keyframes fade-in {
  from {
    transform: translateY(-3rem);
    opacity: 0; }
  50% {
    transform: translateY(-3rem);
    opacity: 0; }
  to {
    transform: translateY(0);
    opacity: 1; } }
.fl {
  float: left; }

.fr {
  float: right; }

.mb4 {
  margin-bottom: 4rem; }

.mb6 {
  margin-bottom: 6rem; }

.mt0 {
  margin-top: 0; }

.mt2 {
  margin-top: 2rem; }

.mt3 {
  margin-top: 3rem; }

.mt4 {
  margin-top: 4rem; }

.pb0 {
  padding-bottom: 0; }

.sixteen-nine {
  position: relative; }
  .sixteen-nine::before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 56.25%; }
  .sixteen-nine > * {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }

.sr-only {
  display: none;
  display: unset;
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.border {
  border: 1px solid var(--border-color);
  transition: border-color 1s ease; }

hy-push-state a, .a {
  position: relative;
  padding-bottom: .15rem;
  border-bottom: 1px solid;
  transition: color 1s, border-color 250ms; }
  hy-push-state a:hover, .a:hover {
    text-decoration: none;
    transition: color 1s, border-color 50ms; }
  hy-push-state a.no-hover, .a.no-hover {
    border-bottom: none;
    padding-bottom: 0;
    transition: none; }
    hy-push-state a.no-hover:hover, .a.no-hover:hover {
      transition: none; }

/*
img {
  background-color: var(--gray-bg); // inline

  // <<< link
  background-position: center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB3aWR0aD0iMTYwIiBoZWlnaHQ9IjkwIiB2aWV3Qm94PSIwIDAgMTYwIDkwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxnIHRyYW5zZm9ybT0ibWF0cml4KDAuMDQ4ODI4LCAwLCAwLCAwLjA0Nzk5MSwgNTQuOTk5OTczLCAyMC40MjgxNDgpIj4KICAgIDxwYXRoIGQ9Ik05NTkuODg0IDEyOGMwLjA0MCAwLjAzNCAwLjA4MiAwLjA3NiAwLjExNiAwLjExNnY3NjcuNzdjLTAuMDM0IDAuMDQwLTAuMDc2IDAuMDgyLTAuMTE2IDAuMTE2aC04OTUuNzdjLTAuMDQwLTAuMDM0LTAuMDgyLTAuMDc2LTAuMTE0LTAuMTE2di03NjcuNzcyYzAuMDM0LTAuMDQwIDAuMDc2LTAuMDgyIDAuMTE0LTAuMTE0aDg5NS43N3pNOTYwIDY0aC04OTZjLTM1LjIgMC02NCAyOC44LTY0IDY0djc2OGMwIDM1LjIgMjguOCA2NCA2NCA2NGg4OTZjMzUuMiAwIDY0LTI4LjggNjQtNjR2LTc2OGMwLTM1LjItMjguOC02NC02NC02NHYweiIgc3R5bGU9ImZpbGw6IHJnYigyMjEsIDIyMSwgMjIxKTsiLz4KICAgIDxwYXRoIGQ9Ik04MzIgMjg4YzAgNTMuMDIwLTQyLjk4IDk2LTk2IDk2cy05Ni00Mi45OC05Ni05NiA0Mi45OC05NiA5Ni05NiA5NiA0Mi45OCA5NiA5NnoiIHN0eWxlPSJmaWxsOiByZ2IoMjIxLCAyMjEsIDIyMSk7Ii8+CiAgICA8cGF0aCBkPSJNODk2IDgzMmgtNzY4di0xMjhsMjI0LTM4NCAyNTYgMzIwaDY0bDIyNC0xOTJ6IiBzdHlsZT0iZmlsbDogcmdiKDIyMSwgMjIxLCAyMjEpOyIvPgogIDwvZz4KPC9zdmc+');
  // >>>
}
*/
.content .img {
  overflow: hidden; }
  .content .img img {
    margin: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    background-color: var(--gray-bg);
    background-position: center;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB3aWR0aD0iMTYwIiBoZWlnaHQ9IjkwIiB2aWV3Qm94PSIwIDAgMTYwIDkwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxnIHRyYW5zZm9ybT0ibWF0cml4KDAuMDQ4ODI4LCAwLCAwLCAwLjA0Nzk5MSwgNTQuOTk5OTczLCAyMC40MjgxNDgpIj4KICAgIDxwYXRoIGQ9Ik05NTkuODg0IDEyOGMwLjA0MCAwLjAzNCAwLjA4MiAwLjA3NiAwLjExNiAwLjExNnY3NjcuNzdjLTAuMDM0IDAuMDQwLTAuMDc2IDAuMDgyLTAuMTE2IDAuMTE2aC04OTUuNzdjLTAuMDQwLTAuMDM0LTAuMDgyLTAuMDc2LTAuMTE0LTAuMTE2di03NjcuNzcyYzAuMDM0LTAuMDQwIDAuMDc2LTAuMDgyIDAuMTE0LTAuMTE0aDg5NS43N3pNOTYwIDY0aC04OTZjLTM1LjIgMC02NCAyOC44LTY0IDY0djc2OGMwIDM1LjIgMjguOCA2NCA2NCA2NGg4OTZjMzUuMiAwIDY0LTI4LjggNjQtNjR2LTc2OGMwLTM1LjItMjguOC02NC02NC02NHYweiIgc3R5bGU9ImZpbGw6IHJnYigyMjEsIDIyMSwgMjIxKTsiLz4KICAgIDxwYXRoIGQ9Ik04MzIgMjg4YzAgNTMuMDIwLTQyLjk4IDk2LTk2IDk2cy05Ni00Mi45OC05Ni05NiA0Mi45OC05NiA5Ni05NiA5NiA0Mi45OCA5NiA5NnoiIHN0eWxlPSJmaWxsOiByZ2IoMjIxLCAyMjEsIDIyMSk7Ii8+CiAgICA8cGF0aCBkPSJNODk2IDgzMmgtNzY4di0xMjhsMjI0LTM4NCAyNTYgMzIwaDY0bDIyNC0xOTJ6IiBzdHlsZT0iZmlsbDogcmdiKDIyMSwgMjIxLCAyMjEpOyIvPgogIDwvZz4KPC9zdmc+"); }

hy-img {
  display: block;
  position: relative; }
  hy-img .loading {
    background-color: var(--gray-bg);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center; }
    hy-img .loading > * {
      color: var(--menu-text);
      font-size: 2rem; }
  hy-img img {
    animation-duration: 1000ms;
    animation-timing-function: ease;
    animation-name: fade-img; }

figure, .figure {
  margin-bottom: 2rem; }
  figure > *:first-child, .figure > *:first-child {
    margin-bottom: .5rem; }

@keyframes fade-img {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.animation-main hy-img img {
  animation: none !important; }

hy-drawer {
  width: 100%;
  position: relative;
  overflow: hidden;
  z-index: 2; }
  @media screen {
    hy-drawer {
      --hy-drawer-width: 100%;
      --hy-drawer-slide-width: calc(100% - .5rem);
      --hy-drawer-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.25); } }
  @media screen and (min-width: 64em) {
    hy-drawer {
      position: fixed;
      width: 21rem;
      top: 0;
      left: 0;
      bottom: 0;
      margin-left: 0;
      --hy-drawer-slide-width: calc(100% - 21rem); }
      hy-drawer.cover {
        position: relative;
        width: 100%; } }
  @media screen and (min-width: 1666px) {
    hy-drawer {
      width: calc(50% - 28rem);
      --hy-drawer-slide-width: calc(50% + 28rem); } }
  @media screen {
    hy-drawer.loaded {
      position: static; } }

.sidebar {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  color: rgba(255, 255, 255, 0.75);
  text-align: center;
  z-index: 2;
  min-height: 100vh; }
  .sidebar a {
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, 0.2); }
    .sidebar a:hover {
      border-bottom-color: #fff; }

hy-drawer.loaded .sidebar {
  min-height: 100%; }

.sidebar-bg {
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
  width: 100vw;
  height: 100%;
  background: #202020 center / cover; }
  .sidebar-bg::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.05); }
  .sidebar-bg.sidebar-overlay::after {
    background: -moz-linear-gradient(top, rgba(32, 32, 32, 0) 0%, rgba(32, 32, 32, 0.5) 50%, rgba(32, 32, 32, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(32, 32, 32, 0) 0%, rgba(32, 32, 32, 0.5) 50%, rgba(32, 32, 32, 0) 100%);
    background: linear-gradient(to bottom, rgba(32, 32, 32, 0) 0%, rgba(32, 32, 32, 0.5) 50%, rgba(32, 32, 32, 0) 100%); }

.sidebar-sticky {
  position: relative;
  z-index: 3;
  max-width: 21rem;
  padding: 1.5rem;
  contain: content; }

.sidebar-about .avatar {
  margin-bottom: 1.5rem; }
.sidebar-about > h2 {
  margin-top: 0; }

.sidebar-nav > ul {
  list-style: none;
  padding-left: 0; }

a.sidebar-nav-item {
  display: inline-block;
  font-weight: var(--font-weight-heading);
  line-height: 1.75;
  padding: .25rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2); }

@media print {
  .sidebar {
    display: none; } }
#_swipe {
  position: absolute;
  z-index: 4;
  opacity: 0.33;
  top: 5vw;
  right: 5vw;
  transform: scale(0.67); }
  @media screen and (min-width: 42em) {
    #_swipe {
      top: calc(50% - 48px);
      right: 10vw;
      transform: scale(1); } }

.sidebar-social > ul {
  display: inline-block;
  list-style: none;
  padding-left: 0;
  margin-bottom: 0; }
  .sidebar-social > ul > li {
    float: left; }
    .sidebar-social > ul > li > a {
      display: inline-block;
      text-align: center;
      font-size: 1.4rem;
      width: 3rem;
      height: 4rem;
      padding: .5rem 0;
      line-height: 3rem; }
  .sidebar-social > ul li + li {
    margin-top: 0; }

@media print {
  .sidebar-social {
    display: none; } }

.fixed-common, .fixed-top, .fixed-bottom {
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 2; }

.fixed-top {
  top: 0; }

.fixed-bottom {
  bottom: 0; }

.navbar > .content {
  padding-top: 0;
  padding-bottom: 0;
  min-height: 0;
  color: var(--menu-text); }

.nav-btn-bar {
  margin: 0 -1rem 0 -.875rem; }

.nav-btn {
  background: none;
  border: none;
  padding: 1.75rem .875rem;
  color: var(--menu-text) !important;
  cursor: pointer; }

.animation-main {
  opacity: 0;
  pointer-events: none; }

@media print {
  .navbar {
    display: none; } }
.navbar .loading {
  display: none; }

#_navbar {
  position: absolute;
  height: 0; }

#_cookies-banner {
  background-color: var(--body-bg);
  border-top: 1px solid var(--border-color); }

.content {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding: 6rem 1rem 12rem; }
  @media screen {
    .content {
      padding-left: 1.5rem;
      max-width: 38rem;
      min-height: 100vh; } }
  @media screen and (min-width: 54em) {
    .content {
      max-width: 42rem; } }
  @media screen and (min-width: 64em) {
    .content {
      padding-left: 1rem;
      margin-left: 24rem;
      margin-right: 3rem; } }
  @media screen and (min-width: 90em) {
    .content {
      margin-left: 25rem;
      margin-right: 4rem;
      max-width: 48rem; } }
  @media screen and (min-width: 1666px) {
    .content {
      margin: auto; } }

@media print {
  .content {
    padding-bottom: 1rem; } }

.avatar {
  width: 6.5rem;
  height: 6.5rem;
  border-radius: 100%;
  overflow: hidden;
  display: inline-block;
  position: relative;
  z-index: 1; }
  .avatar img {
    width: 100%; }
  @media screen and (min-width: 90em) {
    .avatar {
      width: 7rem;
      height: 7rem; } }

.content .avatar {
  float: right;
  margin-left: .5rem; }

article .katex-display, article div.MathJax_Preview {
  padding: 2rem;
  text-align: left; }
article div.MathJax_Preview {
  font-family: var(--code-font-family);
  font-size: .75em;
  line-height: 1.45;
  white-space: pre;
  margin-bottom: 2rem; }
article span.MathJax_Preview {
  font-family: var(--code-font-family);
  padding: .25em .5em;
  font-size: .85em;
  background-color: var(--code-bg); }

.MathJax_Preview:empty {
  display: none;
  visibility: hidden; }

main > footer {
  position: absolute;
  bottom: 0;
  left: .5rem;
  right: 0;
  padding: 0 1rem;
  color: var(--text-muted);
  text-align: center; }
  main > footer > p {
    margin-bottom: 0; }
  @media screen and (min-width: 64em) {
    main > footer {
      left: 0; } }
  @media print {
    main > footer {
      position: static;
      margin-top: 5rem; }
      main > footer .legal {
        display: none; } }

@media screen {
  a.external::after,
  a[href*="//"]:not(.no-mark-external):not(.no-mark)::after,
  a.no-push-state:not(.no-mark-external):not(.no-mark)::after {
    content: "\00A0\ea7e";
    font-family: "icomoon" !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: smaller;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    opacity: 0.33;
    transition: opacity 500ms; }
  a.external:hover::after, a.external:focus::after,
  a[href*="//"]:not(.no-mark-external):not(.no-mark):hover::after,
  a[href*="//"]:not(.no-mark-external):not(.no-mark):focus::after,
  a.no-push-state:not(.no-mark-external):not(.no-mark):hover::after,
  a.no-push-state:not(.no-mark-external):not(.no-mark):focus::after {
    opacity: 1;
    transition: opacity 100ms; } }
@media screen {
  pre, table:not(.highlight), .katex-display, .break-layout {
    position: relative;
    width: calc(100% + 2rem); } }
@media screen and (min-width: 38rem) {
  pre, table:not(.highlight), .katex-display, .break-layout {
    width: calc(100% + 50vw - 17rem); } }
@media screen and (min-width: 54em) {
  pre, table:not(.highlight), .katex-display, .break-layout {
    width: calc(100% + 50vw - 19rem); } }
@media screen and (min-width: 64em) {
  pre, table:not(.highlight), .katex-display, .break-layout {
    width: calc(100vw - 24rem); } }
@media screen and (min-width: 72em) {
  pre, table:not(.highlight), .katex-display, .break-layout {
    width: calc(100% + 100vw - 64rem); } }
@media screen and (min-width: 90em) {
  pre, table:not(.highlight), .katex-display, .break-layout {
    width: calc(100% + 100vw - 71rem); } }
@media screen and (min-width: 1666px) {
  pre, table:not(.highlight), .katex-display, .break-layout {
    width: calc(100% + 50vw - 22rem); } }

.highlight,
pre.highlight {
  color: #383a42; }

.highlight .ge {
  font-style: italic; }

.highlight .gs {
  font-weight: 700; }

.highlight .ow {
  font-weight: 700; }

.highlight .n,
.highlight .nf,
.highlight .nn,
.highlight .o,
.highlight .p {
  color: #383a42; }

.highlight .c,
.highlight .c1,
.highlight .cm,
.highlight .cp,
.highlight .cs {
  color: #a0a1a7;
  font-style: italic; }

.highlight .sr,
.highlight .ss {
  color: #0184bc; }

.highlight .k,
.highlight .kc,
.highlight .kd,
.highlight .kn,
.highlight .kp,
.highlight .kr,
.highlight .kt {
  color: #a626a4; }

.highlight .l,
.highlight .ld,
.highlight .s,
.highlight .s1,
.highlight .s2,
.highlight .sb,
.highlight .sc,
.highlight .sd,
.highlight .se,
.highlight .sh,
.highlight .si,
.highlight .sx {
  color: #50a14f; }

.highlight .nt,
.highlight .nx,
.highlight .vi {
  color: #e45649; }

.highlight .il,
.highlight .m,
.highlight .mf,
.highlight .mh,
.highlight .mi,
.highlight .mo,
.highlight .na {
  color: #986801; }

.highlight .bp,
.highlight .nb,
.highlight .nc,
.highlight .nd,
.highlight .ne,
.highlight .ni,
.highlight .nl,
.highlight .no,
.highlight .nv,
.highlight .py,
.highlight .vc,
.highlight .vg {
  color: #c18401; }

.highlight .gd {
  color: #ff1414; }

.highlight .gi {
  color: #2db448; }

.highlight .w {
  color: #f8f8f2; }

.highlight .cpf {
  color: navy; }

.highlight .gu {
  color: #75715e; }

.highlight .lineno {
  color: #9d9d9f;
  user-select: none; }

.highlight .ln {
  color: #9d9d9f;
  user-select: none; }

.highlight .ln:after {
  content: " "; }

.highlight .hll {
  color: #383a42;
  background-color: #e5e5e6; }

.highlight .hl {
  color: #383a42;
  background-color: #e5e5e6; }

.highlight .language-json .w + .s2 {
  color: #e45649; }

.highlight .language-json .kc {
  color: #0184bc; }

.loading > [class*="icon-"] {
  display: inline-block;
  -webkit-animation: rotate 2s infinite linear both;
  animation: rotate 2s infinite linear both;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%; }

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotateZ(0);
    transform: rotateZ(0); }
  100% {
    -webkit-transform: rotateZ(360deg);
    transform: rotateZ(360deg); } }
@keyframes rotate {
  0% {
    -webkit-transform: rotateZ(0);
    transform: rotateZ(0); }
  100% {
    -webkit-transform: rotateZ(360deg);
    transform: rotateZ(360deg); } }
/*
.card, .pagination-item {
  border-radius: 0!important;
}
*/
/*
@media screen {
  .sidebar-sticky {
    left: 2rem;
    max-width: none;
  }
}
*/
.dl-table a {
  padding-bottom: 0.4rem; }
.dl-table .btn {
  margin: 1.5rem 0; }

html {
  font-family: serif; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .heading {
  font-family: serif; }

.font-active {
  font-family: Noto Sans, Helvetica, Arial, sans-serif; }
  .font-active h1, .font-active h2, .font-active h3, .font-active h4, .font-active h5, .font-active h6, .font-active .h1, .font-active .h2, .font-active .h3, .font-active .h4, .font-active .h5, .font-active .h6, .font-active .heading {
    font-family: Roboto Slab, Helvetica, Arial, sans-serif; }

