/* v38_ultra.css — 3HESS V38 Styles */

/* ===== COMPASS (Hurricane) ===== */
/* Compass styles are injected inline by v38_patch.js */

/* ===== MANOIR HUD ===== */
#v38ManoirHUD {
  position: fixed; top: 8px; left: 50%; transform: translateX(-50%);
  background: rgba(20,15,10,0.88); color: #ffcc88;
  padding: 6px 18px; border-radius: 8px;
  font-size: 13px; font-weight: bold; z-index: 9990;
  border: 1px solid rgba(255,170,50,0.3);
  text-shadow: 0 0 4px #ff8800; letter-spacing: 0.5px;
  pointer-events: none;
  animation: v38hudIn 0.5s ease;
}
@keyframes v38hudIn { from { opacity:0; transform:translateX(-50%) translateY(-10px); } }

/* ===== MANOIR ROOM OVERLAY ===== */
.v38-room-overlay {
  position: absolute; pointer-events: none;
  border: 2px solid rgba(255,170,50,0.15);
  border-radius: 4px;
  background: rgba(255,170,50,0.03);
}

/* ===== BOMB IMPACT FLASH ===== */
@keyframes v38bombFlash {
  0% { box-shadow: 0 0 0 rgba(255,100,0,0); }
  30% { box-shadow: 0 0 60px 30px rgba(255,100,0,0.6); }
  100% { box-shadow: 0 0 0 rgba(255,100,0,0); }
}
.v38-bomb-impact {
  animation: v38bombFlash 0.8s ease-out;
}

/* ===== HURRICANE WIND OVERLAY ===== */
@keyframes v38windPulse {
  0%, 100% { opacity: 0.05; }
  50% { opacity: 0.15; }
}
.v38-wind-overlay {
  position: fixed; inset: 0; pointer-events: none; z-index: 9000;
  background: linear-gradient(135deg, transparent 40%, rgba(68,170,255,0.08) 60%, transparent 80%);
  animation: v38windPulse 3s ease infinite;
}

/* ===== AURAGON KAMEHAMEHA SCREEN FLASH ===== */
@keyframes v38kameFlash {
  0% { opacity: 0; }
  15% { opacity: 0.4; }
  100% { opacity: 0; }
}
.v38-kame-flash {
  position: fixed; inset: 0; pointer-events: none; z-index: 9500;
  background: radial-gradient(circle, rgba(68,170,255,0.5), transparent 70%);
  animation: v38kameFlash 1s ease-out forwards;
}

/* ===== ZOMBIE ATMOSPHERE ===== */
.v38-zombie-fog {
  position: fixed; inset: 0; pointer-events: none; z-index: 8000;
  background: radial-gradient(ellipse at center, transparent 30%, rgba(10,8,8,0.3) 100%);
}

/* ===== MANOIR DARK THEME ===== */
body.v38-manoir-theme {
  background: #0a0808 !important;
}
body.v38-manoir-theme #board3d {
  filter: brightness(0.85) contrast(1.1);
}

/* ===== KEY PICKUP NOTIFICATION ===== */
@keyframes v38keyPop {
  0% { transform: translateX(-50%) scale(0.5); opacity: 0; }
  40% { transform: translateX(-50%) scale(1.15); opacity: 1; }
  100% { transform: translateX(-50%) scale(1); opacity: 0; }
}
.v38-key-notif {
  position: fixed; top: 50px; left: 50%; transform: translateX(-50%);
  background: rgba(255,200,50,0.9); color: #1a1000;
  padding: 8px 24px; border-radius: 12px;
  font-size: 16px; font-weight: bold; z-index: 9999;
  animation: v38keyPop 1.5s ease forwards;
  pointer-events: none;
}

/* ===== DOOR UNLOCK NOTIFICATION ===== */
@keyframes v38doorOpen {
  0% { transform: translateX(-50%) scaleX(0); }
  50% { transform: translateX(-50%) scaleX(1.1); }
  100% { transform: translateX(-50%) scaleX(1); opacity: 0; }
}
.v38-door-notif {
  position: fixed; top: 50px; left: 50%; transform: translateX(-50%);
  background: rgba(92,58,33,0.9); color: #ffcc88;
  padding: 8px 24px; border-radius: 12px;
  font-size: 16px; font-weight: bold; z-index: 9999;
  animation: v38doorOpen 2s ease forwards;
  pointer-events: none;
}

/* ===== MODE INDICATOR ENHANCEMENTS ===== */
#modeIndicator.active {
  animation: v38modeGlow 2s ease infinite;
}
@keyframes v38modeGlow {
  0%, 100% { text-shadow: 0 0 4px currentColor; }
  50% { text-shadow: 0 0 12px currentColor, 0 0 20px currentColor; }
}

/* ===== PUSH TRAIL OVERLAY (2D fallback) ===== */
.v38-push-arrow {
  position: absolute; pointer-events: none;
  color: #44ddff; font-size: 24px;
  text-shadow: 0 0 8px #44ddff;
  animation: v38arrowFade 1.5s ease forwards;
}
@keyframes v38arrowFade {
  0% { opacity: 1; transform: scale(1.2); }
  100% { opacity: 0; transform: scale(0.8); }
}
