:root{
  --primary:#6366f1;
  --gradient:linear-gradient(135deg,#6366f1 0%,#ec4899 100%);
  --gradient-dark:linear-gradient(135deg,#1e293b 0%,#312e81 50%,#831843 100%);
}
*{box-sizing:border-box}
body{
  font-family:'Inter','Segoe UI',Arial,sans-serif;
  margin:0;background:#f3f4f6;color:#1f2937;
  min-height:100vh;
}
.auth-wrapper{
  display:flex;min-height:100vh;
}

/* LEFT: Marketing panel */
.auth-left{
  flex:1;background:var(--gradient-dark);
  color:#fff;padding:3rem 3rem;display:flex;flex-direction:column;
  position:relative;overflow:hidden;
}
.auth-left::before{
  content:'';position:absolute;top:-100px;right:-100px;width:400px;height:400px;
  background:radial-gradient(circle,rgba(236,72,153,.25),transparent 70%);
  border-radius:50%;
}
.auth-left::after{
  content:'';position:absolute;bottom:-150px;left:-100px;width:500px;height:500px;
  background:radial-gradient(circle,rgba(99,102,241,.25),transparent 70%);
  border-radius:50%;
}
.auth-left-inner{position:relative;z-index:2;display:flex;flex-direction:column;height:100%}
.partner-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:auto}
.partner-brand img{height:42px}
.auth-marketing{margin:auto 0}
.auth-marketing h1{
  font-size:2.5rem;font-weight:800;line-height:1.2;margin-bottom:1.25rem;
}
.auth-marketing h1 span{
  background:linear-gradient(90deg,#fbbf24,#f472b6);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.auth-marketing p{font-size:1.05rem;color:#cbd5e1;margin-bottom:2rem}
.auth-services{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}
.svc{
  background:rgba(255,255,255,.07);backdrop-filter:blur(10px);
  padding:1rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);
}
.svc i{
  width:38px;height:38px;border-radius:10px;background:var(--gradient);
  display:inline-flex;align-items:center;justify-content:center;
  margin-bottom:.5rem;font-size:1rem;
}
.svc h6{font-weight:700;font-size:.95rem;margin:.25rem 0}
.svc small{color:#94a3b8;font-size:.8rem}
.auth-left-footer{
  margin-top:auto;padding-top:1.5rem;font-size:.85rem;color:#94a3b8;
  border-top:1px solid rgba(255,255,255,.1);
}
.auth-left-footer a{color:#cbd5e1;text-decoration:none}

/* RIGHT: Form panel */
.auth-right{
  flex:1;display:flex;align-items:center;justify-content:center;
  padding:3rem 2rem;background:#fff;
}
.auth-form-wrap{width:100%;max-width:420px}
.auth-logo{text-align:center;margin-bottom:2rem}
.auth-logo img{height:55px}
.auth-form-wrap h2{font-size:1.75rem;font-weight:800;margin-bottom:.25rem;text-align:center}
.auth-sub{color:#6b7280;text-align:center;margin-bottom:2rem;font-size:.95rem}

.form-floating > .form-control,
.form-floating > .form-select{
  border-radius:10px;border:1.5px solid #e5e7eb;height:55px;
}
.form-floating > .form-control:focus,
.form-floating > .form-select:focus{
  border-color:var(--primary);box-shadow:0 0 0 .2rem rgba(99,102,241,.15);
}
.input-icon{position:relative}
.input-icon .form-control{padding-left:2.75rem}
.input-icon i{
  position:absolute;left:1rem;top:50%;transform:translateY(-50%);
  color:#9ca3af;
}
.toggle-pass{
  position:absolute;right:1rem;top:50%;transform:translateY(-50%);
  cursor:pointer;color:#9ca3af;background:none;border:0;
}
.btn-auth{
  background:var(--gradient);border:0;color:#fff;
  padding:.85rem;border-radius:10px;font-weight:600;width:100%;
  transition:all .3s;
}
.btn-auth:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(99,102,241,.3);color:#fff}
.divider{
  text-align:center;color:#9ca3af;margin:1.25rem 0;position:relative;font-size:.85rem;
}
.divider::before,.divider::after{
  content:'';position:absolute;top:50%;width:40%;height:1px;background:#e5e7eb;
}
.divider::before{left:0}.divider::after{right:0}
.social-btn{
  width:100%;padding:.65rem;border-radius:10px;border:1.5px solid #e5e7eb;
  background:#fff;font-weight:600;color:#374151;display:flex;align-items:center;
  justify-content:center;gap:.5rem;transition:all .2s;
}
.social-btn:hover{border-color:var(--primary);background:#f9fafb}
.auth-link{color:var(--primary);text-decoration:none;font-weight:600}
.auth-link:hover{text-decoration:underline}

@media(max-width:991px){
  .auth-wrapper{flex-direction:column}
  .auth-left{padding:2rem 1.5rem;min-height:auto}
  .auth-marketing h1{font-size:1.7rem}
  .auth-services{grid-template-columns:1fr}
  .auth-right{padding:2rem 1rem}
}
