/* SC4 Auth Portal (Stage 3) — Layout + polish */
.sc4-auth-portal{
  width:min(1120px, calc(100% - 32px));
  margin:28px auto;
}

.sc4-auth-card{
  width:100%;
  /* Dark-mode panel so the portal reads above busy backgrounds */
  background: rgba(0,0,0,.62);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 70px rgba(0,0,0,.55);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

/* Keep header/body feeling like one unified panel */
.sc4-auth-card .sc4-card-h{
  background: rgba(0,0,0,.18);
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.sc4-auth-card .sc4-card-b{
  background: transparent;
}

.sc4-auth-flash{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.28);
  margin:0 0 14px;
}

/* Google block (Site Kit shortcode output is a little opinionated) */
.sc4-auth-google{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0 0 14px;
}
.sc4-auth-google > *{
  max-width:100%;
}
.sc4-auth-google .goog-inline-block,
.sc4-auth-google iframe,
.sc4-auth-google button{
  max-width:100% !important;
}

/* Split layout */
.sc4-auth-split{
  display:grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap:32px;
  align-items:start;
  margin-top:6px;
}

.sc4-auth-col{
  min-width:0;
}

.sc4-auth-col-right{
  position:relative;
  padding-left:32px;
}

.sc4-auth-col-right:before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  bottom:4px;
  width:1px;
  background:rgba(255,255,255,.12);
}

/* Headings */
.sc4-auth-panel-h,
.sc4-auth-alt-h{
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  margin:0 0 12px;
  opacity:.95;
}

/* Form spacing */
.sc4-auth-form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.sc4-auth-label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  opacity:.92;
}

.sc4-auth-input{
  width:100%;
  height:44px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.22);
  color:inherit;
}

.sc4-auth-input:focus{
  outline:none;
  border-color:rgba(255,255,255,.28);
  box-shadow:0 0 0 2px rgba(255,255,255,.06);
}

.sc4-auth-captcha{
  margin-top:2px;
  display:flex;
  justify-content:flex-start;
}
.sc4-auth-captcha .h-captcha{
  max-width:100%;
}
.sc4-auth-captcha iframe{
  max-width:100%;
}

/* Submit buttons */
.sc4-auth-submit,
.sc4-auth-submit button,
.sc4-auth-submit input[type="submit"],
.sc4-auth-submit .sc4-btn{
  width:100%;
  min-height:44px;
  border-radius:14px;
}

/* Muted helper copy */
.sc4-auth-muted,
.sc4-auth-muted p{
  font-size:12px;
  opacity:.78;
  margin:0;
}

.sc4-auth-links{
  margin-top:14px;
  font-size:13px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
}
.sc4-auth-sep{ display:none; }

/* Kill the old horizontal divider in split mode (it makes things feel mashed) */
.sc4-auth-divider{ display:none; }

/* Small screens */
@media (max-width: 980px){
  .sc4-auth-split{
    grid-template-columns: 1fr;
    gap:18px;
  }
  .sc4-auth-col-right{
    padding-left:0;
    padding-top:6px;
  }
  .sc4-auth-col-right:before{
    display:none;
  }
  .sc4-auth-captcha{
    justify-content:flex-start;
    overflow-x:auto;
  }
}
