/* web/venue3d.css — Escena 3D dentro de las tarjetas de espacio (Salón Platino / Gran Arena) */
.ev-v3d-stage-box { height: 236px; }
.ev-v3d-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; opacity: 0; touch-action: pan-y; cursor: grab; transition: opacity 0.8s ease; outline: none; }
.ev-v3d-canvas:active { cursor: grabbing; }
.ev-v3d-canvas.is-live { opacity: 1; }
/* con la escena viva, la foto se atenúa y el resplandor/zoom decorativos sobran */
.ev-v3d-stage-box.v3d-live .ev-v3d-bg { opacity: 0; transition: opacity 0.8s ease 0.4s; transform: none !important; }
.ev-v3d-stage-box.v3d-live .ev-v3d-platino-glow { display: none; }
.ev-v3d-stage-box.v3d-live .ev-v3d-load { opacity: 0; visibility: hidden; }
/* el degradado del fondo se aligera para que la escena se vea */
.ev-v3d-stage-box.v3d-live .ev-v3d-overlay { background: linear-gradient(180deg, rgba(10, 7, 22, 0.42) 0%, rgba(10, 7, 22, 0) 28%, rgba(10, 7, 22, 0.1) 55%, rgba(10, 7, 22, 0.88) 100%); }
.ev-v3d-load { position: absolute; z-index: 4; left: 50%; top: 50%; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 99px; background: rgba(10, 7, 22, 0.6); backdrop-filter: blur(8px); border: 1px solid rgba(255, 255, 255, 0.18); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; transition: opacity 0.4s; pointer-events: none; }
.ev-v3d-load i { color: var(--vc, #F4C95D); animation: v3dSpin 1.6s linear infinite; }
@keyframes v3dSpin { to { transform: rotate(360deg); } }
.ev-v3d-hud-top, .ev-v3d-hud-mid, .ev-v3d-selected-stamp, .ev-v3d-presets { pointer-events: none; }
.ev-v3d-presets { position: absolute; z-index: 6; right: 10px; top: 52px; display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.ev-v3d-presets button { pointer-events: auto; display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 32px; min-width: 32px; padding: 0 9px; border-radius: 99px; border: 1px solid rgba(255, 255, 255, 0.2); background: rgba(10, 7, 22, 0.62); backdrop-filter: blur(8px); color: rgba(255, 255, 255, 0.9); font-family: inherit; font-size: 0; font-weight: 800; letter-spacing: 0.04em; cursor: pointer; transition: 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
.ev-v3d-presets button i { color: var(--vc, #F4C95D); font-size: 13px; }
.ev-v3d-presets button.on { font-size: 10.5px; padding: 0 12px 0 10px; background: var(--vc, #F4C95D); border-color: transparent; color: #1B1400; box-shadow: 0 4px 14px var(--vc-glow, rgba(244, 201, 93, 0.4)); }
.ev-v3d-presets button.on i { color: #1B1400; }
.ev-v3d-presets button:active { transform: scale(0.92); }
@media (prefers-reduced-motion: reduce) { .ev-v3d-canvas, .ev-v3d-load i { transition-duration: 0.01ms; animation: none; } }
