/* MyStationHub registration-only button alignment.
   Center the Google / Apple labels relative to the full button, regardless
   of the left brand icon and the right-aligned Apple availability note.
   Leave OAuth disabled/enabled states, click behavior and brand icons intact. */
body .msh-enterprise-provider-grid button{
  position:relative;
  min-width:0;
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:13px 50px;
  text-align:center;
}
body .msh-enterprise-provider-grid button > svg{
  position:absolute;
  left:17px;
  top:50%;
  width:21px;
  height:21px;
  transform:translateY(-50%);
}
body .msh-enterprise-provider-grid button > span{
  display:block;
  min-width:0;
  flex:0 1 auto;
  width:100%;
  text-align:center;
  font-size:inherit;
  line-height:1.25;
  overflow-wrap:normal;
  white-space:normal;
}
body .msh-enterprise-provider-grid button > small{
  position:absolute;
  right:12px;
  bottom:5px;
  margin:0;
  line-height:1.1;
  text-align:right;
  white-space:nowrap;
}
/* Only the long FREE registration CTA needs room for its two-line text.
   Keep the approved OK button's background, hover and text expansion. */
@media(max-width:600px){
  #registerForm #registerButton.msh-btn-ok-style{
    box-sizing:border-box;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:auto;
    min-height:76px;
    padding:13px 49px;
    gap:0;
    white-space:normal;
    text-align:center;
  }
  #registerForm #registerButton.msh-btn-ok-style .msh-btn-ok-style__label{
    display:block;
    flex:1 1 auto;
    min-width:0;
    max-width:100%;
    white-space:normal!important;
    overflow-wrap:break-word;
    text-wrap:balance;
    text-align:center;
    line-height:1.3;
  }
  #registerForm #registerButton.msh-btn-ok-style .msh-btn-ok-style__icon{
    position:absolute;
    right:17px;
    top:50%;
    margin:0;
    transform:translateY(-50%)!important;
  }
}
@media(max-width:760px){
  body .msh-enterprise-provider-grid button{
    justify-content:center;
    min-height:72px;
    padding:14px 50px;
  }
}
@media(max-width:380px){
  body .msh-enterprise-provider-grid button{
    padding-inline:43px;
  }
  body .msh-enterprise-provider-grid button > svg{left:13px;}
  #registerForm #registerButton.msh-btn-ok-style{padding-inline:43px;}
  #registerForm #registerButton.msh-btn-ok-style .msh-btn-ok-style__icon{right:13px;}
}
