/* Candidate web (kandidatweb): the public application form. Phone first. */
.page--candidate { max-width: 44rem; }
.cd-card { max-width: none; }
.cd-text p:first-child { margin-top: 0; }
.cd-fieldset { border: 1px solid var(--color-border); border-radius: 8px; padding: 0.75rem 0.9rem; margin: 0.5rem 0; display: flex; flex-direction: column; gap: 0.4rem; }
.cd-fieldset legend { font-weight: 600; padding: 0 0.3rem; }
.cd-checks { display: grid; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); gap: 0.25rem 1rem; }
.cd-error { margin: 0.1rem 0 0.4rem; color: #8a1c1c; font-size: 0.9rem; }
.is-invalid { outline: 2px solid #b3261e; outline-offset: -1px; }
.cd-file { display: block; margin-bottom: 0.5rem; }
.cd-consent { margin: 0.25rem 0 0.5rem; }
.cd-consent summary { cursor: pointer; font-weight: 600; }
.cd-legal { max-height: 16rem; overflow: auto; padding: 0.5rem; border: 1px solid var(--color-border); border-radius: 6px; font-size: 0.9rem; background: var(--color-bg); }
.cd-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 480px) {
    .form__row { flex-direction: column; gap: 0.25rem; }
}
