/* PM24 V5 auth/list-property visual fix
   Purpose: remove overlapping two-card auth layout and make Login/List Property premium, simple and readable. */
body.public-login,
body.public-business-register,
body.public-list-property,
body.public-owner-login{
  background:
    radial-gradient(circle at 8% 16%,rgba(8,119,255,.12),transparent 28%),
    radial-gradient(circle at 92% 14%,rgba(255,216,77,.34),transparent 26%),
    linear-gradient(180deg,#f6f9ff 0,#ffffff 55%,#f8fbff 100%)!important;
}
body.public-login .page,
body.public-business-register .page,
body.public-list-property .page,
body.public-owner-login .page{
  width:min(1100px,calc(100% - 32px))!important;
  min-height:calc(100vh - 128px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:34px 0!important;
}
body.public-login .auth-shell,
body.public-business-register .auth-shell,
body.public-list-property .auth-shell,
body.public-owner-login .auth-shell{
  width:100%!important;
  max-width:920px!important;
  min-height:auto!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(280px,390px) minmax(340px,440px)!important;
  align-items:center!important;
  justify-content:center!important;
  gap:24px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.public-login .auth-logo,
body.public-business-register .auth-logo,
body.public-list-property .auth-logo,
body.public-owner-login .auth-logo{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:30px!important;
  text-align:left!important;
  border:1px solid rgba(200,215,236,.9)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 15% 10%,rgba(255,216,77,.35),transparent 33%),
    radial-gradient(circle at 95% 90%,rgba(8,119,255,.14),transparent 34%),
    linear-gradient(135deg,#ffffff,#f6faff 64%,#fff9d7)!important;
  box-shadow:0 20px 55px rgba(15,23,42,.08)!important;
}
body.public-login .auth-logo::before,
body.public-business-register .auth-logo::before,
body.public-list-property .auth-logo::before,
body.public-owner-login .auth-logo::before{
  content:'PM24';
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 11px;
  margin-bottom:18px;
  border-radius:999px;
  background:#eef6ff;
  color:#075ed1;
  font-weight:950;
  font-size:12px;
  letter-spacing:.04em;
}
body.public-login .auth-logo strong,
body.public-business-register .auth-logo strong,
body.public-list-property .auth-logo strong,
body.public-owner-login .auth-logo strong{
  display:block!important;
  margin:0!important;
  color:#071327!important;
  font-size:clamp(28px,3.2vw,38px)!important;
  line-height:1.05!important;
  letter-spacing:-.055em!important;
  font-weight:950!important;
}
body.public-login .auth-logo .muted,
body.public-business-register .auth-logo .muted,
body.public-list-property .auth-logo .muted,
body.public-owner-login .auth-logo .muted,
body.public-login .auth-logo p,
body.public-business-register .auth-logo p,
body.public-list-property .auth-logo p,
body.public-owner-login .auth-logo p{
  margin:12px 0 0!important;
  color:#52637d!important;
  font-size:15px!important;
  line-height:1.65!important;
  max-width:340px!important;
}
body.public-login .auth-logo::after,
body.public-business-register .auth-logo::after,
body.public-list-property .auth-logo::after,
body.public-owner-login .auth-logo::after{
  content:'OTP login • No password • Owner controlled access';
  display:flex;
  width:max-content;
  max-width:100%;
  margin-top:20px;
  padding:9px 12px;
  border-radius:999px;
  background:#fff7d5;
  color:#6b4a00;
  font-size:12px;
  font-weight:900;
}
body.public-login .auth-shell .card,
body.public-business-register .auth-shell .card,
body.public-list-property .auth-shell .card,
body.public-owner-login .auth-shell .card,
body.public-login .auth-mobile-otp-card,
body.public-business-register .business-mobile-login-card,
body.public-list-property .business-mobile-login-card,
body.public-owner-login .business-mobile-login-card{
  width:100%!important;
  margin:0!important;
  padding:26px!important;
  border:1px solid #dfe8f6!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 24px 60px rgba(15,23,42,.12)!important;
}
body.public-login .auth-shell .card h1,
body.public-business-register .auth-shell .card h1,
body.public-list-property .auth-shell .card h1,
body.public-owner-login .auth-shell .card h1{
  margin:0 0 14px!important;
  color:#071327!important;
  font-size:28px!important;
  line-height:1.12!important;
  letter-spacing:-.04em!important;
  font-weight:950!important;
}
body.public-login .login-mode-tabs{
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  padding:5px!important;
  margin:0 0 18px!important;
  border-radius:18px!important;
  background:#f5f8fd!important;
  border:1px solid #e0e8f4!important;
}
body.public-login .login-mode-tabs a{
  min-height:44px!important;
  padding:8px 10px!important;
  border:0!important;
  border-radius:14px!important;
  color:#334155!important;
  background:transparent!important;
  font-size:13px!important;
  font-weight:950!important;
  line-height:1.2!important;
  text-decoration:none!important;
}
body.public-login .login-mode-tabs a.active{
  background:#0877ff!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(8,119,255,.22)!important;
}
body.public-login .auth-shell label,
body.public-business-register .auth-shell label,
body.public-list-property .auth-shell label,
body.public-owner-login .auth-shell label{
  display:grid!important;
  gap:8px!important;
  color:#243650!important;
  font-size:13px!important;
  font-weight:950!important;
}
body.public-login .auth-shell input,
body.public-business-register .auth-shell input,
body.public-list-property .auth-shell input,
body.public-owner-login .auth-shell input,
body.public-business-register .auth-shell select,
body.public-list-property .auth-shell select,
body.public-owner-login .auth-shell select{
  height:54px!important;
  min-height:54px!important;
  border:1px solid #d8e3f3!important;
  border-radius:16px!important;
  padding:0 15px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-size:16px!important;
  font-weight:750!important;
  outline:0!important;
}
body.public-login .auth-shell input:focus,
body.public-business-register .auth-shell input:focus,
body.public-list-property .auth-shell input:focus,
body.public-owner-login .auth-shell input:focus,
body.public-business-register .auth-shell select:focus,
body.public-list-property .auth-shell select:focus,
body.public-owner-login .auth-shell select:focus{
  border-color:#0877ff!important;
  box-shadow:0 0 0 4px rgba(8,119,255,.11)!important;
}
body.public-login .auth-shell .btn,
body.public-business-register .auth-shell .btn,
body.public-list-property .auth-shell .btn,
body.public-owner-login .auth-shell .btn{
  width:100%!important;
  min-height:52px!important;
  border:0!important;
  border-radius:16px!important;
  background:#0877ff!important;
  color:#fff!important;
  box-shadow:0 14px 28px rgba(8,119,255,.22)!important;
  font-weight:950!important;
  text-decoration:none!important;
}
body.public-login .auth-shell .btn.ghost,
body.public-business-register .auth-shell .btn.ghost,
body.public-list-property .auth-shell .btn.ghost,
body.public-owner-login .auth-shell .btn.ghost{
  background:#fff!important;
  color:#0877ff!important;
  border:1px solid #bdd4ff!important;
  box-shadow:none!important;
}
body.public-login .auth-login-help,
body.public-business-register .business-switch-box,
body.public-list-property .business-switch-box,
body.public-owner-login .business-switch-box{
  margin-top:16px!important;
  padding:14px!important;
  border:1px solid #dbe8ff!important;
  border-radius:18px!important;
  background:#f7fbff!important;
  color:#52637d!important;
  font-size:13px!important;
  line-height:1.55!important;
  box-shadow:none!important;
}
body.public-business-register .business-switch-box,
body.public-list-property .business-switch-box,
body.public-owner-login .business-switch-box{
  display:grid!important;
  gap:10px!important;
  align-items:stretch!important;
}
body.public-login .auth-login-help a,
body.public-business-register .business-switch-box a,
body.public-list-property .business-switch-box a,
body.public-owner-login .business-switch-box a{
  color:#0877ff!important;
  font-weight:950!important;
  text-decoration:none!important;
}
body.public-login .public-oyo-login,
body.public-business-register .public-oyo-login,
body.public-list-property .public-oyo-login,
body.public-owner-login .public-oyo-login{display:none!important}
@media(max-width:820px){
  body.public-login .page,
  body.public-business-register .page,
  body.public-list-property .page,
  body.public-owner-login .page{align-items:flex-start!important;padding-top:22px!important}
  body.public-login .auth-shell,
  body.public-business-register .auth-shell,
  body.public-list-property .auth-shell,
  body.public-owner-login .auth-shell{grid-template-columns:1fr!important;gap:14px!important;max-width:520px!important}
  body.public-login .auth-logo,
  body.public-business-register .auth-logo,
  body.public-list-property .auth-logo,
  body.public-owner-login .auth-logo{padding:22px!important;border-radius:24px!important;text-align:left!important}
  body.public-login .auth-logo strong,
  body.public-business-register .auth-logo strong,
  body.public-list-property .auth-logo strong,
  body.public-owner-login .auth-logo strong{font-size:30px!important;letter-spacing:-.04em!important}
  body.public-login .auth-shell .card,
  body.public-business-register .auth-shell .card,
  body.public-list-property .auth-shell .card,
  body.public-owner-login .auth-shell .card{padding:20px!important;border-radius:22px!important}
}
@media(max-width:520px){
  body.public-login .auth-logo::after,
  body.public-business-register .auth-logo::after,
  body.public-list-property .auth-logo::after,
  body.public-owner-login .auth-logo::after{display:none!important}
  body.public-login .login-mode-tabs{grid-template-columns:1fr!important}
}

/* PM24 V6 auth/header polish after local video review */
body.public-login .appbar,
body.public-business-register .appbar,
body.public-list-property .appbar,
body.public-owner-login .appbar{
  height:72px!important;
  min-height:72px!important;
  padding:0 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  background:rgba(255,255,255,.94)!important;
  backdrop-filter:blur(14px)!important;
  border-bottom:1px solid #e8eef7!important;
  box-shadow:0 8px 26px rgba(15,23,42,.05)!important;
}
body.public-login .appbar .desktop-nav,
body.public-business-register .appbar .desktop-nav,
body.public-list-property .appbar .desktop-nav,
body.public-owner-login .appbar .desktop-nav,
body.public-login .appbar .language-select,
body.public-business-register .appbar .language-select,
body.public-list-property .appbar .language-select,
body.public-owner-login .appbar .language-select,
body.public-login .appbar .public-oyo-login,
body.public-business-register .appbar .public-oyo-login,
body.public-list-property .appbar .public-oyo-login,
body.public-owner-login .appbar .public-oyo-login{display:none!important}
body.public-login .public-oyo-brand,
body.public-business-register .public-oyo-brand,
body.public-list-property .public-oyo-brand,
body.public-owner-login .public-oyo-brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#071327!important;
  text-decoration:none!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
  font-size:24px!important;
}
body.public-login .public-oyo-brand .brand-mark,
body.public-business-register .public-oyo-brand .brand-mark,
body.public-list-property .public-oyo-brand .brand-mark,
body.public-owner-login .public-oyo-brand .brand-mark{
  width:32px!important;height:32px!important;display:inline-grid!important;place-items:center!important;border-radius:12px!important;background:#0877ff!important;color:#fff!important;font-size:0!important;box-shadow:0 12px 24px rgba(8,119,255,.22)!important;
}
body.public-login .public-oyo-brand .brand-mark::after,
body.public-business-register .public-oyo-brand .brand-mark::after,
body.public-list-property .public-oyo-brand .brand-mark::after,
body.public-owner-login .public-oyo-brand .brand-mark::after{content:'PM';font-size:12px;font-weight:950;letter-spacing:0}
body.public-login .public-oyo-brand span:last-child,
body.public-business-register .public-oyo-brand span:last-child,
body.public-list-property .public-oyo-brand span:last-child,
body.public-owner-login .public-oyo-brand span:last-child{font-size:24px!important;line-height:1!important;color:#071327!important}
@media(max-width:620px){
  body.public-login .appbar,
  body.public-business-register .appbar,
  body.public-list-property .appbar,
  body.public-owner-login .appbar{height:64px!important;min-height:64px!important;padding:0 16px!important}
  body.public-login .public-oyo-brand span:last-child,
  body.public-business-register .public-oyo-brand span:last-child,
  body.public-list-property .public-oyo-brand span:last-child,
  body.public-owner-login .public-oyo-brand span:last-child{font-size:21px!important}
}

/* PM24 V6.1 auth validation placement fix - 2026-07-10
   Keep server validation feedback attached to the auth form instead of
   becoming a separate left-side flex item. */
body.public-login .page,
body.public-business-register .page,
body.public-list-property .page,
body.public-owner-login .page{
  flex-direction:column!important;
}
body.public-login .page > .toast,
body.public-business-register .page > .toast,
body.public-list-property .page > .toast,
body.public-owner-login .page > .toast{
  order:0!important;
  width:min(440px,100%)!important;
  margin:0 auto 14px!important;
  padding:13px 15px!important;
  border-radius:16px!important;
  text-align:left!important;
  line-height:1.45!important;
  box-shadow:0 12px 30px rgba(15,23,42,.08)!important;
}
body.public-login .page > .toast + .auth-shell,
body.public-business-register .page > .toast + .auth-shell,
body.public-list-property .page > .toast + .auth-shell,
body.public-owner-login .page > .toast + .auth-shell{
  margin-top:0!important;
}
@media(max-width:520px){
  body.public-login .page > .toast,
  body.public-business-register .page > .toast,
  body.public-list-property .page > .toast,
  body.public-owner-login .page > .toast{
    width:100%!important;
    margin-bottom:12px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }
}


/* V6.3 List Property: one focused registration card only */
body.public-list-property .auth-shell{display:block!important;width:min(560px,calc(100% - 24px))!important;margin:42px auto!important}
body.public-list-property .auth-shell::before,body.public-list-property .auth-shell::after{display:none!important;content:none!important}
body.public-list-property .auth-logo{display:none!important}
body.public-list-property .business-mobile-login-card{width:100%!important;max-width:none!important;margin:0!important}
@media(max-width:680px){body.public-list-property .auth-shell{margin:18px auto!important;width:100%!important}}
