/* Écran du dossier : en-tête complet et montants (folder-panel.js), envoi massif de DTR (folder-dtr.js).
   Couleurs : palette --pl-* de planning.css. */
.fp {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 14px;
  margin: 0 0 12px;
  color: var(--pl-text);
}
.fp-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: end;
  padding: 14px;
  border: 1px solid var(--pl-line);
  border-radius: 12px;
  background: var(--pl-surface);
}
.fp-fields label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--pl-text-2);
}
.fp-fields :is(input, select, textarea) {
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid var(--pl-line);
  border-radius: 8px;
  background: var(--pl-surface);
  color: var(--pl-text);
  font: inherit;
  font-weight: 400;
}
.fp-fields textarea {
  resize: vertical;
}
.fp-fields .fp-wide {
  grid-column: 1 / -1;
}
.fp-created {
  margin: 0 0 10px;
  font-size: 12.5px;
  color: var(--pl-text-2);
}
.fp-msg {
  grid-column: 1 / -1;
  margin: 0;
  min-height: 16px;
  font-size: 12.5px;
  color: var(--pl-text-2);
}
.fp-msg.is-err {
  color: var(--pl-danger);
}
.fp-money {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 14px;
  border-radius: 12px;
  background: var(--pl-ink);
  color: var(--pl-on-ink);
}
.fp-m {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 5px 0;
  font-size: 13.5px;
}
.fp-m span {
  color: var(--pl-on-ink-muted);
}
.fp-m.is-due b {
  color: var(--pl-gold);
}
.fp-m.is-total {
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px solid var(--pl-on-ink-muted);
  font-size: 16px;
}
.fp-m.is-total span {
  color: var(--pl-on-ink);
  font-weight: 700;
}
@media (max-width: 860px) {
  .fp,
  .fp-fields {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* Envoi massif de DTR */
.ft-form.dtr {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.dtr-line {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) 190px;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--pl-line);
  border-radius: 10px;
  background: var(--pl-surface);
}
.dtr-line.is-off {
  opacity: 0.6;
}
.dtr-ref {
  display: flex;
  flex-direction: column;
  font-size: 13px;
}
.dtr-ref span,
.dtr-price span {
  color: var(--pl-text-2);
  font-size: 12.5px;
}
.dtr-route {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 13px;
}
.dtr-pt.is-missing {
  display: flex;
  flex-direction: column;
  gap: 3px;
  color: var(--pl-warn-fg);
  font-size: 12px;
}
.dtr-pt input,
.dtr-price input {
  min-height: 38px;
  padding: 6px 8px;
  border: 1px solid var(--pl-line);
  border-radius: 8px;
  font: inherit;
}
.dtr-arrow {
  color: var(--pl-text-2);
}
.dtr-price {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.dtr-price label {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 12.5px;
  font-weight: 600;
}
.dtr-why {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--pl-warn-fg);
  font-size: 12.5px;
}
.ft-file {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 12.5px;
  font-weight: 600;
}
@media (max-width: 860px) {
  .dtr-line {
    grid-template-columns: minmax(0, 1fr);
  }
}
