/* Own Ask-derived ASCII, authentic SVG and restrained coffee/cream lighting. */
.stage-ascii.stage02-mounted {
  background: radial-gradient(ellipse at 50% 46%, color-mix(in srgb, var(--ink) 4%, transparent), transparent 70%), var(--paper);
  color: var(--ink);
}
.stage-ascii.stage02-mounted .ascii-field,
.stage-ascii.stage02-mounted .ascii-center {
  display: none;
}
.stage02-ascii-canvas,
.stage02-ascii-fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.stage02-ascii-canvas {
  z-index: 1;
  display: block;
  opacity: 0;
  touch-action: pan-y;
  cursor: grab;
}
.stage02-ascii-canvas:active { cursor: grabbing; }
.stage02-ascii-fallback {
  z-index: 0;
  display: block;
  width: min(80%, 780px);
  height: auto;
  max-height: 74%;
  margin: auto;
  object-fit: contain;
  pointer-events: none;
}
.stage-ascii.stage02-ready .stage02-ascii-canvas { opacity: 1; }
.stage-ascii.stage02-ready .stage02-ascii-fallback { display: none; }
.stage-ascii.stage02-mounted .stage-caption,
.stage-ascii.stage02-mounted .stage-stamp { z-index: 3; }
@media (max-width: 800px) {
  .stage02-ascii-fallback { width: 88%; }
}
@media (prefers-reduced-motion: reduce) {
  .stage02-ascii-canvas { transition: none; }
}
