/* Vyapika UPI — merchant sign-in, register, forgot password */
@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700&display=swap');
:root{--primary-color:#2563eb!important;--secondary-color:#1d4ed8!important;--accent-color:#16a34a!important;--dark-text:#0f172a!important;--light-text:#64748b!important;
  --vp-ease:cubic-bezier(.22,.8,.24,1)}
body{font-family:'Figtree','DM Sans',system-ui,sans-serif!important;color:#475569;
  background:#f8fafc!important}
h3,h4,.login-head{font-family:'Figtree',system-ui,sans-serif!important;letter-spacing:-.02em;color:#0f172a}
.login-head{font-size:1.9rem;font-weight:800!important;color:#0f172a!important;margin-bottom:6px!important}
.login-container,.card{border-radius:24px!important;border:0!important;background:#fff;box-shadow:0 0 0 1px #e2e8f0,0 30px 60px -30px rgba(15,23,42,.28)!important;overflow:hidden;animation:vpAuthIn .8s var(--vp-ease) both}
.login-container{padding:34px!important}
.register-img-container{background:#eff4ff}
.register-img-container h4{color:#0f172a!important}
@keyframes vpAuthIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.form-label{font-weight:700;color:#1e293b;font-size:.9rem}
.form-control,.form-select,.otp-input{height:50px;border-radius:12px!important;border:1.5px solid #e2e8f0!important;background:#fff;font-weight:500;transition:border-color .25s,box-shadow .25s}
textarea.form-control{height:auto}
.form-control:focus,.form-select:focus,.otp-input:focus{border-color:#2563eb!important;box-shadow:0 0 0 4px #eff4ff!important;outline:0}
.btn{border-radius:999px!important;font-weight:700!important;padding:.85rem 1.4rem!important;transition:transform .35s var(--vp-ease),box-shadow .35s var(--vp-ease),background .3s}
.btn-primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}
.btn-primary:hover{background:#1d4ed8!important;transform:translateY(-2px);box-shadow:0 14px 26px -10px rgba(37,99,235,.6)}
.btn-primary:active{transform:none}
.btn-outline-primary{color:#2563eb!important;border:1.5px solid #e2e8f0!important;background:#fff}
.btn-outline-primary:hover{background:#eff4ff!important;border-color:#2563eb!important;color:#1d4ed8!important}
a{color:#2563eb;font-weight:600}a:hover{color:#1d4ed8}
.logo{max-width:200px!important}
footer p{color:#64748b!important}
:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}

/* brand panel (replaces the old animation) */
.vp-auth-brand{position:relative;border-radius:28px;padding:34px;background:#0f172a;color:#cbd5e1;overflow:hidden;min-height:300px;animation:vpAuthIn .8s var(--vp-ease) both}
.vp-auth-brand::before,.vp-auth-brand::after{content:"";position:absolute;border-radius:50%;filter:blur(70px)}
.vp-auth-brand::before{width:300px;height:300px;background:#2563eb;left:-90px;top:-110px;opacity:.7}
.vp-auth-brand::after{width:260px;height:260px;background:#60a5fa;right:-100px;bottom:-130px;opacity:.35}
.vp-auth-brand>*{position:relative;z-index:1}
.vp-auth-logo{display:flex;align-items:center;gap:12px;color:#fff;font:800 1.6rem 'Figtree',system-ui,sans-serif;letter-spacing:-.03em}
.vp-auth-logo img{width:46px;height:46px;border-radius:14px}
.vp-auth-logo b{color:#93c5fd}
.vp-auth-brand h4{color:#fff!important;font-size:1.7rem;margin:28px 0 10px;line-height:1.15;text-align:left!important}
.vp-auth-brand p{margin:0;line-height:1.65;text-align:left!important;color:#cbd5e1!important}
.vp-auth-live{display:flex;align-items:center;gap:12px;margin-top:26px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.08);backdrop-filter:blur(6px);font-weight:700;color:#fff;font-size:.92rem}
.vp-auth-live i{position:relative;flex:none;width:10px;height:10px;border-radius:50%;background:#16a34a}
.vp-auth-live i::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid #16a34a;animation:vpPing 2s ease-out infinite}
@keyframes vpPing{from{transform:scale(.5);opacity:1}to{transform:scale(1.5);opacity:0}}
.vp-auth-live span{display:block;color:#94a3b8;font-weight:600;font-size:.8rem}
.vp-auth-brand .btn-outline-primary{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.3)!important}
.vp-auth-brand .btn-outline-primary:hover{background:rgba(255,255,255,.12)!important;border-color:#fff!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* ===== sober overrides ===== */
.btn{border-radius:6px!important}
.vp-auth-brand::before,.vp-auth-brand::after{display:none!important}
.vp-auth-live{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* wide flat logo on a light plate so any logo colour stays readable */
.vp-auth-logo img.vp-logo-wide{width:auto;height:48px;max-width:260px;border-radius:10px;background:#fff;padding:6px 14px;object-fit:contain}
