/* Outils tab — TVA doc tracking. Reuses dashboard vars:
   --color-text/-label/-hairline/-card/-negative/-positive/-accent, .card, .btn, .tabular */

.tools-toolbar {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.tools-toolbar select {
  font: inherit;
  padding: 6px 10px;
  border: 1px solid var(--color-hairline);
  border-radius: 8px;
  background: var(--color-card);
  color: var(--color-text);
}
.tools-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 22px;
}
.tools-stat {
  padding: 14px 16px;
  border: 1px solid var(--color-hairline);
  border-radius: 12px;
  background: var(--color-card);
}
.tools-stat__label {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-label);
  margin-bottom: 4px;
}
.tools-stat__value { font-size: 1.45rem; font-weight: 600; color: var(--color-text); }
.tools-stat__sub { font-size: 0.8rem; color: var(--color-label); }
.tools-stat--missing .tools-stat__value { color: var(--color-negative); }
.tools-stat--sent .tools-stat__value { color: var(--color-positive); }

.tools-section-title { margin: 10px 0 12px; }

.tools-group {
  border: 1px solid var(--color-hairline);
  border-radius: 12px;
  background: var(--color-card);
  margin-bottom: 14px;
  overflow: hidden;
}
.tools-group__head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--color-hairline);
}
.tools-group__vendor { font-weight: 600; color: var(--color-text); }
.tools-group__amt { margin-left: auto; color: var(--color-negative); font-weight: 600; }
.tools-portal-link { font-size: 0.8rem; color: var(--color-accent); text-decoration: none; white-space: nowrap; }
.tools-portal-link:hover { text-decoration: underline; }

.tools-row {
  display: grid;
  grid-template-columns: 92px 1fr 90px auto;
  gap: 10px;
  align-items: center;
  padding: 8px 14px;
  border-bottom: 1px solid var(--color-hairline);
  font-size: 0.88rem;
}
.tools-row:last-child { border-bottom: none; }
.tools-row__date { color: var(--color-label); }
.tools-row__desc { color: var(--color-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tools-row__amt { text-align: right; }
.tools-row__actions { display: flex; gap: 6px; justify-content: flex-end; }
.tools-row--done { opacity: 0.75; }

.btn--xs { padding: 3px 9px; font-size: 0.75rem; }

.tools-badge {
  display: inline-block;
  font-size: 0.65rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 1px 7px;
  border-radius: 999px;
  border: 1px solid var(--color-hairline);
  color: var(--color-label);
  margin-left: 6px;
  vertical-align: middle;
}
.tools-badge--auto { color: var(--color-positive); border-color: var(--color-positive); }

.tools-done {
  margin: 14px 0;
  border: 1px solid var(--color-hairline);
  border-radius: 12px;
  background: var(--color-card);
  padding: 0;
}
.tools-done > summary {
  cursor: pointer;
  padding: 10px 14px;
  font-size: 0.88rem;
  color: var(--color-label);
  user-select: none;
}
.tools-done[open] > summary { border-bottom: 1px solid var(--color-hairline); }

.tools-empty { padding: 26px; text-align: center; color: var(--color-label); }
.tools-empty--ok { font-size: 1rem; }

@media (max-width: 640px) {
  .tools-row { grid-template-columns: 76px 1fr; }
  .tools-row__amt, .tools-row__actions { grid-column: 2; justify-self: end; }
}
