/* Login / sign-up popup v2 (partials/overlays #authOv.au2): maroon brand panel on the left, form on the right; bottom sheet with a slim brand strip on phones.
   Loads after wibliv.css + wibliv-ui.css, which style .au with !important, so rules here use .au.au2 and !important where needed. */
.au.au2{--a2-red:#d6112a;--a2-red-d:#b80e24;--a2-ink:#111827;--a2-sub:#4b5563;--a2-line:#d1d5db;background:rgba(17,24,39,.55)!important}
.au.au2 .au-box{display:flex!important;width:min(900px,100%)!important;max-width:calc(100vw - 32px);border-radius:24px!important;overflow:hidden;background:#fff;color:var(--a2-ink);font-family:Inter,var(--wb-font),system-ui,sans-serif;box-shadow:0 30px 80px -20px rgba(0,0,0,.45)!important;position:relative}
.au.au2 .au-box *{font-family:inherit}

/* brand panel */
.au2-side{width:340px;flex:none;box-sizing:border-box;background:#7a0d1c;color:#fff;padding:34px 32px;display:flex;flex-direction:column;gap:26px;position:relative;overflow:hidden}
.au2-side::before,.au2-side::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.au2-side::before{right:-90px;top:-90px;width:260px;height:260px;border:1px solid rgba(255,255,255,.14)}
.au2-side::after{left:-70px;bottom:-110px;width:280px;height:280px;border:1px solid rgba(255,255,255,.1)}
.au2-side > *{position:relative}
.au2-logo{align-self:flex-start;display:inline-flex;align-items:center;background:#fff;border-radius:12px;padding:8px 14px;line-height:0}
.au2-logo img{height:30px;width:auto;max-width:150px;display:block}
.au2-logo b{display:none;font:800 20px/1 Poppins,sans-serif;color:var(--a2-red);letter-spacing:.02em}
.au2-logo.nolg img{display:none}.au2-logo.nolg b{display:block}
.au2-pitch{display:flex;flex-direction:column;gap:10px}
.au2-pitch b{font:600 25px/1.25 Poppins,sans-serif!important;letter-spacing:-.02em}
.au2-pitch span{font-size:14.5px;line-height:1.5;color:#fecdd3}
.au2-perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.au2-perks li{display:flex;gap:12px;align-items:flex-start}
.au2-perks li > i{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.12);display:grid;place-items:center;flex:none;font-size:14px}
.au2-perks li span{display:flex;flex-direction:column;gap:1px}
.au2-perks b{font-size:14.5px}.au2-perks small{font-size:13px;color:#fecdd3}
.au2-safe{margin:auto 0 0;font-size:12.5px;line-height:1.4;color:#fecdd3;display:flex;gap:8px;align-items:center}

/* form side */
.au2-form{flex:1;min-width:0;display:flex;flex-direction:column;position:relative;overflow-y:auto;overscroll-behavior:contain}
#authOv.au2 .au-box{flex-direction:row!important;max-height:calc(100dvh - 32px)!important;overflow:hidden!important}
.au.au2 .au-hd{padding:40px 44px 0!important;display:flex!important}
.au.au2 .au-brand{display:none!important}
.au.au2 .au-hdtxt h2,.au.au2 #auTitle{font:700 28px/1.2 Poppins,sans-serif!important;letter-spacing:-.02em!important;color:var(--a2-ink)}
.au.au2 .au-hdtxt p{margin:6px 0 0;font:400 15px/1.45 Inter,sans-serif;color:var(--a2-sub)}
.au.au2 .au-hd .au-x,.au.au2 .au-x{top:18px!important;right:18px!important;width:40px!important;height:40px!important;border-radius:50%!important;background:#f3f4f6!important;color:var(--a2-ink)!important;font-size:17px!important}
.au.au2 .au-x:hover{background:#e5e7eb!important}
.au.au2 .au-main{padding:20px 44px 34px!important;min-height:0!important;justify-content:flex-start}
.au.au2 .au-sub{font-size:14px;color:var(--a2-sub)}
#authOv.au2[data-step="otp"] .au-hdtxt{display:none!important}
#authOv.au2[data-step="otp"] .au-hd{padding-top:30px!important}

/* step 1: mobile */
.au.au2 .au-mob{margin-top:32px;min-height:56px;border:1.5px solid var(--a2-line)!important;border-radius:14px!important;overflow:visible}
.au.au2 .au-mob .au-flt{top:-28px!important;left:0!important;padding:0!important;background:none!important;font:600 13.5px/1.2 Inter,sans-serif!important;color:#374151}
.au.au2 .au-mob .cc{height:56px!important;align-self:stretch!important;padding:0 12px 0 14px!important;background:#fafafa!important;border-right:1px solid #e5e7eb!important;border-radius:13px 0 0 13px!important;color:var(--a2-ink)!important;font:600 15px Inter,sans-serif!important;gap:8px!important}
.au.au2 .au-mob .cc .fi{display:inline-block!important;width:22px;height:15px;border-radius:3px;box-shadow:0 0 0 1px #e5e7eb;background-size:cover}
.au.au2 .au-mob input{font:600 18px Inter,sans-serif!important;letter-spacing:.04em}
.au.au2 .au-mob:focus-within,.au.au2 .au-mob.valid{border-color:var(--a2-red)!important;box-shadow:0 0 0 4px #ffe4e8!important}
.au2-hint{margin:8px 0 0;font-size:12.5px;line-height:1.45;color:var(--a2-sub)}
.au.au2 .au-intl{font-size:12.5px}
.au.au2 .au-agree{justify-content:flex-start!important;align-items:flex-start!important;gap:10px!important;margin:16px 0 18px!important;font-size:13.5px!important;line-height:1.45;color:#374151!important}
.au.au2 .au-agree input{width:18px!important;height:18px!important;margin:1px 0 0!important;flex:none}
.au.au2 .au-agree a{color:var(--a2-red);font-weight:600;text-decoration:none}.au.au2 .au-agree a:hover{text-decoration:underline}
.au.au2 .au-tc{display:none}
.au.au2 .au-btn{min-height:54px;gap:10px;padding:0 18px!important;border-radius:14px!important;background:var(--a2-red)!important;font:700 16px Poppins,sans-serif!important;box-shadow:0 12px 24px -12px rgba(214,17,42,.7)!important}
.au.au2 .au-btn:hover:not(:disabled){background:var(--a2-red-d)!important}
.au.au2 .au-btn > i{font-size:14px}
.au.au2 #auSend:disabled{opacity:.5;box-shadow:none!important}
.au.au2 #auVerify:disabled{background:#9ca3af!important;box-shadow:none!important}
.au.au2 .au-or{margin:20px 0 16px!important;gap:12px!important}
.au.au2 .au-or::before,.au.au2 .au-or::after{content:""!important;display:block!important;position:static!important;width:auto!important;flex:1;height:1px;background:#e5e7eb}
.au.au2 .au-or span{background:none!important;padding:0!important;font:400 13px Inter,sans-serif!important;color:#6b7280!important}
.au.au2 .au-google .au-alt{min-height:52px;border:1px solid var(--a2-line)!important;border-radius:14px!important;font:600 15.5px Inter,sans-serif!important;gap:10px!important}
.au.au2 .au-google .au-alt svg{width:20px;height:20px}

/* step 2: OTP */
.au.au2 .au-back:not([hidden]){display:inline-flex!important;position:static!important;align-self:flex-start;justify-self:start;align-items:center;gap:6px;width:auto!important;height:36px!important;padding:0 12px 0 10px;border-radius:99px!important;background:#f3f4f6!important;color:var(--a2-ink)!important;font:600 13.5px Inter,sans-serif;margin-bottom:6px}
.au.au2 .au-back i{font-size:12px}
.au2-otph{margin:0;font:700 28px/1.2 Poppins,sans-serif!important;letter-spacing:-.02em;color:var(--a2-ink)}
.au.au2 .au-code{margin:2px 0 20px!important;font:400 15px/1.5 Inter,sans-serif!important;color:var(--a2-sub)!important}
.au.au2 .au-num{gap:6px!important;flex-wrap:wrap}
.au.au2 .au-num b{font:600 15px Inter,sans-serif!important;color:var(--a2-ink)}
.au.au2 .au-edit{width:auto!important;height:auto!important;padding:0 0 0 6px!important;border:0;border-left:1px solid #d1d5db!important;border-radius:0!important;background:none!important;color:var(--a2-red)!important;font:600 14px Inter,sans-serif!important;cursor:pointer}
.au.au2 .au-edit:hover{text-decoration:underline}
.au.au2 .au-otp{gap:10px!important;margin:0 0 16px!important}
.au.au2 .au-otp input{height:62px;aspect-ratio:auto!important;border:1.5px solid var(--a2-line)!important;border-radius:14px!important;font:700 24px Poppins,sans-serif!important;color:var(--a2-ink);background:#fff!important}
.au.au2 .au-otp input::placeholder{color:transparent}
.au.au2 .au-otp input:focus{border-color:var(--a2-red)!important;box-shadow:0 0 0 4px #ffe4e8!important}
.au.au2 .au-otp input.fill{border-color:var(--a2-ink)!important;background:#fff!important}
.au.au2 .au-otp.bad input{border-color:#dc2626!important}
.au.au2 .au-otp.ok input{border-color:#16a34a!important;background:#f0fdf4!important}
.au.au2 .au-demo{margin:0 0 14px!important;padding:10px 14px!important;border-radius:12px!important;background:#fffbeb!important;border:1px dashed #f59e0b!important;color:#78350f!important;font-size:13px!important}
.au.au2 .au-demo:empty{display:none}
.au.au2 .au-resend{margin:0 0 20px!important;font-size:13.5px!important;color:var(--a2-sub)!important}
.au.au2 .au-resend .au-link{color:var(--a2-red)!important;font:600 14px Inter,sans-serif!important}
.au.au2 #auWaOtp{color:#15803d!important}

/* phones: bottom sheet, the brand panel becomes a slim strip with three chips */
@media (max-width:760px){
  .au.au2 .au-box,#authOv.au2 .au-box{flex-direction:column!important;max-width:100%;width:100%!important;border-radius:24px 24px 0 0!important;max-height:94dvh!important;overflow-y:auto!important}
  .au2-form{overflow:visible}
  .au2-side{width:auto;padding:16px 64px 16px 18px;gap:12px}
  .au2-side::after,.au2-pitch,.au2-safe{display:none}
  .au2-side::before{right:-70px;top:-60px;width:200px;height:200px}
  .au2-logo{padding:6px 10px;border-radius:10px}.au2-logo img{height:24px}
  .au2-perks{flex-direction:row;flex-wrap:wrap;gap:6px}
  .au2-perks li{align-items:center;gap:5px;padding:5px 10px 5px 8px;border-radius:99px;background:rgba(255,255,255,.12)}
  .au2-perks li > i{width:auto;height:auto;background:none;font-size:11px}
  .au2-perks b{font-size:12px}.au2-perks small{display:none}
  .au2-form,.au.au2 .au-hd{position:static!important}
  .au.au2 .au-hd .au-x,.au.au2 .au-x{top:14px!important;right:14px!important;background:rgba(255,255,255,.16)!important;color:#fff!important}
  .au.au2 .au-hd{padding:22px 20px 0!important}
  .au.au2 .au-hdtxt h2,.au.au2 #auTitle,.au2-otph{font-size:23px!important}
  .au.au2 .au-hdtxt p{font-size:14px}
  .au.au2 .au-main{padding:16px 20px calc(24px + env(safe-area-inset-bottom))!important}
  #authOv.au2[data-step="otp"] .au-hd{padding-top:16px!important}
  .au.au2 .au-otp{gap:8px!important}
  .au.au2 .au-otp input{height:54px;font-size:21px!important;border-radius:12px!important}
}
/* full-page /login and /register */
.au.au2.au-page{background:none!important}
.au.au2.au-page .au-box{box-shadow:0 20px 50px -24px rgba(17,24,39,.35)!important;border-radius:24px!important}
@media (max-width:760px){.au.au2.au-page .au-box,#authOv.au2.au-page .au-box{border-radius:0!important;max-height:none!important}}
#authOv.au2.au-page .au-box{max-height:none!important}

/* ---- 2-step redesign (canvas "Login (2 steps)", option A) ---- */
.au.au2 .au-box{width:min(960px,100%)!important;border-radius:28px!important;box-shadow:0 40px 90px -30px rgba(0,0,0,.55)!important}
#authOv.au2 .au-box{min-height:min(600px,calc(100dvh - 32px))}
.au2-side{width:380px;padding:34px 32px 30px;gap:22px}
.au2-side::before{right:-120px;top:-120px;width:320px;height:320px;border-color:rgba(255,255,255,.12)}
.au2-side::after{left:-90px;bottom:-110px;width:260px;height:260px;border:0;background:rgba(255,255,255,.05)}
.au2-top{display:flex;align-items:center;gap:10px}
.au2-tag{display:none;font-size:12.5px;color:rgba(255,255,255,.85)}
.au2-pitch b{font:700 27px/1.22 Poppins,sans-serif!important}
.au2-pitch span{color:rgba(255,255,255,.82)}
.au2-perks{gap:12px}
.au2-perks li{align-items:center;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}
.au2-perks li > .ic{width:36px;height:36px;flex:none;border-radius:10px;background:#fff;color:#7a0d1c;display:grid;place-items:center;font-size:15px}
.au2-perks li > .ic svg{width:16px;height:16px}
.au2-perks small{color:rgba(255,255,255,.75)}
.au2-safe{color:rgba(255,255,255,.8)}

/* step indicator + header */
.au.au2 .au-hd{flex-direction:column!important;align-items:stretch!important;gap:22px;padding:26px 56px 0!important}
.au2-steps{display:flex;align-items:center;gap:6px;min-height:42px;padding-right:56px}
.au2-steps span{margin-right:6px;font:700 12px Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}
.au2-steps span b{font-weight:700;color:inherit}
.au2-steps i{width:34px;height:5px;border-radius:99px;background:#e5e7eb;transition:background .25s}
.au2-steps i.on{background:var(--a2-red)}
.au.au2 .au-hd .au-x,.au.au2 .au-x{top:26px!important;right:26px!important;width:42px!important;height:42px!important;background:#f3f2f0!important}
.au.au2 .au-hdtxt{display:block!important;max-width:420px;width:100%;margin:0 auto}
.au.au2 .au-hdtxt h2,.au.au2 #auTitle{font-size:30px!important}
.au.au2 .au-main{padding:18px 56px 30px!important}
.au.au2 .au-main > .au-step{max-width:420px;width:100%;margin:0 auto}
#authOv.au2[data-step="otp"] .au-hd{padding-top:26px!important}

/* step 1 */
.au.au2 .au-mob{min-height:60px;border-radius:16px!important}
.au.au2 .au-mob .cc{height:60px!important;border-radius:15px 0 0 15px!important;background:#fff!important;font-weight:700!important}
.au.au2 .au-mob input{font-size:19px!important}
.au.au2 .au-mob:focus-within{border-color:var(--a2-ink)!important;box-shadow:0 0 0 4px rgba(17,24,39,.08)!important}
.au.au2 .au-mob.valid{border-color:#16a34a!important;box-shadow:0 0 0 4px rgba(22,163,74,.12)!important}
.au.au2 .au-ok{color:#16a34a!important}
.au.au2 .au-btn{min-height:56px;border-radius:16px!important;font:700 16.5px Inter,sans-serif!important;box-shadow:0 14px 28px -14px rgba(214,17,42,.9)!important}
.au.au2 #auSend:disabled{opacity:1;background:#e8a3ad!important}
.au.au2 .au-google .au-alt{border-radius:16px!important;border-width:1.5px!important;border-color:#e5e7eb!important}

/* step 2 */
.au2-otpic{display:grid;place-items:center;width:56px;height:56px;margin:4px 0 14px;border-radius:18px;background:#fff1f3;color:var(--a2-red);font-size:24px}
.au.au2 .au-back:not([hidden]){margin-bottom:14px;height:36px!important;border-radius:10px!important;background:#f3f2f0!important;color:#374151!important;font:600 13.5px Inter,sans-serif!important}
.au2-otph{font-size:30px!important}
.au.au2 .au-otp input.fill{border-color:#16a34a!important;background:#f3fbf6!important}
.au.au2 .au-otp input:focus{border:2px solid var(--a2-ink)!important;box-shadow:0 0 0 4px rgba(17,24,39,.08)!important}
.au.au2 .au-resend{display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px}
.au.au2 .au-resend #auTimer b{color:var(--a2-ink)}
.au.au2 #auWaOtp:not([hidden]){display:inline-flex!important;align-items:center;gap:6px;height:34px;padding:0 12px!important;border-radius:99px!important;border:1px solid #bbe5c9!important;background:#f0fbf4!important;color:#15803d!important;font:700 13px Inter,sans-serif!important}
.au2-after{margin:12px 0 0;text-align:center;font-size:12.5px;color:#6b7280}
.au.au2 .au-btn.done,.au.au2 .au-btn.done:disabled{background:#16a34a!important;opacity:1!important;box-shadow:0 14px 28px -14px rgba(22,163,74,.9)!important}

@media (max-width:760px){
  .au.au2 .au-box,#authOv.au2 .au-box{border-radius:26px 26px 0 0!important;min-height:0}
  .au2-side{width:auto;padding:12px 18px 16px;gap:12px}
  .au2-side::before{right:-50px;top:-60px;width:170px;height:170px}
  .au2-tag{display:inline}
  .au2-perks li{padding:0 9px;height:26px;border:0;border-radius:99px;background:rgba(255,255,255,.12)}
  .au2-perks li > .ic{width:auto;height:auto;background:none;color:#fff;font-size:11px}
  .au2-perks li > .ic svg{width:11px;height:11px}
  .au.au2 .au-hd{padding:18px 20px 0!important;gap:14px}
  .au2-steps{min-height:0;padding-right:0}
  .au2-steps i{width:26px;height:4px}
  .au.au2 .au-hd .au-x,.au.au2 .au-x{top:12px!important;right:14px!important;width:36px!important;height:36px!important;background:rgba(255,255,255,.14)!important;color:#fff!important}
  .au.au2 .au-hdtxt h2,.au.au2 #auTitle,.au2-otph{font-size:24px!important}
  .au.au2 .au-main{padding:14px 20px calc(24px + env(safe-area-inset-bottom))!important}
  .au.au2 .au-mob,.au.au2 .au-mob .cc{min-height:56px;height:56px!important}
  .au2-otpic{display:none}
}

.au2-otpic svg{width:24px;height:24px}
#authOv.au2 #auVerify.done,#authOv.au2 #auSend.done{background:#16a34a!important;opacity:1!important;box-shadow:0 14px 28px -14px rgba(22,163,74,.9)!important}
