:root{ --vs-brand:#FD064F; }

/* botão para abrir no wp-login */
.vs-pin-open{
  width:100%; margin:10px 0 14px; padding:12px 15px;
  background:var(--vs-brand); color:#fff; border:none; border-radius:10px;
  font-size:16px; font-weight:700; min-height:46px;
}
.vs-pin-open svg, .vs-pin-open i { vertical-align:middle; margin-right:6px; }

/* --- Fullscreen branco translúcido --- */
.vs-pin-modal{ position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; }
.vs-pin-backdrop{ position:absolute; inset:0; background:rgba(255,255,255,.85); }

/* container minimalista (sem cartão) */
.vs-pin-container.vs-compact{
  position:relative; z-index:2; width:360px; max-width:92%;
  background:transparent; box-shadow:none; border-radius:0; padding:0; text-align:center;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;
}
.vs-title{ color:#111; font-weight:700; font-size:22px; margin:0 0 10px; }

.vs-pin-dots{ display:flex; justify-content:center; gap:12px; margin:0 0 14px; }
.vs-pin-dots .dot{ width:14px; height:14px; border-radius:50%; border:2px solid #111; background:transparent; display:inline-block; opacity:.8; }
.vs-pin-dots .dot.filled{ background:#111; }

#vs-pin-input{ position:absolute; opacity:0; pointer-events:none; height:0; width:0; left:-9999px; }

/* Keypad circular estilo iOS */
.vs-keypad{
  display:grid;
  grid-template-columns:repeat(3,68px);
  grid-template-rows:repeat(4,68px);
  gap:14px;
  justify-content:center;
  margin:50px 0 50px 0;
}
.vs-keypad .k{
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  font-size:28px; font-weight:100;
  border:none; background:#2b2b2b; color:#fff;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
  transition: background .15s ease, transform .1s ease;
}
.vs-keypad .k:active,
.vs-keypad .k.pressed{
  transform:scale(.94);
  background:var(--vs-brand);
  color:#fff;
}
.vs-keypad .k[disabled]{ opacity:.35; pointer-events:none; }

/* Posições da última linha */
.vs-keypad .k-back{ grid-column:1; grid-row:4; }                  /* ← (esquerda)  */
.vs-keypad .k-submit{ grid-column:3; grid-row:4; display:none; } /* OK (direita) */
.vs-keypad .k[data-key="0"]{ grid-column:2; grid-row:4; }         /* 0 (centro)   */

/* Quando pronto (4 dígitos) mostra o OK e pinta */
.vs-keypad.vs-ready .k-submit{
  display:flex;
  background:var(--vs-brand);
  color:#fff;
  font-weight:100;
  box-shadow:0 0 10px rgba(253, 6, 79, 0.4);
}

/* desativa zoom e seleção nos botões */
.vs-keypad, .vs-keypad .k {
  -webkit-user-select: none;   /* impede seleção de texto */
  -webkit-touch-callout: none; /* sem menu de toque */
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;  /* evita gestos de zoom / duplo tap */
}

/* botão Cancelar fixo no canto superior direito */
.vs-actions{
  position:absolute; top:20px; right:22px; margin:0; padding:0; display:block;
}
.vs-actions .btn-link{
  background:transparent; border:none; color:#333; font-size:14px; font-weight:500;
  cursor:pointer; transition:opacity .2s ease;
}
.vs-actions .btn-link:hover{ opacity:.7; }

.btn-link{ background:transparent; border:none; color:#333; font-size:14px; }
.btn-info{ background:transparent; border:none; color:#333; font-size:14px; margin-top:50px; }

.vs-feedback{ margin-top:8px; color:#b00; min-height:18px; font-size:14px; }

/* escondemos o "lembrar dispositivo" */
.vs-trust{ display:none; }

