/* ============ VISOR DE FOTOS (se abre al tocar un plato) ============ */
.visor{position:fixed;inset:0;z-index:100;background:rgba(26,8,7,.95);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:60px 12px 20px;overflow-y:auto}
.visor-cerrar{position:absolute;top:10px;right:10px;width:48px;height:48px;border:0;border-radius:50%;background:rgba(229,223,211,.12);color:var(--hueso);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.visor-cerrar:hover{background:rgba(229,223,211,.25)}
.visor-escenario{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:1000px;flex:1 1 auto;min-height:0;max-height:62vh}
.visor-foto{max-width:100%;max-height:62vh;object-fit:contain;display:block;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.visor-sin-foto{width:min(90vw,62vh);aspect-ratio:1/1;background:repeating-linear-gradient(135deg,#D3CAC0 0 12px,var(--piedra) 12px 24px);display:flex;align-items:center;justify-content:center;font-family:ui-monospace,Menlo,monospace;font-size:14px;color:#5A3A36}
.visor-flecha{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:0;border-radius:50%;background:rgba(59,21,20,.75);color:var(--hueso);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.visor-flecha:hover{background:var(--terracota)}
.visor-flecha--izquierda{left:4px}
.visor-flecha--derecha{right:4px}

/* Datos del plato */
.visor-info{width:100%;max-width:640px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 8px;color:var(--hueso);text-align:center}
.visor-categoria{font-family:var(--fuente-titulos);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--rosa)}
.visor-nombre{margin:0;font-family:var(--fuente-texto);font-weight:700;font-size:clamp(24px,6.5vw,34px);line-height:1.1;color:var(--crema);text-wrap:balance}
.visor-descripcion{margin:0;font-size:clamp(16px,4.4vw,19px);line-height:1.45;color:var(--hueso);text-wrap:pretty}
.visor-detalle{font-size:16px;font-weight:600;color:var(--rosa)}
.visor-pedir{margin-top:6px;padding:12px 22px;box-shadow:0 3px 0 #000}
