/* Doom 98 — 4:3 stage letterboxed in black, crisp pixel scaling */
.dm98 { position: relative; width: 100%; height: 100%; min-height: 0; background: #000; overflow: hidden; outline: none; user-select: none; -webkit-user-select: none; }
.dm98-stage { position: absolute; left: 0; top: 0; width: 320px; height: 240px; }
.dm98-view, .dm98-over { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.dm98-view { image-rendering: pixelated; image-rendering: crisp-edges; cursor: crosshair; }
.dm98-over { pointer-events: none; }
.dm98-hint { position: absolute; left: 50%; bottom: 18%; transform: translateX(-50%); max-width: 90%; padding: 4px 10px; background: rgba(0, 0, 0, .65); color: #e8c890; font: bold 12px Tahoma, Arial, sans-serif; border: 1px solid #6a2010; opacity: 0; transition: opacity .4s; pointer-events: none; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dm98-hint.on { opacity: 1; }
