.wave-repair {
  display: grid;
  gap: 10px;
  padding: 12px;
  color: #e5ebdc;
  background: #232a22;
  font-size: 12px;
}
.wave-repair-source, .wave-repair-fields, .wave-repair-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
}
.wave-repair-source { justify-content: space-between; }
.wave-repair-source > div { min-width: 0; }
.wave-repair-source strong, .wave-repair-source small { display: block; overflow-wrap: anywhere; }
.wave-repair-source strong { font-size: 15px; }
.wave-repair-source small, .wave-repair-cleanup small, .wave-repair-empty, .wave-repair-status { color: #aebda8; }
.wave-repair-source small { margin-top: 3px; }
.wave-repair button, .wave-repair input[type='number'] {
  min-height: 28px;
  border: 1px solid #52614c;
  border-radius: 5px;
  background: #313b2e;
  color: #edf3e8;
  font: inherit;
}
.wave-repair button { padding: 4px 9px; }
.wave-repair button:disabled { opacity: .48; }
.wave-repair button:not(:disabled):hover, .wave-repair button[aria-pressed='true'] {
  background: #45563b;
  border-color: #889c77;
}
.wave-repair :is(button, input, .wave-repair-timeline):focus-visible { outline: 2px solid #c8eea9; outline-offset: 2px; }
.wave-repair input[type='number'] { width: 90px; padding: 3px 6px; font-variant-numeric: tabular-nums; }
.wave-repair input[type='range'] { min-width: 65px; max-width: 120px; accent-color: #c4e795; }
.wave-repair [data-wave-editor] { display: grid; gap: 8px; min-width: 0; }
.wave-repair-tool-divider { height: 19px; width: 1px; background: #4a5a44; }
.wave-repair-timeline {
  position: relative;
  height: clamp(132px, 25vh, 245px);
  overflow: hidden;
  background: #151a18;
  border: 1px solid #505b4c;
  border-radius: 6px;
  cursor: crosshair;
  touch-action: none;
  user-select: none;
}
.wave-repair-timeline canvas { width: 100%; height: 100%; display: block; }
.wave-repair-selection, .wave-repair-playhead { position: absolute; top: 0; bottom: 0; pointer-events: none; }
.wave-repair-selection { min-width: 1px; border-left: 1px solid #d4f1b5; border-right: 1px solid #d4f1b5; background: #b4db782d; }
.wave-repair-playhead { width: 1px; background: #ffe9a2; }
.wave-repair-ruler { display: flex; justify-content: space-between; font-variant-numeric: tabular-nums; color: #aabca6; font-size: 10px; }
.wave-repair input.wave-repair-scroll { max-width: none; width: 100%; margin: 0; }
.wave-repair-fields label, .wave-repair-cleanup label, .wave-repair-inline { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; }
.wave-repair-fields output { flex: 1; min-width: 105px; color: #c1d3b9; font-variant-numeric: tabular-nums; }
.wave-repair-cleanup { padding: 9px 10px; border: 1px solid #425340; border-radius: 6px; background: #253328; }
.wave-repair-cleanup .wave-repair-tools { margin: 7px 0; }
.wave-repair-cleanup small { display: block; line-height: 1.45; }
.wave-repair-cleanup input[type='number'], .wave-repair-inline input[type='number'] { width: 64px; }
.wave-repair-footer { justify-content: flex-end; }
.wave-repair button.wave-repair-primary { background: #c6ec99; border-color: #c6ec99; color: #243222; font-weight: 700; }
.wave-repair button.wave-repair-primary:not(:disabled):hover { background: #d9f8b8; }
.wave-repair-status { margin: 0; line-height: 1.45; }
.wave-repair-status:empty { display: none; }
.wave-repair-error { color: #ffd3b0; }
.wave-repair [hidden] { display: none !important; }
