:root{
  --text:#e8f0fb;
  --muted:#94a3b8;
  --accent:#67e8f9;
  --accent-strong:#22d3ee;
  --ink:#052437;
  --border:rgba(148,163,184,.16);
}
*{box-sizing:border-box}
body.admin-login-page{
  margin:0;
  min-height:100vh;
  font-family:Inter,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.22), transparent 28%),
    radial-gradient(circle at bottom right, rgba(59,130,246,.2), transparent 26%),
    linear-gradient(135deg,#040913,#081321 42%,#0b1627 100%);
  display:grid;
  place-items:center;
  padding:24px;
}
.login-shell{
  width:min(1100px,100%);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,460px);
  gap:22px;
}
.login-aside,
.login-card{
  border:1px solid var(--border);
  border-radius:30px;
  background:rgba(10,18,32,.78);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 24px 80px rgba(2,8,23,.48);
}
.login-aside{padding:34px;display:grid;align-content:center;gap:18px}
.login-badge{display:inline-flex;width:max-content;padding:10px 14px;border-radius:999px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.16);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7dd3fc}
.login-aside h1{margin:0;font-size:42px;line-height:1.02;max-width:520px}
.login-aside p{margin:0;color:var(--muted);line-height:1.65;font-size:16px;max-width:540px}
.login-aside ul{margin:6px 0 0;padding-left:20px;color:#c8d7ea;display:grid;gap:10px}
.login-card{padding:32px;display:grid;align-content:center;gap:18px}
.login-head{display:grid;gap:10px}
.login-head .eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#7dd3fc;font-size:11px;font-weight:700}
.login-head h2{margin:0;font-size:28px}
.login-head p{margin:0;color:var(--muted);line-height:1.55}
label{display:grid;gap:8px}
label span{font-size:13px;font-weight:600;color:#dce9f8}
input{
  width:100%;padding:14px 15px;border-radius:16px;border:1px solid rgba(148,163,184,.16);
  background:rgba(2,6,23,.78);color:var(--text);outline:none;transition:border-color .18s ease,box-shadow .18s ease;
}
input:focus{border-color:rgba(103,232,249,.56);box-shadow:0 0 0 4px rgba(34,211,238,.1)}
button{
  width:100%;padding:14px 18px;border:none;border-radius:16px;cursor:pointer;font-weight:800;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--ink);
  box-shadow:0 18px 38px rgba(34,211,238,.22)
}
.flash{background:rgba(15,23,42,.76);border:1px solid rgba(148,163,184,.16);border-radius:16px;padding:14px 16px;color:#e2e8f0}
.login-foot{font-size:12px;color:var(--muted);text-align:center;line-height:1.5}
@media (max-width:960px){
  .login-shell{grid-template-columns:1fr}
  .login-aside h1{font-size:34px}
}
@media (max-width:560px){
  body.admin-login-page{padding:16px}
  .login-aside,.login-card{padding:24px}
  .login-aside h1{font-size:28px}
}

.ghost-link{display:inline-flex;justify-content:center;text-decoration:none;color:#7dd3fc;font-weight:700}
.ghost-link:hover{color:#cffafe}
.invite-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;border-radius:18px;background:rgba(15,23,42,.4);border:1px solid rgba(148,163,184,.14)}
.invite-summary.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.invite-summary span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.invite-summary strong{font-size:15px}
@media (max-width:560px){
  .invite-summary,.invite-summary.compact{grid-template-columns:1fr}
}
