/* Minimal tweaks to complement the Dracula theme */

.reveal .slides { font-size: 28px; }

.reveal h1,
.reveal h2,
.reveal h3 {
  letter-spacing: 0.5px;
  text-shadow: 0 0 8px rgba(189, 147, 249, 0.25), 0 0 16px rgba(80, 250, 123, 0.2);
}

/* Make H1 exactly 1.5x the H2 size */
.reveal {
  --r-heading1-size: calc(var(--r-heading2-size) * 1.5);
}

.reveal a { color: #50fa7b; }
.reveal a:hover { color: #8be9fd; }

/* Make code a tad larger and tighter */
.reveal pre code { font-size: 0.9em; line-height: 1.35; }

/* Subtle accent for the current slide number */
.reveal .slide-number { background: rgba(98, 114, 164, 0.18); }

/* (QR slide styles removed) */

/* Make dynamically injected follow URL links readable and breakable */
[data-follow-url] a {
  word-break: break-all;
  text-decoration: underline;
  color: #1a73e8 !important; /* traditional blue */
}
[data-follow-url] a:hover {
  color: #174ea6 !important; /* darker on hover */
}
[data-follow-url] a:visited {
  color: #551A8B !important; /* classic visited purple */
}

/* Logo grid on software remapping slide */
.reveal .logo-grid { display: grid; grid-template-columns: repeat(4, minmax(140px, 1fr)); gap: 16px; margin-top: calc(12px + 2em); align-items: center; }
.reveal .logo-item { text-align: center; font-size: 0.7em; color: #cfd2ea; }
.reveal .logo-item img { width: 48px; height: 48px; object-fit: contain; display: block; margin: 0 auto 6px; }

/* Diagram image sizing */
.reveal img.diagram, .reveal object.diagram { width: 100%; height: auto; margin-top: 8px; }

/* Clearfix for slides containing floated images */
.reveal section:after { content: ""; display: table; clear: both; }

/* Centered large slide image */
.reveal img.img-center {
  display: block;
  margin: 0.5rem auto;
  max-width: 75%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 6px 22px rgba(0,0,0,0.25);
}
