.astro-apple-web-button {
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  box-sizing:border-box;height:40px;min-height:40px;padding:0 12px;border:1px solid #888;border-radius:20px;
  background:#000;color:#fff;font-family:inherit;font-size:14px;font-weight:500;line-height:20px;cursor:pointer;
}
.astro-apple-web-button svg {width:18px;height:18px;fill:currentColor;flex-shrink:0}
.astro-apple-web-button:focus-visible {outline:3px solid #c9a5ed;outline-offset:3px}
.astro-apple-web-button:disabled {opacity:.65;cursor:wait}
.astro-apple-web-slot {flex:1;min-width:0}
/* Match Google's large/pill SDK button and its 220px fallback width.
   A shared stable width also keeps both providers equal when a scrollbar
   changes the available form width after Google's button has rendered. */
body.au-web .astro-social-login {
  display:flex;flex-direction:column;align-items:stretch;gap:12px;
  width:220px;max-width:100%;margin-left:auto;margin-right:auto;
}
body.au-web .astro-social-login > .astro-gsi-slot,
body.au-web .astro-social-login > .astro-apple-web-slot {
  flex:0 0 auto;width:100%;min-width:0;
}
body.au-web .astro-social-login .astro-google-start {
  box-sizing:border-box;width:100%;height:40px;min-height:40px;
  border-radius:20px;padding:0 12px;font-size:14px;line-height:20px;
}
.astro-apple-web-status {font-size:14px;line-height:1.5;margin:10px 0;color:var(--astro-text-mid,#d7cee8)}
.astro-apple-web-status:empty {display:none}
.astro-apple-web-register {margin:0 0 24px}
.astro-apple-web-register .astro-login-divider {margin:18px 0}
