/* Slide view only: Reveal's fixed 1280×720 canvas. Components come from deck.css
   (inside app.css); this file sets the slide-scale type and layout and Reveal's chrome. */

.reveal-viewport { background: var(--paper); }

.reveal {
  font-family: var(--font-sans);
  font-size: 27px;
  color: var(--ink);
  line-height: 1.45;
}
.reveal ::selection { background: var(--amber-soft); }
.reveal .slides { text-align: left; }
.reveal .slides section { padding: 8px 18px; box-sizing: border-box; }

.reveal h1 { font-size: 2.3em; }
.reveal h2 { font-size: 1.55em; }

.reveal .cols { grid-template-columns: 1fr 1fr; }
.reveal .cols.wide-left { grid-template-columns: 1.4fr 1fr; }
.reveal .cols.wide-right { grid-template-columns: 1fr 1.4fr; }
.reveal .cols-3 { grid-template-columns: repeat(3, 1fr); gap: 0.9em; }
.reveal .cols-4 { grid-template-columns: repeat(4, 1fr); gap: 0.8em; }

.reveal pre code { max-height: 460px; }
.reveal img.fig { max-height: 440px; }
.reveal img.fig.short { max-height: 340px; }
.reveal img.fig.tall { max-height: 540px; }

.reveal section.cover { padding-top: 120px; }
.reveal section.divider { padding-top: 210px; }
.reveal .fragment.highlight-teal.visible { color: var(--teal); }

/* ---------- Chrome: back link, slide number, progress ---------- */
.deck-footer {
  position: fixed;
  left: 22px;
  bottom: 12px;
  display: flex;
  gap: 1.25em;
  font-family: var(--font-sans);
  font-size: 12px;
  letter-spacing: 0.06em;
  z-index: 30;
}
.deck-footer a { color: #8a91a0; text-decoration: none; }
.deck-footer a:hover, .deck-footer a:focus-visible { color: var(--teal); text-decoration: underline; }
.reveal.has-dark-background ~ .deck-footer a { color: rgb(255 255 255 / 0.5); }
.reveal .slide-number a { color: inherit; text-decoration: none; }
.reveal .slide-number { background: transparent; color: #8a91a0; font-family: var(--font-sans); font-size: 12px; right: 18px; bottom: 10px; }
.reveal.has-dark-background .slide-number { color: rgb(255 255 255 / 0.5); }
.reveal .progress { color: var(--teal); height: 4px; }
.reveal .controls { color: var(--teal); }

@media print {
  .deck-footer { display: none; }
}
