/* Lightweight login-only CSS for WHMCS auth pages. */
:root {
  --iw-font-title: "Open Sans", Arial, sans-serif;
  --iw-font-body: "Open Sans", Arial, sans-serif;
  --iw-final-navy: #071427;
  --iw-final-blue: #0f2745;
  --iw-final-teal: #066c7b;
  --iw-final-cyan: #22d3ee;
}
html:has(body.login-bg), body.login-bg { margin: 0 !important; padding: 0 !important; }
body.login-bg {
  min-height: 100vh !important;
  overflow-x: hidden !important;
  background: radial-gradient(circle at 78% 12%, rgba(34,211,238,.34), transparent 28%), radial-gradient(circle at 16% 84%, rgba(6,108,123,.38), transparent 34%), linear-gradient(135deg, var(--iw-final-blue) 0%, var(--iw-final-navy) 48%, #063646 100%) !important;
}
body.login-bg .iw-topbar, body.login-bg header.clientx, body.login-bg nav#sidebar, body.login-bg .whatsapp-float, body.login-bg footer, body.login-bg .footer { display: none !important; }
body.login-bg .wrapper, body.login-bg #content, body.login-bg #page-wrapper, body.login-bg .container, body.login-bg .host-row, body.login-bg .bg-box, body.login-bg .theme-main-inner-page-section {
  width: 100% !important; max-width: none !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; background: transparent !important; box-shadow: none !important; border: 0 !important;
}
body.login-bg .iw-login-wrap { position: relative !important; z-index: 10 !important; display: flex !important; width: 100% !important; min-height: 100vh !important; overflow: visible !important; }
body.login-bg .iw-login-left { flex: 0 0 44% !important; min-height: 100vh !important; padding: 38px 52px !important; background: #fff !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; }
body.login-bg .iw-login-logo, body.login-bg .iw-login-title, body.login-bg .iw-login-sub, body.login-bg .iw-login-form { width: 100% !important; max-width: 430px !important; margin-left: auto !important; margin-right: auto !important; }
body.login-bg .iw-login-logo { margin-bottom: 22px !important; }
body.login-bg .iw-login-logo a { display: inline-flex !important; align-items: center !important; justify-content: center !important; max-width: 280px !important; padding: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
body.login-bg .iw-login-logo img { width: 230px !important; max-width: 100% !important; height: auto !important; display: block !important; object-fit: contain !important; }
body.login-bg .iw-login-title { color: #0b2435 !important; font-family: var(--iw-font-title) !important; font-size: 28px !important; line-height: 1.2 !important; font-weight: 800 !important; letter-spacing: 0 !important; margin: 0 auto 6px !important; }
body.login-bg .iw-login-sub { color: #426275 !important; font-family: var(--iw-font-body) !important; font-size: 14px !important; line-height: 1.55 !important; margin: 0 auto 22px !important; }
body.login-bg .iw-login-form .alert { margin-bottom: 16px !important; border-radius: 10px !important; font-size: 13px !important; }
body.login-bg .iw-field-group { margin-bottom: 13px !important; }
body.login-bg .iw-label { display: block !important; margin-bottom: 6px !important; color: #426275 !important; font-family: var(--iw-font-title) !important; font-size: 13px !important; font-weight: 700 !important; text-transform: none !important; }
body.login-bg .iw-input-wrap { position: relative !important; }
body.login-bg .iw-input { display: block !important; width: 100% !important; height: 44px !important; min-height: 44px !important; padding: 10px 44px 10px 14px !important; border: 1.5px solid #bfe8ef !important; border-radius: 12px !important; background: #f7fdff !important; color: #17191c !important; font-family: var(--iw-font-body) !important; font-size: 14px !important; outline: none !important; box-sizing: border-box !important; }
body.login-bg .iw-input:focus { border-color: #066c7b !important; background: #fff !important; box-shadow: 0 0 0 4px rgba(6,108,123,.12) !important; }
body.login-bg .iw-input::placeholder { color: #94a3b8 !important; }
body.login-bg .iw-pw-toggle { position: absolute !important; right: 12px !important; top: 50% !important; transform: translateY(-50%) !important; padding: 0 !important; border: 0 !important; background: none !important; color: #64748b !important; cursor: pointer !important; font-size: 17px !important; line-height: 1 !important; }
body.login-bg .iw-login-row { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; margin-bottom: 18px !important; }
body.login-bg .iw-check-label { display: inline-flex !important; align-items: center !important; gap: 8px !important; color: #64748b !important; cursor: pointer !important; font-size: 13px !important; font-weight: 500 !important; }
body.login-bg .iw-check-label input[type="checkbox"] { width: 15px !important; height: 15px !important; cursor: pointer !important; }
body.login-bg .iw-forgot { color: #066c7b !important; font-size: 13px !important; font-weight: 700 !important; text-decoration: none !important; }
body.login-bg .iw-forgot:hover { text-decoration: underline !important; }
body.login-bg .iw-login-recaptcha { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; min-height: 78px !important; overflow: visible !important; }
body.login-bg .iw-recaptcha-fallback { width: 100% !important; margin-top: 4px !important; padding: 10px 12px !important; border: 1px solid #fecaca !important; border-radius: 8px !important; background: #fff1f2 !important; color: #991b1b !important; font-size: 12px !important; line-height: 1.35 !important; text-align: center !important; box-sizing: border-box !important; }
body.login-bg .iw-btn-login, body.login-bg .iw-btn-register { width: 100% !important; border-radius: 12px !important; font-family: var(--iw-font-title) !important; font-size: 14px !important; font-weight: 800 !important; text-decoration: none !important; box-sizing: border-box !important; }
body.login-bg .iw-btn-login { display: block !important; height: 45px !important; min-height: 45px !important; margin-bottom: 12px !important; border: 0 !important; background: linear-gradient(135deg, #078da0 0%, #066c7b 100%) !important; color: #fff !important; box-shadow: 0 12px 24px rgba(6,108,123,.20) !important; cursor: pointer !important; }
body.login-bg .iw-btn-login:hover { background: linear-gradient(135deg, #089db2 0%, #055c69 100%) !important; }
body.login-bg .iw-divider { display: flex !important; align-items: center !important; gap: 10px !important; margin-bottom: 12px !important; }
body.login-bg .iw-divider::before, body.login-bg .iw-divider::after { content: "" !important; flex: 1 !important; height: 1px !important; background: #e5e7eb !important; }
body.login-bg .iw-divider span { color: #64748b !important; font-size: 12px !important; white-space: nowrap !important; }
body.login-bg .iw-btn-register { display: flex !important; align-items: center !important; justify-content: center !important; height: 44px !important; border: 1.5px solid rgba(6,108,123,.28) !important; background: #eefbfa !important; color: #066c7b !important; }
body.login-bg .iw-btn-register:hover { border-color: rgba(6,108,123,.46) !important; background: #e0f7f5 !important; color: #054f5d !important; }
body.login-bg .iw-linked-accounts { margin-top: 16px !important; }
body.login-bg .iw-login-right { flex: 1 1 auto !important; min-height: 100vh !important; padding: 42px 54px !important; background: radial-gradient(circle at 82% 14%, rgba(34,211,238,.48), transparent 28%), radial-gradient(circle at 24% 78%, rgba(6,108,123,.42), transparent 34%), linear-gradient(145deg, #0f4660 0%, #0f2745 52%, #071427 100%) !important; display: flex !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; overflow: hidden !important; }
body.login-bg .iw-login-brand-card { width: 100% !important; max-width: 540px !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #fff !important; }
body.login-bg .iw-brand-title { max-width: 620px !important; margin: 0 0 12px !important; color: #fff !important; font-family: var(--iw-font-title) !important; font-size: 35px !important; line-height: 1.08 !important; font-weight: 900 !important; letter-spacing: 0 !important; }
body.login-bg .iw-brand-sub { max-width: 590px !important; margin: 0 !important; color: rgba(231,251,255,.82) !important; font-size: 16px !important; line-height: 1.65 !important; }
body.login-bg .iw-login-visual, body.login-bg .iw-mail-scene { position: relative !important; width: min(560px, 100%) !important; min-height: 320px !important; margin: 0 auto 20px !important; }
body.login-bg .iw-mail-scene, body.login-bg .iw-mail-scene *, body.login-bg .iw-mailbox-hero, body.login-bg .iw-floating-badge { animation: none !important; transition: none !important; }
body.login-bg .iw-mailbox-hero { position: absolute !important; left: 50% !important; top: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; transform: translate(-50%, -50%) !important; }
body.login-bg .iw-mailbox-hero-image, body.login-bg .iw-mail-message-hero { width: 330px !important; height: 252px !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; overflow: visible !important; }
body.login-bg .iw-mailbox-hero-image::before, body.login-bg .iw-mailbox-hero-image::after { display: none !important; content: none !important; }
body.login-bg .iw-mailbox-hero-image img, body.login-bg .iw-mail-message-hero img { display: block !important; width: 100% !important; height: auto !important; max-width: none !important; filter: drop-shadow(0 26px 42px rgba(0,0,0,.24)) !important; }
body.login-bg .iw-floating-badge { position: absolute !important; z-index: 3 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important; min-width: 72px !important; min-height: 38px !important; padding: 8px 11px !important; border: 1px solid rgba(34,211,238,.18) !important; border-radius: 12px !important; background: rgba(255,255,255,.96) !important; color: #073b48 !important; box-shadow: 0 12px 28px rgba(3,19,33,.16) !important; font-size: 12px !important; font-weight: 900 !important; }
body.login-bg .iw-floating-badge i { color: #066c7b !important; font-size: 14px !important; }
body.login-bg .iw-badge-web { left: 64px !important; top: 58px !important; }
body.login-bg .iw-badge-cpanel { left: 74px !important; bottom: 70px !important; }
body.login-bg .iw-badge-ssl { right: 76px !important; top: 112px !important; bottom: auto !important; }
body.login-bg .iw-brand-features { display: none !important; }
body.login-bg .iw-mail-summary { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 10px !important; width: min(590px, 100%) !important; margin-top: 26px !important; }
body.login-bg .iw-mail-summary span { display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; min-height: 48px !important; padding: 11px 13px !important; border: 1px solid rgba(255,255,255,.16) !important; border-radius: 14px !important; background: rgba(255,255,255,.10) !important; color: rgba(231,251,255,.90) !important; font-size: 13px !important; font-weight: 800 !important; text-align: center !important; }
body.login-bg .iw-mail-summary i { color: var(--iw-final-cyan) !important; }
@media (max-width: 991px) {
  body.login-bg .iw-login-wrap { position: static !important; min-height: 100vh !important; }
  body.login-bg .iw-login-left { flex: 1 1 100% !important; min-height: 100vh !important; padding: 34px 22px !important; justify-content: flex-start !important; }
  body.login-bg .iw-login-right { display: none !important; }
}
@media (max-width: 560px) {
  body.login-bg .iw-login-row { align-items: flex-start !important; flex-direction: column !important; gap: 10px !important; }
}


/* IW 2026-05-17 - Final override: centered large login email artwork. */
body.login-bg .iw-login-visual,
body.login-bg .iw-mail-scene {
  width: 100% !important;
  max-width: 640px !important;
  min-height: 380px !important;
}
body.login-bg .iw-mailbox-hero.iw-mail-message-hero {
  width: 88% !important;
  max-width: 500px !important;
  height: auto !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}
body.login-bg .iw-mailbox-hero.iw-mail-message-hero img {
  width: 100% !important;
  height: auto !important;
  max-width: 500px !important;
  max-height: none !important;
  object-fit: contain !important;
}
body.login-bg .iw-badge-web { left: 42px !important; top: 54px !important; }
body.login-bg .iw-badge-cpanel { left: 56px !important; bottom: 56px !important; }
body.login-bg .iw-badge-ssl { right: 50px !important; top: 126px !important; }
@media (max-width: 1200px) {
  body.login-bg .iw-mailbox-hero.iw-mail-message-hero { width: 86% !important; max-width: 460px !important; }
  body.login-bg .iw-mailbox-hero.iw-mail-message-hero img { max-width: 460px !important; }
}
@media (max-width: 991px) {
  body.login-bg .iw-login-visual,
  body.login-bg .iw-mail-scene { min-height: 300px !important; }
  body.login-bg .iw-mailbox-hero.iw-mail-message-hero { width: 82vw !important; max-width: 360px !important; }
  body.login-bg .iw-mailbox-hero.iw-mail-message-hero img { max-width: 360px !important; }
}


/* IW 2026-05-20 - Login validation alerts */
body.login-bg .iw-login-left > .alert,
body.login-bg .iw-login-left > .alert-lagom,
body.login-bg .iw-login-form .alert,
body.login-bg .providerLinkingFeedback .alert {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 430px !important;
  margin: 0 auto 16px !important;
  padding: 14px 16px !important;
  border-radius: 8px !important;
  border-width: 1px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: left !important;
  box-shadow: none !important;
}

body.login-bg .iw-login-left .alert-danger,
body.login-bg .iw-login-left .alert-error {
  border-color: #fecaca !important;
  background: #fff1f2 !important;
  color: #991b1b !important;
}

body.login-bg .iw-login-left .alert ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

body.login-bg .iw-login-left .alert li {
  margin: 0 0 4px !important;
  padding: 0 !important;
}

body.login-bg .iw-login-left .alert li:last-child {
  margin-bottom: 0 !important;
}

/* IW 2026-06-06 - Mobile login rebuilt from scratch */
@media (max-width: 767px) {
  html:has(body.login-bg),
  body.login-bg {
    min-height: 100% !important;
    background: #eef4f7 !important;
  }

  body.login-bg .iw-login-wrap {
    display: block !important;
    min-height: 100vh !important;
    background: #eef4f7 !important;
  }

  body.login-bg .iw-login-left {
    position: relative !important;
    display: block !important;
    min-height: 100vh !important;
    width: 100% !important;
    padding: 0 18px 26px !important;
    background: linear-gradient(180deg, #082133 0, #0b5361 134px, #eef4f7 134px, #eef4f7 100%) !important;
    overflow: visible !important;
  }

  body.login-bg .iw-login-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: none !important;
    height: 84px !important;
    margin: 0 -18px 14px !important;
    padding: 12px 18px 8px !important;
  }

  body.login-bg .iw-login-logo a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 248px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.login-bg .iw-login-logo img {
    width: 188px !important;
    max-width: 100% !important;
    height: auto !important;
    filter: brightness(0) invert(1) !important;
  }

  body.login-bg .iw-login-title,
  body.login-bg .iw-login-sub,
  body.login-bg .iw-login-form,
  body.login-bg .iw-login-left > .alert,
  body.login-bg .iw-login-left > .alert-lagom,
  body.login-bg .providerLinkingFeedback .alert {
    max-width: 380px !important;
  }

  body.login-bg .iw-login-title {
    margin: 0 auto 5px !important;
    color: #ffffff !important;
    font-size: 23px !important;
    line-height: 1.16 !important;
    font-weight: 800 !important;
    text-align: left !important;
  }

  body.login-bg .iw-login-sub {
    margin: 0 auto 18px !important;
    color: rgba(255, 255, 255, .82) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    text-align: left !important;
  }

  body.login-bg .iw-login-form {
    width: 100% !important;
    margin: 0 auto !important;
    padding: 18px !important;
    border: 1px solid rgba(8, 33, 51, .08) !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 42px rgba(8, 33, 51, .13) !important;
    box-sizing: border-box !important;
  }

  body.login-bg .iw-field-group {
    margin-bottom: 12px !important;
  }

  body.login-bg .iw-label {
    margin-bottom: 5px !important;
    color: #263f4f !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  body.login-bg .iw-input {
    height: 43px !important;
    min-height: 43px !important;
    padding: 9px 42px 9px 12px !important;
    border-color: #c9dde5 !important;
    border-radius: 8px !important;
    background: #f8fbfc !important;
    font-size: 14px !important;
  }

  body.login-bg .iw-pw-toggle {
    right: 12px !important;
    font-size: 16px !important;
  }

  body.login-bg .iw-login-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
  }

  body.login-bg .iw-check-label,
  body.login-bg .iw-forgot {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  body.login-bg .iw-forgot {
    width: fit-content !important;
  }

  body.login-bg .iw-login-recaptcha {
    width: 100% !important;
    min-height: 78px !important;
    margin-bottom: 14px !important;
    transform-origin: top center !important;
  }

  body.login-bg .iw-login-recaptcha .g-recaptcha {
    max-width: 304px !important;
  }

  body.login-bg .iw-btn-login,
  body.login-bg .iw-btn-register {
    height: 44px !important;
    min-height: 44px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
  }

  body.login-bg .iw-btn-login {
    margin-bottom: 12px !important;
    box-shadow: none !important;
  }

  body.login-bg .iw-divider {
    margin-bottom: 12px !important;
  }

  body.login-bg .iw-linked-accounts {
    margin-top: 12px !important;
  }
}

@media (max-width: 374px) {
  body.login-bg .iw-login-left {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.login-bg .iw-login-logo {
    margin-left: -14px !important;
    margin-right: -14px !important;
  }

  body.login-bg .iw-login-form {
    padding: 14px !important;
  }

  body.login-bg .iw-login-recaptcha {
    align-items: flex-start !important;
  }

  body.login-bg .iw-login-recaptcha .g-recaptcha {
    transform: scale(.96) !important;
    transform-origin: top left !important;
  }
}

/* IW mobile login stability - 2026-06-19 */
@media (max-width:767px){
  html:has(body.login-bg),body.login-bg{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body.login-bg .iw-login-left{padding-bottom:calc(26px + env(safe-area-inset-bottom))!important}
  body.login-bg .iw-login-form{width:100%!important;max-width:380px!important}
  body.login-bg .iw-input{font-size:16px!important}
  body.login-bg .iw-btn-login,body.login-bg .iw-btn-register,body.login-bg .iw-pw-toggle{touch-action:manipulation}
}
@media (max-width:359px){
  body.login-bg .iw-login-left{padding-left:12px!important;padding-right:12px!important}
  body.login-bg .iw-login-logo{margin-left:-12px!important;margin-right:-12px!important}
  body.login-bg .iw-login-form{padding:13px!important}
}

/* IW 2026-06-20 - login mobile brand polish */
@media (max-width: 767px) {
  body.login-bg .iw-login-left {
    background:
      radial-gradient(circle at 50% 0, rgba(34, 211, 238, .22), transparent 42%),
      linear-gradient(180deg, #071c2d 0, #0a4051 92px, #0c6473 168px, #eef4f7 168px, #eef4f7 100%) !important;
  }

  body.login-bg .iw-login-logo {
    height: auto !important;
    margin: 0 -18px 16px !important;
    padding: 18px 18px 10px !important;
  }

  body.login-bg .iw-login-logo a {
    max-width: 258px !important;
    padding: 12px 18px !important;
    border: 1px solid rgba(8, 33, 51, .10) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 14px 30px rgba(7, 28, 45, .18) !important;
  }

  body.login-bg .iw-login-logo img {
    width: 202px !important;
    filter: none !important;
  }

  body.login-bg .iw-login-title {
    margin: 2px auto 6px !important;
  }

  body.login-bg .iw-login-sub {
    color: rgba(255, 255, 255, .88) !important;
  }
}

@media (max-width: 374px) {
  body.login-bg .iw-login-logo a {
    max-width: 226px !important;
    padding: 10px 14px !important;
    border-radius: 16px !important;
  }

  body.login-bg .iw-login-logo img {
    width: 178px !important;
  }
}

/* IW 2026-06-20 - global auth spacing and responsive cleanup */
body.login-bg {
  --iw-auth-side-pad: 5%;
}

body.login-bg .iw-login-wrap {
  display: grid !important;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr) !important;
  align-items: stretch !important;
}

body.login-bg .iw-login-left,
body.login-bg .iw-login-right {
  min-width: 0 !important;
  padding-left: var(--iw-auth-side-pad) !important;
  padding-right: var(--iw-auth-side-pad) !important;
}

body.login-bg .iw-login-left {
  flex: none !important;
  justify-content: center !important;
  padding-top: clamp(32px, 4vw, 48px) !important;
  padding-bottom: clamp(32px, 4vw, 48px) !important;
}

body.login-bg .iw-login-right {
  flex: none !important;
  padding-top: clamp(32px, 4vw, 52px) !important;
  padding-bottom: clamp(32px, 4vw, 52px) !important;
}

body.login-bg .iw-login-logo,
body.login-bg .iw-login-title,
body.login-bg .iw-login-sub,
body.login-bg .iw-login-form,
body.login-bg .iw-login-left > .alert,
body.login-bg .iw-login-left > .alert-lagom,
body.login-bg .providerLinkingFeedback .alert {
  max-width: 460px !important;
}

body.login-bg .iw-login-brand-card {
  max-width: 640px !important;
}

body.login-bg .iw-brand-title,
body.login-bg .iw-brand-sub,
body.login-bg .iw-mail-summary {
  max-width: 100% !important;
}

@media (max-width: 1199px) {
  body.login-bg .iw-login-wrap {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }

  body.login-bg .iw-login-left,
  body.login-bg .iw-login-right {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }

  body.login-bg .iw-brand-title {
    font-size: clamp(30px, 3.4vw, 36px) !important;
  }
}

@media (max-width: 991px) {
  body.login-bg .iw-login-wrap {
    display: block !important;
  }

  body.login-bg .iw-login-left {
    width: 100% !important;
    min-height: 100vh !important;
    padding-left: var(--iw-auth-side-pad) !important;
    padding-right: var(--iw-auth-side-pad) !important;
    justify-content: flex-start !important;
  }
}

@media (max-width: 767px) {
  body.login-bg {
    --iw-auth-side-pad: 5%;
  }

  body.login-bg .iw-login-left {
    padding-left: var(--iw-auth-side-pad) !important;
    padding-right: var(--iw-auth-side-pad) !important;
    padding-bottom: calc(26px + env(safe-area-inset-bottom)) !important;
  }

  body.login-bg .iw-login-logo {
    margin-left: calc(var(--iw-auth-side-pad) * -1) !important;
    margin-right: calc(var(--iw-auth-side-pad) * -1) !important;
    padding-left: var(--iw-auth-side-pad) !important;
    padding-right: var(--iw-auth-side-pad) !important;
  }

  body.login-bg .iw-login-title,
  body.login-bg .iw-login-sub,
  body.login-bg .iw-login-form,
  body.login-bg .iw-login-left > .alert,
  body.login-bg .iw-login-left > .alert-lagom,
  body.login-bg .providerLinkingFeedback .alert {
    max-width: 100% !important;
  }

  body.login-bg .iw-login-form {
    padding: 18px !important;
  }
}

@media (max-width: 374px) {
  body.login-bg {
    --iw-auth-side-pad: 5%;
  }

  body.login-bg .iw-login-left {
    padding-left: var(--iw-auth-side-pad) !important;
    padding-right: var(--iw-auth-side-pad) !important;
  }

  body.login-bg .iw-login-logo {
    margin-left: calc(var(--iw-auth-side-pad) * -1) !important;
    margin-right: calc(var(--iw-auth-side-pad) * -1) !important;
  }
}

/* IW 2026-07-01 - Auth unified corporate layout, no mail logo outside /correo */
body.login-bg .iw-login-logo a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 290px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.login-bg .iw-login-logo img,
body.login-bg .iw-register-wrap .iw-login-logo img {
  display: block !important;
  width: 230px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  filter: none !important;
}

body.login-bg .iw-login-right {
  background: radial-gradient(circle at 78% 16%, rgba(34, 211, 238, .44), transparent 27%), radial-gradient(circle at 18% 82%, rgba(15, 118, 110, .36), transparent 34%), linear-gradient(145deg, #0f4660 0%, #0f2745 52%, #071427 100%) !important;
}

body.login-bg .iw-login-brand-card {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.login-bg .iw-auth-service-visual,
body.login-bg .iw-auth-service-scene {
  width: min(560px, 100%) !important;
  min-height: 360px !important;
  margin: 0 auto 24px !important;
}

body.login-bg .iw-auth-service-scene {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.login-bg .iw-auth-hero-icon {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 210px !important;
  height: 210px !important;
  border: 1px solid rgba(255, 255, 255, .18) !important;
  border-radius: 42px !important;
  background: linear-gradient(145deg, rgba(255, 255, 255, .20), rgba(255, 255, 255, .08)) !important;
  box-shadow: 0 34px 70px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(255, 255, 255, .26) !important;
  color: #ffffff !important;
}

body.login-bg .iw-auth-hero-icon i {
  color: #ffffff !important;
  font-size: 96px !important;
  line-height: 1 !important;
  text-shadow: 0 14px 28px rgba(0, 0, 0, .28) !important;
}

body.login-bg .iw-auth-service-scene .iw-floating-badge {
  min-width: 116px !important;
  min-height: 44px !important;
  border-color: rgba(255, 255, 255, .24) !important;
  background: rgba(255, 255, 255, .96) !important;
  color: #073b48 !important;
  box-shadow: 0 18px 34px rgba(3, 19, 33, .20) !important;
}

body.login-bg .iw-auth-service-scene .iw-floating-badge i {
  color: #066c7b !important;
  font-size: 17px !important;
}

body.login-bg .iw-badge-wordpress {
  left: 38px !important;
  top: 52px !important;
}

body.login-bg .iw-badge-cpanel {
  left: auto !important;
  right: 44px !important;
  top: 116px !important;
  bottom: auto !important;
}

body.login-bg .iw-badge-hosting {
  left: 70px !important;
  bottom: 56px !important;
}

body.login-bg .iw-auth-summary span {
  border-color: rgba(255, 255, 255, .16) !important;
  background: rgba(255, 255, 255, .10) !important;
}

body.login-bg .iw-auth-summary i {
  color: #22d3ee !important;
}

@media (max-width: 991px) {
  body.login-bg .iw-login-logo img,
  body.login-bg .iw-register-wrap .iw-login-logo img {
    width: 210px !important;
  }

  body.login-bg .iw-login-right {
    display: none !important;
  }
}

/* IW 2026-07-01 - Compact two-column registration form */
@media (min-width: 992px) {
  body.login-bg .iw-register-wrap .iw-login-left {
    flex-basis: 52% !important;
    padding: 28px 42px !important;
  }

  body.login-bg .iw-register-wrap .iw-login-right {
    flex-basis: 48% !important;
  }

  body.login-bg .iw-register-wrap .iw-login-logo,
  body.login-bg .iw-register-wrap .iw-login-title,
  body.login-bg .iw-register-wrap .iw-login-sub,
  body.login-bg .iw-register-wrap .iw-register-form {
    max-width: 620px !important;
  }

  body.login-bg .iw-register-wrap .iw-login-logo {
    margin-bottom: 14px !important;
  }

  body.login-bg .iw-register-wrap .iw-login-title {
    font-size: 25px !important;
    margin-bottom: 4px !important;
  }

  body.login-bg .iw-register-wrap .iw-login-sub {
    margin-bottom: 14px !important;
  }

  body.login-bg .iw-register-wrap .iw-register-form {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 14px !important;
    row-gap: 10px !important;
    padding: 16px !important;
  }

  body.login-bg .iw-register-wrap .iw-field-group {
    margin-bottom: 0 !important;
  }

  body.login-bg .iw-register-wrap .iw-label {
    margin-bottom: 5px !important;
    font-size: 12px !important;
  }

  body.login-bg .iw-register-wrap .iw-input,
  body.login-bg .iw-register-wrap select {
    height: 40px !important;
    min-height: 40px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  body.login-bg .iw-register-wrap .iw-password-strength {
    margin-top: 6px !important;
    padding: 7px !important;
  }

  body.login-bg .iw-register-wrap .iw-register-captcha,
  body.login-bg .iw-register-wrap .iw-register-tos,
  body.login-bg .iw-register-wrap .iw-btn-login,
  body.login-bg .iw-register-wrap .iw-divider,
  body.login-bg .iw-register-wrap .iw-btn-register {
    grid-column: 1 / -1 !important;
  }

  body.login-bg .iw-register-wrap .iw-check-label,
  body.login-bg .iw-register-wrap .iw-register-captcha {
    padding: 10px !important;
  }

  body.login-bg .iw-register-wrap .iw-btn-login {
    height: 42px !important;
    min-height: 42px !important;
    margin-bottom: 0 !important;
  }

  body.login-bg .iw-register-wrap .iw-btn-register {
    height: 40px !important;
    min-height: 40px !important;
  }

  body.login-bg .iw-register-wrap .iw-divider {
    margin: 0 !important;
  }
}

/* IW 2026-07-01 - Registration field order correction */
@media (min-width: 992px) {
  body.login-bg .iw-register-wrap .iw-register-form {
    align-items: start !important;
  }

  body.login-bg .iw-register-wrap .iw-reg-firstname { order: 10 !important; grid-column: 1 !important; }
  body.login-bg .iw-register-wrap .iw-reg-lastname { order: 20 !important; grid-column: 2 !important; }
  body.login-bg .iw-register-wrap .iw-reg-email { order: 30 !important; grid-column: 1 !important; }
  body.login-bg .iw-register-wrap .iw-reg-phone { order: 40 !important; grid-column: 2 !important; }
  body.login-bg .iw-register-wrap .iw-reg-password { order: 50 !important; grid-column: 1 !important; }
  body.login-bg .iw-register-wrap .iw-reg-password2 { order: 60 !important; grid-column: 2 !important; }
  body.login-bg .iw-register-wrap .iw-reg-country { order: 70 !important; grid-column: 1 / -1 !important; }
  body.login-bg .iw-register-wrap .iw-register-captcha { order: 80 !important; grid-column: 1 / -1 !important; }
  body.login-bg .iw-register-wrap .iw-register-tos { order: 90 !important; grid-column: 1 / -1 !important; }
  body.login-bg .iw-register-wrap .iw-btn-login { order: 100 !important; grid-column: 1 / -1 !important; }
  body.login-bg .iw-register-wrap .iw-divider { order: 110 !important; grid-column: 1 / -1 !important; }
  body.login-bg .iw-register-wrap .iw-btn-register { order: 120 !important; grid-column: 1 / -1 !important; }

  body.login-bg .iw-register-wrap .iw-reg-password .iw-password-strength {
    min-height: 34px !important;
    padding: 6px 8px !important;
  }

  body.login-bg .iw-register-wrap .iw-reg-password .iw-strength-text {
    margin-top: 4px !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.login-bg .iw-register-wrap .iw-reg-password2 {
    padding-top: 0 !important;
  }

  body.login-bg .iw-register-wrap .iw-reg-country select {
    max-width: none !important;
  }
}

/* IW 2026-07-01 - Invisible reCAPTCHA reassurance note */
body.login-bg .iw-login-recaptcha,
body.login-bg .iw-register-captcha {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 7px 10px !important;
  border: 1px solid #dbe7ee !important;
  border-radius: 10px !important;
  background: #f8fafc !important;
  color: #52677a !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  text-align: center !important;
}

body.login-bg .iw-login-recaptcha::before,
body.login-bg .iw-register-captcha::before {
  content: "Protección automática activa" !important;
}

/* IW 2026-07-01 - Phone country selector on registration */
body.login-bg .iw-reg-phone .intl-tel-input {
  display: block !important;
  width: 100% !important;
}

body.login-bg .iw-reg-phone .intl-tel-input * {
  box-sizing: border-box !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .flag-container {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: auto !important;
  z-index: 3 !important;
  padding: 0 !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .selected-flag {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 82px !important;
  height: 100% !important;
  padding: 0 10px 0 12px !important;
  border-right: 1px solid rgba(6, 108, 123, .18) !important;
  border-radius: 12px 0 0 12px !important;
  background: rgba(238, 251, 250, .92) !important;
}

body.login-bg .iw-reg-phone .intl-tel-input.allow-dropdown .flag-container:hover .selected-flag {
  background: #e0f7f5 !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .selected-flag .iti-flag {
  position: static !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .selected-flag .iti-arrow {
  position: absolute !important;
  top: 50% !important;
  right: 7px !important;
  width: 0 !important;
  height: 0 !important;
  margin-top: -2px !important;
  border-top: 4px solid #52677a !important;
  border-right: 3px solid transparent !important;
  border-left: 3px solid transparent !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .selected-dial-code {
  padding-left: 8px !important;
  color: #263f4f !important;
  font-family: var(--iw-font-body) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

body.login-bg .iw-reg-phone .intl-tel-input input.iw-input,
body.login-bg .iw-reg-phone .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input.iw-input {
  padding-left: 98px !important;
  padding-right: 14px !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .country-list {
  position: absolute !important;
  z-index: 50 !important;
  max-width: min(360px, 92vw) !important;
  max-height: 240px !important;
  margin: 4px 0 0 !important;
  padding: 4px 0 !important;
  overflow-y: auto !important;
  list-style: none !important;
  border: 1px solid #dbe7ee !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 18px 36px rgba(8, 33, 51, .16) !important;
  white-space: nowrap !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .country-list .country {
  padding: 7px 10px !important;
  color: #263f4f !important;
  font-size: 13px !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .country-list .country.highlight {
  background: #eefbfa !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .country-list .flag-box,
body.login-bg .iw-reg-phone .intl-tel-input .country-list .country-name,
body.login-bg .iw-reg-phone .intl-tel-input .country-list .dial-code {
  display: inline-block !important;
  vertical-align: middle !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .country-list .flag-box,
body.login-bg .iw-reg-phone .intl-tel-input .country-list .country-name {
  margin-right: 7px !important;
}

body.login-bg .iw-reg-phone .intl-tel-input .country-list .dial-code {
  color: #64748b !important;
}

body.login-bg .iw-reg-phone .iti-flag {
  width: 20px !important;
  height: 14px !important;
  background-color: #dbe7ee !important;
  background-image: url("../images/flags.png") !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 0 1px rgba(8, 33, 51, .45) !important;
}

body.login-bg .iw-reg-phone .iti-flag.pe {
  background-position: -3921px 0 !important;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi) {
  body.login-bg .iw-reg-phone .iti-flag {
    background-image: url("../images/flags@2x.png") !important;
    background-size: 5630px 15px !important;
  }
}

/* IW 2026-08-04 - Auth density: slimmer header, forms and actions */
body.login-bg .iw-login-logo,
body.login-bg .iw-login-title,
body.login-bg .iw-login-sub,
body.login-bg .iw-login-form,
body.login-bg .iw-login-left > .alert,
body.login-bg .iw-login-left > .alert-lagom,
body.login-bg .providerLinkingFeedback .alert {
  max-width: 400px !important;
}

body.login-bg .iw-login-logo {
  margin-bottom: 15px !important;
}

body.login-bg .iw-login-logo img,
body.login-bg .iw-register-wrap .iw-login-logo img {
  width: 190px !important;
  height: auto !important;
}

body.login-bg .iw-login-title {
  margin-bottom: 4px !important;
  font-size: 25px !important;
  line-height: 1.18 !important;
}

body.login-bg .iw-login-sub {
  margin-bottom: 16px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.login-bg .iw-field-group {
  margin-bottom: 10px !important;
}

body.login-bg .iw-label {
  margin-bottom: 5px !important;
  font-size: 12px !important;
}

body.login-bg .iw-input {
  height: 40px !important;
  min-height: 40px !important;
  padding: 8px 40px 8px 12px !important;
  border-width: 1px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
}

body.login-bg .iw-input:focus {
  box-shadow: 0 0 0 3px rgba(6, 108, 123, .11) !important;
}

body.login-bg .iw-pw-toggle {
  right: 11px !important;
  font-size: 15px !important;
}

body.login-bg .iw-login-row {
  gap: 10px !important;
  margin-bottom: 14px !important;
}

body.login-bg .iw-check-label,
body.login-bg .iw-forgot {
  font-size: 12px !important;
}

body.login-bg .iw-btn-login,
body.login-bg .iw-btn-register {
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
}

body.login-bg .iw-btn-login {
  margin-bottom: 9px !important;
  box-shadow: 0 7px 16px rgba(6, 108, 123, .16) !important;
}

body.login-bg .iw-divider {
  gap: 8px !important;
  margin-bottom: 9px !important;
}

body.login-bg .iw-linked-accounts {
  margin-top: 10px !important;
}

@media (min-width: 992px) {
  body.login-bg .iw-login-wrap:not(.iw-register-wrap) {
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr) !important;
  }

  body.login-bg .iw-login-wrap:not(.iw-register-wrap) .iw-login-left {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  body.login-bg .iw-login-wrap:not(.iw-register-wrap) .iw-login-right {
    padding: 30px 4.5% !important;
  }

  body.login-bg .iw-auth-service-visual,
  body.login-bg .iw-auth-service-scene {
    min-height: 270px !important;
    margin-bottom: 14px !important;
  }

  body.login-bg .iw-auth-hero-icon {
    width: 160px !important;
    height: 160px !important;
    border-radius: 28px !important;
    box-shadow: 0 22px 46px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .24) !important;
  }

  body.login-bg .iw-auth-hero-icon i {
    font-size: 70px !important;
  }

  body.login-bg .iw-auth-service-scene .iw-floating-badge {
    min-width: 100px !important;
    min-height: 36px !important;
    padding: 6px 9px !important;
    border-radius: 8px !important;
    font-size: 11px !important;
    box-shadow: 0 10px 22px rgba(3, 19, 33, .16) !important;
  }

  body.login-bg .iw-auth-service-scene .iw-floating-badge i {
    font-size: 14px !important;
  }

  body.login-bg .iw-badge-wordpress {
    left: 58px !important;
    top: 38px !important;
  }

  body.login-bg .iw-badge-cpanel {
    right: 60px !important;
    top: 86px !important;
  }

  body.login-bg .iw-badge-hosting {
    left: 82px !important;
    bottom: 40px !important;
  }

  body.login-bg .iw-brand-title {
    margin-bottom: 8px !important;
    font-size: 30px !important;
    line-height: 1.12 !important;
  }

  body.login-bg .iw-brand-sub {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  body.login-bg .iw-mail-summary {
    gap: 8px !important;
    margin-top: 18px !important;
  }

  body.login-bg .iw-mail-summary span {
    min-height: 40px !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
  }
}

@media (max-width: 767px) {
  body.login-bg .iw-login-left {
    padding: 0 5% calc(20px + env(safe-area-inset-bottom)) !important;
    background:
      radial-gradient(circle at 50% 0, rgba(34, 211, 238, .18), transparent 40%),
      linear-gradient(180deg, #071c2d 0, #0a4051 72px, #0c6473 138px, #eef4f7 138px, #eef4f7 100%) !important;
  }

  body.login-bg .iw-login-logo {
    height: auto !important;
    margin: 0 -5% 7px !important;
    padding: 11px 5% 5px !important;
  }

  body.login-bg .iw-login-logo a {
    max-width: 210px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.login-bg .iw-login-logo img,
  body.login-bg .iw-register-wrap .iw-login-logo img {
    width: 156px !important;
    height: auto !important;
    filter: none !important;
  }

  body.login-bg .iw-login-title,
  body.login-bg .iw-login-sub,
  body.login-bg .iw-login-form,
  body.login-bg .iw-login-left > .alert,
  body.login-bg .iw-login-left > .alert-lagom,
  body.login-bg .providerLinkingFeedback .alert {
    max-width: 350px !important;
  }

  body.login-bg .iw-login-title {
    margin: 0 auto 3px !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
  }

  body.login-bg .iw-login-sub {
    margin: 0 auto 11px !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  body.login-bg .iw-login-form {
    padding: 12px !important;
    border-radius: 7px !important;
    box-shadow: 0 12px 28px rgba(8, 33, 51, .11) !important;
  }

  body.login-bg .iw-input {
    height: 40px !important;
    min-height: 40px !important;
    padding: 8px 38px 8px 11px !important;
    border-radius: 6px !important;
    font-size: 16px !important;
  }

  body.login-bg .iw-btn-login,
  body.login-bg .iw-btn-register {
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 6px !important;
  }

  body.login-bg .iw-login-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 11px !important;
  }
}

@media (max-width: 359px) {
  body.login-bg .iw-login-row {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 7px !important;
  }
}

/* IW 2026-08-04 - Login claro alineado con el área de clientes. */
body.login-bg:has(.iw-login-page) {
  background: #edf5f6 !important;
  background-image:
    radial-gradient(circle at 88% 8%, rgba(24, 169, 153, .12), transparent 26%),
    radial-gradient(circle at 8% 92%, rgba(6, 108, 123, .08), transparent 25%) !important;
}

body.login-bg .iw-login-page {
  grid-template-columns: minmax(420px, .88fr) minmax(0, 1.12fr) !important;
  min-height: 100vh !important;
  background: transparent !important;
}

body.login-bg .iw-login-page .iw-login-left {
  position: relative !important;
  padding: 34px 5.5% !important;
  border-right: 1px solid #dce8eb !important;
  background: rgba(255, 255, 255, .97) !important;
}

body.login-bg .iw-login-page .iw-login-logo,
body.login-bg .iw-login-page .iw-login-eyebrow,
body.login-bg .iw-login-page .iw-login-title,
body.login-bg .iw-login-page .iw-login-sub,
body.login-bg .iw-login-page .iw-login-form,
body.login-bg .iw-login-page .iw-login-left > .alert,
body.login-bg .iw-login-page .providerLinkingFeedback .alert {
  width: 100% !important;
  max-width: 410px !important;
}

body.login-bg .iw-login-page .iw-login-logo {
  margin: 0 auto 18px !important;
}

body.login-bg .iw-login-page .iw-login-logo img {
  width: 184px !important;
}

body.login-bg .iw-login-page .iw-login-eyebrow {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 auto 7px !important;
  color: #0f7781 !important;
  font-size: 9.5px !important;
  font-weight: 850 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.login-bg .iw-login-page .iw-login-eyebrow i {
  font-size: 10px !important;
}

body.login-bg .iw-login-page .iw-login-title {
  margin: 0 auto 5px !important;
  color: #0d3349 !important;
  font-size: 26px !important;
  letter-spacing: -.025em !important;
}

body.login-bg .iw-login-page .iw-login-sub {
  margin: 0 auto 17px !important;
  color: #687d88 !important;
  font-size: 12.5px !important;
}

body.login-bg .iw-login-page .iw-login-form {
  margin: 0 auto !important;
  padding: 21px !important;
  border: 1px solid #dce7eb !important;
  border-radius: 13px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 36px rgba(13, 51, 73, .07) !important;
}

body.login-bg .iw-login-page .iw-field-group {
  margin-bottom: 12px !important;
}

body.login-bg .iw-login-page .iw-label {
  margin-bottom: 6px !important;
  color: #365365 !important;
  font-size: 11.5px !important;
}

body.login-bg .iw-login-page .iw-input-icon {
  position: absolute !important;
  z-index: 2 !important;
  top: 50% !important;
  left: 13px !important;
  color: #78909b !important;
  font-size: 13px !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}

body.login-bg .iw-login-page .iw-input {
  height: 43px !important;
  min-height: 43px !important;
  padding: 9px 41px 9px 38px !important;
  border: 1px solid #cfdfe4 !important;
  border-radius: 9px !important;
  background: #f9fbfc !important;
  color: #17313f !important;
  font-size: 13px !important;
}

body.login-bg .iw-login-page .iw-input:focus {
  border-color: #15958e !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(21, 149, 142, .11) !important;
}

body.login-bg .iw-login-page .iw-input-wrap:focus-within .iw-input-icon {
  color: #0f7781 !important;
}

body.login-bg .iw-login-page .iw-pw-toggle {
  right: 12px !important;
  display: grid !important;
  width: 27px !important;
  height: 27px !important;
  place-items: center !important;
  border-radius: 6px !important;
  color: #607985 !important;
  font-size: 13px !important;
}

body.login-bg .iw-login-page .iw-pw-toggle:hover {
  background: #eaf5f4 !important;
  color: #0f7781 !important;
}

body.login-bg .iw-login-page .iw-login-row {
  margin: 2px 0 15px !important;
}

body.login-bg .iw-login-page .iw-check-label,
body.login-bg .iw-login-page .iw-forgot {
  font-size: 11.5px !important;
}

body.login-bg .iw-login-page .iw-check-label input[type="checkbox"] {
  accent-color: #0f7781 !important;
}

body.login-bg .iw-login-page .iw-btn-login,
body.login-bg .iw-login-page .iw-btn-register {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  height: 43px !important;
  min-height: 43px !important;
  border-radius: 9px !important;
  font-size: 12.5px !important;
}

body.login-bg .iw-login-page .iw-btn-login {
  justify-content: space-between !important;
  padding: 0 16px !important;
  border: 1px solid #0f7781 !important;
  background: #0f7781 !important;
  background-image: none !important;
  box-shadow: 0 7px 15px rgba(15, 119, 129, .16) !important;
}

body.login-bg .iw-login-page .iw-btn-login:hover {
  border-color: #0b626b !important;
  background: #0b626b !important;
}

body.login-bg .iw-login-page .iw-btn-register {
  border: 1px solid #c7dfe0 !important;
  background: #f0f8f7 !important;
  color: #0d6e73 !important;
}

body.login-bg .iw-login-page .iw-divider span {
  color: #7d8e97 !important;
  font-size: 10.5px !important;
}

body.login-bg .iw-login-page .iw-login-trust {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  margin: 11px 0 0 !important;
  color: #84949c !important;
  font-size: 9.5px !important;
  line-height: 1.3 !important;
}

body.login-bg .iw-login-page .iw-login-trust i {
  color: #15958e !important;
  font-size: 9px !important;
}

body.login-bg .iw-login-page .iw-login-right {
  position: relative !important;
  padding: 38px 5% !important;
  background: #edf8f7 !important;
  background-image:
    radial-gradient(circle at 82% 16%, rgba(24, 169, 153, .16), transparent 27%),
    radial-gradient(circle at 14% 86%, rgba(15, 119, 129, .09), transparent 30%) !important;
}

body.login-bg .iw-login-page .iw-login-right::before {
  position: absolute !important;
  inset: 24px !important;
  border: 1px solid rgba(15, 119, 129, .10) !important;
  border-radius: 22px !important;
  content: "" !important;
  pointer-events: none !important;
}

body.login-bg .iw-login-page .iw-login-brand-card {
  position: relative !important;
  z-index: 1 !important;
  max-width: 590px !important;
  color: #0d3349 !important;
  text-align: left !important;
}

body.login-bg .iw-login-page .iw-brand-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin-bottom: 10px !important;
  color: #0f7781 !important;
  font-size: 9.5px !important;
  font-weight: 850 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.login-bg .iw-login-page .iw-auth-service-visual,
body.login-bg .iw-login-page .iw-auth-service-scene {
  min-height: 250px !important;
  margin-bottom: 12px !important;
}

body.login-bg .iw-login-page .iw-auth-hero-icon {
  width: 146px !important;
  height: 146px !important;
  border: 1px solid #c8e3e1 !important;
  border-radius: 30px !important;
  background: #ffffff !important;
  background-image: linear-gradient(145deg, #ffffff, #f2faf9) !important;
  color: #0f7781 !important;
  box-shadow: 0 18px 42px rgba(13, 73, 78, .10) !important;
}

body.login-bg .iw-login-page .iw-auth-hero-icon::before,
body.login-bg .iw-login-page .iw-auth-hero-icon::after {
  position: absolute !important;
  z-index: -1 !important;
  width: 198px !important;
  height: 198px !important;
  border: 1px solid rgba(15, 119, 129, .12) !important;
  border-radius: 42px !important;
  content: "" !important;
  transform: rotate(10deg) !important;
}

body.login-bg .iw-login-page .iw-auth-hero-icon::after {
  width: 236px !important;
  height: 236px !important;
  border-color: rgba(15, 119, 129, .07) !important;
  transform: rotate(-8deg) !important;
}

body.login-bg .iw-login-page .iw-auth-hero-icon i {
  color: #0f7781 !important;
  font-size: 62px !important;
  text-shadow: none !important;
}

body.login-bg .iw-login-page .iw-auth-service-scene .iw-floating-badge {
  min-width: 102px !important;
  min-height: 36px !important;
  border: 1px solid #d3e4e7 !important;
  border-radius: 9px !important;
  background: #ffffff !important;
  color: #365365 !important;
  box-shadow: 0 9px 20px rgba(13, 51, 73, .07) !important;
  font-size: 10.5px !important;
}

body.login-bg .iw-login-page .iw-auth-service-scene .iw-floating-badge i {
  color: #0f7781 !important;
}

body.login-bg .iw-login-page .iw-brand-title {
  margin: 0 0 8px !important;
  color: #0d3349 !important;
  font-size: clamp(27px, 3vw, 34px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.03em !important;
}

body.login-bg .iw-login-page .iw-brand-sub {
  color: #617985 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

body.login-bg .iw-login-page .iw-mail-summary {
  gap: 8px !important;
  margin-top: 17px !important;
}

body.login-bg .iw-login-page .iw-mail-summary span {
  min-height: 39px !important;
  padding: 8px 10px !important;
  border: 1px solid #d3e5e6 !important;
  border-radius: 9px !important;
  background: rgba(255, 255, 255, .74) !important;
  color: #365365 !important;
  font-size: 10.5px !important;
}

body.login-bg .iw-login-page .iw-mail-summary i {
  color: #0f7781 !important;
}

@media (max-width: 991px) {
  body.login-bg .iw-login-page {
    display: block !important;
    background: #f2f7f8 !important;
  }

  body.login-bg .iw-login-page .iw-login-left {
    min-height: 100vh !important;
    padding: 28px 20px calc(28px + env(safe-area-inset-bottom)) !important;
    border-right: 0 !important;
    background: #f2f7f8 !important;
  }

  body.login-bg .iw-login-page .iw-login-right {
    display: none !important;
  }

  body.login-bg .iw-login-page .iw-login-logo {
    margin: 0 auto 17px !important;
    padding: 0 !important;
  }

  body.login-bg .iw-login-page .iw-login-logo a {
    max-width: 230px !important;
  }

  body.login-bg .iw-login-page .iw-login-logo img {
    width: 176px !important;
  }

  body.login-bg .iw-login-page .iw-login-eyebrow,
  body.login-bg .iw-login-page .iw-login-title,
  body.login-bg .iw-login-page .iw-login-sub,
  body.login-bg .iw-login-page .iw-login-form,
  body.login-bg .iw-login-page .iw-login-left > .alert,
  body.login-bg .iw-login-page .providerLinkingFeedback .alert {
    max-width: 390px !important;
  }

  body.login-bg .iw-login-page .iw-login-title {
    color: #0d3349 !important;
  }

  body.login-bg .iw-login-page .iw-login-sub {
    color: #687d88 !important;
  }

  body.login-bg .iw-login-page .iw-login-form {
    padding: 19px !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 28px rgba(13, 51, 73, .065) !important;
  }

  body.login-bg .iw-login-page .iw-login-row {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    justify-content: space-between !important;
  }
}

@media (max-width: 390px) {
  body.login-bg .iw-login-page .iw-login-left {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  body.login-bg .iw-login-page .iw-login-form {
    padding: 16px !important;
  }

  body.login-bg .iw-login-page .iw-login-row {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 7px !important;
  }
}

/* Checkbox CAPTCHA: keep the verification visible and usable. */
body.login-bg .iw-login-recaptcha,body.login-bg .iw-register-captcha{flex-direction:column!important;gap:8px!important;overflow:visible!important;}
body.login-bg .iw-login-recaptcha::before,body.login-bg .iw-register-captcha::before{content:none!important;}
