#include<bits/stdc++.h>
using namespace std;
string str[1000];
int serch(int now,int y,int x,int maxe)
{
    if(maxe==now+x)return 1;
    for(int i=1;;i++){
        if(str[y+i][x+now]=='*'||str[y+now][x+i]=='*')return 1;
        if(y+i==y+now)return serch(now+1,y,x,maxe)+1;
    }
}
int main()
{
    int n;
    while(cin>>n,n){
        for(int i=0;i<n;i++)cin>>str[i];
        int ans=0;
        for(int i=0;i<n-ans;i++){
            for(int j=0;j<n-ans;j++){
                    if(str[i][j]=='.'){
                        int kawa=0;
                        for(int k=j+1,l=i+1;kawa!=1;k++,l++){
                            if(k-j>ans)kawa=1;
                            if(k==n||l==n)break;
                            if(str[i][k]=='*'||str[l][j]=='*')break;
                        }
                        if(kawa==1)ans=max(serch(1,i,j,n),ans);
                    }
            }
        }
        cout<<ans<<endl;
    }
}