/* Login page styles */
.hero{
  min-height:100dvh;
  display:grid;
  place-items:center;
  padding:clamp(20px,5vw,48px);
}

.card.glass{
  width:min(880px,95vw);
  background:linear-gradient(180deg,rgba(255,255,255,0.07),rgba(255,255,255,0.04));
  backdrop-filter:blur(10px) saturate(120%);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:clamp(24px,4vw,48px);
}

.brand{
  display:flex;
  gap:16px;
  align-items:center;
  margin-bottom:12px;
}

.logo{
  width:56px;
  height:56px;
  filter:drop-shadow(0 0 18px rgba(0,255,162,0.25));
}

.brand-text .title{
  margin:0;
  font-size:clamp(28px,4vw,40px);
  letter-spacing:.3px;
  background:linear-gradient(90deg,var(--accent),var(--accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-weight:800;
  text-transform:uppercase;
}

.brand-text .subtitle{
  margin:2px 0 0;
  color:var(--muted);
  font-size:14px;
  letter-spacing:.4px;
}

.lede{
  margin:18px 0 28px;
  color:#d7dee6;
  font-size:clamp(16px,2.4vw,18px);
}

.actions{
  display:flex;
  flex-direction:column;
  align-items:start;
  gap:10px;
}

.cta{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 18px;
  border-radius:12px;
  background:linear-gradient(90deg,rgba(0,255,162,0.2),rgba(0,194,255,0.2));
  border:1px solid rgba(0,255,162,0.35);
  color:var(--text);
  text-decoration:none;
  font-weight:700;
  letter-spacing:.4px;
  transition:transform .1s ease, box-shadow .2s ease, border-color .2s ease;
  box-shadow:0 8px 28px rgba(0,255,162,0.12), 0 0 0 0 var(--ring);
  outline:none;
}

.cta:hover{
  transform:translateY(-1px);
  border-color:rgba(0,255,162,0.55);
}

.cta:focus-visible{
  box-shadow:0 8px 28px rgba(0,255,162,0.2), 0 0 0 8px var(--ring);
}

.cta-kbd{
  font-size:12px;
  opacity:.85;
  padding:4px 6px;
  border:1px solid rgba(255,255,255,0.18);
  border-radius:6px;
  background:rgba(255,255,255,0.06);
}

.hint{
  font-size:12px;
  color:var(--muted);
  margin:0;
}