/* P108-B — Universal Login Surface
   Presentation + entry-point unification only. Authentication/OAuth/session authority remains unchanged. */

html[data-sh-theme] body.sh-auth-page{
  min-height:100vh!important;
  min-height:100dvh!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:auto!important;
}

html[data-sh-theme] body.sh-auth-page .desktop-stage{
  position:relative;
  width:100%;
  min-height:0!important;
  flex:1 0 auto;
  padding:34px 18px 26px!important;
}

/* One subtle halo keeps the large empty field intentional, not busy. */
html[data-sh-theme] body.sh-auth-page .desktop-stage::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:min(600px,88vw);
  height:min(520px,72vh);
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(190,24,93,.10) 0%,rgba(88,101,242,.055) 38%,transparent 72%);
  filter:blur(10px);
  pointer-events:none;
}

html[data-sh-theme] body.sh-auth-page .auth-window{
  position:relative;
  z-index:1;
  width:min(430px,calc(100vw - 28px));
  border-radius:24px!important;
}

/* UI typography contract: regular weight, strong contrast. */
html[data-sh-theme] body.sh-auth-page .window-title,
html[data-sh-theme] body.sh-auth-page .auth-content h1,
html[data-sh-theme] body.sh-auth-page .auth-content .lead,
html[data-sh-theme] body.sh-auth-page .google-btn,
html[data-sh-theme] body.sh-auth-page .google-btn span,
html[data-sh-theme] body.sh-auth-page .back-link,
html[data-sh-theme] body.sh-auth-page .auth-footer{
  font-weight:400!important;
}

html[data-sh-theme] body.sh-auth-page .auth-content{
  min-height:420px;
  padding:40px 34px 34px;
}

html[data-sh-theme] body.sh-auth-page .auth-content h1{
  margin:0 0 10px!important;
  font-size:28px;
  line-height:1.16;
  letter-spacing:-.025em!important;
}

html[data-sh-theme] body.sh-auth-page .auth-content .lead{
  max-width:310px;
  margin:0 auto 28px!important;
  font-size:15px;
  line-height:1.55;
}

html[data-sh-theme="dark"] body.sh-auth-page .auth-content .lead{color:#d5dce7!important;}
html[data-sh-theme="light"] body.sh-auth-page .auth-content .lead{color:#445064!important;}

html[data-sh-theme] body.sh-auth-page .google-btn{
  min-height:56px;
  letter-spacing:0!important;
}
html[data-sh-theme] body.sh-auth-page .google-btn,
html[data-sh-theme] body.sh-auth-page .google-btn span{color:#172033!important;}

html[data-sh-theme="dark"] body.sh-auth-page .window-title,
html[data-sh-theme="dark"] body.sh-auth-page .back-link{color:#d9e0ea!important;}
html[data-sh-theme="light"] body.sh-auth-page .window-title,
html[data-sh-theme="light"] body.sh-auth-page .back-link{color:#4f5b6d!important;}

html[data-sh-theme] body.sh-auth-page .back-link{
  margin-top:24px;
  font-size:14px;
}

html[data-sh-theme] body.sh-auth-page .auth-footer{
  position:relative;
  z-index:1;
  flex:0 0 auto;
  width:100%;
  padding:0 18px 22px;
  text-align:center;
  font-size:12.5px;
  line-height:1.5;
  letter-spacing:0;
}
html[data-sh-theme="dark"] body.sh-auth-page .auth-footer{color:#c5cedb!important;}
html[data-sh-theme="light"] body.sh-auth-page .auth-footer{color:#4f5b6d!important;}

@media (max-width:520px){
  html[data-sh-theme] body.sh-auth-page .desktop-stage{padding:22px 14px 18px!important;}
  html[data-sh-theme] body.sh-auth-page .auth-window{border-radius:22px!important;}
  html[data-sh-theme] body.sh-auth-page .auth-content{min-height:390px;padding:34px 24px 30px;}
  html[data-sh-theme] body.sh-auth-page .auth-content h1{font-size:25px;}
  html[data-sh-theme] body.sh-auth-page .auth-content .lead{font-size:14.5px;margin-bottom:24px!important;}
  html[data-sh-theme] body.sh-auth-page .auth-footer{padding:0 14px 16px;font-size:12px;}
}

@media (max-height:620px){
  html[data-sh-theme] body.sh-auth-page .desktop-stage{padding-top:18px!important;padding-bottom:16px!important;}
  html[data-sh-theme] body.sh-auth-page .auth-content{min-height:350px;padding-top:28px;padding-bottom:26px;}
  html[data-sh-theme] body.sh-auth-page .logo-wrap{margin-bottom:18px;}
  html[data-sh-theme] body.sh-auth-page .auth-footer{padding-bottom:14px;}
}
