/*****************************************************
WORKSHOP MODE

Live presentation bullet highlighting: when active, list items are revealed one
at a time using keyboard controls.

Internal — for instructors and grad students presenting, not documented for
site authors.

Loads:    every page
Used by:  the inline script in html/html-js.html

Note: as of this writing nothing can switch workshop mode on. The script is
gated on `page.url contains '/guides/'` or `page.workshop_mode`, and there is
no guides/ directory (the docs moved to /docs/) and no page sets the flag.
Set `workshop_mode: true` in a page's front matter to use it.
Needs:    base.css tokens (--overlay-dark, --text-on-photo, --font-mono)
Not here: the nav checkbox markup itself (nav/nav-top.html)
*****************************************************/

@media screen {

/* Base transition on all list items — enables smooth animation into highlighted state */
ul li {
  border-radius: var(--radius-sm);
  transition: background-color var(--transition-normal), border var(--transition-normal), transform var(--transition-normal);
}

/* Highlighted state — applied via JS during workshop presentations */
ul li.highlighted {
  /* Box Model */
  margin: var(--spacing-xs) 0;
  padding: var(--spacing-sm) var(--spacing-md);

  /* Typography */
  font-size: 1.15em;
  font-weight: 600;

  /* Visual */
  background-color: var(--warning-bg);
  border: 3px solid var(--warning);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-hover);
  transform: translateX(12px);
}

ul li.highlighted::marker {
  font-weight: bold;
  color: var(--warning);
}

/* Fixed overlay showing keyboard shortcut hints during workshop mode */
.workshop-controls {
  /* Positioning */
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1000;

  /* Box Model */
  padding: 10px 15px;

  /* Typography */
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-on-photo);

  /* Visual */
  background: var(--overlay-dark);
  border-radius: var(--radius-md);
  opacity: 0;

  /* Interactivity */
  transition: opacity var(--transition-normal);
}

.workshop-controls.visible {
  opacity: 1;
}

.workshop-controls.fade-out {
  opacity: 0;
}

} /* end media screen */
