.elementor-14009 .elementor-element.elementor-element-4382bc7{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--padding-top:56px;--padding-bottom:56px;--padding-left:48px;--padding-right:48px;}#elementor-popup-modal-14009 .dialog-widget-content{animation-duration:0.2s;background-color:#02010100;border-radius:24px 24px 24px 24px;box-shadow:2px 8px 25px 3px rgba(0, 0, 0, 0.1);}#elementor-popup-modal-14009{background-color:#00000000;justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-14009 .dialog-message{width:420px;height:custom;align-items:flex-start;}#elementor-popup-modal-14009 .dialog-close-button{display:flex;}@media(max-width:1024px){#elementor-popup-modal-14009{justify-content:center;align-items:center;}}@media(max-width:767px){.elementor-14009 .elementor-element.elementor-element-4382bc7{--padding-top:84px;--padding-bottom:84px;--padding-left:24px;--padding-right:24px;}#elementor-popup-modal-14009 .dialog-message{width:95vw;}#elementor-popup-modal-14009{align-items:flex-end;}#elementor-popup-modal-14009 .dialog-widget-content{margin:0px 0px 8px 0px;}}/* Start custom CSS for html, class: .elementor-element-56ac22d *//* == NERZO — SINGLE AUTH POPUP == */

/* ---------- Shell ---------- */
.nerzo-auth-wrap{
  width:100%;
  max-width:520px;
  margin-top: 16px;
}

.nerzo-auth-card{
  padding:0 !important;
}

/* ---------- Shared Typography ---------- */
.nerzo-auth-title{
  margin:0 0 16px 0;
  text-align:center;
  color:var(--text-primary);
}

.nerzo-auth-sub{
  margin:0 0 16px 0;
  text-align:center;
  color:var(--text-muted);
  font-size:14px;
}

/* ---------- Layout Stack ---------- */
.nerzo-auth-stack{
  display:flex;
  flex-direction:column;
  gap:12px;
}

/* ---------- OAuth Buttons ---------- */
.nerzo-auth-oauth-btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;

  padding:10px 14px;
  border-radius:8px;

  border:1px solid var(--border-subtle);
  background:transparent;
  color:var(--text-primary)!important;

  cursor:pointer;
  transition: background .2s var(--ease-standard), border-color .2s var(--ease-standard);
}

.nerzo-auth-oauth-btn:hover{
  background:var(--bg-surface-mid);
}

.nerzo-auth-oauth-btn:active{
  transform: translateY(1px);
}

/* ---------- Icon Normalisation (THE FIX) ----------
   Make both icons live inside a fixed 18x18 box,
   so the button height never changes.
*/
.nerzo-auth-oauth-btn .na-ico,
.nerzo-auth-oauth-btn .apple-ico{
  width:15px;
  height:15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 18px;
  line-height:0;
}

/* Google IMG: keep native colors, just size it */
.nerzo-auth-oauth-btn .na-ico{
  object-fit:contain;
  display:block;
}

/* Apple SVG: inherit text color + scale inside the 18x18 box */
.nerzo-auth-oauth-btn .apple-ico{
  color:var(--btn-secondary-text); /* inherits theme light/dark */
}

.nerzo-auth-oauth-btn .apple-ico svg{
  width:18px;
  height:18px;
  display:block;
  fill:currentColor;
}

/* Apple mark is optically smaller at same viewBox.
   Scale slightly without affecting layout.
*/
.nerzo-auth-oauth-btn .apple-ico svg{
  transform: scale(1.18);          /* tweak: 1.12–1.22 if you want */
  transform-origin:center;
}

/* ---------- Divider ---------- */
.nerzo-auth-divider{
  position:relative;
  margin:16px 0;
  text-align:center;
  color:var(--text-muted);
  font-size:12px;
}

.nerzo-auth-divider span{
  display:inline-block;
  padding:0 12px;
}

.nerzo-auth-divider:before,
.nerzo-auth-divider:after{
  content:"";
  position:absolute;
  top:50%;
  width:calc(50% - 28px);
  height:1px;
  background:var(--border-subtle);
}

.nerzo-auth-divider:before{ left:0; }
.nerzo-auth-divider:after{ right:0; }

/* ---------- Floating Inputs ---------- */
.nerzo-float{
  position:relative;
}

.nerzo-float input{
  width:100%;
  padding:10px 16px;
  border-radius:24px !important;

  border:1px solid var(--border-subtle) !important;
  background:none;

  color:var(--text-primary);
  outline:none;

  font-size:16px;
  transition: border-color .2s var(--ease-standard), box-shadow .2s var(--ease-standard);
}

.nerzo-float input::placeholder{
  color:transparent;
}

.nerzo-float label{
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);

  color:var(--text-muted);
  font-size:14px;

  pointer-events:none;
  padding:0 8px;
  transition: all .18s var(--ease-standard);
}

.nerzo-float input:focus{
  border-color:var(--nerzo-accent) !important;
  box-shadow:0 0 0 3px rgba(var(--bg-page-rgb), 0.28);
}

.nerzo-float input:focus + label,
.nerzo-float input:not(:placeholder-shown) + label{
  top:0px;
  transform:translateY(-50%);
  font-size:12px;
  color:var(--nerzo-accent);
  background:var(--bg-surface-light-dm);
}

/* ---------- Primary Button ---------- */
.nerzo-auth-submit{
  width:100%;
  padding:10px 14px;
  border-radius:8px;
  border:0;

  cursor:pointer;
  background:var(--btn-primary-bg);
  color:var(--text-primary-ghost) !important;

  transition: background .2s var(--ease-standard), transform .06s var(--ease-standard);
}

.nerzo-auth-submit:hover{
  background:var(--btn-primary-bg-hover);
}

.nerzo-auth-submit:active{
  transform: translateY(1px);
}

.nerzo-auth-submit[disabled]{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
}

.nerzo-auth-submit[data-action="close"] {
    margin-bottom: 24px!important;
}

/* ---------- Error ---------- */
.nerzo-auth-error{
  display:none;
  padding:12px;
  border-radius:16px;
  border:1px solid var(--border-subtle);
  background:var(--bg-surface-mid);
  color:var(--text-primary);
  font-size:12px;
}

.nerzo-auth-error.is-visible{
  display:block;
}

/* ---------- Step Links ---------- */
.na-link{
  background:none;
  border:0;
  padding:0 0 24px!important;
  cursor:pointer;
  color:var(--text-primary)!important;
  font-size:14px;
  align-self:center;
}

.na-link--muted{
  color:var(--text-muted);
  align-self:center;
}

.na-link--muted:hover{
  color:var(--text-muted);
}

/* ---------- Email Chip ---------- */
.na-chip{
  padding:8px;
  color:var(--text-primary);
  font-size:14px;
  font-weight: 600;
  text-align:center;
}

/* ---------- Fineprint ---------- */
.nerzo-auth-fineprint{
  margin-top:24px;
  text-align:center;
  font-size:12px;
  color:var(--text-muted);
}

.nerzo-auth-fineprint a{
  color:var(--text-muted);
}

.nerzo-auth-fineprint a:hover{
  text-decoration:underline;
  color:var(--text-primary);
}

/* ---------- Step spacing consistency ---------- */
.na-step{
  /* keeps vertical rhythm consistent between states */
  display:block;
}


.na-link {
    background:none!important;
    border:none!important;
}

.na-link:hover {
    color:var(--text-muted)!important;
}/* End custom CSS */