#include<string>
#include<vector>
#include<iostream>
#include<algorithm>

using namespace std;

int main()
{
	int n;
	while(cin>>n,n){
		vector<string> field(n,string(n,' '));
		vector< vector<int> > dp(n,vector<int>(n));
		for(int i=0;i<n;i++)	cin>>field[i];

		for(int i=0;i<n;i++)	dp[i][0]=field[i][0]=='.'?1:0;
		for(int i=0;i<n;i++)	dp[0][i]=field[0][i]=='.'?1:0;
		for(int i=1;i<n;i++){
			for(int j=1;j<n;j++){
				if(field[i][j]=='*')	dp[i][j]=0;
				else	dp[i][j]=min(min(dp[i-1][j],dp[i][j-1]),dp[i-1][j-1])+1;
			}
		}

		int ans=0;
		for(int i=0;i<n;i++)for(int j=0;j<n;j++)ans=max(ans,dp[i][j]);
		cout<<ans<<endl;
	}

	return 0;
}