.auth-gate {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: linear-gradient(145deg, #eef2ff, #f8fafc 55%, #ede9fe);
}
.auth-card {
  width: min(440px, 100%);
  padding: 30px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 22px 60px #312e811f;
}
.auth-card h1 { margin-bottom: 8px; }
.auth-form { display: grid; }
.auth-form input, .auth-form button { width: 100%; }
.auth-message { min-height: 20px; color: #b91c1c; font-size: 13px; }
.nav-logout { margin-left: auto; }
.task-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}
.status.searching {
  background: #dbeafe;
  color: #1d4ed8;
}
.task-main { min-width: min(560px, 100%); }
.task-progress {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 9px;
  color: var(--muted);
  font-size: 12px;
}
.task-progress progress {
  width: min(360px, 75vw);
  height: 8px;
  accent-color: var(--purple);
}
.task-actions a, .task-actions button {
  font-size: 13px;
  text-decoration: none;
}
.admin-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.admin-form label {
  display: grid;
  gap: 6px;
  font-size: 13px;
  color: var(--muted);
}
.admin-form input { width: 100%; }
.admin-actions {
  grid-column: 1 / -1;
  display: flex;
  gap: 9px;
}
@media (max-width: 700px) {
  .admin-form { grid-template-columns: 1fr; }
  .task-actions { justify-content: flex-start; }
  .nav-logout { margin-left: 0; }
}
