/* Scoped layout: each action occupies its own row, including long labels. */
.candidate-login{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;padding-top:56px}
.candidate-login .profile-form{min-width:0}
.candidate-login form{display:grid;gap:16px;margin:0 0 20px;min-width:0}
.candidate-login .field{margin:0;min-width:0}
.candidate-login .field input{width:100%;min-width:0}
.candidate-login input::placeholder{color:#52647b;opacity:1}
.candidate-login form p{margin:0;font-size:14px}
.candidate-login .button{width:100%;min-width:0;min-height:48px;white-space:normal;overflow-wrap:anywhere;text-align:center;flex:none}
.candidate-login .button:disabled{cursor:not-allowed}
.candidate-methods{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:24px 0}
.candidate-login hr{border:0;border-top:1px solid var(--line);margin:32px 0}
.candidate-login .notice{margin-top:20px}
.candidate-login .notice p{margin:8px 0 0;font-size:14px}
@media(max-width:850px){.candidate-login{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px 20px}.candidate-login .profile-intro h1{font-size:34px}}
@media(max-width:380px){.candidate-login{padding:24px 12px}.candidate-login .profile-form{padding:20px 16px}.candidate-login .button{padding:12px}}
