.aa-auth-lock{overflow:hidden}
.aa-auth-overlay{
  --aa-login-brand:#770505;--aa-login-bg:#e8e2d9;--aa-login-text:#1d1d1f;--aa-login-muted:#746e69;
  position:fixed;inset:0;z-index:100000;display:grid;place-items:center;min-height:100dvh;
  padding:max(28px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));
  overflow:auto;
  background:radial-gradient(circle at 50% -12%,rgb(119 5 5 / 7%),transparent 34%),linear-gradient(180deg,#eee8df 0%,var(--aa-login-bg) 100%);
  color:var(--aa-login-text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased
}
.aa-auth-card{width:min(100%,400px);display:grid;justify-items:center;gap:0;padding:8px 0 4px;border:0;background:transparent;box-shadow:none}
.aa-auth-logo-wrap{display:grid;place-items:center;min-height:128px;margin-bottom:26px}
.aa-auth-logo{display:block;width:clamp(160px,46vw,204px);height:auto;object-fit:contain;transform:rotate(-45deg);transform-origin:50% 50%;filter:drop-shadow(0 10px 22px rgb(65 35 24 / 7%))}
.aa-auth-copy{width:100%;display:grid;gap:9px;margin-bottom:28px;text-align:center}
.aa-auth-copy h1{margin:0;color:var(--aa-login-text);font-size:clamp(32px,9vw,42px);line-height:1;font-weight:700;letter-spacing:-.045em}
#aaAuthMessage{min-height:20px;margin:0;color:var(--aa-login-muted);font-size:14px;line-height:1.45}
#aaAuthMessage[data-mode="error"]{color:var(--aa-login-brand)}
.aa-auth-pin{display:flex;justify-content:center;align-items:center;gap:15px;min-height:20px;margin-bottom:30px}
.aa-auth-pin span{width:13px;height:13px;border:1.5px solid rgb(62 53 47 / 30%);border-radius:50%;background:transparent;color:transparent;font-size:0;transition:transform .16s cubic-bezier(.2,.8,.2,1),border-color .16s ease,background-color .16s ease}
.aa-auth-pin span.is-filled{transform:scale(1.06);border-color:var(--aa-login-brand);background:var(--aa-login-brand)}
.aa-auth-keypad{--aa-key-size:clamp(78px,22vw,88px);width:min(100%,360px);display:grid;grid-template-columns:repeat(3,var(--aa-key-size));justify-content:center;gap:clamp(14px,4vw,20px) clamp(16px,5vw,24px)}
.aa-auth-keypad button,.aa-auth-keypad-spacer{width:var(--aa-key-size);min-width:var(--aa-key-size);height:var(--aa-key-size);min-height:var(--aa-key-size)}
.aa-auth-keypad button{display:grid;place-items:center;padding:0;border:1px solid rgb(55 45 38 / 9%);border-radius:50%;background:rgb(255 253 249 / 68%);color:var(--aa-login-text);font:inherit;font-size:clamp(27px,7.5vw,32px);line-height:1;font-weight:500;box-shadow:0 3px 14px rgb(45 32 22 / 3%);transition:transform .12s ease,background-color .12s ease,border-color .12s ease;-webkit-tap-highlight-color:transparent}
.aa-auth-keypad button:hover:not(:disabled){border-color:rgb(119 5 5 / 14%);background:rgb(255 253 249 / 88%)}
.aa-auth-keypad button:active:not(:disabled){transform:scale(.94);background:rgb(119 5 5 / 8%)}
.aa-auth-keypad button:disabled{opacity:.48}
.aa-auth-delete{border-color:transparent!important;background:transparent!important;box-shadow:none!important;color:#625c57!important}
.aa-auth-delete svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.aa-auth-retry{width:min(100%,296px);min-height:50px;margin-top:24px;padding:0 18px;border:1px solid rgb(119 5 5 / 16%);border-radius:15px;background:rgb(248 246 242 / 72%);color:var(--aa-login-brand);font:inherit;font-size:14px;font-weight:680}
.aa-auth-device{display:grid;gap:8px;padding-top:18px;margin-top:18px;border-top:1px solid var(--line,#ddd)}
.aa-auth-device>span{color:var(--muted,#6b6b6b);font-size:.82rem;font-weight:650}
.aa-auth-device button{min-height:44px;justify-self:start;padding:0 14px;border:1px solid var(--line,#ddd);border-radius:10px;background:var(--surface,#fff);color:var(--brand,#770505);font:inherit;font-size:.88rem;font-weight:700}
@keyframes aa-auth-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
.aa-auth-card.is-shaking{animation:aa-auth-shake .32s ease}
@media(max-width:767px){
  .aa-auth-overlay{
    padding-inline:max(14px,env(safe-area-inset-left));
    padding-top:max(16px,env(safe-area-inset-top));
    padding-bottom:max(36px,env(safe-area-inset-bottom));
    align-items:center
  }
  .aa-auth-card{position:relative;top:clamp(-26px,-3.2dvh,-14px);width:min(100%,430px)}
  .aa-auth-logo-wrap{min-height:102px;margin-bottom:10px}
  .aa-auth-logo{width:clamp(158px,45vw,196px)}
  .aa-auth-copy{margin-bottom:18px}
  .aa-auth-copy h1{font-size:clamp(32px,9vw,40px)}
  #aaAuthMessage{font-size:15px}
  .aa-auth-pin{gap:clamp(13px,4vw,17px);margin-bottom:22px}
  .aa-auth-pin span{width:14px;height:14px}
  .aa-auth-keypad{--aa-key-size:clamp(78px,22vw,88px);gap:clamp(13px,3.8vw,18px) clamp(16px,5vw,22px)}
}
@media(max-width:340px){
  .aa-auth-keypad{--aa-key-size:74px;gap:12px 16px}
  .aa-auth-logo{width:156px}
}
@media(min-width:768px){.aa-auth-overlay{padding:max(40px,env(safe-area-inset-top)) max(42px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(42px,env(safe-area-inset-left))}.aa-auth-card{width:min(100%,420px)}.aa-auth-logo-wrap{min-height:142px;margin-bottom:32px}.aa-auth-logo{width:184px}.aa-auth-copy{margin-bottom:30px}}
@media(min-width:768px) and (orientation:landscape) and (max-height:900px){
  .aa-auth-overlay{padding:max(20px,env(safe-area-inset-top)) max(32px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(32px,env(safe-area-inset-left))}
  .aa-auth-card{position:relative;top:-8px;width:min(100%,390px)}
  .aa-auth-logo-wrap{min-height:88px;margin-bottom:8px}
  .aa-auth-logo{width:146px}
  .aa-auth-copy{gap:6px;margin-bottom:14px}
  .aa-auth-copy h1{font-size:32px}
  #aaAuthMessage{font-size:13px}
  .aa-auth-pin{gap:13px;margin-bottom:16px}
  .aa-auth-pin span{width:12px;height:12px}
  .aa-auth-keypad{--aa-key-size:74px;width:min(100%,310px);gap:11px 18px}
  .aa-auth-keypad button{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.aa-auth-card.is-shaking{animation:none}.aa-auth-pin span,.aa-auth-keypad button{transition:none}}
