/* @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;

  --bold-color: #e4c129;
  --extra-accent: #6dd5f4;
  --breadcrumbs: #7ba6b3;
}

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: 90%;
}

.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%;
}

h3.breadcrumb {
  --shadow-color: rgba(0, 0, 0, 60%);
  color: var(--breadcrumbs);
  text-shadow: 0 0 4px black;
  text-shadow:
    0 0 1px var(--shadow-color),
    0 0 6px var(--shadow-color),
    0 0 1ex var(--shadow-color);
  margin: 0;
}

h1.more-space,
h2.more-space,
h3.more-space,
h4.more-space,
h5.more-space,
h6.more-space {
  margin-bottom: 1em;
}

h3.breadcrumb.previous {
  text-align: left;
  left: 0;
  position: fixed;
  top: 0;
}

h3.breadcrumb.previous::before {
  content: "←";
}

h3.breadcrumb.next {
  text-align: right;
  right: 0;
  position: fixed;
  bottom: 0;
}

h3.breadcrumb.next::after {
  content: "→";
}

h3.breadcrumb.over-image {
  --shadow-color: rgba(0, 0, 0, 100%);
}

.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: -3ex 1ex 0.2ex 0;
}

body.titleslide #permanent,
body.will-anderson-cat-credits #permanent,
body.blogpost-qr #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);
}

.footnote img {
  vertical-align: text-bottom;
  margin: 0 1ex 0 0;
}

body.will-anderson-cat-credits #footnote-will-anderson-cat-credits {
  display: block;
}

body.blogpost-qr #footnote-blogpost-qr {
  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(--bold-color);
}

em {
  color: var(--extra-accent);
}

h3 strong {
  color: var(--extra-accent);
}


h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {
  text-shadow: 0 0 0.3rem fuchsia;
}

strong {
  text-shadow: 0 0 0.15rem fuchsia;
}


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;
}

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: bottom;
  width: 300px;
  height: auto;
  margin: 0;
}

body.with-download-link #footnote-with-download-link a {
  padding-left: 1em;
  font-size: 200%;
  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;
}

/* SVG overlay stuff */

.overlay-container {
  position: relative;
}

.overlay-container svg {
  position: absolute;
  top: 0;
  left: 0;
}

.overlay-container svg rect {
  fill: #8bdc0020;
  stroke: #8bdc00;
  stroke-width: 2px;
}

/* Halving the screen */

div.halver {
  display: flex;
}

div.halver.centered {
  align-items: center;
  /* justify-content: space-around; */
}

div.halver>div {
  flex: 1;
}

.video_container {
    position: relative;
    margin: 0 auto;
}

.video_container video {
    width: 80%;
    height: 80%;
    display: block;
    object-fit: cover;
}

.author_profiles {
    position: absolute;
    top: 15px;
    left: 15px;
    padding: 5px;

    display: flex;
    flex-direction: column;
    gap: 5px;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 32px;
}

.author_profiles img {
  width: 60px;
  height: auto;
  margin: 0;
  border-radius: 30px;
  align-self: center;
}

.author_list img {
  width: 60px;
  height: auto;
  margin: 0;
  border-radius: 30px;
  vertical-align: center;
}
