.auth-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:1fr 1fr;
}
@media(max-width:960px){
  .auth-shell{grid-template-columns:1fr;}
  .auth-visual{display:none;}
}

/* left: visual / brand side */
.auth-visual{
  background:
    radial-gradient(90% 70% at 15% 0%, rgba(201,162,93,0.20), transparent 60%),
    linear-gradient(165deg,var(--ink-900) 0%, #101b30 55%, var(--ink-900) 100%);
  color:var(--on-ink);
  padding:48px;
  display:flex;flex-direction:column;justify-content:space-between;
  position:relative;overflow:hidden;
}
.auth-visual .brand{display:flex;align-items:center;gap:10px;}
.auth-visual .brand .auth-logo-img{height:40px;width:auto;object-fit:contain;display:block;}
.auth-visual .stack{max-width:420px;}
.auth-visual h1{font-size:34px;line-height:1.15;margin:26px 0 14px;color:var(--on-ink);}
.auth-visual p.lede{color:var(--on-ink-dim);font-size:14.5px;max-width:400px;}

.mini-card-stack{position:relative;height:230px;margin-top:34px;}
.mini-card{
  position:absolute;width:290px;padding:18px;border-radius:16px;
  background:linear-gradient(160deg,#182338,#0b1220);
  border:1px solid var(--ink-line);box-shadow:0 20px 40px -18px rgba(0,0,0,.6);
}
.mini-card.c1{top:0;left:0;transform:rotate(-6deg);z-index:1;opacity:.55;}
.mini-card.c2{top:14px;left:26px;transform:rotate(-1deg);z-index:2;opacity:.8;}
.mini-card.c3{top:30px;left:52px;transform:rotate(4deg);z-index:3;box-shadow:var(--shadow-foil);}
.mini-card .mc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;}
.mini-card .mc-chip{width:30px;height:22px;border-radius:5px;background:linear-gradient(135deg,var(--foil-light),var(--foil-dark));}
.mini-card .mc-name{font-family:var(--font-display);font-size:15px;color:var(--on-ink);}
.mini-card .mc-role{font-family:var(--font-mono);font-size:9.5px;color:var(--foil-light);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;}
.mini-card .mc-num{font-family:var(--font-mono);font-size:11px;color:var(--on-ink-dim);letter-spacing:.1em;margin-top:16px;}

.auth-stats{display:flex;gap:28px;margin-top:20px;}
.auth-stats div strong{display:block;font-family:var(--font-display);font-size:22px;color:var(--foil-light);}
.auth-stats div span{font-size:11px;color:var(--on-ink-dim);}

/* right: form side */
.auth-form-side{
  display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--paper);
}
.auth-box{width:100%;max-width:400px;}
.auth-box .brand-mobile{display:none;align-items:center;gap:10px;margin-bottom:26px;}
.auth-box .brand-mobile .auth-logo-img{height:34px;width:auto;object-fit:contain;display:block;}
@media(max-width:960px){.auth-box .brand-mobile{display:flex;}}
.auth-box h2{font-size:25px;margin-bottom:6px;}
.auth-box .sub{color:var(--slate-500);font-size:13.5px;margin-bottom:28px;}

.otp-inputs{display:flex;gap:10px;margin-bottom:6px;}
.otp-inputs input{
  width:100%;aspect-ratio:1;text-align:center;font-size:20px;font-family:var(--font-mono);
  border-radius:11px;border:1px solid var(--border);background:var(--surface);
}
.otp-inputs input:focus{border-color:var(--foil);box-shadow:0 0 0 3px rgba(201,162,93,0.15);outline:none;}

.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--slate-400);font-size:11.5px;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--border);}

.social-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.social-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:12.5px;font-weight:600;cursor:pointer;}
.social-btn:hover{border-color:var(--foil);}

.strength-meter{display:flex;gap:5px;margin-top:8px;}
.strength-meter span{flex:1;height:4px;border-radius:99px;background:var(--border-soft);}
.auth-foot{text-align:center;margin-top:22px;font-size:12.5px;color:var(--slate-500);}
