#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <ctime>
#include <iostream>
#include <algorithm>
#include <sstream>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <utility>
#include <cctype>
using namespace std;

#define rep(i,n) for(int (i)=0; (i)<(int)(n); ++(i))
#define foreach(c,i) for(__typeof((c).begin()) i=(c).begin();i!=(c).end();i++)

int n, dp[1002][1002];
string in[1002];

void solve() {
  memset(dp, 0, sizeof dp);
  if(in[0][0]=='.') dp[0][0]=1;
  for(int i=1;i<n;++i) {
    dp[0][i]=in[0][i]=='.'?1:0;
    dp[i][0]=in[i][0]=='.'?1:0;
  }
  int ans = 0;
  for(int i=1;i<n;++i) {
    for(int j=1;j<n;++j) {
      if(in[i][j]=='*') continue;
      dp[i][j]=min(dp[i-1][j-1], min(dp[i-1][j],dp[i][j-1]))+1;
      ans=max(ans,dp[i][j]);
    }
  }
  // rep(i,n) {
  //   rep(j,n) printf("%3d",dp[i][j]); puts("");
  // }
  printf("%d\n",ans);
}

int main() {
  while (cin>>n,n) {
    rep(i,n) cin>>in[i];
    solve();
  }
  return 0;
}