.reveal section img.plain { background:none; border:none; box-shadow:none; margin: 0}
.reveal .slides section .container{
    display: flex;
    flex-flow: row;
}
.reveal .slides section .col {
    flex: 1;
    margin-left: 10px;
    margin-right: 10px;
    flex-grow: 1;
    text-align: left;
}

.reveal .slides section .col.fragment.nospace {
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    max-width: 0px;
    width: none;
    flex-grow: 0.00000001;
    will-change: max-width, width, opacity;
    transition: none;
}

.reveal .slides section .col.fragment.nospace.animate {
    transition: width .2s, max-width .2s, flex-grow .15s, opacity .2s 0.2s;
}

.reveal .slides section .col.fragment.nospace.animate.slow {
    transition: width 2s, max-width 2s, flex-grow 1.5s, opacity 1s 0.7s;
}

.reveal .slides section .col.fragment.nospace.visible {
    opacity: 1;
    visibility: inherit;
    max-width: 100%;
    width: auto;
    flex-grow: 1;
    will-change: max-width, width, opacity;
}

.cite {font-size: 0.5em;
        color: lightgray;
        vertical-align: top}
.la {text-align: left;}

.reveal .slides formula,
.reveal .slides div.formula {
    padding: 0.3em;
    margin: 0.5em;
    background-color: white;
    border-style: solid;
    border-radius: 0.1em;
    border-width: 0.1em;
    border-color:gray;
    display: inline-block;
}

.reveal .slides div.center {
    display: inline-block;
    margin: 0 auto;
}

.reveal .slides figure.center,
.reveal .slides formula.center {
    display: table;
    margin: 0.5em auto;
}

.reveal .slides div.formula .MathJax_Display,
.reveal .slides formula .MathJax_Display {
margin: 0;
font-size: 1em;
}

.reveal .slides formula title,
.reveal .slides div.formula .title{
    float: right;
    color: white;
    font-size: small;
    background-color: gray;
    padding-left: 0.7em;
    padding-right: 0.7em;
    display: block;
    transform: translate(0.7em, 0.7em);
    width: 100%;
}

.reveal .slides figure {
    padding: 0.3em;
    margin: 0.5em;
    background-color: var(--color-atomiq-grey20);
    border-style: solid;
    border-radius: 0.1em;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-width: 0.1em;
    border-color:var(--color-b40);
    display: table;
    box-shadow: rgba(50, 50, 93, 0.26) 1px 14px 28px -6px, rgba(0, 0, 0, 0.31) 1px 9px 17px -9px;
}

.reveal .slides figure img {
margin: 0;
font-size: 1em;
max-width: 100%;
display: table;
}

.reveal .slides figure figcaption{
    color: black;
    font-size: 0.5em;
    background-color: var(--color-b40);
    padding-left: 0.7em;
    padding-right: 0.7em;
    border-style: solid;
    border-radius: 0.2em;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-width: 0.2em;
    border-color:var(--color-b40);
    display: table-caption;
    caption-side: bottom;

    right: 0;
    transform: translateY(-40%) translateX(40px);
    padding: 15px;
    background: white;
    box-shadow: rgba(50, 50, 93, 0.26) 1px 14px 28px -6px, rgba(0, 0, 0, 0.31) 1px 9px 17px -9px;
    width: 60%;
}

.reveal .slides div.notebook,
.reveal .slides div.paper,
.reveal .slides div.beispiel {
    padding: 0.3em;
    margin: 0.2em;
    background-color: white;
    width: 100%;
    border-style: solid;
    border-radius: 0.1em;
    border-width: 0.2em;
    border-color: var(--color-a80);
    display: inline-block;
    font-size: 0.6em;
}

.reveal .slides div.paper {
    border-color: var(--color-b80);
}

.reveal .slides div.notebook::before,
.reveal .slides div.paper::before,
.reveal section div.beispiel::before {
    display: block;
    content: var(--dict-example);
    background: var(--color-a80);
    color: #ffffff;
    padding: 0.3em;
    margin: -0.4em;
    margin-bottom: 0.5em;
    text-align: left;
}

.reveal .slides div.notebook::before {
    content: "IPython Notebook (" attr(src) ")"
}

.reveal .slides div.paper::before {
    background: var(--color-b80);
    content: "Veröffentlichung : " attr(ref)
}

.reveal .slides div.paper>h4 {
    color: black;
    font-size: 1.5em;
}

.reveal .slides div.notebook:first-child a {
    float: right;
    font-size: 2em;
}

.reveal .slides div.notebook a {
    margin: 0 0.3em;
}


.reveal .slides div.notebook img {
    margin: 0;
    width: auto;
    max-width: 100%;
}

.reveal .slides div.notebook .title,
.reveal .slides div.paper .title,
.reveal .slides div.beispiel .title{
    float: right;
    text-align: right;
    color: white;
    font-size:smaller;
    background-color: var(--color-a80);
    padding-left: 0.5em;
    padding-right: 0.5em;
    display: block;
    transform: translate(0.5em, -2em);
}

.reveal .slides div.paper .title {
    background-color: var(--color-b80);
}

.reveal .slides div.box,
.reveal .slides div.wichtig {
    padding: 0.6em;
    margin: 0.2em;
    background-color: rgba(255,255,255,0.5);
    border-color: var(--color-highlight);
    border-style: solid;
    border-radius: 0.5em;
    border-width: 0.1em;
    display: inline-block;
    box-shadow: rgba(50, 50, 93, 0.26) 1px 14px 28px -6px, rgba(0, 0, 0, 0.31) 1px 9px 17px -9px
  }

.reveal .slides div.wichtig {
    font-weight: bold;
    color: var(--color-atomiq-grey80);
    border-width: 0em;
    margin: 0.7em;
    background-color: var(--color-highlight);
}

#vorlesungen *:not(a)>.fa-video {
    color: lightgray;
}

.reveal blockquote{
    font-size: 0.8em;
    width:60%;
    margin:50px auto;
    font-family:Open Sans;
    font-style:italic;
    padding:1.2em 30px 1.2em 75px;
    border-left:8px solid var(--color-a);
    line-height:1.6;
    position: relative;
    background:white;
    display: inline-block;
  }

.reveal blockquote::before{
    font-family:Arial;
    content: "\201C";
    color: var(--color-a60);
    font-size:4em;
    position: absolute;
    left: 10px;
    top:-10px;
  }

.reveal blockquote::after{
    content: '';
  }

.reveal blockquote cite{
    display:block;
    color:#333333;
    font-style: normal;
    font-weight: bold;
    margin-top:1em;
    font-size: 0.8em;
  }

.reveal h1.highlight,
.reveal h2.highlight,
.reveal h3.highlight,
.reveal h4.highlight,
.reveal h5.highlight,
.reveal h6.highlight {
    color: var(--color-highlight);
}

.reveal ul.advantages li {
    list-style: none;
    margin-bottom: 0.5em
}

.reveal ul.advantages li:before {
    content: "+";
    margin-right: 5px;
    border-style: none;
    position:relative;
    left: -1em;
    top: 0;
}

.reveal ul.disadvantages li {
    list-style: none;
    margin-bottom: 0.5em
}

.reveal ul.disadvantages li:before {
    content: "-";
    margin-right: 5px;
    border-style: none;
    position:relative;
    left: -1em;
    top: 0;
}

.svg-container {
  width: 100%;
  height: 100%;
  max-width: 100vw;
  max-height: 100vh;
}
.svg-container svg,
.svg-container p {
  width: 100% !important;
  height: 100% !important;
  max-width: 100vw;
  max-height: 100vh;
}

.reveal ul.logos {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    padding-left: 0;
    margin: 0;
}

.reveal ul.plain > li::before,
.reveal ul.logos > li::before {
    border: 0;
    left: 0;
    top: 0;
    content:none
}

.reveal ul.logos > li {
    list-style: none;
    display: inline-block;
    width: calc(100% / 5);
    height: 120px;
    text-align: center;
}

.reveal ul.logos.row3 > li {
    width: calc(100% / 3);
}

.reveal ul.logos.row5 > li {
    width: calc(100% / 5);
}

.reveal ul.logos img {
    margin: 0;
}

.reveal ul.iconlist li {
    font-size: 0.8em;
    margin-bottom: 0.5em
}

.reveal ul.iconlist li>:first-child {
    font-size: 1.2em;
    margin-right: 0.3em
}

/* Progressive "one machine" stack diagram (webinar 2026-07) */
.reveal .slides section .atomiq-stack {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0.5em;
    width: 100%;
    max-width: 640px;
    margin: 1em auto;
}

.reveal .slides section .atomiq-stack .stack-rows {
    display: flex;
    flex-direction: column;
    gap: 0.35em;
    flex: 1;
}

.reveal .slides section .atomiq-stack .stack-layer {
    display: flex;
    align-items: center;
    gap: 0.5em;
    padding: 0.35em 0.7em;
    border-radius: 8px;
    font-size: 0.85em;
    border: 2px solid var(--color-atomiq-grey40);
    color: var(--color-atomiq-grey);
    background: var(--color-atomiq-grey20);

}

.reveal .slides section .atomiq-stack .stack-layer i {
    width: 1.2em;
    text-align: center;
}

.reveal .slides section .atomiq-stack .stack-layer.lit {
    border-color: var(--color-highlight);
    background: var(--color-highlight);
    color: #ffffff;
    font-weight: bold;
}

/* "we will do this next" -- covered later in the talk, not yet */
.reveal .slides section .atomiq-stack .stack-layer.next {
    border-color: var(--color-a);
    background: var(--color-a);
    color: #ffffff;
    font-weight: bold;
}

/* realtime / non-realtime rail -- groups consecutive layers and brackets them */
.reveal .slides section .atomiq-stack .stack-rt-rail {
    display: flex;
    flex-direction: column;
    gap: 0.35em;
    width: 1.1em;
}

.reveal .slides section .atomiq-stack .rt-group {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 0.5em;
    border-left: 3px solid var(--rt-color, var(--color-atomiq-grey60));
}

.reveal .slides section .atomiq-stack .rt-group::before,
.reveal .slides section .atomiq-stack .rt-group::after {
    content: "";
    position: absolute;
    left: 0;
    width: 0.5em;
    height: 3px;
    background: var(--rt-color, var(--color-atomiq-grey60));
}

.reveal .slides section .atomiq-stack .rt-group::before {
    top: 0;
}

.reveal .slides section .atomiq-stack .rt-group::after {
    bottom: 0;
}

.reveal .slides section .atomiq-stack .rt-group.is-realtime {
    --rt-color: var(--color-a);
}

.reveal .slides section .atomiq-stack .rt-group .rt-label {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-size: 0.55em;
    letter-spacing: 0.05em;
    white-space: nowrap;
    color: var(--rt-color, var(--color-atomiq-grey60));
}

/* Larger variant for the standalone climax slide (C8) and the roadmap intro */
.reveal .slides section .atomiq-stack.atomiq-stack-large {
    max-width: 1100px;
    gap: 0.9em;
}

.reveal .slides section .atomiq-stack.atomiq-stack-large .stack-layer.next {
  padding-right: 0.5em;
}

.reveal .slides section .atomiq-stack.atomiq-stack-large .stack-layer {
    gap: 0.6em;
    padding: 0.5em 1.5em;
    border-radius: 10px;
    font-size: 1.3em;
}

.reveal .slides section .atomiq-stack.atomiq-stack-large .stack-rt-rail {
    width: 2em;
}

.reveal .slides section .atomiq-stack.atomiq-stack-large .rt-group .rt-label {
    font-size: 0.85em;
}

.imgbox {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: 38% 62%;
  grid-template-areas: "image" "text";

  border-radius: 0.5em;
  margin:30px;
  height:100%;
  padding: 0em;
  background-color: rgba(255,255,255,0.5);
  box-shadow: rgba(50, 50, 93, 0.26) 1px 14px 28px -6px, rgba(0, 0, 0, 0.31) 1px 9px 17px -9px
}
.imgbox-image {
  grid-area: image;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  background-size: cover;
}

.imgbox-text {
  grid-area: text;
  margin: 25px;
}
.imgbox-text p {
  color: grey;
  font-size:15px;
  font-weight: 300;
}
.imgbox-text h2 {
  margin-top:0px;
  font-size:28px;
}

.reveal .heading-list li{
  margin: 1em 0;
}
.reveal .heading-list li::marker {
  font-weight: bold;
  color: var(--color-atomiq-blue);
}
svg.shadow,
svg .shadow{
  filter: drop-shadow(1px 2px 1px rgb(0 0 0 / 0.4));
}
.vrule {
    border-left: 2px solid var(--color-atomiq-grey);
    padding-left: 1em;
}

hr {
    border: 1px solid var(--color-atomiq-grey);
}

/* flow diagram (data column) */
.flow-diagram {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 1.2em;
}
.flow-node {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.8em 1.2em;
    border: 2px solid var(--color-atomiq-grey80);
    border-radius: 0.4em;
    background: var(--color-atomiq-grey20);
    min-width: 160px;
    text-align: center;
    box-shadow: rgba(50, 50, 93, 0.26) 1px 14px 28px -6px, rgba(0, 0, 0, 0.31) 1px 9px 17px -9px
}
.flow-node.flow-optional {
    border-style: dashed;
    color: var(--color-atomiq-grey);
    background: transparent;
}
.flow-arrow {
    font-size: 2em;
    color: var(--color-atomiq-grey80);
    line-height: 1;
}
.flow-fork {
    display: flex;
    flex-direction: column;
    gap: 0.8em;
}
