body.auth-page{
  display:block;
  min-height:100vh;
  padding:24px;
  background:linear-gradient(180deg,#f8fafc,#eaf1f7);
}
.register-shell{
  width:min(1180px,100%)!important;
  margin:0 auto;
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:14px!important;
}
.register-main{
  border-radius:18px!important;
  padding:0!important;
  overflow:hidden;
  background:rgba(255,255,255,.96)!important;
}
.top-links{
  margin:0!important;
  padding:14px 18px;
  border-bottom:1px solid var(--auth-line);
  background:#f8fafc;
}
.brand-link{
  color:#0f766e!important;
}
.mini-link{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  padding:0 12px;
  border-radius:10px;
  background:#eef6ff;
  color:#1d4ed8!important;
}
.auth-title,.auth-subtitle,.required-note,.form-error-summary{
  margin-right:18px!important;
  margin-left:18px!important;
}
.auth-title{
  margin-top:18px!important;
  font-size:clamp(24px,3vw,34px)!important;
  letter-spacing:0!important;
}
.auth-title span{color:#0f766e!important}
.auth-subtitle{
  max-width:760px;
  color:#475569!important;
}
.required-note{
  width:max-content;
  max-width:calc(100% - 36px);
  border-color:#bbf7d0!important;
  background:#f0fdf4!important;
  color:#166534!important;
}
#registerForm>.section-title,
#registerForm>.register-grid,
#registerForm>.role-grid,
#registerForm>.submit-row,
#registerForm>.field-error{
  margin-right:18px!important;
  margin-left:18px!important;
}
.section-title{
  padding-top:12px;
  border-top:1px solid #edf2f7;
}
.section-title:first-of-type{
  border-top:0;
  padding-top:0;
}
.section-title span{
  background:#e7f8f4!important;
  color:#0f766e!important;
  border:1px solid #b7eadf;
}
.role-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.role-card{
  min-height:106px;
  border-radius:12px!important;
  padding:14px 14px 12px!important;
  border-color:#d8e3ee!important;
  background:#fff!important;
}
.role-card:before{
  content:"";
  width:18px;
  height:18px;
  border-radius:50%;
  border:2px solid #cbd5e1;
  position:absolute;
  left:12px;
  top:12px;
}
.role-card.selected{
  transform:none!important;
  border-color:#0f766e!important;
  box-shadow:0 0 0 3px rgba(15,118,110,.12)!important;
}
.role-card.selected:before{
  border-color:#0f766e;
  box-shadow:inset 0 0 0 4px #fff;
  background:#0f766e;
}
.role-card b{font-size:15px!important}
.role-card span{font-size:11px!important;color:#64748b!important}
.register-grid{
  gap:10px!important;
}
.form-group{
  display:grid;
  gap:6px;
}
.form-group label{
  color:#334155;
  font-size:12px;
  font-weight:950;
}
.form-control{
  min-height:46px!important;
  border-radius:11px!important;
  border-color:#d8e3ee!important;
  background:#fbfdff!important;
  box-shadow:none!important;
}
.form-control:focus{
  border-color:#0f766e!important;
  box-shadow:0 0 0 3px rgba(15,118,110,.13)!important;
}
.company-note{
  border-color:#fde68a!important;
  background:#fffbeb!important;
  color:#854d0e!important;
}
.map-box{
  border-radius:14px!important;
}
.register-map{
  height:260px!important;
}
.map-toolbar{
  background:#fbfdff;
}
.otp-box{
  border-radius:14px!important;
  background:#f8fafc!important;
  border-color:#d8e3ee!important;
}
.otp-box>b{
  display:block;
  color:#0f172a;
  margin-bottom:8px;
}
.captcha-inline{
  grid-template-columns:minmax(120px,auto) minmax(0,1fr) auto!important;
}
.otp-row .btn,
.captcha-inline .btn{
  min-width:128px;
}
.otp-status{
  min-height:20px;
  font-size:12px!important;
}
.submit-row{
  padding:16px 0 20px;
  border-top:1px solid #edf2f7;
}
.submit-row .btn{
  border-radius:12px!important;
}
.register-side{
  top:16px!important;
  border-radius:18px!important;
  background:#0f172a!important;
  border:1px solid rgba(255,255,255,.12);
}
.register-side h2{
  font-size:21px!important;
}
.side-item{
  border-radius:12px!important;
  background:rgba(255,255,255,.08)!important;
}
.side-num{
  border-radius:8px!important;
  background:#0f766e!important;
}
@media(max-width:980px){
  body.auth-page{padding:12px}
  .register-shell{grid-template-columns:1fr!important}
  .role-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
  .register-main,.register-side{border-radius:14px!important}
  .role-grid,.register-grid{grid-template-columns:1fr!important}
  .auth-title,.auth-subtitle,.required-note,.form-error-summary,
  #registerForm>.section-title,#registerForm>.register-grid,#registerForm>.role-grid,#registerForm>.submit-row,#registerForm>.field-error{
    margin-right:12px!important;
    margin-left:12px!important;
  }
  .captcha-inline,.otp-row{
    grid-template-columns:1fr!important;
  }
  .otp-row .btn,.captcha-inline .btn{
    width:100%;
    min-width:0;
  }
}
