html[data-app-lock-pending]
  body
  > :not(#vmesta-app-lock):not(script):not(style) {
  display: none !important;
}
#vmesta-app-lock[hidden] {
  display: none !important;
}
#vmesta-app-lock {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  overflow: auto;
  background: var(--theme-surface-panel, #fff);
  color: var(--theme-text-primary, #182332);
  padding: 24px;
  display: grid;
  place-items: center;
}
.vmesta-lock-card {
  width: min(100%, 440px);
}
.vmesta-lock-card form,
.vmesta-lock-settings form {
  display: grid;
  gap: 12px;
}
.vmesta-lock-card label,
.vmesta-lock-settings label {
  display: grid;
  gap: 6px;
}
.vmesta-lock-card :is(input, select, button),
.vmesta-lock-settings :is(input, select, button) {
  border: 0;
  border-radius: 12px;
  padding: 12px;
  background: var(--theme-surface-nested, #edf0f5);
  color: inherit;
  font: inherit;
}
.vmesta-lock-card :is(input, select, button):focus-visible,
.vmesta-lock-settings :is(input, select, button):focus-visible {
  outline: 2px solid var(--theme-icon, #2563eb);
  outline-offset: 2px;
}
.vmesta-lock-card [hidden] {
  display: none !important;
}
.vmesta-lock-settings {
  padding: 16px;
  margin: 16px 0;
  border-radius: 16px;
  background: var(--theme-surface-nested, #edf0f5);
}

/* Цифровая клавиатура облачного PIN. */
#vmesta-app-lock [data-pinpad]:not([hidden]) {display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:260px;margin:16px auto}
#vmesta-app-lock [data-pinpad] button {border:0;border-radius:50%;width:62px;height:62px;font-size:22px;justify-self:center}
#vmesta-app-lock [data-pinpad] button:disabled {visibility:hidden}

.vmesta-pin-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}.vmesta-pin-brand img{width:42px;height:42px;object-fit:contain;border-radius:12px}
