
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{
  font-family:'Poppins',sans-serif;
  background:#050505;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* ---------- Background glow ---------- */
.lf-bg{
  position:fixed;inset:0;overflow:hidden;z-index:-1;
  background:
    radial-gradient(circle at 72% 42%, rgba(255,128,16,.28), transparent 46%),
    radial-gradient(circle at 50% 96%, rgba(255,120,0,.22), transparent 52%),
    #050505;
}
.lf-blob{position:absolute;border-radius:50%;filter:blur(95px)}
.lf-blob--1{width:540px;height:540px;background:#ff7a00;right:-70px;top:16%;opacity:.5}
.lf-blob--2{width:500px;height:440px;background:#ff8c12;left:34%;bottom:-140px;opacity:.48}
.lf-blob--3{width:300px;height:300px;background:#ffb347;right:16%;bottom:6%;opacity:.4}
.lf-blob--4{width:440px;height:440px;background:#0e2440;left:-90px;top:-70px;opacity:.75}
.lf-blob--5{width:240px;height:240px;background:#ff6a00;left:20%;top:8%;opacity:.32}

/* ---------- Stage ---------- */
.lf-stage{
  min-height:100vh;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:26px;padding:28px 20px;
}
.lf-title{color:#fff;font-size:30px;font-weight:600;letter-spacing:.4px}

/* ---------- Card ---------- */
.lf-card{
  width:100%;max-width:344px;
  background:linear-gradient(180deg,#fcfcfc,#f0f0f0);
  border:1.6px solid rgba(255,148,38,.72);
  border-radius:26px;padding:22px 22px 24px;
  box-shadow:0 0 52px rgba(255,120,20,.32), 0 26px 64px rgba(0,0,0,.5);
  animation:lf-rise .5s ease both;
}
@keyframes lf-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.lf-card h2{font-size:20px;font-weight:700;color:#151515;letter-spacing:.2px}
.lf-sub{font-size:12.5px;color:#9b9b9b;margin-top:3px}

/* ---------- Fields ---------- */
.lf-fields{position:relative;margin-top:18px}
.lf-field{
  background:#fff;border:1px solid #eee;border-radius:16px;
  padding:12px 14px;display:flex;align-items:center;gap:12px;
  box-shadow:0 2px 12px rgba(0,0,0,.035);
}
.lf-field + .lf-field{margin-top:12px}
.lf-field:focus-within{border-color:rgba(255,140,30,.55);box-shadow:0 2px 14px rgba(255,130,20,.12)}
.lf-chip{
  width:38px;height:38px;border-radius:11px;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;
}
.lf-chip--mail{background:linear-gradient(135deg,#3f86f6,#7c3aed)}
.lf-chip--lock{background:linear-gradient(135deg,#ff9f33,#ff6a00)}
.lf-main{flex:1;min-width:0;display:flex;flex-direction:column}
.lf-label{font-size:11px;color:#9b9b9b;font-weight:500;margin-bottom:1px}
.lf-input{
  border:none;outline:none;background:transparent;width:100%;padding:0;
  font-family:inherit;font-size:16px;font-weight:600;color:#151515;
}
.lf-input::placeholder{color:#c6c6c6;font-weight:500}
.lf-eye{background:none;border:none;color:#b6b6b6;cursor:pointer;font-size:14px;padding:4px}
.lf-eye:hover{color:#777}

/* black circular badge between the two boxes */
.lf-divider{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3}
.lf-circle{
  width:38px;height:38px;border-radius:50%;
  background:#161616;color:#fff;font-size:14px;
  display:flex;align-items:center;justify-content:center;
  border:4px solid #f5f5f5;box-shadow:0 4px 12px rgba(0,0,0,.25);
}

/* ---------- Links + CTA ---------- */
.lf-forgot{display:block;text-align:right;margin-top:11px;
  font-size:12px;font-weight:500;color:#ff7a00;text-decoration:none}
.lf-forgot:hover{text-decoration:underline}
.lf-cta{
  width:100%;margin-top:16px;border:none;cursor:pointer;
  background:linear-gradient(180deg,#ffa53d,#ff7800);
  color:#fff;font-family:inherit;font-size:15px;font-weight:600;
  padding:15px;border-radius:15px;
  box-shadow:0 10px 26px rgba(255,120,0,.42), inset 0 1px 0 rgba(255,255,255,.4);
  transition:filter .18s, transform .12s;
}
.lf-cta:hover{filter:brightness(1.05)}
.lf-cta:active{transform:translateY(1px)}

.lf-signup{color:#bdbdbd;font-size:13px}
.lf-signup a{color:#ff8c1a;text-decoration:none;font-weight:600}
.lf-signup a:hover{text-decoration:underline}

/* ---------- Powered by OO Technologies ---------- */
.lf-powered{
  display:inline-flex;align-items:center;gap:9px;
  margin-top:2px;padding:8px 15px 8px 11px;
  border-radius:999px;text-decoration:none;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.08);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  transition:border-color .2s, background .2s, transform .15s, box-shadow .2s;
}
.lf-powered:hover{
  border-color:rgba(255,140,30,.42);
  background:rgba(255,255,255,.06);
  box-shadow:0 6px 20px rgba(255,120,20,.14);
  transform:translateY(-1px);
}
.lf-powered-logo{
  width:20px;height:20px;display:block;flex:0 0 auto;
  filter:drop-shadow(0 2px 7px rgba(255,120,20,.4));
}
.lf-powered-txt{
  font-size:12px;font-weight:400;color:#8a8a8a;letter-spacing:.2px;
  line-height:1;white-space:nowrap;
}
.lf-powered-txt b{font-weight:600;color:#ededed}

@media(max-width:420px){
  .lf-title{font-size:26px}
  .lf-card{padding:20px 18px 22px}
}
@media(prefers-reduced-motion:reduce){
  .lf-card{animation:none}
  .lf-powered{transition:none}
}
