/* Login overlay and panel styles */
:root{
  --overlay-bg: rgba(10,12,20,0.75);
  --panel-bg: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
  --accent: #ff0000;
  --muted: #bfc7d6;
  --radius: 24px;
  --glass-border: rgba(255,255,255,0.06);
}

#app-login-overlay{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--overlay-bg);
  backdrop-filter: blur(6px) saturate(120%);
  -webkit-backdrop-filter: blur(6px) saturate(120%);
  z-index:9999;
  padding:24px;
}

#app-login-overlay .box{
  width:100%;
  max-width:420px;
  background:var(--panel-bg);
  border:1px solid var(--glass-border);
  border-radius:var(--radius);
  padding:28px 26px;
  box-shadow: 0 8px 30px rgba(6,8,15,0.6);
  color:#e9eef8;
  text-align:center;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

#app-login-overlay .title{
  font-size:20px;
  font-weight:600;
  margin-bottom:8px;
}

#app-login-overlay .hint{
  color:var(--muted);
  font-size:13px;
  margin-bottom:20px;
}

.login-button{
  -webkit-appearance:none;
  appearance:none;
  border:0;
  background:linear-gradient(90deg,var(--accent), #ff0000);
  color:white;
  padding:10px 16px;
  font-size:15px;
  font-weight:600;
  border-radius:20px;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, opacity .12s ease;
  box-shadow: 0 6px 18px rgba(79,156,255,0.18);
}

.login-button:hover{ transform:translateY(-2px); }
.login-button:active{ transform:translateY(0); opacity:0.95 }

@media (max-width:480px){
  #app-login-overlay .box{ padding:20px; border-radius:20px; }
  .login-button{ width:100%; }
}

/* Fallback visibility rules used to avoid flash of unstyled overlay */
#app-login-overlay{ visibility:visible; }
html[style*="display: none"] #app-login-overlay{ visibility:visible; }
