.file-list ul {
  padding: 0 0 0 14px;
  list-style-type: none;
}
.file-list:has(li:only-child .file-link--style-btn) ul {
  padding: 0;
}
.file-list li:not(:only-child),
.file-list li:only-child:has(.file-link--style-text) {
  position: relative;
  padding: 0;
  margin: 0 0 10px 0;
}
.file-list li:not(:only-child):before,
.file-list li:only-child:has(.file-link--style-text):before {
  position: absolute;
  border-style: solid;
  border-width: 1px 1px 0 0;
  content: '';
  display: inline-block;
  height: 4px;
  width: 4px;
  left: -15px;
  top: 8px;
  vertical-align: top;
  transform: rotate(45deg);
}
.file-list li:not(:only-child) a,
.file-list li:only-child:has(.file-link--style-text) a {
  font-weight: bold;
  text-decoration: none;
  border-bottom: none;
}
.file-list li:not(:only-child) a:hover,
.file-list li:only-child:has(.file-link--style-text) a:hover {
  border-bottom: #004494 1px solid;
  color: #004494;
}
.file-list li:not(:only-child) a span,
.file-list li:only-child:has(.file-link--style-text) a span {
  font-size: 14px;
  line-height: 21px;
}
.file-list li:only-child:has(.file-link--style-btn) ul,
.file-list li:only-child:has(.file-link--style-btn) li {
  all: unset;
}
.file-list li:only-child:has(.file-link--style-btn) .file-link--style-btn {
  display: inline-block;
  cursor: pointer;
  font-weight: bold;
  color: #004494;
  background: #fff;
  transition: background .25s;
}
.file-list li:only-child:has(.file-link--style-btn) .file-link--style-btn:hover {
  color: #004494;
  background: #eaebf4;
}
.file-list li:only-child:has(.file-link--style-btn) .file-link--style-btn span {
  font-size: 14px;
  line-height: 21px;
  display: inline-block;
  box-sizing: border-box;
  padding: 9px 20px;
  border: solid 1px #004494;
}
