/* ── Deck framework · cookie banner (analytics.js) ───────────────────────────
   Bottom-left, just above the deck's tools; the autopilot keeps the bottom-
   right and its caption the bottom-centre. Theme tokens, with fallbacks for a
   page whose design names fewer of them (the replay). Above the deck chrome
   (100) and the autopilot (150), below the overlays (400). */

.deck-consent {
  position: fixed; z-index: 160;
  left: clamp(10px, 1.8vw, 22px);
  bottom: calc(clamp(10px, 1.8vh, 22px) + 48px);
  /* on a phone, it stops short of the autopilot's mascot in the right corner */
  width: min(360px, calc(100vw - 2 * clamp(10px, 1.8vw, 22px) - 64px));
  display: none; padding: 12px 14px; border-radius: 12px;
  background: var(--surface, #fff); color: var(--text, #222);
  border: 1px solid var(--line, rgba(0, 0, 0, .15));
  box-shadow: 0 10px 30px -12px rgba(0, 0, 0, .35);
  font-family: var(--font-body, system-ui, sans-serif); font-size: 13px; line-height: 1.45;
}
.deck-consent.is-on { display: block; }
.deck-consent p { margin: 0 0 10px; }
.deck-consent__acts { display: flex; gap: 8px; }
.deck-consent__acts button {
  flex: 1; padding: 7px 10px; border-radius: 8px; cursor: pointer;
  font: inherit; font-weight: 600;
  background: transparent; color: var(--text-strong, inherit);
  border: 1px solid var(--line, rgba(0, 0, 0, .2));
}
.deck-consent__acts button:hover,
.deck-consent__acts button:focus-visible { border-color: var(--accent, currentColor); }

/* a page's own withdrawal link ([data-consent-link], hidden until this runs) */
.deck-consent-foot { margin: 0 auto 72px; text-align: center; }
.deck-consent-link {
  padding: 0; border: 0; background: none; cursor: pointer;
  font: inherit; font-size: 13px; color: var(--muted, inherit); text-decoration: underline;
}

/* the deck's withdrawal entry, under the slide list */
.deck-toc__consent { border-top: 1px solid var(--line); margin-top: 6px; padding-top: 12px; }
