*{
  box-sizing:border-box;
}
body.login-page{
  min-height:100vh;
  overflow:hidden;
}
html.pc-login-embedded,html.pc-login-embedded body{
  margin:0;
  width:100%;
  height:100%;
  color-scheme:normal;
}
.login-stage{
  position:relative;
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  padding:42px 24px 24px;
}
.auth-window{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  overflow:hidden;
}
.auth-content{
  position:relative;
  width:min(480px,100%);
  max-height:100%;
  overflow:auto;
  padding:2px 4px 8px;
  scrollbar-width:none;
}
.auth-content::-webkit-scrollbar{
  display:none;
}
.auth-mode-action{
  display:flex;
  justify-content:flex-end;
  margin:4px 0 10px;
}
.auth-mode-action-login{
  justify-content:space-between;
  gap:16px;
}
.auth-text-button{
  appearance:none;
  padding:4px 0;
  cursor:pointer;
}
.auth-title{
  margin:0 0 5px;
}
.auth-lead{
  margin:0 0 13px;
}
.auth-form{
  display:grid;
  gap:8px;
}
.auth-field{
  position:relative;
  min-width:0;
}
.auth-input{
  width:100%;
  height:41px;
  padding:0 12px;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.verify-field{
  display:grid;
  grid-template-columns:minmax(0,1fr) 126px;
  gap:8px;
}
.send-code{
  height:41px;
  cursor:pointer;
  white-space:nowrap;
  padding:0 12px;
}
.send-code:disabled{
  opacity:.5;
  cursor:default;
}
.password-input{
  padding-right:48px;
}
.password-toggle{
  position:absolute;
  top:50%;
  right:11px;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.password-toggle input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.password-toggle span{
  box-sizing:border-box;
  width:20px;
  height:20px;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.password-toggle input:checked + span::after{
  content:"";
  display:block;
  width:8px;
  height:4px;
  margin:5px 0 0 5px;
  transform:rotate(-45deg);
}
.auth-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}
.auth-check{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
}
.auth-check input{
  flex:0 0 auto;
}
.auth-link{
  white-space:nowrap;
}
.auth-primary{
  height:41px;
  cursor:pointer;
}
.oauth-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.oauth-button{
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease;
}
.auth-inline-status{
  min-height:16px;
  margin:1px 2px -1px;
  text-align:left;
}
.auth-inline-status:empty{
  min-height:0;
  margin:0;
}
.is-hidden{
  display:none;
}
@media (max-width:700px){
.login-stage{
  padding:16px;
}
.verify-field{
  grid-template-columns:minmax(0,1fr) 118px;
}
}
@media (prefers-reduced-motion:reduce){
.auth-input,.auth-primary,.oauth-button{
  transition:none;
}
}
[data-auth-root].is-busy .auth-primary{
  opacity:.62;
  cursor:wait;
  transform:none;
}
.auth-secondary{
  height:39px;
  cursor:pointer;
}
[data-oauth-grid][hidden]{
  display:none;
}

.auth-text-button{font-size:inherit;line-height:inherit;letter-spacing:inherit;}
.auth-title{line-height:1.12;letter-spacing:-.02em;}
.auth-lead{line-height:1.45;}
.auth-check{line-height:1.35;}
.auth-inline-status{line-height:1.35;}
.auth-input,.auth-primary,.auth-secondary,.oauth-button,.send-code{font-size:var(--pc-panel-body);}
