/* MoMPA Home — Log in / Sign up / Forgot password / account switcher (v52).
   Everything is scoped under .au (the popup, the account menu, the header buttons). Mobile = bottom sheet,
   >= 600px = centred modal / anchored menu. Inputs are 16px (no iOS zoom), touch targets >= 44px. */

.au{
  --au-p:#46143C; --au-p2:#5E1E52; --au-pa:#5b2a86; --au-g:#C79A3C; --au-g2:#E9CF94; --au-c:#FAF3E7; --au-c2:#F5EAD8;
  --au-ink:#2A1526; --au-mut:#6B5A68; --au-line:#E7DCCB; --au-err:#B42318; --au-ok:#127A52; --au-wa:#128C4A;
  --au-r:16px; --au-ease:cubic-bezier(.2,.8,.2,1);
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;color:var(--au-ink);
  -webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;line-height:1.45;text-align:left
}
.au *,.au *::before,.au *::after{box-sizing:border-box}
.au[hidden],.au [hidden]{display:none!important}
.au svg{flex:none}
:where(.au) button{font:inherit;color:inherit}
html.au-lock,html.au-lock body{overflow:hidden}
.au :focus-visible{outline:2.5px solid var(--au-pa);outline-offset:2px}
.au-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- layer: overlay + sheet (phones) / modal (desktop) ---------- */
.au-modal,.au-menu{position:fixed;left:0;right:0;top:var(--au-vvt,0);height:var(--au-vvh,100%);z-index:400;display:flex;
  align-items:flex-end;justify-content:center}
.au-ov{position:absolute;inset:0;background:rgba(36,9,30,.56);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);
  opacity:0;transition:opacity .28s var(--au-ease)}
.au-on .au-ov{opacity:1}
.au-dlg,.au-pop{position:relative;width:100%;background:#fff;border-radius:26px 26px 0 0;display:flex;flex-direction:column;
  max-height:calc(100% - 10px);box-shadow:0 -18px 60px -20px rgba(36,9,30,.45);transform:translateY(102%);
  transition:transform .38s var(--au-ease);padding-bottom:env(safe-area-inset-bottom,0px);outline:0}
.au-on .au-dlg,.au-on .au-pop{transform:none}
.au-dlg::before{content:"";position:absolute;inset:0 0 auto;height:150px;border-radius:inherit;pointer-events:none;
  background:radial-gradient(120% 90% at 50% -30%,rgba(199,154,60,.20),transparent 62%),
    radial-gradient(40% 60% at 0% 0%,rgba(91,42,134,.08),transparent 70%),linear-gradient(180deg,var(--au-c),#fff)}
.au-grab{position:relative;height:22px;flex:none;display:flex;justify-content:center;align-items:center;cursor:grab;touch-action:none}
.au-grab i{width:42px;height:5px;border-radius:5px;background:rgba(70,20,60,.18)}

@media (min-width:600px){
  .au-modal{align-items:center;padding:24px}
  .au-dlg{max-width:440px;border-radius:28px;max-height:min(760px,calc(100% - 32px));opacity:0;transform:translateY(14px) scale(.985);
    transition:transform .32s var(--au-ease),opacity .24s ease;box-shadow:0 40px 90px -30px rgba(36,9,30,.55),0 0 0 1px rgba(70,20,60,.06)}
  .au-on .au-dlg{opacity:1}
  .au-dlg .au-grab{height:12px;visibility:hidden}
}

/* ---------- header ---------- */
.au-hd{position:relative;flex:none;text-align:center;padding:0 24px 6px}
.au-ib{position:absolute;top:-8px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.7);
  display:grid;place-items:center;cursor:pointer;color:var(--au-p);transition:background .18s}
.au-ib:hover{background:var(--au-c2)}
.au-ib svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.au-back{left:12px}.au-x{right:12px}
@media (min-width:600px){.au-ib{top:4px}}
@media (max-width:599px){.au-crest{width:44px;height:44px;border-radius:14px;padding:4px}.au-t{font-size:24px}.au-seg{margin-top:14px}.au-bd{padding-top:12px}.au-v{gap:12px}}
.au-crest{display:block;width:52px;height:52px;margin:0 auto 6px;border-radius:16px;background:#fff;padding:5px;
  box-shadow:0 10px 24px -12px rgba(70,20,60,.45),0 0 0 1px rgba(199,154,60,.35)}
.au-t{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:26px;line-height:1.15;letter-spacing:-.01em;color:var(--au-p);margin:6px 0 4px}
.au-s{font-size:14.5px;color:var(--au-mut);margin:0 auto;max-width:34ch;text-wrap:balance}
.au-dots{display:flex;justify-content:center;gap:6px;margin:2px 0 8px}
.au-dots i{width:22px;height:4px;border-radius:4px;background:var(--au-line);transition:background .3s,width .3s}
.au-dots i.on{background:var(--au-g);width:30px}
.au-seg{position:relative;display:grid;grid-template-columns:1fr 1fr;margin:18px auto 2px;max-width:300px;padding:4px;border-radius:999px;
  background:var(--au-c2);box-shadow:inset 0 0 0 1px rgba(70,20,60,.06)}
.au-seg button{position:relative;z-index:1;border:0;background:none;min-height:42px;border-radius:999px;font-size:14.5px;font-weight:600;
  color:var(--au-mut);cursor:pointer;transition:color .2s}
.au-seg button[aria-pressed="true"]{color:var(--au-p);font-weight:700}
.au-seg-k{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:#fff;
  box-shadow:0 4px 14px -6px rgba(70,20,60,.35);transition:transform .3s var(--au-ease)}
.au-seg[data-on="signup"] .au-seg-k{transform:translateX(100%)}

/* ---------- body + views ---------- */
.au-bd{position:relative;overflow-y:auto;overscroll-behavior:contain;padding:14px 24px 24px;-webkit-overflow-scrolling:touch}
@media (min-width:600px){.au-bd{padding:16px 36px 32px}.au-hd{padding:0 36px 6px}}
.au-v{display:flex;flex-direction:column;gap:14px}
.au-v.au-in-r{animation:au-in-r .34s var(--au-ease)}
.au-v.au-in-l{animation:au-in-l .34s var(--au-ease)}
@keyframes au-in-r{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes au-in-l{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}

/* fields */
.au-f{display:flex;flex-direction:column;gap:7px}
.au-f label,.au-lrow label{font-size:13.5px;font-weight:600;color:var(--au-ink)}
.au-lrow{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:22px}
.au input[type=text],.au input[type=email],.au input[type=tel],.au input[type=password]{width:100%;min-height:54px;padding:14px 16px;
  font:500 16px/1.2 'Plus Jakarta Sans',system-ui,sans-serif;color:var(--au-ink);background:#FFFDF9;border:1.5px solid var(--au-line);
  border-radius:var(--au-r);outline:0;transition:border-color .18s,box-shadow .18s,background .18s;-webkit-appearance:none;appearance:none}
.au input::placeholder{color:#9C8E99}
.au input:hover{border-color:#D8C9B3}
.au input:focus{border-color:var(--au-p);background:#fff;box-shadow:0 0 0 4px rgba(70,20,60,.10)}
.au input[aria-invalid="true"]{border-color:var(--au-err);box-shadow:0 0 0 4px rgba(180,35,24,.08)}
.au input[readonly]{background:var(--au-c);color:var(--au-mut);border-style:dashed}
.au-e{margin:0;font-size:13px;font-weight:500;color:var(--au-err);min-height:0}
.au-e:empty{display:none}
.au-e::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin:0 7px 1px 2px;vertical-align:middle}
.au-hint{margin:0;font-size:12.5px;color:var(--au-mut)}
.au-badge{display:inline-flex;align-items:center;margin-left:6px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;
  letter-spacing:.02em;color:#1a5c37;background:#E5F4EA;vertical-align:1px}

/* +91 */
.au-tel{display:flex;align-items:stretch}
.au-tel span{display:grid;place-items:center;padding:0 12px 0 15px;font-weight:600;font-size:16px;color:var(--au-p);background:var(--au-c);
  border:1.5px solid var(--au-line);border-right:0;border-radius:var(--au-r) 0 0 var(--au-r)}
.au-tel input{border-radius:0 var(--au-r) var(--au-r) 0!important;letter-spacing:.04em}

/* password + eye */
.au-pw{position:relative}
.au-pw input{padding-right:54px!important}
.au-eye{position:absolute;top:50%;right:5px;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:12px;background:none;
  display:grid;place-items:center;color:var(--au-mut);cursor:pointer}
.au-eye:hover{color:var(--au-p);background:var(--au-c)}
.au-eye svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.au-pw.au-match::after{content:"";position:absolute;right:50px;top:50%;width:8px;height:14px;margin-top:-9px;border:solid var(--au-ok);
  border-width:0 2.4px 2.4px 0;transform:rotate(45deg)}
.au-meter{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:2px}
.au-meter i{height:4px;border-radius:4px;background:var(--au-line);transition:background .25s}
.au-meter[data-s="1"] i:nth-child(1){background:#D97706}
.au-meter[data-s="2"] i:nth-child(-n+2){background:var(--au-g)}
.au-meter[data-s="3"] i{background:var(--au-ok)}

/* checkbox */
.au-chk{display:inline-flex;align-items:center;gap:11px;min-height:44px;font-size:14.5px;font-weight:500;cursor:pointer;align-self:flex-start;position:relative}
.au-chk input{position:absolute;opacity:0;width:22px;height:22px;margin:0;left:0}
.au-box{width:22px;height:22px;border-radius:7px;border:1.6px solid #CDBEA8;background:#fff;display:grid;place-items:center;transition:.18s}
.au-box::after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2.2px 2.2px 0;transform:rotate(45deg) translate(-1px,-1px);opacity:0}
.au-chk input:checked+.au-box{background:var(--au-p);border-color:var(--au-p)}
.au-chk input:checked+.au-box::after{opacity:1}
.au-chk input:focus-visible+.au-box{outline:2.5px solid var(--au-pa);outline-offset:2px}

/* buttons */
.au-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;padding:12px 20px;
  border:0;border-radius:var(--au-r);cursor:pointer;text-decoration:none;font-size:16px;font-weight:700;letter-spacing:.005em;color:#fff;
  background:linear-gradient(135deg,#6A2259 0%,var(--au-p) 55%,#360E2E 100%);
  box-shadow:0 14px 28px -14px rgba(70,20,60,.75),inset 0 1px 0 rgba(255,255,255,.14);transition:transform .15s,box-shadow .2s,opacity .2s}
.au-btn:hover{box-shadow:0 18px 34px -14px rgba(70,20,60,.85),inset 0 1px 0 rgba(255,255,255,.14),0 0 0 1px var(--au-g)}
.au-btn:active{transform:scale(.985)}
.au-btn:disabled{cursor:not-allowed;opacity:.42;box-shadow:none}
.au-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.au-btn-ghost,.au-btn-soft{color:var(--au-p);background:#fff;box-shadow:inset 0 0 0 1.5px var(--au-line)}
.au-btn-ghost:hover,.au-btn-soft:hover{background:var(--au-c);box-shadow:inset 0 0 0 1.5px #D8C9B3}
.au-btn-soft{background:var(--au-c)}
.au-btn-wa{background:var(--au-wa);box-shadow:0 12px 24px -14px rgba(18,140,74,.8)}
.au-btn-wa:hover{box-shadow:0 14px 28px -12px rgba(18,140,74,.9)}
.au-wa-ic{width:20px;height:20px;fill:currentColor}
.au-btn.au-busy{color:transparent!important;pointer-events:none}
.au-btn.au-busy::after{content:"";position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;
  border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:au-spin .7s linear infinite}
.au-btn-ghost.au-busy::after,.au-btn-soft.au-busy::after{border-color:rgba(70,20,60,.2);border-top-color:var(--au-p)}
@keyframes au-spin{to{transform:rotate(360deg)}}
.au-link{border:0;background:none;padding:6px 2px;min-height:32px;cursor:pointer;font-weight:700;color:var(--au-pa);text-decoration:none;font-size:inherit}
.au-link:hover{text-decoration:underline;text-underline-offset:3px}
.au-link.au-sm{font-size:13.5px;padding:0 2px;min-height:24px}
.au-link.au-muted{color:var(--au-mut);font-weight:600}
.au-foot{margin:0;text-align:center;font-size:14.5px;color:var(--au-mut)}
.au-or{display:flex;align-items:center;gap:14px;color:#9C8E99;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.au-or::before,.au-or::after{content:"";flex:1;height:1px;background:var(--au-line)}
.au-google{min-height:44px;display:flex;justify-content:center}
.au-google iframe{margin:0 auto!important}
.au-owner{padding-top:12px;border-top:1px dashed var(--au-line)}
.au-owner a,.au-owner-sm{color:var(--au-mut);text-decoration:none;font-size:13.5px;display:inline-flex;align-items:center;min-height:44px;gap:5px}
.au-owner b,.au-owner-sm b{color:var(--au-pa)}
.au-owner a:hover b,.au-owner-sm:hover b{text-decoration:underline;text-underline-offset:3px}

/* notes, alert */
.au-alert{margin:0 0 14px;padding:12px 14px;border-radius:14px;font-size:14px;font-weight:500;color:#7A1A12;background:#FDF0EE;
  box-shadow:inset 0 0 0 1px rgba(180,35,24,.16);display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
.au-alert.au-info{color:var(--au-p);background:#F6EEF7;box-shadow:inset 0 0 0 1px rgba(91,42,134,.16)}
.au-alert .au-link{padding:0;min-height:0}
.au-note{margin:0;padding:12px 14px;border-radius:14px;font-size:14px;display:flex;flex-direction:column;gap:10px}
.au-note-add{flex-direction:row;align-items:center;gap:10px;margin-bottom:14px;color:var(--au-p);background:linear-gradient(135deg,#FBF4E6,#F6EEF7);
  box-shadow:inset 0 0 0 1px rgba(199,154,60,.35);font-weight:500}
.au-note-add svg{width:22px;height:22px;fill:none;stroke:var(--au-g);stroke-width:1.9;stroke-linecap:round}
.au-note-warn{background:#FFF7E8;box-shadow:inset 0 0 0 1px rgba(199,154,60,.45);color:#5C3B06;font-weight:500}
.au-note-acts{display:flex;gap:18px;flex-wrap:wrap}
.au-note-acts .au-link{padding:4px 0}
.au-note-help{background:#F6EEF7;box-shadow:inset 0 0 0 1px rgba(91,42,134,.18);color:var(--au-p);font-weight:500}

/* code chip + boxes */
.au-chip{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:10px 16px;border:0;border-radius:var(--au-r);cursor:pointer;
  background:linear-gradient(135deg,#FBF1DC,#F7E7C6);box-shadow:inset 0 0 0 1px rgba(199,154,60,.5);color:#5C3B06;font-size:14.5px;text-align:left}
.au-chip svg{width:20px;height:20px;fill:none;stroke:#9A7425;stroke-width:1.9;stroke-linecap:round}
.au-chip b{font-size:19px;letter-spacing:.32em;color:var(--au-p);margin-left:4px;font-variant-numeric:tabular-nums}
.au-chip small{margin-left:auto;font-size:12px;font-weight:700;color:#7A5A1A;white-space:nowrap}
.au-otp{display:flex;justify-content:center;gap:12px}
.au .au-otp input{width:62px;min-height:66px;padding:0;text-align:center;font:700 26px/1 'Plus Jakarta Sans',system-ui,sans-serif;color:var(--au-p);
  border-radius:18px;caret-color:var(--au-g)}
.au .au-otp input.au-has{border-color:var(--au-g);background:#FFFBF2}
.au-otp.au-bad input{border-color:var(--au-err);animation:au-shake .36s}
@keyframes au-shake{25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-3px)}}
.au-e-c{text-align:center}
.au-resend{min-height:32px;display:flex;justify-content:center;align-items:center}
@media (max-width:359px){.au .au-otp input{width:54px;min-height:60px}.au-otp{gap:9px}}

/* accounts (switcher) */
.au-accts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.au-acct{position:relative;border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--au-line);transition:box-shadow .18s}
.au-acct:hover{box-shadow:inset 0 0 0 1.5px #D8C9B3}
.au-acct.is-cur{background:linear-gradient(135deg,#FFFBF3,#FBF3E4);box-shadow:inset 0 0 0 1.5px rgba(199,154,60,.55)}
.au-acct-b{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 54px 10px 12px;border:0;background:none;
  cursor:pointer;text-align:left;border-radius:18px;text-decoration:none;color:inherit}
.au-av{width:44px;height:44px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:15px;letter-spacing:.02em;
  color:#fff;background:linear-gradient(140deg,#7A2B69,var(--au-p));box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--au-g2)}
.au-av-lg{width:52px;height:52px;font-size:18px}
.au-acct-t{display:flex;flex-direction:column;min-width:0;line-height:1.3}
.au-acct-t b{font-size:15px;font-weight:700;color:var(--au-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-acct-t small{font-size:13px;color:var(--au-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-acct-ok{position:absolute;right:14px;top:21px;width:24px;height:24px;border-radius:50%;background:var(--au-ok);display:grid;place-items:center}
.au-acct-ok svg{width:14px;height:14px;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.au-acct-x{position:absolute;right:6px;top:10px;width:44px;height:44px;border:0;border-radius:50%;background:none;cursor:pointer;
  display:grid;place-items:center;color:#9C8E99}
.au-acct-x:hover{background:#FDF0EE;color:var(--au-err)}
.au-acct-x svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.au-acct-pw{display:flex;flex-direction:column;gap:8px;padding:0 12px 12px}
.au-acct-pw .au-row{display:flex;gap:8px}
.au-acct-pw .au-pw{flex:1}
.au-acct-pw .au-btn{width:auto;min-height:54px;padding:0 18px;font-size:15px}
.au-acct .au-e{padding:0 14px 12px}
.au-acct-pw .au-e{padding:0}
.au-lock-ic{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--au-pa)}
.au-skel{height:64px;border-radius:18px;background:linear-gradient(90deg,#F6F0E6 0%,#FBF7F0 50%,#F6F0E6 100%);background-size:200% 100%;animation:au-sk 1.2s infinite}
@keyframes au-sk{to{background-position:-200% 0}}

/* success */
.au-done{align-items:center;text-align:center;gap:12px;padding-top:4px}
.au-tick{width:84px;height:84px;margin-bottom:2px}
.au-tick circle{fill:#E8F5EE;stroke:var(--au-ok);stroke-width:2.5;stroke-dasharray:190;stroke-dashoffset:190;animation:au-draw .7s var(--au-ease) forwards}
.au-tick path{fill:none;stroke:var(--au-ok);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:44;stroke-dashoffset:44;
  animation:au-draw .45s .45s var(--au-ease) forwards}
@keyframes au-draw{to{stroke-dashoffset:0}}
.au-done-t{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:26px;color:var(--au-p);margin:0;line-height:1.15}
.au-done-s{margin:0 0 6px;color:var(--au-mut);font-size:14.5px}
.au-share{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;border-radius:18px;text-decoration:none;text-align:left;
  background:#F1FAF4;box-shadow:inset 0 0 0 1.5px rgba(18,140,74,.28);color:var(--au-ink);transition:box-shadow .18s,transform .15s}
.au-share:hover{box-shadow:inset 0 0 0 1.5px rgba(18,140,74,.6)}
.au-share-ic{width:44px;height:44px;border-radius:14px;flex:none;display:grid;place-items:center;background:var(--au-wa);color:#fff}
.au-share-ic .au-wa-ic{width:24px;height:24px}
.au-share b{display:block;font-size:15px;color:#0E5A31}
.au-share small{display:block;font-size:12.5px;color:var(--au-mut);margin-top:2px;line-height:1.4}
.au-mailnote{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;font-size:13.5px;color:var(--au-mut)}
.au-mailnote svg{width:18px;height:18px;fill:none;stroke:var(--au-g);stroke-width:1.9;stroke-linejoin:round}
.au-done .au-btn{margin-top:6px}
.au-modal[data-view="done"] .au-crest,.au-modal[data-view="done"] .au-t,.au-modal[data-view="done"] .au-s{display:none}

/* ---------- account menu ---------- */
.au-pop{padding:0 20px 20px;gap:12px}
.au-pop>.au-crest{margin:4px auto 0}
.au-me{display:flex;align-items:center;gap:14px;padding:6px 2px 4px}
.au-me-t{display:flex;flex-direction:column;min-width:0}
.au-me-t b{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:20px;color:var(--au-p);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-me-t small{display:inline-flex;align-self:flex-start;margin-top:4px;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;
  color:#6B4A0E;background:#F8EBCB}
.au-btn-dash{justify-content:space-between}
.au-mh{margin:6px 2px 0;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--au-mut)}
.au-mh-c{text-align:center;letter-spacing:0;text-transform:none;font-family:'Fraunces',Georgia,serif;font-size:22px;font-weight:600;color:var(--au-p);margin:0 0 4px}
.au-mi{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:6px 10px;border:0;border-radius:14px;background:none;cursor:pointer;
  font-size:15px;font-weight:600;color:var(--au-ink);text-align:left}
.au-mi:hover{background:var(--au-c)}
.au-mi-ic{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--au-c2);color:var(--au-p)}
.au-mi-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.au-out{margin:0;border-top:1px solid var(--au-line);padding-top:6px}
.au-mi-out{color:var(--au-err)}
.au-mi-out .au-mi-ic{background:#FDF0EE;color:var(--au-err)}
.au-owner-sm{justify-content:center}
.au-pop .au-accts .au-acct-b{min-height:60px}
@media (min-width:600px){
  .au-menu{display:block}
  .au-menu .au-ov{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
  .au-pop{position:absolute;top:var(--au-top,72px);right:var(--au-right,24px);width:360px;max-height:calc(100% - var(--au-top,72px) - 16px);
    overflow-y:auto;border-radius:22px;padding:16px 16px 14px;opacity:0;transform:translateY(-8px) scale(.98);transform-origin:top right;
    transition:transform .22s var(--au-ease),opacity .18s;box-shadow:0 30px 70px -24px rgba(36,9,30,.45),0 0 0 1px rgba(70,20,60,.08)}
  .au-on .au-pop{opacity:1}
  .au-pop .au-grab{display:none}
}
@media (max-width:599px){.au-pop{overflow-y:auto}}

/* ---------- header button (home page .abnb-right) ----------
   The header row is already full (logo · 4 tabs · language · Post Your Requirement): measured, a "Log in" + "Sign up" pair
   clips the Rent tab at every desktop width (the row is capped by .wrap). So: ONE 42px button — guest → small Log in /
   Sign up menu, signed in → avatar → account menu. */
.au-hbar{display:inline-flex;align-items:center}
.au-hme,.au-hav{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border-radius:50%;cursor:pointer;flex:none;
  transition:box-shadow .18s,transform .15s}
.au-hme::before,.au-hav::before{content:"";position:absolute;inset:-4px}  /* >= 46px touch target */
.au-hme{border:0;background:linear-gradient(135deg,#6A2259,var(--au-p));color:#fff;box-shadow:0 8px 18px -10px rgba(70,20,60,.8),0 0 0 2px #fff,0 0 0 3.5px var(--au-g2)}
.au-hme svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
.au-hav{border:0;color:#fff;font-weight:700;font-size:15px;letter-spacing:.02em;
  background:linear-gradient(140deg,#7A2B69,var(--au-p));box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--au-g)}
.au-hme:hover,.au-hav:hover{transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(70,20,60,.85),0 0 0 2px #fff,0 0 0 3.5px var(--au-g)}
@media (max-width:599px){.au-hme,.au-hav{width:36px;height:36px;font-size:13px}.au-hme svg{width:18px;height:18px}}
/* laptops: give the tabs back the button's width (scoped to pages that have it) */
@media (min-width:821px) and (max-width:1180px){.abnb-nav:has(.au-hbar) .abnb-tabs{gap:2px}.abnb-nav:has(.au-hbar) .abnb-tab{padding-left:10px;padding-right:10px}}
/* phones: the logo gives up a little width so logo · language · post · account stay on ONE row */
@media (max-width:420px){.abnb-nav:has(.au-hbar) .brand-full{max-width:min(190px,42vw)}}
@media (max-width:359px){.abnb-nav:has(.au-hbar) .brand-full{max-width:38vw}}

@media (prefers-reduced-motion:reduce){
  .au *,.au *::before,.au *::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}
  .au-tick circle,.au-tick path{stroke-dashoffset:0}
}

/* v58: while the log in / sign up popup is open, the page's bottom action bar (WhatsApp · Book a Visit · Call) hides */
html.au-lock .sticky-bar, html.au-lock .pgd-cta, html.acs-lock .sticky-bar, html.acs-lock .pgd-cta{ display:none !important; }

/* v65: keyboard open on a phone (au-kb, set by auth.js) → compact header, so the field being filled stays in view */
.au-kb .au-dlg{max-height:100%;border-radius:18px 18px 0 0}
.au-kb .au-dlg::before{height:70px}
.au-kb .au-grab,.au-kb .au-crest,.au-kb .au-s,.au-kb .au-dots{display:none}
.au-kb .au-hd{padding-top:8px}
.au-kb .au-ib{top:0;width:40px;height:40px}
.au-kb .au-t{font-size:19px;margin:6px 48px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-kb .au-seg{margin-top:8px}.au-kb .au-seg button{min-height:36px;font-size:13.5px}
.au-kb .au-bd{padding-top:10px;padding-bottom:14px;scroll-padding:12px}
.au-kb .au-v{gap:10px}

/* =====================================================================================================
   v99 cross-device (2026-10-04) — same proportions on every Android / iOS size, nothing hidden, slim fields.
   Reference = 390px phone: fields + buttons 48px. Below 390 everything scales down with vw (floor 44px tap
   target, 16px input font so iOS never zooms). Touch tablets / landscape phones use the 48px size too.
   Desktop (fine pointer, >= 600px) is unchanged.
   ===================================================================================================== */
@media (max-width:599px), (hover:none) and (pointer:coarse){
  .au{--au-h:48px;--au-fs:16px}
  .au input[type=text],.au input[type=email],.au input[type=tel],.au input[type=password]{min-height:var(--au-h);height:var(--au-h);padding:0 14px;font-size:16px}
  .au-pw input{padding-right:48px!important}
  .au-eye{right:2px}
  .au-pw.au-match::after{right:46px}
  .au-btn{min-height:var(--au-h);padding:8px 16px;font-size:var(--au-fs);gap:8px}
  .au-btn-wa{line-height:1.25}
  .au-acct-pw .au-btn{min-height:var(--au-h);padding:0 16px}
  .au-chip{min-height:var(--au-h);padding:8px 14px}
  .au .au-otp input{width:clamp(46px,14.4vw,56px);min-height:0;height:clamp(48px,13.85vw,54px);font-size:clamp(22px,6.15vw,24px);border-radius:16px}
  .au-otp{gap:clamp(8px,2.6vw,12px)}
  .au-mi{min-height:48px}
  /* tap targets >= 44px without changing the line layout (hit area grows, layout box stays) */
  .au-link{min-height:44px;margin-block:-6px}
  .au-link.au-sm{min-height:44px;padding:0 2px;margin-block:-10px}
  .au-note-acts .au-link{padding:4px 0}
  .au-alert .au-link{min-height:44px;margin-block:-12px}
  .au-seg button{min-height:44px}
  .au-kb .au-seg button{min-height:40px}
}
/* narrow phones (< 390px, incl. Android 130% font size): scale proportionally from the 390px reference */
@media (max-width:389px){
  .au{--au-h:clamp(44px,12.31vw,48px);--au-fs:clamp(14px,4.1vw,16px)}
  .au-hd{padding:0 clamp(14px,6.15vw,24px) 6px}
  .au-bd{padding-left:clamp(14px,6.15vw,24px);padding-right:clamp(14px,6.15vw,24px)}
  .au-t{font-size:clamp(20px,6.15vw,24px)}
  .au-s{font-size:clamp(13px,3.7vw,14.5px)}
  .au-crest{width:clamp(38px,11.3vw,44px);height:clamp(38px,11.3vw,44px)}
  .au-ib{width:44px;height:44px}
  .au-back{left:clamp(4px,3vw,12px)}.au-x{right:clamp(4px,3vw,12px)}
  .au-seg{max-width:min(300px,100%)}
  .au-seg button{font-size:clamp(13px,3.7vw,14.5px)}
  .au-f label,.au-lrow label,.au-link.au-sm{font-size:clamp(12.5px,3.46vw,13.5px)}
  .au-foot,.au-chk{font-size:clamp(13px,3.7vw,14.5px)}
  .au-btn svg{width:clamp(16px,4.6vw,19px);height:clamp(16px,4.6vw,19px)}
  .au-tel span{padding:0 10px 0 12px}
  .au-chip{gap:8px;font-size:clamp(12.5px,3.7vw,14.5px);padding:8px 12px}
  .au-chip b{font-size:clamp(16px,4.9vw,19px);letter-spacing:.2em}
  .au-chip small{font-size:clamp(11px,3.1vw,12px)}
  .au-done-t{font-size:clamp(22px,6.67vw,26px)}
  .au-pop{padding:0 clamp(14px,5.1vw,20px) 20px}
  .au-mh-c{font-size:clamp(19px,5.64vw,22px)}
}
/* the code chip stays on one row ("Your code: 1234 · Tap to fill") */
.au-chip>span{white-space:nowrap}
/* close / back buttons always on top (on the success view the header collapses and the body used to cover the X) */
.au-ib{z-index:3}
.au-modal[data-view="done"] .au-hd{min-height:38px}
/* modal: the 24px padding + calc(100% - 32px) max-height pushed the dialog 8px past the screen on short viewports */
@media (min-width:600px){
  .au-modal{padding:16px 24px}
}
/* short landscape screens (phones turned sideways, tablets with the keyboard): compact header so the form has room */
@media (min-width:600px) and (max-height:520px){
  .au-dlg{max-height:calc(100% - 16px)}
  .au-modal{padding:8px 24px}
  .au-dlg .au-grab,.au-dlg .au-crest,.au-dlg .au-s,.au-dlg .au-dots{display:none}
  .au-hd{padding-top:10px}
  .au-ib{top:2px;width:44px;height:44px}
  .au-t{font-size:20px;margin:8px 52px 0}
  .au-seg{margin-top:8px}
  .au-bd{padding-top:10px;padding-bottom:16px}
  .au-v{gap:10px}
  .au-modal[data-view="done"] .au-hd{min-height:48px}
}
/* very short screens (landscape phone with the keyboard open, ~200px tall): the whole dialog scrolls as one, so the
   header never takes the room of the field being typed in (the browser scrolls the focused field into view) */
@media (min-width:600px) and (max-height:300px){
  .au-dlg{overflow-y:auto;overscroll-behavior:contain;max-height:calc(100% - 8px)}
  .au-modal{padding:4px 24px}
  .au-bd{overflow:visible}
}
/* narrow phones: long button labels stay on one line (proportional, not wrapped) */
@media (max-width:389px){
  .au{--au-fs:clamp(13px,4.1vw,16px)}
  .au-btn{padding-inline:clamp(8px,4.1vw,16px)}
  .au-acct-b{gap:clamp(8px,3.1vw,12px);padding-left:clamp(8px,3.1vw,12px);padding-right:clamp(46px,13.85vw,54px)}
  .au-av{width:clamp(38px,11.3vw,44px);height:clamp(38px,11.3vw,44px);font-size:clamp(13px,3.85vw,15px)}
}
/* the support link is the longest label: a touch smaller so it stays one line on phones */
@media (max-width:599px), (hover:none) and (pointer:coarse){
  .au-btn-wa{font-size:calc(var(--au-fs) - 1.5px);padding-inline:12px;gap:8px}
}
/* v354 (owner): suspended → "Alert: Not able to login" */
.au-susp{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .18s}
.au-susp.on{opacity:1}.au-susp[hidden]{display:none}
.au-susp__bg{position:absolute;inset:0;background:rgba(30,8,26,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.au-susp__c{position:relative;width:100%;max-width:380px;padding:30px 24px 22px;border-radius:28px;text-align:center;color:#46143C;outline:none;background:radial-gradient(120% 55% at 50% 0%,#FFFFFF 0%,rgba(255,255,255,0) 60%),linear-gradient(180deg,#FFFCF6 0%,#FBF3E9 60%,#F3E6F2 100%);box-shadow:0 0 0 3px #F1D08A,0 0 0 4px rgba(199,154,60,.5),0 40px 80px -30px rgba(30,8,26,.8);transform:translateY(12px);transition:transform .2s}
.au-susp.on .au-susp__c{transform:none}
.au-susp__i{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 10px;border-radius:50%;background:linear-gradient(135deg,#E25C5C,#B42323);color:#fff;font:800 32px/1 'Plus Jakarta Sans',system-ui,sans-serif;box-shadow:0 14px 28px -14px rgba(180,35,35,.8)}
.au-susp__k{margin:0;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#B42323}
.au-susp__c h3{margin:4px 0 6px;font:600 24px/1.15 'Fraunces',Georgia,serif;color:#241235}
.au-susp__p{margin:0 0 16px;font-size:14.5px;color:#6B5D66}
.au-susp__wa{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;background:#1fa855;color:#fff;font-weight:800;text-decoration:none}
.au-susp__x{width:100%;min-height:46px;margin-top:10px;border:1.5px solid #46143C;border-radius:14px;background:#fff;color:#46143C;font:inherit;font-weight:800;cursor:pointer}
