/* ==========================================================================
   InstantPayout — "Clean light" sign-in pages (merchant login, register,
   forgot password, admin login). Loaded after each page's own <style>.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;600&display=swap');

:root{
  --primary:#1347FF; --primary-dark:#0B35D9; --accent:#0E9F6E;
  --bg:#F6F7F9; --card:#FFFFFF; --border:#E4E7EC; --text:#101828; --muted:#667085;
  --danger:#D92D20; --success:#079455; --warning:#DC6803;
  color-scheme:light;
}
html body{
  background:
    radial-gradient(1100px 520px at 50% -180px, #E8EEFF 0%, rgba(232,238,255,0) 70%),
    #F6F7F9;
  color:var(--text);
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  -webkit-font-smoothing:antialiased;
}
html body::before,html body::after{display:none}

/* card */
html body .card{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 32px -12px rgba(16,24,40,.12),0 2px 6px -2px rgba(16,24,40,.05);backdrop-filter:none;padding:32px}
html body .brand-name{color:var(--text);font-weight:800;letter-spacing:-.03em}
html body .card-title,html body h1{color:var(--text);font-weight:700;letter-spacing:-.025em}
html body .card-sub,html body .sub{color:var(--muted)}

/* labels + inputs */
html body .form-label,html body .label{color:#344054;font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;margin-bottom:6px}
html body .form-control,html body .inp{background:#fff;border:1px solid #D0D5DD;border-radius:10px;color:var(--text);box-shadow:0 1px 2px rgba(16,24,40,.05);font-family:inherit}
html body .form-control:focus,html body .inp:focus{border-color:#7A9BFF;box-shadow:0 0 0 4px rgba(19,71,255,.14)}
html body .form-control::placeholder,html body .inp::placeholder{color:#98A2B3}
html body .input-icon,html body .ico{color:#98A2B3}
html body .toggle-pass{color:#98A2B3}
html body .toggle-pass:hover{color:#344054}

/* OTP */
html body .otp-box,html body .otp-b{background:#fff;border:1px solid #D0D5DD;color:var(--text);border-radius:10px;box-shadow:0 1px 2px rgba(16,24,40,.05)}
html body .otp-box:focus,html body .otp-b:focus{border-color:#7A9BFF;box-shadow:0 0 0 4px rgba(19,71,255,.14);transform:none}

/* buttons */
html body .btn-primary,html body .btn{background:var(--primary);border:1px solid var(--primary);border-radius:10px;color:#fff;font-weight:600;font-family:inherit;box-shadow:0 1px 2px rgba(16,24,40,.08)}
html body .btn-primary::before{display:none}
html body .btn-primary:hover,html body .btn:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:none;box-shadow:0 1px 2px rgba(16,24,40,.08);opacity:1}
html body .btn-ghost,html body .lnk,html body .links a{color:var(--primary);font-weight:600}
html body .btn-ghost:hover,html body .lnk:hover,html body .links a:hover{color:var(--primary-dark)}
html body .links{color:var(--muted)}

/* alerts */
html body .alert-error,html body .alert-e,html body .wrap .alert:not(.alert-success){background:#FEF3F2;border:1px solid #FECDCA;color:#B42318}
html body .alert-success{background:#ECFDF3;border:1px solid #ABEFC6;color:#067647}
html body .info-box{background:#EFF8FF;border:1px solid #B2DDFF}
html body .info-box p{color:#175CD3}

/* misc */
html body .security-badge{color:var(--muted)}
html body .security-badge i{color:var(--accent)}
html body .badge-admin{display:inline-flex;flex-direction:column;align-items:center;gap:10px;background:linear-gradient(160deg,#0B1636 0%,#102A7A 75%,#1347FF 140%);border:1px solid #1E3A8A;border-radius:16px;padding:18px 26px 14px;color:#FCA5A5;font-size:11px;letter-spacing:.9px;box-shadow:0 14px 30px -12px rgba(11,22,54,.55)}
html body .badge-admin svg{width:200px!important}
html body .badge-admin .fa{display:none}
html body .step-dot.idle{background:#F2F4F7;color:var(--muted)}
html body .step-dot.active{box-shadow:0 0 0 4px rgba(19,71,255,.14)}
html body .step-line{background:#EAECF0}
html body .str-bar{background:#EAECF0}
html body .pw-req,html body .req-item{color:var(--muted)}
html body [style*="color:#fca5a5"]{color:#B42318!important}
html body [style*="color:#86efac"]{color:#067647!important}
html body [style*="color:#93c5fd"]{color:#175CD3!important}
html body [style*="color:#e8eaf0"],html body [style*="color:var(--text)"]{color:var(--text)!important}
html body [style*="background:#0d1424"],html body [style*="background:#080c18"]{background:#F9FAFB!important}

/* ── Split-screen layout (brand panel left, form right) ─────────────── */
.ip-aside{display:none}
@media (min-width:1000px){
  html body{padding-left:44%!important}
  .ip-aside{display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:44%;padding:40px 48px;
    background:linear-gradient(165deg,#0B1636 0%,#102A7A 60%,#1347FF 130%);color:#fff;overflow:hidden;z-index:2}
  .ip-aside::after{content:'';position:absolute;right:-160px;bottom:-160px;width:420px;height:420px;border-radius:50%;
    border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 70px rgba(255,255,255,.03),0 0 0 140px rgba(255,255,255,.02)}
  .ip-aside-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;font-size:18px;letter-spacing:-.03em}
  .ip-aside-logo span{width:34px;height:34px;border-radius:9px;background:#fff;color:#1347FF;display:flex;align-items:center;justify-content:center;font-size:15px}
  .ip-aside-body{margin:auto 0;max-width:430px;position:relative;z-index:1}
  .ip-aside-body h2{font-size:38px;line-height:1.1;font-weight:800;letter-spacing:-.035em;color:#fff}
  .ip-aside-body p{margin-top:14px;font-size:16px;line-height:1.6;color:#C7D2FE}
  .ip-aside-body ul{list-style:none;margin-top:28px;display:grid;gap:14px}
  .ip-aside-body li{display:flex;align-items:center;gap:12px;font-size:15px;color:#E0E7FF}
  .ip-aside-body li i{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff}
  .ip-aside-card{margin-top:36px;display:flex;align-items:center;gap:12px;background:#fff;color:#101828;border-radius:14px;padding:14px 16px;max-width:320px;box-shadow:0 24px 48px -12px rgba(0,0,0,.35)}
  .ip-aside-card .ic{width:38px;height:38px;border-radius:11px;background:#ECFDF3;color:#079455;display:flex;align-items:center;justify-content:center}
  .ip-aside-card small{display:block;font-size:12px;color:#667085;font-weight:600}
  .ip-aside-card b{font-family:'JetBrains Mono',monospace;font-size:15px}
  .ip-aside-card em{font-style:normal;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600}
  .ip-aside-foot{font-size:12.5px;color:#A5B4FC;position:relative;z-index:1}
  .ip-aside-foot a{color:#C7D2FE;text-decoration:none}
  html body .card{background:#fff;border:1px solid var(--border);border-top:3px solid var(--primary);border-radius:18px;padding:34px;box-shadow:0 24px 48px -16px rgba(16,24,40,.18),0 4px 10px -4px rgba(16,24,40,.06)}
  html body{background:radial-gradient(900px 480px at 75% -120px,#E3EAFF 0%,rgba(227,234,255,0) 70%),#F2F4F7}
}
