/* ---------- Contraseñas: bloqueo y recuperación ---------- */
.lock-screen{display:flex;justify-content:center;padding:56px 0;}
.lock-card{
  width:min(400px, 100%);
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--r-xl);
  padding:24px;
  box-shadow:var(--shadow);
}
.lock-card::before{
  content:"";
  display:block;
  width:36px;
  height:36px;
  margin-bottom:14px;
  border-radius:var(--r-lg);
  background:var(--surface-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2356565F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") no-repeat center/18px;
}
.lock-card h2{font-size:17px;font-weight:600;margin:0 0 6px;}
.lock-desc{font-size:13px;color:var(--ink-soft);line-height:1.55;margin:0 0 18px;}
.lock-forgot{text-align:center;margin:14px 0 0;}
.lock-forgot a{font-size:12.5px;font-weight:500;color:var(--accent);text-decoration:none;}
.lock-forgot a:hover{text-decoration:underline;}
#recoverForm{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}
#recoverForm textarea{font-family:var(--mono);font-size:12.5px;width:100%;}
.recovery-key-box{
  font-family:var(--mono);
  font-size:14px;
  letter-spacing:0.02em;
  text-align:center;
  word-break:break-all;
  background:var(--surface-2);
  border:1px dashed var(--line-strong);
  border-radius:var(--r-lg);
  padding:16px;
  margin:4px 0 14px;
  -webkit-user-select:all;
  user-select:all;
}
.recovery-actions{display:flex;gap:8px;}
.recovery-actions .btn{flex:1;}
.recovery-confirm{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink-soft);margin-top:18px;cursor:pointer;}
.recovery-confirm input{margin-top:2px;}

.data-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.backup-history-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 12px;}
.backup-history-head h3{font-size:15px;margin:0 0 4px;}
.backup-history-head p{font-size:12px;line-height:1.5;color:var(--ink-soft);margin:0;max-width:700px;}
.backup-history{display:grid;gap:8px;}
.backup-version{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);}
.backup-version strong{font-size:13px;display:block;}
.backup-version span{font-size:12px;color:var(--ink-soft);}
.backup-version-actions{display:flex;gap:6px;flex-wrap:wrap;}
.cloud-backup-setup,.cloud-backup-key{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:12px;}
.cloud-backup-setup label,.cloud-backup-key label{display:block;font-size:13px;color:var(--ink-soft);margin:12px 0 8px;}
.cloud-backup-setup .data-actions,.cloud-backup-key .data-actions{margin-bottom:0;}
.cloud-backup-setup input,.cloud-backup-key input{flex:1;min-width:180px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);padding:9px 12px;}
@media(max-width:640px){.backup-history-head,.backup-version{align-items:stretch;flex-direction:column;}.backup-version-actions .btn{flex:1;}}
