html {
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Liberation Sans, Helvetica Neue, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;
}

html:lang(ar),
html:lang(fa) {
  direction: rtl;
}

body {
  line-height: 1.45;
  margin: 0;
}

p {
  margin: 0.8em 0;
}

h1.title {
  font-size: 2.5em;
}

h1,
h2,
h3,
h4 {
  margin: 0.8em 0 0.5em;
  line-height: 1.2;
  font-weight: bold;
  color: #666;
}

h1 a,
h2 a,
h3 a,
h4 a {
  text-decoration: none;
  color: #666;
}

h1 {
  font-size: 2.0em;
}

h2 {
  font-size: 1.5em;
}

h3 {
  font-size: 1.25em;
}

h4 {
  font-size: 1.0em;
}

a.hdr {
  visibility: hidden;
}

h1:hover>a.hdr,
h2:hover>a.hdr,
h3:hover>a.hdr,
h4:hover>a.hdr,
h5:hover>a.hdr {
  visibility: visible;
}

a {
  color: #2A6286;
}

.external-link-light:after {
  background-image: url(/external-link-dark.svg) !important;
}

.external-link:after {
  background-image: url(/external-link-light.svg);
  background-size: 10px 10px;
  display: inline-block;
  width: 10px;
  height: 10px;
  content: "";
  margin-inline-start: 5px;
}

.external-link:lang(ar):after {
  transform: scaleX(-1);
}

a:not(:hover) {
  text-decoration: none;
}

th,
td {
  padding: 0.6em;
  text-align: start;
  white-space: nowrap;
}

td {
  font-size: 0.96em;
}

th,
.last-row-in-section {
  border-bottom: 2px solid grey;
}

tr:nth-child(even) > td {
  background: #f2f3f3;
}

.container {
  margin: 0 auto;
  position: relative;
  max-width: 1000px;
  padding: 0 0.2em;
}


/* Captions for code blocks */

.file {
  font-weight: bold;
  border: unset;
}

figure {
  margin: 0;
}
figure pre {
  margin-top: 0;
}

figcaption {
  padding-left: 0.5em;
  font-size: 0.9em;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
figcaption.zig-cap {
  background: #fcdba5;
}
figcaption.shell-cap {
  background: #ccc;
  color: #000;
}


pre,
code {
  font-size: 12pt;
  direction: ltr;
}

pre > code,
samp {
  display: block;
  overflow: auto;
  padding: 0.5em;
  background: #f8f8f8;
  color: black;
  line-height: normal;
}

.code {
  font-family: monospace;
  font-size: 0.8em;
}

.tok-kw {
  color: #333;
  font-weight: bold;
}

.tok-str {
  color: #d14;
}

.tok-builtin {
  color: #0086b3;
}

code.zig {
  color: #777;
  font-style: italic;
}

.tok-fn {
  color: #900;
  font-weight: bold;
}

.tok-null {
  color: #008080;
}

.tok-number {
  color: #008080;
}

.tok-type {
  color: #458;
  font-weight: bold;
}

.tok-comment {
  color: #aa7;
}

.sponsor {
  width: 200px;
  text-align: center;
  float: inline-start;
  padding: 0 2em 0 0;
}

.sponsor a {
  text-decoration: none;
  color: #000000;
}

img {
  max-width: 100%;
}

#header-image {
  background-image: url(/zig-logo-dark.svg);
  background-repeat: no-repeat;
  width: 257px;
  height: 90px;
  display: block;
  padding: 0;
  margin: 10px 0;
}

h1:lang(ja),
h2:lang(ja),
h3:lang(ja),
h4:lang(ja) {
  margin: 0.7em 0 0.7em;
  font-feature-settings: 'palt';
}

blockquote {
  margin-left: 0;
  margin-right: 0;
  padding: 0 1em;
  border-left: .25em solid #d1d7db;
  color: #59626b;
}

.box {
  border: 1px solid #666;
  border-radius: 5px;
  padding: 0.8em 1em;
}


/* Terminal code coloring */

.sgr-1m {
  font-weight: bold;
}

.sgr-2m {
  color: #575757;
}

.sgr-31_1m {
  color: #b40000;
}

.sgr-31m {
  color: #b40000;
  font-weight: bold;
}

.sgr-32_1m {
  color: green;
}

.sgr-32m {
  color: green;
  font-weight: bold;
}

.sgr-33m {
  color: #876E00;
  font-weight: bold;
}

.sgr-36_1m {
  color: #005C7A;
}

.sgr-36m {
  color: #005C7A;
  font-weight: bold;
}

@media (prefers-color-scheme:dark) {
  body {
    background-color: #111;
    color: #bbb;
  }

  blockquote {
    border-left: .25em solid #666;
    color: #949494;
  }

  .box {
    border-color: #bbb;
  }

  a {
    color: #88f;
  }

  .external-link:after {
    background-image: url(/external-link-dark.svg);
  }

  .sponsor a {
    color: #ffffff;
  }

  table,
  th,
  td,
  .first-row-in-section {
    border-color: grey;
  }

  tr:nth-child(even) > td {
    background: #1e1e1e;
  }

  pre > code,
  samp {
    background: #1e1e1e;
    color: #ccc;
    line-height: normal;
  }

  .tok-kw {
    color: #eee;
  }

  .tok-str {
    color: #2e5;
  }

  .tok-builtin {
    color: #ff894c;
  }

  code.zig {
    color: #aa7;
  }

  .tok-fn {
    color: #B1A0F8;
  }

  .tok-null {
    color: #ff8080;
  }

  .tok-number {
    color: #ff8080;
  }

  .tok-type {
    color: #68f;
  }

  figcaption.zig-cap {
    background-color: #333;
    color: #bbb;
  }
  figcaption.shell-cap {
    background: #2a2a2a;
    color: #fff;
  }

  h1,
  h2,
  h3,
  h4,
  h5 {
    color: #ccc;
  }

  h1 a,
  h2 a,
  h3 a,
  h4 a,
  h5 a {
    color: #ccc;
  }

  strong {
    color: #eee;
  }

  #header-image {
    background-image: url(/zig-logo-light.svg);
    margin: 10px 0;
  }

  /* Terminal code coloring */

  .sgr-2m {
    color: grey;
  }

  .sgr-31_1m {
    color: red;
  }

  .sgr-31m {
    color: red;
  }

  .sgr-32_1m {
    color: #00B800;
  }

  .sgr-32m {
    color: #00B800;
  }

  .sgr-33m {
    color: yellow;
    font-weight: bold;
  }

  .sgr-36_1m {
    color: #0086b3;
  }

  .sgr-36m {
    color: #2eb1dd;
    font-weight: bold;
  }
}

@media only screen and (max-width: 1000px) {
  table {
    display: block;
    overflow: auto;
  }

  .container {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  ul {
    padding-left: 1em;
  }

}


code {
  --light-yellow: #e5c07b;
  --dark-yellow: #d19a66;
  --blue: #61afef;
  --cyan: #56b6c2;
  --light-red: #e06c75;
  --dark-red: #be5046;
  --comment-gray: #5c6370;
  --magenta: #c678dd;
}

code.zig .string {
  color: var(--dark-yellow);
}

code.zig .variable,
code.zig .field {
  color: var(--light-yellow);
}

code.zig .keyword.function {
  color: var(--light-red);
}

code.zig .bracket {
  color: var(--cyan);
}

code.zig .function {
  color: var(--blue);
}

code.zig .builtin {
  color: var(--magenta);
}

code.zig .operator,
code.zig .qualifier,
code.zig .attribute {
  color: var(--light-red);
}

video {
  max-width: 100%;
}

#back {
  margin-top: 1em;
  display: inline-block;
}

code.python {
  color: var(--cyan);
}

code.python .punctuation {
  color: var(--cyan);
}

code.python .string {
  color: var(--dark-yellow);
}

code.python .variable,
code.python .parameter,
code.python .exception,
code.python .field {
  color: var(--light-yellow);
}

code.python .keyword.function {
  color: var(--light-red);
}

code.python .bracket {
  color: var(--cyan);
}

code.python .function {
  color: var(--blue);
}

code.python .builtin {
  color: var(--magenta);
}

code.python .number {
  color: var(--magenta);
}

code.python .operator,
code.python .qualifier,
code.python .keyword,
code.python .attribute {
  color: var(--light-red);
}
