.x3-login-backdrop-text{
  text-align:center;
  font-family:"Libre Bodoni", Sans-serif;
  color:var(--e-global-color-text);
  text-shadow:0 0 3px rgba(0,0,0,0.3);
  font-size:20px;
  font-weight:700;
  padding:32px 12px;
}

.x3-login-helper{
  display:flex;
  justify-content:center;
  margin-top:8px;
}

.x3-login-autostart .x3-login-helper{
  display:none;
}

.x3-login-helper .x3-login-helper-btn{
  background:#000;
  color:#fff !important;
  border:1px solid #000 !important;
  border-radius:3px;
  box-shadow:0 0 4px rgba(0,0,0,0.7);
  text-shadow:0 0 3px rgba(255,255,255,0.6);
  font-family:"Libre Bodoni", Sans-serif;
}

.x3-login-helper .x3-login-helper-btn:hover{
  box-shadow:0 0 10px rgba(0,0,0,0.85);
}

.x3-login-popup{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:10000;
  box-sizing:border-box;
  width:100vw;
  height:100dvh;
  max-width:none !important;
  margin:0 !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  visibility:hidden;
  pointer-events:none;
  transition:visibility 0s linear .28s;
}

.x3-login-popup[hidden]{
  display:none !important;
}

.x3-login-popup.is-open{
  visibility:visible;
  pointer-events:auto;
  transition-delay:0s;
}

.x3-login-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,7,13,0);
  opacity:0;
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
  transition:opacity .28s ease, background-color .28s ease, -webkit-backdrop-filter .28s ease, backdrop-filter .28s ease;
}

.x3-login-popup.is-open .x3-login-popup-backdrop{
  background:rgba(4,7,13,0.68);
  opacity:1;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.x3-login-popup-card{
  --x3-login-field-bg:#f8fafc;
  --x3-login-field-shadow:inset 0 1px 4px rgba(15,23,42,0.16);
  --x3-login-field-focus:inset 0 1px 4px rgba(15,23,42,0.2), 0 0 0 1px rgba(15,23,42,0.2);
  position:relative;
  background:#fcfdff;
  color:var(--e-global-color-text);
  border-radius:12px;
  box-shadow:0 20px 40px rgba(0,0,0,0.25);
  padding:18px 18px 16px;
  width:min(420px, 92vw);
  z-index:1;
  font-family:"Libre Bodoni", Sans-serif;
  margin:0 auto;
  transform:translateY(10px) scale(.985);
  opacity:0;
  transition:transform .28s ease, opacity .28s ease;
}

.x3-login-popup.is-open .x3-login-popup-card{
  transform:translateY(0) scale(1);
  opacity:1;
}

.x3-login-popup-body{
  position:relative;
  z-index:1;
  transition:opacity .2s ease;
}

.x3-login-popup.is-loading .x3-login-popup-body{
  opacity:0.55;
  pointer-events:none;
}

.x3-login-popup-success{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:24px;
  font-size:20px;
  font-weight:700;
  opacity:0;
  pointer-events:none;
  z-index:2;
  transition:opacity .25s ease;
}

.x3-login-popup.is-success .x3-login-popup-success{
  opacity:1;
}

.x3-login-popup.is-success .x3-login-popup-body{
  opacity:0.18;
  pointer-events:none;
}


.x3-login-popup .x3-login-popup-close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:3;
  width:32px;
  height:32px;
  min-width:32px;
  min-height:32px;
  max-width:32px;
  max-height:32px;
  border:0;
  border-radius:999px !important;
  -webkit-appearance:none;
  appearance:none;
  background:#111827 !important;
  color:#fff !important;
  cursor:pointer;
  box-shadow:0 0 6px rgba(0,0,0,0.45);
  text-shadow:0 0 3px rgba(255,255,255,0.4);
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  font-size:18px;
  padding:0;
  text-align:center;
  pointer-events:auto;
}

.x3-login-popup .x3-login-popup-close:hover{
  box-shadow:0 0 10px rgba(0,0,0,0.6) !important;
}

.x3-login-popup-card input[type="text"],
.x3-login-popup-card input[type="password"],
.x3-login-popup-card input[type="email"]{
  width:100%;
  padding:10px 12px;
  border:0 !important;
  border-radius:6px !important;
  box-shadow:var(--x3-login-field-shadow) !important;
  background:var(--x3-login-field-bg) !important;
  color:var(--e-global-color-text) !important;
  font-family:"Libre Bodoni", Sans-serif !important;
}

.x3-login-popup-card input[type="text"]:focus,
.x3-login-popup-card input[type="password"]:focus,
.x3-login-popup-card input[type="email"]:focus{
  outline:none;
  box-shadow:var(--x3-login-field-focus);
}

.x3-login-popup .x3-login-popup-card .button,
.x3-login-popup .x3-login-popup-card button,
.x3-login-popup .x3-login-popup-card input[type="submit"]{
  background:#000;
  color:#fff !important;
  border:1px solid #000 !important;
  border-radius:3px;
  box-shadow:0 0 4px rgba(0,0,0,0.7);
  text-shadow:0 0 3px rgba(255,255,255,0.6);
}

.x3-login-popup .x3-login-popup-card .button:hover,
.x3-login-popup .x3-login-popup-card button:hover,
.x3-login-popup .x3-login-popup-card input[type="submit"]:hover{
  box-shadow:0 0 10px rgba(0,0,0,0.85) !important;
}

.x3-login-popup-card a{
  color:var(--e-global-color-primary);
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login,
.x3-login-popup .x3-login-popup-card .woocommerce-form-register,
.x3-login-popup .x3-login-popup-card form.login,
.x3-login-popup .x3-login-popup-card form.register{
  margin:0 !important;
  padding:6px 0 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.x3-login-popup .x3-login-popup-card .password-input{
  display:block;
  width:100%;
  box-sizing:border-box;
}

.x3-login-popup .x3-login-popup-card .show-password-input,
.x3-login-popup .x3-login-popup-card button.show-password-input,
.x3-login-popup .x3-login-popup-card span.show-password-input{
  top:50% !important;
  right:8px !important;
  transform:translateY(-50%);
  width:30px;
  height:30px;
  min-width:30px;
  border:0 !important;
  border-radius:6px !important;
  background:#111827 !important;
  color:#fff !important;
  box-shadow:0 0 4px rgba(0,0,0,0.35) !important;
  opacity:1 !important;
  inset:auto 8px auto auto !important;
}

.x3-login-popup .x3-login-popup-card .show-password-input::after,
.x3-login-popup .x3-login-popup-card button.show-password-input::after,
.x3-login-popup .x3-login-popup-card span.show-password-input::after{
  color:#fff !important;
}

.x3-login-popup .x3-login-popup-card .lost_password,
.x3-login-popup .x3-login-popup-card .woocommerce-LostPassword{
  margin:10px 0 0 !important;
  text-align:center;
}

.x3-login-popup-body #customer_login{
  margin:0;
  display:block;
}

.x3-login-popup-body #customer_login .u-column2{
  display:none;
}

.x3-login-popup-body #customer_login .u-column1,
.x3-login-popup-body #customer_login .u-column2{
  float:none;
  width:100%;
  max-width:100%;
  margin:0;
}

.x3-login-popup-body #customer_login .col-1,
.x3-login-popup-body #customer_login .col-2{
  width:100%;
}

.x3-login-popup.is-register .x3-login-popup-body #customer_login .u-column1{
  display:none;
}

.x3-login-popup.is-register .x3-login-popup-body #customer_login .u-column2{
  display:block;
}

.x3-login-popup.is-reset .x3-login-popup-body #customer_login{
  display:none;
}

.x3-login-popup.is-reset .x3-login-popup-body [data-x3-login-reset]{
  display:block;
}

[data-x3-login-2fa]{
  display:none;
}

.x3-login-popup.is-2fa [data-x3-login-2fa]{
  display:block;
}

[data-x3-login-reset]{
  display:none;
}

.x3-login-reset-message{
  margin:8px 0 0;
}

.x3-login-popup-switch{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:12px;
  align-items:center;
}

.x3-login-popup-message{
  display:block;
  max-height:0;
  margin:0;
  padding:0 10px;
  opacity:0;
  overflow:hidden;
  border-radius:6px;
  background:#b91c1c;
  color:#fff;
  font-size:13px;
  text-align:center;
  transition:max-height .25s ease, opacity .2s ease, margin .25s ease, padding .25s ease;
}

.x3-login-popup-message.is-visible{
  max-height:120px;
  margin:8px 0 10px;
  padding:8px 10px;
  opacity:1;
}

.x3-login-switch{
  border:0;
  background:transparent;
  color:var(--e-global-color-primary);
  cursor:pointer;
  text-align:center;
  font-weight:600;
}

.x3-login-popup-body .woocommerce-form-login,
.x3-login-popup-body .woocommerce-form-register{
  padding-top:6px;
}

.x3-login-popup .x3-login-popup-card .form-row{
  margin:0 0 12px;
}

.x3-login-popup .x3-login-popup-card .form-row label{
  display:block;
  margin-bottom:6px;
  font-family:"Libre Bodoni", Sans-serif;
}

.x3-login-popup .x3-login-popup-card label .required,
.x3-login-popup .x3-login-popup-card .required{
  display:none !important;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login,
.x3-login-popup .x3-login-popup-card .woocommerce-form-register{
  text-align:center;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row,
.x3-login-popup .x3-login-popup-card .woocommerce-form-register .form-row{
  text-align:left;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row .button,
.x3-login-popup .x3-login-popup-card .woocommerce-form-register .form-row .button,
.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row input[type="submit"],
.x3-login-popup .x3-login-popup-card .woocommerce-form-register .form-row input[type="submit"]{
  display:inline-block;
  margin:0 auto;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row:last-child,
.x3-login-popup .x3-login-popup-card .woocommerce-form-register .form-row:last-child{
  text-align:center;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row{
  text-align:left;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row.woocommerce-form__label-for-checkbox,
.x3-login-popup .x3-login-popup-card .woocommerce-form-login .form-row:has(.woocommerce-form-login__rememberme){
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  text-align:center;
}

.x3-login-popup .x3-login-popup-card .woocommerce-form-login__rememberme{
  justify-content:center;
}

.x3-login-popup-card .woocommerce-form__label-for-checkbox{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
}

.x3-login-popup-card input[type="checkbox"]{
  appearance:none;
  width:18px;
  height:18px;
  border-radius:4px;
  border:1px solid rgba(0,0,0,0.25);
  background:#fff;
  box-shadow:inset 0 0 4px rgba(0,0,0,0.15);
  display:inline-grid;
  place-content:center;
}

.x3-login-popup-card input[type="checkbox"]::after{
  content:"";
  width:10px;
  height:10px;
  transform:scale(0);
  transition:transform 0.12s ease;
  background:#000;
  border-radius:2px;
}

.x3-login-popup-card input[type="checkbox"]:checked::after{
  transform:scale(1);
}

.x3-login-popup.is-register .x3-login-popup-switch [data-x3-login-toggle="register"]{
  display:none;
}

.x3-login-popup:not(.is-register) .x3-login-popup-switch [data-x3-login-toggle="login"]{
  display:none;
}
