.edbs-login-wrap{
  --edbs-login-primary:#3b247f;
  --edbs-login-accent:#b7a57a;
  width:100%;
  display:flex;
  justify-content:center;
  padding:10px 12px 24px;
  box-sizing:border-box;
}
.edbs-login-card{
  width:360px!important;
  max-width:calc(100vw - 28px)!important;
  background:#fff;
  border:1px solid rgba(45,31,103,.13);
  border-radius:16px;
  padding:22px 24px!important;
  box-shadow:0 10px 28px rgba(45,31,103,.06);
  box-sizing:border-box!important;
}
.edbs-login-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  max-width:100%;
  padding:2px 10px;
  border-radius:11px;
  background:color-mix(in srgb,var(--edbs-login-primary) 9%,white);
  color:var(--edbs-login-primary);
  font-weight:800;
  font-size:12px;
  letter-spacing:.06em;
  margin-bottom:11px;
  box-sizing:border-box;
}
.edbs-login-card h2{
  margin:0 0 6px!important;
  color:var(--edbs-login-accent);
  font-size:22px!important;
  line-height:1.12!important;
}
.edbs-login-subtitle,
.edbs-login-card p{
  margin:0 0 16px!important;
  color:#6d6780;
  font-size:14px!important;
  line-height:1.42!important;
}
.edbs-login-form label{
  display:block;
  margin:0 0 5px!important;
  color:#28175f;
  font-weight:700;
  font-size:13px!important;
}
.edbs-login-form input[type="text"],
.edbs-login-form input[type="password"]{
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  border:1px solid #d9d4e7!important;
  border-radius:9px!important;
  padding:0 12px!important;
  font-size:14px!important;
  background:#fff!important;
  color:#241b3c!important;
  box-sizing:border-box!important;
  outline:none!important;
  margin:0 0 12px!important;
  box-shadow:none!important;
}
.edbs-login-form input[type="text"]:focus,
.edbs-login-form input[type="password"]:focus{
  border-color:var(--edbs-login-primary)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--edbs-login-primary) 10%,transparent)!important;
}
.edbs-password-field{
  position:relative!important;
}
.edbs-password-field input[type="password"],
.edbs-password-field input[type="text"]{
  padding-right:38px!important;
}
.edbs-password-toggle,
.edbs-password-toggle:hover,
.edbs-password-toggle:focus,
.edbs-password-toggle:active,
.edbs-password-toggle[aria-pressed="true"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute!important;
  right:10px!important;
  top:20px!important;
  transform:translateY(-50%)!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  color:#817a91!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  border-radius:50%!important;
  box-shadow:none!important;
  outline:none!important;
  line-height:1!important;
  font-size:0!important;
  text-indent:0!important;
}
.edbs-password-toggle:hover,
.edbs-password-toggle:focus-visible{
  color:var(--edbs-login-primary)!important;
  background:transparent!important;
  box-shadow:none!important;
}
.edbs-password-toggle svg{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  fill:currentColor!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
}
.edbs-login-row{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 14px!important;
  flex-wrap:nowrap!important;
}
.edbs-remember{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
  font-weight:500!important;
  color:#5f5871!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
.edbs-remember input{
  margin:0!important;
  width:15px!important;
  height:15px!important;
}
.edbs-forgot-link,
.edbs-back-link{
  color:var(--edbs-login-primary)!important;
  font-size:12px!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.edbs-forgot-link{white-space:nowrap!important}
.edbs-forgot-link:hover,
.edbs-back-link:hover{text-decoration:underline!important}
.edbs-back-link{display:inline-block;margin-top:14px!important}
.edbs-login-submit,
.edbs-login-btn{
  width:auto!important;
  min-width:136px!important;
  min-height:38px!important;
  height:38px!important;
  padding:0 20px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--edbs-login-primary)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:.03em!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:none!important;
  transition:transform .15s ease,opacity .15s ease!important;
}
.edbs-login-submit:hover,
.edbs-login-btn:hover{opacity:.94!important;transform:translateY(-1px)!important}
.edbs-login-error,
.edbs-login-success{
  margin:0 0 13px!important;
  padding:9px 11px!important;
  border-radius:9px!important;
  font-size:12px!important;
  line-height:1.4!important;
}
.edbs-login-error{background:#fff3f4;border:1px solid #f1c5ca;color:#a52836}
.edbs-login-success{background:#f0faf4;border:1px solid #bfe3ca;color:#236a3b}
.edbs-login-actions{display:flex;gap:9px;flex-wrap:wrap}
.edbs-login-link-btn{
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 17px!important;
  border:1px solid #d7d0e8!important;
  border-radius:12px!important;
  color:var(--edbs-login-primary)!important;
  font-weight:800!important;
  font-size:12px!important;
  text-decoration:none!important;
}
@media (max-width:600px){
  .edbs-login-wrap{padding:8px 8px 20px}
  .edbs-login-card{width:100%!important;max-width:360px!important;padding:20px 18px!important;border-radius:14px!important}
  .edbs-login-card h2{font-size:21px!important}
  .edbs-login-row{flex-wrap:wrap!important;align-items:flex-start!important;gap:8px!important}
  .edbs-login-submit,.edbs-login-btn{width:100%!important}
}


/* Página /login/ independiente del tema activo */
html:has(body.edbs-login-standalone){
  margin-top:0!important;
  background:#fff!important;
}
body.edbs-login-standalone{
  margin:0!important;
  min-height:100vh!important;
  background:#fff!important;
  color:#241b3c;
}
body.edbs-login-standalone #wpadminbar{
  display:none!important;
}
.edbs-login-page{
  min-height:100vh;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px 16px;
  box-sizing:border-box;
}
.edbs-login-standalone .edbs-login-wrap{
  padding:0!important;
  align-items:center;
}
@media (max-width:600px){
  .edbs-login-page{padding:20px 12px}
}
