/* Family Details: responsive card/grid layout (falls back to a single
   column on narrow screens so fields never get squeezed sideways). */
.family-member-block {
    border-bottom: 1px dashed #cccccc;
    padding: 6px 0 8px 0;
}
.family-member-block:last-child {
    border-bottom: none;
}
.family-remove-btn {
    color: #ff0000;
    font-weight: bold;
    font-size: 10px;
    text-decoration: none;
    display: inline-block;
    margin-bottom: 3px;
}
.family-add-btn {
    color: #990000;
    font-weight: bold;
    text-decoration: none;
}
.family-fields-grid-main {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 4px 10px;
    gap: 4px 10px;
}
.family-fields-grid-dates {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 4px 16px;
    gap: 4px 16px;
    margin-top: 6px;
}
/* Admin-only row (e.g. Entity Id on the edit page); same columns as the
   main row so its field lines up under First Name. */
.family-fields-grid-admin {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 4px 10px;
    gap: 4px 10px;
    margin-top: 6px;
}
.family-field {
    display: flex;
    flex-direction: column;
}
.family-field label {
    margin-bottom: 1px;
}
.family-field input[type="text"],
.family-field select {
    width: 100%;
    box-sizing: border-box;
    font-size: 10px;
    padding: 2px;
}
.family-date-field {
    display: flex;
}
/* margin rather than flex "gap", which older iOS Safari (before 14.5) ignores */
.family-date-field select + select {
    margin-left: 3px;
}
.family-date-field select {
    flex: 1;
    min-width: 0;
}
@media (max-width: 800px) {
    .family-fields-grid-main,
    .family-fields-grid-admin {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 600px) {
    .family-fields-grid-main,
    .family-fields-grid-dates,
    .family-fields-grid-admin {
        grid-template-columns: 1fr;
    }
    /* iOS Safari zooms the page into any field under 16px when it's tapped */
    .family-field input[type="text"],
    .family-field select {
        font-size: 16px;
    }
}
