/* Give long static-card values and non-sortable details room to wrap clearly. */
[data-static-list] .character-card-value--detail,
[data-static-list] .character-card-value--long {
  display: block;
  grid-column: 1 / -1;
  justify-self: stretch;
  width: 100%;
  box-sizing: border-box;
  min-height: 0;
  padding: 8px 10px;
  border-radius: 10px;
  background: #fff;
  color: var(--text-main);
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: left;
  overflow-wrap: anywhere;
}

[data-static-list] .character-card-value-label {
  display: block;
  margin-bottom: 2px;
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.25;
}

/* Keep each combined list's filters readable and easy to operate. */
[data-static-list] .character-filter-select { min-height: 44px; }
[data-static-list]:not(#characters) .character-controls {
  grid-template-columns: minmax(0, 1fr) minmax(12rem, .6fr) auto;
}
[data-static-list]:not(#characters) .character-control > span {
  position: static;
  width: auto;
  height: auto;
  margin: 0 0 4px;
  overflow: visible;
  clip: auto;
  color: var(--accent);
  font-size: .8rem;
  font-weight: 700;
}
[data-static-list] [data-static-reset] {
  min-height: 44px;
  padding: 8px 12px;
  border: 2px solid var(--brand-light);
  border-radius: 12px;
  background: #fff;
  color: var(--text-main);
}
@media (max-width: 850px) {
  [data-static-list]:not(#characters) .character-controls { grid-template-columns: minmax(0, 1fr); }
}
