/* BIDSMART_AUTH_LAYOUT_V2 — fixed viewport; only card content scrolls. */
body.ua-fixed-layout[class] {
  --ua-red:#c81022;
  box-sizing:border-box!important;
  margin:0!important;
  padding:22px 24px 16px!important;
  width:100%!important;
  height:100vh!important;
  height:var(--ua-viewport-height,100dvh)!important;
  min-height:0!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  gap:16px!important;
  overflow:hidden!important;
  background:linear-gradient(120deg,rgba(12,18,24,.32),rgba(12,18,24,.18)),url('../../background.png') center/cover no-repeat!important;
  color:#17191d;
  font-family:Arial,Helvetica,sans-serif;
}
body.ua-fixed-layout::before,body.ua-fixed-layout::after { content:none!important; }
body.ua-fixed-layout .ua-shell,
body.ua-fixed-layout .ua-register-shell {
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.16fr) minmax(0,.91fr)!important;
  align-items:stretch!important;
  align-self:center!important;
  gap:22px!important;
  width:min(1160px,100%)!important;
  height:100%!important;
  min-height:0!important;
  max-height:690px!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:hidden!important;
}
body.ua-fixed-layout .ua-register-shell {
  width:min(1280px,100%)!important;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)!important;
  max-height:760px!important;
}
body.ua-fixed-layout .ua-brand {
  position:relative!important;
  inset:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  max-height:none!important;
  padding:clamp(24px,3vw,46px)!important;
  background:linear-gradient(145deg,#17191d,#24282c)!important;
  box-shadow:0 16px 44px #0003!important;
  overflow:hidden!important;
}
body.ua-fixed-layout .ua-brand h1 { font-size:clamp(38px,4.3vw,62px)!important; }
body.ua-fixed-layout .ua-register-brand h1 { font-size:clamp(36px,3.4vw,50px)!important; }
body.ua-fixed-layout .ua-register-content { height:100%!important; min-height:0!important; min-width:0!important; }
body.ua-fixed-layout .ua-card,
body.ua-fixed-layout .ua-register-card,
body.ua-fixed-layout .ua-register-card.auth-panel.signup-panel {
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  margin:0!important;
  padding:28px!important;
  overflow:hidden!important;
  border:1px solid #dfe3e9!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 16px 44px #0002!important;
}
body.ua-fixed-layout .ua-register-card,
body.ua-fixed-layout .ua-register-card.auth-panel.signup-panel { padding:24px!important; }
body.ua-fixed-layout .ua-auth-scroll,
body.ua-fixed-layout .ua-form-scroll {
  box-sizing:border-box;
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:0!important;
  max-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior-y:contain;
  scrollbar-width:thin;
  scrollbar-color:#adb2b9 transparent;
  scrollbar-gutter:stable;
  padding:3px 9px 4px 3px;
  scroll-padding:16px;
  -webkit-overflow-scrolling:touch;
}
body.ua-fixed-layout .ua-auth-scroll { display:flex; flex-direction:column; justify-content:safe center; }
body.ua-fixed-layout .ua-auth-scroll>* { flex-shrink:0; }
body.ua-fixed-layout .ua-form-scroll:focus-visible,
body.ua-fixed-layout .ua-auth-scroll:focus-visible { outline:2px solid var(--ua-red); outline-offset:-2px; }
body.ua-fixed-layout .ua-account-switch,
body.ua-fixed-layout .ua-register-title,
body.ua-fixed-layout .signup-heading-clean { flex:0 0 auto!important; }
body.ua-fixed-layout .ua-account-switch { margin-bottom:15px!important; }
body.ua-fixed-layout .ua-register-title { font-size:24px!important; margin:0 0 14px!important; }
body.ua-fixed-layout .signup-heading-clean { padding:0 0 14px!important; }
body.ua-fixed-layout .signup-heading-clean h2 { font-size:24px!important; }
body.ua-fixed-layout .ua-form-scroll .client-register-form,
body.ua-fixed-layout .ua-form-scroll .signup-company-form { height:auto!important; min-height:0!important; max-height:none!important; overflow:visible!important; margin:0!important; }

/* The shared compliance footer occupies its own grid row, outside every card. */
body.ua-fixed-layout #bidsmartPolicyFooterLightV2 {
  position:relative!important;
  inset:auto!important;
  align-self:end!important;
  width:min(1280px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:0!important;
}
body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-card {
  min-height:70px!important;
  padding:12px 18px!important;
  gap:8px 18px!important;
  flex-direction:row!important;
  align-items:center!important;
  border-radius:16px!important;
}
body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-brand { min-width:0!important; flex:1 1 280px!important; }
body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-title { font-size:13px!important; }
body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-nav { width:auto!important; gap:3px!important; }
body.ua-fixed-layout #bidsmartCookieNotice { top:12px!important; bottom:auto!important; left:auto!important; right:12px!important; width:min(540px,calc(100% - 24px))!important; }

/* Keep the existing recovery fields, OTP forms, and password-eye handlers. */
body.ua-recovery-page .ua-recovery-card h2 { margin:0 0 22px; font-size:30px; line-height:1.12; }
body.ua-recovery-page .ua-recovery-card form { display:grid; gap:12px; margin:0; }
body.ua-recovery-page .ua-recovery-card input:not([type=hidden]):not([type=radio]) {
  box-sizing:border-box!important; width:100%!important; min-width:0; height:48px!important; margin:0!important; padding:0 12px; border:1px solid #d7dce4!important; border-radius:10px!important; background:white!important; color:#17191d; font-size:14px;
}
body.ua-recovery-page .ua-recovery-card input:focus { outline:2px solid #c8102240; outline-offset:1px; }
body.ua-recovery-page .ua-recovery-card .main-btn { box-sizing:border-box; display:flex; align-items:center; justify-content:center; width:100%; min-height:46px; margin:0; padding:12px; border:1px solid var(--ua-red); border-radius:10px; background:var(--ua-red); color:#fff; font-size:13px; font-weight:700; text-decoration:none; }
body.ua-recovery-page .ua-recovery-card .password-wrap { position:relative; }
body.ua-recovery-page .ua-recovery-card .password-wrap input { padding-right:50px!important; }
body.ua-recovery-page .ua-recovery-card .toggle-password { position:absolute; right:5px; top:4px; display:grid; place-items:center; width:40px; height:40px; padding:8px; margin:0; border:0; background:transparent; color:#252529; cursor:pointer; }
body.ua-recovery-page .ua-recovery-card .toggle-password svg { width:22px; height:22px; }
body.ua-recovery-page .ua-recovery-card .recovery-choice { grid-template-columns:1fr 1fr; gap:9px; margin:0; }
body.ua-recovery-page .ua-recovery-card .recovery-choice label { padding:12px 10px; gap:8px; }
body.ua-recovery-page .ua-recovery-card .recovery-choice strong { font-size:13px; }
body.ua-recovery-page .ua-recovery-card .recovery-choice small { font-size:11px; }
body.ua-recovery-page .ua-recovery-card .login-bottom-link { margin:8px 0; text-align:center; }
body.ua-recovery-page .ua-recovery-card .login-bottom-link a,
body.ua-recovery-page .ua-recovery-card .link-button { font-size:12px; color:var(--ua-red); }
body.ua-recovery-page .ua-recovery-card .alert { padding:12px; margin:0 0 16px; border:1px solid #ebccd0; border-radius:10px; background:#fff5f5; color:#7d1723; font-size:13px; }

@media(max-height:800px) {
  body.ua-fixed-layout .ua-brand .ua-logo { width:64px; height:64px; margin-bottom:18px; }
  body.ua-fixed-layout .ua-brand .ua-logo img { width:58px; height:58px; }
  body.ua-fixed-layout .ua-brand h1 { font-size:clamp(34px,3.4vw,50px)!important; }
  body.ua-fixed-layout .ua-brand p { font-size:13px!important; margin:18px 0!important; }
  body.ua-fixed-layout .ua-brand .ua-company { margin-bottom:18px; }
  body.ua-fixed-layout .ua-brand .ua-points { gap:5px; }
  body.ua-fixed-layout .ua-points span { font-size:10px; padding:8px 10px; }
}
@media(max-width:900px),(max-height:540px) {
  body.ua-fixed-layout[class] { padding:12px 12px 10px!important; gap:10px!important; }
  body.ua-fixed-layout .ua-shell,
  body.ua-fixed-layout .ua-register-shell { grid-template-columns:minmax(0,1fr)!important; width:min(700px,100%)!important; gap:0!important; max-height:none!important; }
  body.ua-fixed-layout .ua-brand { display:none!important; }
  body.ua-fixed-layout .ua-card,
  body.ua-fixed-layout .ua-register-card,
  body.ua-fixed-layout .ua-register-card.auth-panel.signup-panel { padding:20px!important; }
  body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-card { min-height:0!important; padding:10px 12px!important; gap:5px!important; }
  body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-brand { flex:1 1 100%!important; width:100%!important; }
  body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-nav { display:flex!important; flex-wrap:wrap!important; flex:1 1 100%!important; width:100%!important; justify-content:flex-start!important; }
  body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-link { width:auto!important; min-height:28px!important; padding:5px 7px!important; font-size:10px!important; }
  body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-subtitle { display:none!important; }
}
@media(max-width:480px) {
  body.ua-fixed-layout .ua-card,
  body.ua-fixed-layout .ua-register-card,
  body.ua-fixed-layout .ua-register-card.auth-panel.signup-panel { padding:16px 12px!important; border-radius:16px!important; }
  body.ua-fixed-layout .ua-register-title,
  body.ua-fixed-layout .signup-heading-clean h2 { font-size:20px!important; }
  body.ua-fixed-layout .ua-account-switch { margin-bottom:10px!important; }
  body.ua-fixed-layout .ua-register-title { margin-bottom:10px!important; }
  body.ua-recovery-page .ua-recovery-card .recovery-choice { grid-template-columns:1fr; }
  body.ua-fixed-layout #bidsmartPolicyFooterLightV2 .bpfv2-title { font-size:11px!important; }
}
