/* register.css — отличия страницы регистрации от auth.css: подсказки под полями, строки согласий, модалка резервных кодов. */
.card{width:380px;}
.brand{display:flex; align-items:center; gap:10px; margin-bottom:22px; text-decoration:none; color:inherit;}
.brand .mark{
  width:34px; height:34px; border-radius:9px;
  background:radial-gradient(circle at 30% 25%, var(--accent-strong), var(--accent) 60%, #b85f1f 100%);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-display); font-weight:700; font-size:15px; color:#1a1005;
}
.field .rule{margin-top:4px; font-size:10.5px; color:var(--text-faint);}
.field label .opt{color:var(--text-faint); font-weight:400;}
.error-box{
  display:none; background:var(--danger-bg); border:1px solid var(--danger); color:var(--danger);
  border-radius:7px; padding:8px 10px; font-size:12px; margin-bottom:12px; line-height:1.5;
}
.error-box.show{display:block;}
button.submit{
  width:100%; margin-top:6px; background:linear-gradient(180deg,var(--accent-strong),var(--accent));
  border:none; color:#1a1005; font-weight:600; font-size:13.5px; padding:10px; border-radius:8px; cursor:pointer;
}
.switch{margin-top:16px; text-align:center; font-size:12.5px; color:var(--text-dim);}
.switch a{color:var(--accent-strong); text-decoration:none;}
.switch a:hover{text-decoration:underline;}
.consent-row{display:flex; align-items:flex-start; gap:8px; margin:12px 0; font-size:11.5px; color:var(--text-dim); line-height:1.5;}
.consent-row input{margin-top:2px; flex:none;}
.consent-row a{color:var(--accent-strong); text-decoration:none;}
.consent-row a:hover{text-decoration:underline;}
.consent-row.optional{color:var(--text-faint);}
/* ---- Модалка с резервными кодами восстановления ---- */
.modal-backdrop{
  display:none; position:fixed; inset:0; background:rgba(5,7,10,.72);
  align-items:center; justify-content:center; padding:20px; z-index:50;
}
.modal-backdrop.show{display:flex;}
.modal{
  width:420px; max-width:100%; background:var(--bg-elev-1); border:1px solid var(--border);
  border-radius:12px; padding:24px; box-shadow:0 20px 60px rgba(0,0,0,.6);
}
.modal h2{font-family:var(--font-display); font-size:16px; margin:0 0 8px;}
.modal p{font-size:12.5px; color:var(--text-dim); line-height:1.55; margin:0 0 14px;}
.modal .warn{
  background:var(--danger-bg); border:1px solid var(--danger); color:var(--danger);
  border-radius:7px; padding:8px 10px; font-size:12px; margin-bottom:14px; line-height:1.5;
}
.codes-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:16px;
  font-family:'Space Grotesk',monospace; font-size:13px;
}
.codes-grid div{
  background:var(--bg-elev-2); border:1px solid var(--border); border-radius:6px;
  padding:7px 9px; text-align:center; letter-spacing:.5px;
}
.modal-actions{display:flex; gap:8px;}
.modal-actions button{
  flex:1; border-radius:7px; padding:9px; font-size:12.5px; font-family:inherit; cursor:pointer;
}
#copyCodesBtn{background:var(--bg-elev-2); border:1px solid var(--border); color:var(--text);}
#confirmSavedBtn{
  background:linear-gradient(180deg,var(--accent-strong),var(--accent)); border:none; color:#1a1005; font-weight:600;
}
#confirmSavedBtn:disabled{opacity:.5; cursor:not-allowed;}
.confirm-row{display:flex; align-items:flex-start; gap:8px; margin-bottom:14px; font-size:12px; color:var(--text-dim);}
.confirm-row input{margin-top:2px;}
