/* @import url(plugin/highlight/monokai.css); */
@import url(plugin/highlight/vs2015.min.css);

:root {
  /* --color-accent-hue: 246;
  --color-accent: hsl(var(--color-accent-hue), 40%, 65%);
  --color-accent-text: hsl(var(--color-accent-hue) 100% 84%);
  --color-accent-background: hsl(var(--color-accent-hue) 18% 28%);
  --color-accent-shadow: hsla(var(--color-accent-hue), 18%, 28%, 0.2); */

  --r-background-color: #2b2b2b;
  --r-main-font: Lato, sans-serif;
  --r-main-font-size: 40px;
  --r-main-color: #eee;
  --r-block-margin: 20px;
  --r-heading-margin: 0 0 20px 0;
  --r-heading-font: League Gothic, Impact, sans-serif;
  --r-heading-color: var(--color-accent-text);
  --r-heading-line-height: 1.2;
  --r-heading-letter-spacing: normal;
  --r-heading-text-transform: uppercase;
  --r-heading-text-shadow: 0px 0px 6px var(--color-accent-shadow);
  --r-heading-font-weight: normal;
  --r-heading1-text-shadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb,
    0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0, 0, 0, 0.1),
    0 0 5px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.3),
    0 3px 5px rgba(0, 0, 0, 0.2), 0 5px 10px rgba(0, 0, 0, 0.25),
    0 20px 20px rgba(0, 0, 0, 0.15);
  --r-heading1-size: 3.77em;
  --r-heading2-size: 2.11em;
  --r-heading3-size: 1.55em;
  --r-heading4-size: 1em;
  --r-code-font: "Dejavu Mono", monospace;
  --r-link-color: #13daec;
  --r-link-color-dark: #0d99a5;
  --r-link-color-hover: #71e9f4;
  --r-selection-background-color: #ff5e99;
  --r-selection-color: #fff;

  --blender-orange: #e87d0d;
  --extra-accent: var(--r-link-color-dark);
}

table.invisible td,
table.invisible th {
  border: none;
}

.reveal code {
  padding: 0.1em 0.2em;
}

.reveal pre.code-wrapper code {
  max-height: 90vh;
}

/* .reveal pre.code-wrapper:has(code.fragment:not(.visible)) {
  box-shadow: none;
} */

.reveal pre.code-wrapper,
/* .reveal pre.code-wrapper code, */
.reveal code.bigger {
  font-size: 33px;
  line-height: 110%;
}

.reveal pre.code-wrapper code.smaller,
.reveal code.smaller {
  font-size: 120%;
}

.reveal div.codeblock:has(code.narrow) {
  width: 70%;
}


kbd,
h1 code,
h2 code,
h3 code,
h4 code,
h5 code,
h6 code,
p code,
li code,
td code {
  border-radius: 0.25em;
  background-color: var(--r-background-color);
  padding: 0.1em 0.3em;
  font: var(--r-code-font);
}

h2 code {
  font-size: 85%;
}

.highlightcurrent .fragment.visible {
  color: #aaa;
  transition: 500ms;
}

.highlightcurrent .fragment.visible.current-fragment {
  color: inherit;
  transition: 500ms;
}

#permanent {
  font-size: 40%;
  opacity: 0.75;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
  display: flex;
}

#permanent .atbottom {
  align-self: flex-end;
  /* border: 1px solid saddlebrown; */
}

#permanent .atbottom img {
  vertical-align: middle;
  margin: -0.5ex 1ex 0.2ex 0;
}

body.titleslide #permanent,
body.splash-screens #permanent,
body.blender-reel #permanent,
body.charge-credits #permanent,
body.people #permanent,
body.portraits #permanent,
body.blender-studio #permanent,
body.cat-purkour #permanent,
body.nologo #permanent {
  display: none;
}

.footnote {
  position: fixed;
  bottom: 0.5rem;
  left: 0.5rem;
  font-size: 16pt;
  display: none;
  color: rgba(255, 255, 255, 0.73);
}

body.blender-reel #footnote-blender-reel,
body.splash-screens #footnote-splash-screens,
body.charge-credits #footnote-charge-credits,
body.people #footnote-people,
body.blender-studio #footnote-blender-studio,
body.cat-purkour #footnote-cat-purkour {
  display: block;
}

body.reveal-viewport {
  background: rgb(30, 40, 45);
  background: -moz-radial-gradient(center,
      circle cover,
      rgb(60, 70, 80) 0%,
      rgb(30, 40, 45) 100%);
  background: -webkit-radial-gradient(center,
      circle cover,
      rgb(60, 70, 80) 0%,
      rgb(30, 40, 45) 100%);
  background: -o-radial-gradient(center,
      circle cover,
      rgb(60, 70, 80) 0%,
      rgb(30, 40, 45) 100%);
  background: -ms-radial-gradient(center,
      circle cover,
      rgb(60, 70, 80) 0%,
      rgb(30, 40, 45) 100%);
  background: radial-gradient(center,
      circle cover,
      rgb(60, 70, 80) 0%,
      rgb(30, 40, 45) 100%);
}

body.reveal-viewport.portraits {
  background: #202020;
}

strong {
  color: var(--blender-orange);
}

em {
  color: var(--extra-accent);
}

h3 strong {
  color: var(--extra-accent);
}

h1 img {
  vertical-align: middle;
  width: auto;
  height: 1.5em;
}

ul li,
ol li {
  margin-top: 0.5em;
}

ul.spaced li {
  margin-top: 1em;
}

img.blenderlogo {
  padding-left: 0.4em;
}

img.pythonlogo {
  padding-top: 0.4em;
}

.reveal small {
  vertical-align: middle;
}

.reveal img.r-stretch,
.reveal img.stretch {
  max-width: none;
  max-height: 100vh;
}

body.chapter-thanks p {
  margin-top: 4rem;
  margin-bottom: 4rem;
}


body.chapter-thanks dl,
body.chapter-thanks dl dt {
  clear: both;
  text-align: right;
}

body.chapter-thanks dl dt,
body.chapter-thanks dl dd {
  float: left;
  display: inline;
}

body.chapter-thanks dl dt {
  font-family: emoji, ui-monospace, monospace;
  width: 1em;
  text-align: center;
}

.chapter-slotted-actions img {
  height: 8em;
  filter: drop-shadow(0 0 0.9em rgba(0, 0, 0, 80%));
}

body.with-download-link #permanent {
  display: none;
}

body.with-download-link #footnote-with-download-link {
  display: block;
}

body.with-download-link #footnote-with-download-link img {
  vertical-align: middle;
  width: 300px;
  height: auto;
}

body.with-download-link #footnote-with-download-link a {
  padding-left: 1em;
  font-size: 300%;
  pointer-events: all;
}

.overlay {
  background-color: rgba(0, 0, 0, 60%);
  border-radius: 5rem;
  box-shadow: 0 0 3rem black;
  display: inline-block;
  padding: 2rem 4rem;
}
