.login-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:42px;border:1px solid #e8e8e8;border-radius:20px;background:#fff;color:#252525;box-shadow:0 24px 90px #0002;font-family:Arial,'PingFang SC',sans-serif;overflow:auto;overscroll-behavior:contain}.login-dialog::backdrop{background:#0005}.login-dialog *{box-sizing:border-box}.login-dialog [hidden]{display:none!important}.login-dialog button,.login-dialog input{font:inherit}.login-close{position:absolute;right:22px;top:20px;width:32px;height:32px;border:0;background:transparent;font-size:25px!important;line-height:1;cursor:pointer;color:#777}.login-eyebrow{font-size:10px;letter-spacing:.15em;color:#888;margin:0 0 10px}.login-dialog h2{font-size:34px;line-height:1.2;letter-spacing:-1px;font-weight:800;margin:0 0 12px}.login-intro{font-size:12px;line-height:1.7;color:#777;margin:0 0 28px}.login-form label{display:block;margin-top:18px;font-size:12px;font-weight:600}.login-form label>span{display:block;margin-bottom:9px}.login-form input{display:block;width:100%;height:48px;border:1px solid #e0e0e0;border-radius:10px;padding:0 14px;background:#fafafa;color:#252525;font-size:13px;outline:none}.login-form input:focus{border-color:#252525;background:#fff;box-shadow:0 0 0 2px #2525250d}.login-form input::placeholder{color:#aaa}.login-password,.login-code{position:relative}.login-password input{padding-right:64px}.login-password button{position:absolute;right:12px;top:0;height:48px;border:0;background:transparent;font-size:11px;color:#777;cursor:pointer}.login-code{display:flex;gap:8px}.login-code input{min-width:0}.login-code button{flex-shrink:0;border:1px solid #ddd;border-radius:10px;padding:0 12px;background:#fff;font-size:11px;cursor:pointer}.login-message{font-size:12px;line-height:1.7;margin:16px 0 0;padding:12px;background:#f5f5f5;border-radius:8px}.login-primary{width:100%;height:50px;border:0;border-radius:30px;background:#252525;color:#fff;font-weight:700!important;font-size:14px!important;margin:24px 0 16px;cursor:pointer}.login-primary:hover{background:#444}.login-forgot{display:block;margin:0 auto;border:0;background:transparent;font-size:11px!important;color:#777;cursor:pointer}.login-switch{border-top:1px solid #ededed;padding-top:22px;margin-top:26px;text-align:center;font-size:12px;color:#888}.login-switch button{border:0;background:transparent;font-weight:700;color:#252525;margin-left:8px;cursor:pointer}.login-dialog button:focus-visible{outline:2px solid #555;outline-offset:3px}.header_contact button.header_contact_link{border:0;cursor:pointer;font:inherit}.header_nav_list_item button.header_nav_list_item_link{border:0;background:none;font:inherit;cursor:pointer}body:has(.login-dialog[open]){overflow:hidden}@media(max-width:520px){.login-dialog{padding:30px 24px;border-radius:16px}.login-dialog h2{font-size:30px}.login-intro{margin-bottom:20px}}
.login-primary{text-align:center;display:flex;align-items:center;justify-content:center}.login-switch{display:flex;align-items:center;justify-content:center;gap:8px}.login-switch button{display:inline-block;margin:0}.login-close{text-align:center}.login-code button{text-align:center}

.login-form label:first-child{margin-top:0}

.login-methods{margin-top:22px}.login-divider{display:flex;align-items:center;gap:14px;color:#aaa;font-size:11px;margin-bottom:16px}.login-divider:before,.login-divider:after{content:"";height:1px;background:#ededed;flex:1}
.login-method{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:46px;margin-top:10px;border:1px solid #dedede;border-radius:24px;background:#fff;color:#252525;font-size:13px!important;font-weight:600!important;cursor:pointer;transition:background .18s,border-color .18s}
.login-method:hover{background:#f7f7f7;border-color:#aaa}.login-method svg{width:23px;height:23px;flex-shrink:0}.login-methods+.login-switch{border-top:0;margin-top:20px;padding-top:0}

/* Keep authentication methods together and account help in a centered bottom row. */
.login-dialog .login-primary{margin-bottom:0}
.login-dialog .login-methods{margin-top:22px}
.login-account-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:24px;row-gap:12px;margin-top:24px}
.login-account-actions .login-forgot{display:inline-block;margin:0;font-size:12px!important;line-height:1.5}
.login-account-actions .login-switch{margin:0;padding:0;border:0;font-size:12px;line-height:1.5;gap:6px}
@media(max-width:380px){.login-account-actions{column-gap:16px}}

.login-account-actions{column-gap:32px}
.login-account-actions .login-forgot,.login-account-actions .login-switch button{color:#777;font-size:12px!important;font-weight:700;line-height:1.5;padding:4px 0}
.login-account-actions .login-forgot:hover,.login-account-actions .login-switch button:hover{color:#252525}

.login-dialog{padding-top:54px}
@media(max-width:520px){.login-dialog{padding-top:52px}}

/* Welcome copy belongs only to the login view, without a brand lockup. */
.login-welcome{margin-bottom:28px}
.login-welcome .login-eyebrow{margin:0 0 10px;color:#888;font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.5}
.login-welcome h2{margin:0 0 12px;font-size:34px;line-height:1.2;letter-spacing:-1px;font-weight:800}
.login-welcome .login-intro{margin:0;color:#777;font-size:12px;font-weight:500;line-height:1.7}
@media(max-width:520px){.login-welcome h2{font-size:30px}.login-welcome{margin-bottom:24px}}
