/* BIDSMART_SUPPLIER_REGISTRATION_CLEANUP_V2
   Supplier registration layout cleanup.
   Visual-only: no registration, OTP, upload, approval, database, or validation changes. */

body.auth-page.supplier-signup-page{
  margin:0!important;
  min-height:100vh!important;
  overflow-x:hidden!important;
  background:#f4f5f7!important;
}

body.supplier-signup-page .auth-wrapper{
  min-height:100vh!important;
  display:grid!important;
  grid-template-columns:minmax(430px,44%) minmax(0,56%)!important;
  align-items:start!important;
  background:#f4f5f7!important;
}

/* Keep the roofing hero visible while the long form scrolls. */
body.supplier-signup-page .auth-left{
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  min-height:100vh!important;
  align-self:start!important;
  overflow:hidden!important;
  background-position:center!important;
  background-size:cover!important;
}

body.supplier-signup-page .auth-left::before{
  background:
    linear-gradient(90deg,rgba(8,17,25,.76),rgba(8,17,25,.34)),
    linear-gradient(180deg,rgba(5,12,19,.10),rgba(5,12,19,.36))!important;
}

body.supplier-signup-page .left-content{
  width:min(560px,calc(100% - 70px))!important;
  margin:0 auto!important;
  padding:0!important;
}

body.supplier-signup-page .brand-title{
  margin:0 0 7px!important;
  font-size:clamp(38px,3vw,58px)!important;
  letter-spacing:.08em!important;
  line-height:1!important;
}

body.supplier-signup-page .tagline{
  margin:0 0 26px!important;
  font-size:15px!important;
  line-height:1.55!important;
}

body.supplier-signup-page .feature-grid{
  gap:10px!important;
}

body.supplier-signup-page .feature-card{
  min-height:112px!important;
  padding:17px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:15px!important;
  background:rgba(8,18,27,.72)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(9px)!important;
}

body.supplier-signup-page .feature-card h3{
  margin:8px 0 3px!important;
  font-size:12px!important;
}

body.supplier-signup-page .feature-card p{
  margin:0!important;
  font-size:10px!important;
  color:rgba(255,255,255,.68)!important;
}

/* Right side becomes a calm, readable workspace. */
body.supplier-signup-page .auth-right{
  min-width:0!important;
  min-height:100vh!important;
  padding:28px clamp(22px,3.2vw,52px) 34px!important;
  display:block!important;
  overflow:visible!important;
  background:#f4f5f7!important;
}

body.supplier-signup-page .auth-panel.signup-panel{
  width:min(100%,800px)!important;
  max-width:800px!important;
  margin:0 auto!important;
  padding:26px!important;
  overflow:visible!important;
  max-height:none!important;
  border:1px solid #e1e6eb!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 14px 38px rgba(15,23,42,.07)!important;
}

body.supplier-signup-page .signup-heading-clean{
  margin:0 0 20px!important;
  padding:0 0 17px!important;
  border-bottom:1px solid #edf0f3!important;
}

body.supplier-signup-page .signup-heading-clean h2{
  margin:0!important;
  color:#17191d!important;
  font-size:clamp(26px,2.2vw,36px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

body.supplier-signup-page .signup-heading-clean p{
  margin:7px 0 0!important;
  color:#737d88!important;
  font-size:11px!important;
  line-height:1.5!important;
}

body.supplier-signup-page .signup-company-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px 12px!important;
}

body.supplier-signup-page .signup-section-title{
  margin:9px 0 2px!important;
  padding-top:14px!important;
  border-top:1px solid #edf0f3!important;
  color:#39424c!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

body.supplier-signup-page .signup-company-form > .signup-section-title:first-of-type{
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
}

body.supplier-signup-page .signup-company-form input:not([type="checkbox"]):not([type="file"]),
body.supplier-signup-page .signup-company-form select{
  min-width:0!important;
  width:100%!important;
  min-height:46px!important;
  height:46px!important;
  padding:0 12px!important;
  border:1px solid #dbe1e6!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#20252b!important;
  font-size:11px!important;
  box-shadow:none!important;
}

body.supplier-signup-page .signup-company-form input:focus,
body.supplier-signup-page .signup-company-form select:focus{
  border-color:#cf4a53!important;
  box-shadow:0 0 0 3px rgba(197,22,34,.07)!important;
  outline:none!important;
}

body.supplier-signup-page .signup-field-label{
  display:grid!important;
  gap:6px!important;
  color:#4d5661!important;
  font-size:10px!important;
  font-weight:850!important;
}

body.supplier-signup-page .signup-field-label select{
  margin:0!important;
}

/* OTP becomes compact and aligned. */
body.supplier-signup-page .signup-otp-box{
  margin:2px 0 5px!important;
  padding:13px!important;
  border:1px solid #e2e7eb!important;
  border-radius:13px!important;
  background:#fafbfc!important;
}

body.supplier-signup-page .signup-otp-header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:9px!important;
}

body.supplier-signup-page .signup-otp-header strong{
  display:block!important;
  color:#20252b!important;
  font-size:11px!important;
}

body.supplier-signup-page .signup-otp-header small{
  display:block!important;
  margin-top:2px!important;
  color:#7a8490!important;
  font-size:9px!important;
}

body.supplier-signup-page .signup-otp-header .signup-otp-send{
  flex:0 0 118px!important;
  min-height:38px!important;
  height:38px!important;
  border-radius:9px!important;
}

body.supplier-signup-page .signup-otp-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 118px!important;
  gap:9px!important;
}

body.supplier-signup-page .signup-otp-row input{
  min-height:40px!important;
  height:40px!important;
  text-align:center!important;
  letter-spacing:.13em!important;
}

body.supplier-signup-page .signup-otp-button{
  min-height:40px!important;
  height:40px!important;
  padding:0 12px!important;
  border-radius:9px!important;
  font-size:10px!important;
  font-weight:900!important;
  box-shadow:none!important;
}

body.supplier-signup-page .signup-otp-button-primary{
  background:#d31722!important;
  border-color:#d31722!important;
}

body.supplier-signup-page .signup-otp-status{
  margin:7px 1px 0!important;
  font-size:9px!important;
  line-height:1.4!important;
}

/* Address preview no longer consumes much vertical space. */
body.supplier-signup-page .address-preview{
  min-height:auto!important;
  margin:1px 0 4px!important;
  padding:10px 12px!important;
  border:1px solid #e3e7eb!important;
  border-radius:10px!important;
  background:#fafbfc!important;
}

body.supplier-signup-page .address-preview-label{
  font-size:8px!important;
  letter-spacing:.09em!important;
}

body.supplier-signup-page .address-preview strong{
  margin-top:3px!important;
  font-size:9px!important;
  line-height:1.4!important;
}

/* Password section. */
body.supplier-signup-page .password-wrap{
  position:relative!important;
}

body.supplier-signup-page .password-wrap input{
  padding-right:42px!important;
}

body.supplier-signup-page .toggle-password{
  width:34px!important;
  height:34px!important;
  right:6px!important;
  border-radius:8px!important;
}

body.supplier-signup-page .password-strength{
  margin:0!important;
  color:#7b8490!important;
  font-size:9px!important;
}

/* Verification documents become a clean sub-card instead of a large block. */
body.supplier-signup-page .signup-documents-box{
  margin-top:3px!important;
  padding:14px!important;
  border:1px solid #e2e7eb!important;
  border-radius:15px!important;
  background:#fafbfc!important;
  box-shadow:none!important;
}

body.supplier-signup-page .signup-requirements-heading{
  margin-bottom:11px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:16px!important;
}

body.supplier-signup-page .signup-requirements-heading h3{
  margin:0!important;
  color:#20252b!important;
  font-size:12px!important;
}

body.supplier-signup-page .signup-requirements-heading p{
  max-width:320px!important;
  margin:0!important;
  color:#7a8490!important;
  font-size:9px!important;
  line-height:1.4!important;
  text-align:right!important;
}

body.supplier-signup-page .document-upload-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
}

body.supplier-signup-page .document-upload-grid > label{
  min-width:0!important;
  padding:11px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:5px!important;
  border:1px solid #e1e6ea!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#303842!important;
  font-size:9px!important;
  font-weight:850!important;
}

body.supplier-signup-page .document-upload-grid input[type="file"]{
  margin-top:auto!important;
  width:100%!important;
}

/* Small, quiet required/optional badges. */
body.supplier-signup-page .required-mark,
body.supplier-signup-page .optional-mark{
  display:inline-flex!important;
  align-items:center!important;
  min-height:17px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  font-size:7px!important;
  font-weight:900!important;
}

body.supplier-signup-page .required-mark{
  background:#fff0f1!important;
  color:#bd1720!important;
}

body.supplier-signup-page .optional-mark{
  background:#eef1f4!important;
  color:#69737e!important;
}

/* Bottom area stays visually attached to the form. */
body.supplier-signup-page .privacy-consent-card{
  margin-top:3px!important;
  padding:11px 12px!important;
  display:grid!important;
  grid-template-columns:17px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:flex-start!important;
  border:1px solid #e3e7eb!important;
  border-radius:11px!important;
  background:#fafbfc!important;
}

body.supplier-signup-page .privacy-consent-card input{
  width:15px!important;
  height:15px!important;
  min-height:15px!important;
  margin:1px 0 0!important;
  accent-color:#c51622!important;
}

body.supplier-signup-page .privacy-consent-card span{
  color:#56606b!important;
  font-size:9px!important;
  line-height:1.5!important;
}

body.supplier-signup-page .signup-bottom{
  margin-top:3px!important;
  padding-top:12px!important;
  border-top:1px solid #edf0f3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
}

body.supplier-signup-page .signup-bottom .main-btn{
  width:auto!important;
  min-width:170px!important;
  min-height:43px!important;
  margin:0!important;
  padding:0 18px!important;
  border-radius:10px!important;
  background:#d31722!important;
  border-color:#d31722!important;
  box-shadow:0 7px 16px rgba(211,23,34,.14)!important;
  font-size:10px!important;
}

body.supplier-signup-page .signup-bottom p{
  order:-1!important;
  margin:0!important;
  color:#77818c!important;
  font-size:9px!important;
}

body.supplier-signup-page .signup-bottom a{
  color:#c51622!important;
  font-weight:900!important;
  text-decoration:none!important;
}

/* Compliance footer follows the registration column, not the full two-column canvas. */
body.supplier-signup-page .public-policy-footer,
body.supplier-signup-page #bidsmartPublicPolicyFooterV2{
  width:auto!important;
  margin:18px clamp(22px,3.2vw,52px) 28px calc(44% + clamp(22px,3.2vw,52px))!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}

body.supplier-signup-page .public-policy-footer-inner,
body.supplier-signup-page .bidsmart-policy-footer-v2-inner{
  width:min(100%,800px)!important;
  max-width:800px!important;
  min-height:62px!important;
  margin:0 auto!important;
  padding:13px 16px!important;
  border:1px solid #e2e7eb!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(15,23,42,.04)!important;
}

body.supplier-signup-page .public-policy-footer-brand strong,
body.supplier-signup-page .bidsmart-policy-footer-v2-brand strong{
  font-size:10px!important;
}

body.supplier-signup-page .public-policy-footer-brand span,
body.supplier-signup-page .bidsmart-policy-footer-v2-brand span,
body.supplier-signup-page .public-policy-links a,
body.supplier-signup-page .bidsmart-policy-footer-v2-links a{
  font-size:8px!important;
}

@media(max-width:1080px){
  body.supplier-signup-page .auth-wrapper{
    grid-template-columns:minmax(360px,40%) minmax(0,60%)!important;
  }

  body.supplier-signup-page .left-content{
    width:calc(100% - 42px)!important;
  }

  body.supplier-signup-page .public-policy-footer,
  body.supplier-signup-page #bidsmartPublicPolicyFooterV2{
    margin-left:calc(40% + clamp(18px,2.5vw,34px))!important;
    margin-right:clamp(18px,2.5vw,34px)!important;
  }
}

@media(max-width:860px){
  body.supplier-signup-page .auth-wrapper{
    display:block!important;
  }

  body.supplier-signup-page .auth-left{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:430px!important;
  }

  body.supplier-signup-page .auth-right{
    min-height:auto!important;
    padding:18px 13px 24px!important;
  }

  body.supplier-signup-page .auth-panel.signup-panel{
    padding:20px!important;
  }

  body.supplier-signup-page .public-policy-footer,
  body.supplier-signup-page #bidsmartPublicPolicyFooterV2{
    width:calc(100% - 26px)!important;
    margin:12px auto 24px!important;
  }
}

@media(max-width:620px){
  body.supplier-signup-page .auth-left{
    min-height:360px!important;
  }

  body.supplier-signup-page .signup-company-form,
  body.supplier-signup-page .document-upload-grid{
    grid-template-columns:1fr!important;
  }

  body.supplier-signup-page .signup-otp-row{
    grid-template-columns:1fr!important;
  }

  body.supplier-signup-page .signup-otp-header{
    align-items:flex-start!important;
    flex-direction:column!important;
  }

  body.supplier-signup-page .signup-otp-header .signup-otp-send,
  body.supplier-signup-page .signup-otp-button{
    width:100%!important;
    flex-basis:auto!important;
  }

  body.supplier-signup-page .signup-requirements-heading{
    flex-direction:column!important;
  }

  body.supplier-signup-page .signup-requirements-heading p{
    max-width:none!important;
    text-align:left!important;
  }

  body.supplier-signup-page .signup-bottom{
    align-items:stretch!important;
    flex-direction:column!important;
  }

  body.supplier-signup-page .signup-bottom .main-btn{
    width:100%!important;
  }

  body.supplier-signup-page .signup-bottom p{
    text-align:center!important;
  }
}
