/* Build Path — consistent resident intake controls (list-style, not tiles) */

.field-list,
.options,
.choice-grid {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
}

.field-list label,
.options .option,
.choice-grid .choice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 6px 0;
  line-height: 1.45;
  cursor: pointer;
  border: none;
  background: transparent;
  border-radius: 0;
  min-height: auto;
  min-width: 0;
  max-width: 100%;
  transform: none;
}

.options .option:hover,
.choice-grid .choice:hover {
  background: transparent;
  transform: none;
  border-color: transparent;
}

.field-list input,
.options .option input,
.choice-grid .choice input {
  position: static;
  opacity: 1;
  pointer-events: auto;
  margin-top: 3px;
  flex: 0 0 auto;
  transform: none;
}

.choice-grid .choice span {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  border: none;
  background: none;
  padding: 0;
  min-height: auto;
  border-radius: 0;
  font-weight: 400;
  color: inherit;
  box-shadow: none;
  overflow-wrap: break-word;
  word-break: normal;
}

.choice-grid {
  max-width: 100%;
}

.field-list input:checked + span,
.options .option:has(input:checked),
.choice-grid .choice input:checked + span {
  font-weight: 700;
  color: var(--charcoal, #111827);
}

.field label,
.field .field-label {
  display: block;
  font-weight: 700;
  color: var(--charcoal, #111827);
  margin-bottom: 6px;
}

.field .hint {
  margin: 0 0 6px;
  font-size: 0.9rem;
  color: var(--muted, #6B7280);
}

.field input[type="text"],
.field input[type="email"],
.field input[type="tel"],
.field textarea,
.field select {
  width: 100%;
}
