html, body { margin: 0 !important; padding: 0 !important; background: #0b0f12 !important; overflow: hidden !important; }

  #zp-business-auth-root, #zp-business-auth-root * { box-sizing: border-box; }

  #zp-business-auth-root {
    --zp-teal: #00e7d0;
    --zp-teal-2: #10bdb1;
    --zp-bg: #0b0f12;
    --zp-bg-2: #06191d;
    --zp-panel: rgba(10, 30, 34, .74);
    --zp-border: rgba(177, 255, 249, .22);
    --zp-muted: rgba(255,255,255,.74);
    --zp-soft: rgba(255,255,255,.52);
    --zp-shadow: 0 28px 90px rgba(0,0,0,.55);
    min-height: 100vh;
    width: 100%;
    color: #fff;
    font-family: Inter, Poppins, Arial, sans-serif;
    background:
      radial-gradient(circle at 18% 48%, rgba(0,231,208,.10), transparent 30%),
      radial-gradient(circle at 76% 12%, rgba(0,231,208,.045), transparent 32%),
      radial-gradient(120% 160% at 18% 8%, rgba(255,255,255,.045), rgba(255,255,255,0) 42%),
      radial-gradient(circle at 22% 58%, rgba(0,229,194,.085), transparent 32%),
      linear-gradient(135deg, #0b0f12 0%, #000f12 48%, #0b0f12 100%);
    overflow: hidden;
    position: fixed;
    inset: 0;
    z-index: 1;
  }

  .zpba-shell {
    position: relative;
    height: 100vh;
    min-height: 100vh;
    width: 100%;
    padding: 38px 47px 34px;
    border: 1px solid rgba(255,255,255,.12);
    background:
      linear-gradient(90deg, #0b0f12 0%, #0b0f12 42%, #000b10 42%, #000b10 100%);
  }

  .zpba-topbar {
    position: relative;
    z-index: 3;
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 40px;
  }

  .zpba-brand {
    display: inline-flex;
    align-items: baseline;
    gap: 13px;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
    padding: 0;
  }

  .zpba-brand-zelen { font-size: 24px; letter-spacing: 12px; line-height: 1; font-weight: 400; }
  .zpba-brand-pay { color: var(--zp-teal); font-size: 29px; font-weight: 700; letter-spacing: -.8px; }
  .zpba-help { font-size: 14px; color: rgba(255,255,255,.88); }
  .zpba-help a, .zpba-footer a, .zpba-link { color: var(--zp-teal); text-decoration: none; cursor: pointer; }

  .zpba-stage {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 42% 58%;
    height: calc(100vh - 78px);
    min-height: calc(100vh - 78px);
  }

  .zpba-left-panel {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 30px 55px 64px 0;
  }

  .zpba-left-inner { width: 386px; max-width: 100%; }

  .zpba-right-panel {
    display: flex;
    align-items: stretch;
    justify-content: stretch;
    padding: 0;
    overflow: hidden;
    background: #000b10;
  }

  .zpba-stage-image {
    width: 100% !important;
    height: 100% !important;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover !important;
    object-position: center center !important;
    display: block;
    filter: saturate(.98) contrast(1.02);
  }

  .zpba-eyebrow { color: var(--zp-teal); font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; margin-bottom: 18px; }
  .zpba-title,
  #zp-business-auth-root .zpba-title,
  #zp-business-auth-root h1.zpba-title,
  body:has(#zp-business-auth-root) #zp-business-auth-root h1.zpba-title {
    margin: 0 0 18px !important;
    font-size: 40px !important;
    line-height: 1.12 !important;
    font-weight: 750 !important;
    letter-spacing: -1.05px !important;
  }
  .zpba-subtitle { margin: 0 0 27px; color: var(--zp-muted); font-size: 14.5px; line-height: 1.52; max-width: 386px; }

  .zpba-form { display: grid; gap: 11px; }
  .zpba-field-wrap { position: relative; }
  .zpba-field {
    width: 100% !important;
    height: 44px !important;
    border-radius: 7px !important;
    border: 1px solid rgba(177,255,249,.20) !important;
    background: linear-gradient(180deg, rgba(22,43,47,.58), rgba(14,31,35,.70)) !important;
    color: #fff !important;
    outline: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    padding: 0 46px 0 16px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
  }
  .zpba-field:focus {
    border-color: rgba(0,231,208,.42) !important;
    box-shadow: 0 0 0 1px rgba(0,231,208,.10), inset 0 1px 0 rgba(255,255,255,.04) !important;
  }

  #zp-business-auth-root input,
  #zp-business-auth-root button {
    font-family: Inter, Poppins, Arial, sans-serif !important;
  }

  #zp-business-auth-root h1,
  #zp-business-auth-root h1.zpba-title {
    font-size: 40px !important;
    line-height: 1.12 !important;
    font-weight: 750 !important;
    letter-spacing: -1.05px !important;
  }

  #zp-business-auth-root input:-webkit-autofill,
  #zp-business-auth-root input:-webkit-autofill:hover,
  #zp-business-auth-root input:-webkit-autofill:focus {
    -webkit-text-fill-color: #fff !important;
    -webkit-box-shadow: 0 0 0 1000px rgba(14,31,35,.96) inset !important;
    transition: background-color 9999s ease-in-out 0s !important;
  }

  .zpba-field::placeholder { color: rgba(255,255,255,.68); }
  .zpba-eye, .zpba-code-note {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(255,255,255,.70);
    font-size: 18px;
  }
  .zpba-code-note { font-size: 13px; }

  .zpba-cta {
    width: 100% !important;
    height: 50px !important;
    border: 0 !important;
    border-radius: 9px !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer;
    background: linear-gradient(90deg, #09aaa5, #15d4c2, #0aa19c) !important;
    box-shadow: 0 15px 34px rgba(0,231,208,.12), inset 0 1px 0 rgba(255,255,255,.18) !important;
    transition: transform .18s ease, filter .18s ease;
    margin-top: 6px;
  }
  .zpba-cta:hover { transform: translateY(-1px); filter: brightness(1.06); }

  .zpba-divider { display: grid; grid-template-columns: 1fr auto 1fr; gap: 18px; align-items: center; color: rgba(255,255,255,.82); font-size: 12px; margin: 20px 0 12px; }
  .zpba-divider:before, .zpba-divider:after { content: ''; height: 1px; background: rgba(255,255,255,.17); }

  .zpba-oauth { display: grid; gap: 12px; }
  .zpba-oauth-btn {
    height: 44px !important;
    border-radius: 7px !important;
    border: 1px solid rgba(177,255,249,.20) !important;
    background: linear-gradient(180deg, rgba(22,43,47,.52), rgba(14,31,35,.68)) !important;
    color: #fff !important;
    font-weight: 600 !important;
    cursor: pointer;
    display: grid;
    grid-template-columns: 52px 1fr 52px;
    align-items: center;
    font-size: 14px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
  }
  .zpba-oauth-icon { font-size: 21px; text-align: center; }
  .zpba-google { font-weight: 800; color: #fff; }

  .zpba-undertext { margin-top: 20px; text-align: center; color: rgba(255,255,255,.78); font-size: 13px; }
  .zpba-row { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin: 4px 0 18px; }
  .zpba-check { display: inline-flex; align-items: center; gap: 9px; font-size: 14px; color: rgba(255,255,255,.80); }
  .zpba-checkbox { width: 20px; height: 20px; border: 1px solid rgba(255,255,255,.34); border-radius: 4px; display: inline-block; }

  .zpba-email-box {
    height: 66px;
    border-radius: 8px;
    border: 1px solid var(--zp-border);
    background: linear-gradient(180deg, rgba(24,45,49,.66), rgba(17,34,38,.72));
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--zp-teal);
    font-size: 23px;
    font-weight: 700;
    margin: 25px 0;
  }
  .zpba-center-note { text-align: center; color: rgba(255,255,255,.86); line-height: 1.55; margin-bottom: 28px; font-size: 17px; }

  .zpba-label { display: block; color: #fff; font-size: 15px; margin: 0 0 9px; font-weight: 650; }
  .zpba-spacer { height: 16px; }

  .zpba-success-icon {
    width: 88px;
    height: 88px;
    border: 4px solid var(--zp-teal);
    color: var(--zp-teal);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 54px;
    margin: 0 auto 30px;
    box-shadow: 0 0 35px rgba(0,231,208,.18);
  }
  .zpba-success .zpba-title, .zpba-success .zpba-subtitle { text-align: center; max-width: 100%; }
  .zpba-next { margin-top: 26px; border-top: 1px solid rgba(255,255,255,.16); padding-top: 22px; }
  .zpba-next-title { color: rgba(255,255,255,.82); text-align: center; margin-bottom: 20px; font-size: 14px; }
  .zpba-next-item { display: grid; grid-template-columns: 28px 1fr; gap: 14px; margin: 20px 0; color: #fff; }
  .zpba-next-check { color: var(--zp-teal); font-size: 22px; line-height: 1; }
  .zpba-next-item strong { display: block; font-size: 17px; margin-bottom: 5px; }
  .zpba-next-item span { color: var(--zp-muted); font-size: 14px; line-height: 1.35; }

  .zpba-footer {
    position: absolute;
    left: 47px;
    bottom: 34px;
    width: calc(42% - 94px);
    display: flex;
    justify-content: space-between;
    gap: 22px;
    z-index: 4;
  }
  .zpba-footer a { color: rgba(255,255,255,.78); font-size: 13px; }


  /* Screen-specific SoT tuning: register/login stay compact and locked to the left-column render proportions. */
  #zp-business-auth-root[data-screen="register"] .zpba-title,
  #zp-business-auth-root[data-screen="login"] .zpba-title {
    text-align: left;
  }
  #zp-business-auth-root[data-screen="register"] .zpba-subtitle,
  #zp-business-auth-root[data-screen="login"] .zpba-subtitle {
    text-align: left;
  }


  /* Global title lock: every business auth screen uses the exact Screen #1 main title size. */
  #zp-business-auth-root[data-screen="register"] .zpba-title,
  #zp-business-auth-root[data-screen="login"] .zpba-title,
  #zp-business-auth-root[data-screen="verifyEmail"] .zpba-title,
  #zp-business-auth-root[data-screen="verifyPhone"] .zpba-title,
  #zp-business-auth-root[data-screen="verified"] .zpba-title,
  #zp-business-auth-root[data-screen="verified"] .zpba-title span {
    font-size: 40px !important;
    line-height: 1.12 !important;
    font-weight: 750 !important;
    letter-spacing: -1.05px !important;
  }

  @media (max-width: 1050px) {
    html, body { background: #0b0f12 !important; overflow: auto !important; }

    #zp-business-auth-root {
      position: fixed !important;
      inset: 0 !important;
      width: 100vw !important;
      min-width: 100vw !important;
      min-height: 100dvh;
      height: 100dvh;
      overflow-y: auto !important;
      overflow-x: hidden !important;
      background:
        radial-gradient(120% 160% at 18% 8%, rgba(255,255,255,.055), rgba(255,255,255,0) 42%),
        radial-gradient(circle at 50% 84%, rgba(0,229,194,.20), rgba(17,181,217,.08) 22%, rgba(0,0,0,0) 48%),
        linear-gradient(180deg, #0b0f12 0%, #071215 56%, #0b0f12 100%) !important;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    }

    .zpba-shell {
      padding: 28px 20px 30px;
      min-height: 100dvh;
      height: auto;
      width: 100vw !important;
      min-width: 100vw !important;
      max-width: 100vw !important;
      border: 0;
      background: transparent !important;
    }

    .zpba-stage {
      grid-template-columns: 1fr;
      min-height: auto;
      height: auto;
    }

    .zpba-left-panel {
      padding: 34px 0 24px;
      justify-content: center;
      align-items: flex-start;
    }

    .zpba-left-inner {
      width: min(100%, 311.2px);
      max-width: 311.2px;
    }

    .zpba-right-panel { display: none; }

    .zpba-footer {
      position: relative;
      left: auto;
      bottom: auto;
      width: min(100%, 311.2px);
      max-width: 311.2px;
      margin: 36px auto 0;
    }

    .zpba-topbar {
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      width: min(100%, 311.2px) !important;
      max-width: 311.2px !important;
      margin: 0 auto !important;
      min-height: 34px !important;
      height: 34px !important;
      visibility: visible !important;
      opacity: 1 !important;
    }

    .zpba-brand {
      display: inline-flex !important;
      align-items: baseline !important;
      gap: 8px !important;
      visibility: visible !important;
      opacity: 1 !important;
    }

    .zpba-brand-zelen {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
      font-size: 17px !important;
      line-height: 1 !important;
      font-weight: 500 !important;
      letter-spacing: 7.5px !important;
      color: #fff !important;
    }

    .zpba-brand-pay {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
      color: #00e5c2 !important;
      font-size: 22px !important;
      line-height: 1 !important;
      font-weight: 750 !important;
      letter-spacing: -0.6px !important;
    }

    .zpba-help { display: none !important; }

    #zp-business-auth-root .zpba-title,
    #zp-business-auth-root h1.zpba-title,
    #zp-business-auth-root[data-screen="register"] .zpba-title,
    #zp-business-auth-root[data-screen="login"] .zpba-title,
    #zp-business-auth-root[data-screen="verifyEmail"] .zpba-title,
    #zp-business-auth-root[data-screen="verifyPhone"] .zpba-title,
    #zp-business-auth-root[data-screen="verified"] .zpba-title,
    #zp-business-auth-root[data-screen="verified"] .zpba-title span {
      font-size: 29px !important;
      line-height: 30.45px !important;
      font-weight: 800 !important;
      letter-spacing: -0.58px !important;
    }

    .zpba-subtitle {
      font-size: 14px !important;
      line-height: 1.45 !important;
      max-width: 311.2px;
      color: rgba(255,255,255,.82) !important;
    }

    .zpba-field {
      height: 54px !important;
      border-radius: 18px !important;
      border: .8px solid rgba(255,255,255,.08) !important;
      background: rgba(255,255,255,.04) !important;
      color: rgba(255,255,255,.92) !important;
      font-size: 16px !important;
      line-height: normal !important;
      letter-spacing: .12px !important;
      padding: 0 52px 0 18px !important;
      box-shadow: none !important;
    }

    .zpba-field:focus {
      border-color: rgba(0,229,194,.46) !important;
      box-shadow: 0 0 0 1px rgba(0,229,194,.14), 0 0 24px rgba(0,229,194,.08) !important;
    }

    .zpba-cta,
    .zpba-oauth-btn {
      height: 54px !important;
      border-radius: 14px !important;
      border: .8px solid rgba(0,229,194,.46) !important;
      background:
        radial-gradient(120% 160% at 18% 8%, rgba(255,255,255,.10), rgba(255,255,255,0) 42%),
        linear-gradient(rgba(0,229,194,.18), rgba(17,181,217,.10) 52%, rgba(255,255,255,.035)) !important;
      color: #fff !important;
      font-size: 14px !important;
      font-weight: 720 !important;
      letter-spacing: -0.14px !important;
      box-shadow:
        rgba(255,255,255,.055) 0 0 0 1px inset,
        rgba(0,0,0,.46) 0 18px 38px 0,
        rgba(0,229,194,.18) 0 0 28px 0 !important;
    }

    .zpba-form { gap: 12px; }
    .zpba-divider { margin: 18px 0 12px; }
    .zpba-oauth { gap: 10px; }

  }

.zpba-error {
  border: 1px solid rgba(255, 95, 95, .35);
  background: rgba(255, 95, 95, .10);
  color: rgba(255,255,255,.92);
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.35;
}
.zpba-cta:disabled,
.zpba-oauth-btn:disabled {
  opacity: .68;
  cursor: not-allowed;
  transform: none !important;
}


/* Phase 2 Screen 1 UX final polish: footer alignment, hero crop, smaller headline, shorter CTA copy layout. */
@media (min-width: 1051px) {
  #zp-business-auth-root .zpba-footer {
    position: absolute !important;
    left: calc(42% - 55px - 386px) !important;
    bottom: 34px !important;
    width: 386px !important;
    max-width: 386px !important;
    display: flex !important;
    justify-content: space-between !important;
    gap: 18px !important;
    z-index: 8 !important;
  }

  #zp-business-auth-root .zpba-footer a {
    font-size: 12.5px !important;
    white-space: nowrap !important;
  }

  #zp-business-auth-root[data-screen="register"] .zpba-stage-image {
    transform: scale(1.07) !important;
    transform-origin: center center !important;
  }

  #zp-business-auth-root .zpba-hero-inner h2 {
    font-size: clamp(25px, 2.8vw, 35px) !important;
    line-height: 1.02 !important;
    max-width: 720px !important;
    margin-bottom: 10px !important;
  }

  #zp-business-auth-root .zpba-hero-lede {
    font-size: clamp(12.5px, .9vw, 15px) !important;
    line-height: 1.42 !important;
    max-width: 810px !important;
  }

  #zp-business-auth-root .zpba-hero-inner {
    padding-top: clamp(22px, 3vh, 36px) !important;
    padding-bottom: clamp(22px, 3vh, 38px) !important;
  }

  #zp-business-auth-root .zpba-hero-features {
    margin-top: clamp(16px, 2.2vh, 24px) !important;
    gap: clamp(18px, 2vw, 30px) !important;
  }

  #zp-business-auth-root .zpba-hero-feature p {
    font-size: clamp(12px, .78vw, 13px) !important;
    line-height: 1.25 !important;
    max-width: 210px !important;
  }
}

@media (max-height: 790px) and (min-width: 1051px) {
  #zp-business-auth-root .zpba-footer {
    bottom: 26px !important;
  }

  #zp-business-auth-root .zpba-hero-inner h2 {
    font-size: clamp(24px, 2.45vw, 32px) !important;
  }

  #zp-business-auth-root .zpba-hero-features {
    margin-top: 14px !important;
  }
}

/* Phase 2 Screen 1 final overlay lock.
   This block intentionally sits at the end so it wins over older Screen 1 CSS passes. */
@media (min-width: 1051px) {
  #zp-business-auth-root .zpba-help {
    background: rgba(0,0,0,.42) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 999px !important;
    padding: 8px 12px !important;
    line-height: 1 !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.22) !important;
    backdrop-filter: blur(2px) !important;
    -webkit-backdrop-filter: blur(2px) !important;
  }

  #zp-business-auth-root .zpba-footer {
    bottom: 24px !important;
  }

  #zp-business-auth-root .zpba-right-panel {
    position: relative !important;
    overflow: hidden !important;
    background: #000b10 !important;
  }

  #zp-business-auth-root[data-screen="register"] .zpba-stage-image {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.06) !important;
    transform-origin: center center !important;
    display: block !important;
  }

  #zp-business-auth-root .zpba-hero-copy {
    position: absolute !important;
    inset: 0 !important;
    z-index: 5 !important;
    display: block !important;
    pointer-events: none !important;
    color: #fff !important;
  }

  #zp-business-auth-root .zpba-hero-copy[hidden] {
    display: none !important;
  }

  #zp-business-auth-root .zpba-hero-shade {
    display: none !important;
  }

  #zp-business-auth-root .zpba-hero-inner {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 24px clamp(34px, 4.4vw, 58px) 26px !important;
    background:
      linear-gradient(90deg, rgba(0,0,0,.80) 0%, rgba(0,0,0,.68) 48%, rgba(0,0,0,.38) 100%),
      linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.72) 100%) !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
    box-shadow: 0 -30px 72px rgba(0,0,0,.34) !important;
    backdrop-filter: blur(2px) !important;
    -webkit-backdrop-filter: blur(2px) !important;
  }

  #zp-business-auth-root .zpba-hero-inner h2 {
    margin: 0 0 9px !important;
    max-width: 700px !important;
    font-size: clamp(25px, 2.65vw, 35px) !important;
    line-height: 1.02 !important;
    font-weight: 790 !important;
    letter-spacing: -1.25px !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.58) !important;
  }

  #zp-business-auth-root .zpba-hero-lede {
    margin: 0 !important;
    max-width: 805px !important;
    color: rgba(255,255,255,.86) !important;
    font-size: clamp(12.5px, .9vw, 15px) !important;
    line-height: 1.42 !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.58) !important;
  }

  #zp-business-auth-root .zpba-hero-features {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(18px, 2vw, 30px) !important;
    margin-top: 17px !important;
  }

  #zp-business-auth-root .zpba-hero-feature {
    display: grid !important;
    grid-template-columns: 40px 1fr !important;
    align-items: start !important;
    gap: 12px !important;
    min-width: 0 !important;
  }

  #zp-business-auth-root .zpba-hero-feature > span {
    width: 36px !important;
    height: 36px !important;
    border: 1.5px solid rgba(0,231,208,.88) !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    color: var(--zp-teal) !important;
    background: rgba(0,231,208,.06) !important;
    box-shadow: 0 0 24px rgba(0,231,208,.14) !important;
  }

  #zp-business-auth-root .zpba-hero-feature svg {
    width: 20px !important;
    height: 20px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.4 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  #zp-business-auth-root .zpba-hero-feature strong {
    display: block !important;
    margin: 0 0 4px !important;
    color: #fff !important;
    font-size: clamp(13px, .92vw, 15px) !important;
    line-height: 1.12 !important;
    font-weight: 760 !important;
  }

  #zp-business-auth-root .zpba-hero-feature p {
    margin: 0 !important;
    max-width: 205px !important;
    color: rgba(255,255,255,.74) !important;
    font-size: clamp(12px, .78vw, 13px) !important;
    line-height: 1.24 !important;
  }
}

@media (max-height: 790px) and (min-width: 1051px) {
  #zp-business-auth-root .zpba-footer {
    bottom: 16px !important;
  }

  #zp-business-auth-root .zpba-hero-inner {
    padding-top: 20px !important;
    padding-bottom: 22px !important;
  }

  #zp-business-auth-root .zpba-hero-inner h2 {
    font-size: clamp(24px, 2.35vw, 32px) !important;
  }

  #zp-business-auth-root .zpba-hero-lede {
    font-size: 12.5px !important;
  }

  #zp-business-auth-root .zpba-hero-features {
    margin-top: 13px !important;
  }
}

/* ZELEN Pay universal logo lock — final desktop/mobile override.
   Keep this at the very bottom so it wins over older base and media-query logo rules. */
#zp-business-auth-root {
  --zp-logo-zelen-size: 30px;
  --zp-logo-pay-size: 30px;
  --zp-logo-zelen-spacing: 2px;
  --zp-logo-pay-spacing: -0.8px;
}

#zp-business-auth-root .zpba-brand {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 13px !important;
  white-space: nowrap !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#zp-business-auth-root .zpba-brand-zelen {
  font-size: var(--zp-logo-zelen-size) !important;
  letter-spacing: var(--zp-logo-zelen-spacing) !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  color: #fff !important;
}

#zp-business-auth-root .zpba-brand-pay {
  color: var(--zp-teal) !important;
  font-size: var(--zp-logo-pay-size) !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: var(--zp-logo-pay-spacing) !important;
}

/* Phase 2 Verify Email framework lock — uses the same hero/ribbon system as Register. */
#zp-business-auth-root .zpba-email-box {
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

@media (min-width: 1051px) {
  #zp-business-auth-root[data-screen="verifyEmail"] .zpba-stage-image {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.06) !important;
    transform-origin: center center !important;
    display: block !important;
  }
}


/* Phase 2 Verify Phone framework lock — matches Register / Verify Email right-side hero + ribbon system only. */
@media (min-width: 1051px) {
  #zp-business-auth-root[data-screen="verifyPhone"] .zpba-stage-image {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.06) !important;
    transform-origin: center center !important;
    display: block !important;
  }
}


/* Deployment BR-MOBILE-LOCK-JSONFIX-001: Mobile-only OAuth alignment + divider copy polish. */
@media (max-width: 1050px) {
  #zp-business-auth-root .zpba-divider {
    grid-template-columns: 1fr auto 1fr !important;
    gap: 14px !important;
    margin: 18px 0 12px !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 12px !important;
    line-height: 1 !important;
    text-transform: none !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important;
  }

  #zp-business-auth-root .zpba-oauth {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  #zp-business-auth-root .zpba-oauth-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 11px !important;
    grid-template-columns: none !important;
    padding: 0 12px !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  #zp-business-auth-root .zpba-oauth-btn > span:last-child {
    display: none !important;
  }

  #zp-business-auth-root .zpba-oauth-icon {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    display: grid !important;
    place-items: center !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  #zp-business-auth-root .zpba-oauth-icon svg {
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
  }

  #zp-business-auth-root .zpba-oauth-btn > span:nth-child(2) {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
    transform: translateY(.5px) !important;
  }

  #zp-business-auth-root[data-screen="register"] .zpba-oauth-btn > span:nth-child(2),
  #zp-business-auth-root[data-screen="login"] .zpba-oauth-btn > span:nth-child(2) {
    font-size: 14px !important;
    font-weight: 760 !important;
    letter-spacing: -0.16px !important;
  }

  #zp-business-auth-root .zpba-footer a {
    font-size: 12px !important;
    line-height: 1.15 !important;
    color: rgba(255,255,255,.70) !important;
    white-space: nowrap !important;
  }
}
