:root{--ink:#173d36;--muted:#66766e;--paper:#f6f7f3;--card:#fff;--line:#dce3db;--accent:#b9df8b;--soft:#eef3e9;--warning:#895a13;--red:#9b3535;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}.workspace{max-width:1240px;margin:auto;padding:38px 32px 28px}header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.back{font-size:13px;color:var(--muted);text-decoration:none}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.16em;margin:30px 0 10px}h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.045em;margin:0;font-weight:650}h2{font-size:21px;letter-spacing:-.02em;margin:0}h3{font-size:17px;margin:0 0 8px}.intro{font-size:15px;color:var(--muted);line-height:1.6;max-width:640px}.brand{font-size:20px;font-weight:750;margin-top:5px}.brand span{color:#738f48}.toolbar{margin:26px 0;display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.toolbar label{min-width:260px;margin:0}.toolbar .muted{padding-bottom:10px;margin-left:auto}label{display:block;font-size:12px;font-weight:650;margin:20px 0 8px}select,input,textarea{display:block;width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;color:var(--ink);background:#fff;font:inherit;font-size:14px;margin-top:7px}textarea{line-height:1.65;resize:vertical}button{border:1px solid transparent;background:var(--ink);color:#fff;border-radius:9px;padding:11px 15px;font:inherit;font-size:13px;font-weight:650;cursor:pointer}button.secondary{background:var(--card);color:var(--ink);border-color:var(--line)}button.quiet{background:transparent;color:var(--muted);padding:7px}button:disabled{opacity:.45;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.94)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #96bf73;outline-offset:3px}.muted{color:var(--muted);font-size:12px;line-height:1.55}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:26px 0}.metric{padding:21px;border-radius:13px;background:var(--card);border:1px solid var(--line)}.metric strong{display:block;font-size:25px;line-height:1.2;font-weight:650;letter-spacing:-.03em;margin:9px 0}.metric:first-child{background:var(--ink);color:#fff}.metric:first-child .muted{color:#d2e5da}.metric small{font-size:11px}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:32px 0 25px;overflow-x:auto}.tabs button{color:var(--muted);background:transparent;border-radius:0;padding:14px 16px;white-space:nowrap;border-bottom:3px solid transparent}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:22px;min-width:0}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.badge{display:inline-block;border-radius:20px;background:var(--soft);padding:5px 9px;font-size:11px;white-space:nowrap}.badge.warning{background:#fff1d7;color:var(--warning)}.badge.danger{background:#fbe9e9;color:var(--red)}.badge.green{background:#e3f2d7;color:#365d26}.steps{margin:18px 0;padding-left:22px;color:var(--muted);font-size:13px;line-height:1.9}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px}.notice{padding:13px 16px;background:#fff1d7;color:#77511d;border:1px solid #efddb9;border-radius:9px;font-size:13px;line-height:1.6}.notice.success{background:#e9f4e0;color:#375c29;border-color:#c5dcb4}.empty{padding:40px 22px;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:12px;text-align:center;line-height:1.7}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:11px;color:var(--muted);font-weight:650;background:#fafbf8}tr:last-child td{border:0}td.email{white-space:nowrap}.proof{font-size:12px;word-break:break-word;color:var(--muted)}.schedule{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.schedule input{width:auto;margin:0}.step-row{display:flex;align-items:center;gap:10px;margin:12px 0;padding:12px;background:var(--soft);border-radius:9px}.step-row select,.step-row input{margin:0}.step-row input{width:85px}.step-row .step-kind{min-width:60px;font-size:12px}.step-doc{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}.step-doc input{width:auto;margin:0;flex:none}.step-doc:has(input:disabled){opacity:.45;cursor:not-allowed}footer{font-size:11px;color:var(--muted);line-height:1.6;margin:32px 0 0;max-width:820px}dialog{border:1px solid var(--line);border-radius:16px;padding:25px;width:min(720px,calc(100vw - 28px));max-height:90vh;color:var(--ink);box-shadow:0 20px 90px #163c3633}dialog::backdrop{background:#163c3677}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.preview-dialog{width:min(780px,calc(100vw - 28px))}iframe{width:100%;height:68vh;border:1px solid var(--line);border-radius:9px;margin-top:20px;background:#fff}[hidden]{display:none!important}@media(max-width:720px){.workspace{padding:22px 16px}.brand{font-size:15px}.eyebrow{margin-top:24px}.summary{grid-template-columns:repeat(2,1fr);gap:9px}.metric{padding:15px}.metric strong{font-size:21px}.cards{grid-template-columns:1fr}.toolbar label{min-width:0;flex:1}.toolbar .muted{width:100%;padding:0;margin:0}.card{padding:18px}.tabs{margin-top:24px}.tabs button{padding:12px}.card-top{gap:8px}.badge{white-space:normal;text-align:center}.section-heading{align-items:flex-start}.step-row{flex-wrap:wrap}dialog{padding:18px}}

.corrections{margin-bottom:32px}.proof{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font-size:12px}details{margin-top:16px}.table-wrap{margin-bottom:26px}

/* L'editeur d'etapes porte desormais plusieurs documents, chacun avec ses actions :
   la ligne debordait du cadre et sortait de la fenetre (constate le 2026-10-28).
   Elle passe a la ligne en toute largeur, et la fenetre s'elargit. */
#workflowDialog{width:min(980px,calc(100vw - 28px))}
.step-row{flex-wrap:wrap;row-gap:8px}
.step-row .step-doc{padding:5px 9px;background:#fff;border:1px solid var(--line);border-radius:7px}
.step-row .step-doc:has(input:checked){border-color:#8fb86a;background:#f2f8ec}
.step-row > span.muted{font-size:11px;margin-left:-4px}
.step-row > label.quiet{font-size:12px;font-weight:650;color:var(--muted);cursor:pointer;margin:0}
.step-row > button.quiet{padding:5px 7px}

/* Workflow editor: keep each duration and document with its own actions. */
#workflowDialog { padding: 24px; }
#workflowDialog .step-row--wait,
#workflowDialog .step-row--email {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 12px 16px;
  align-items: center;
  margin: 16px 0;
  padding: 16px;
}
#workflowDialog .step-row--wait { grid-template-columns: 64px minmax(0,300px) minmax(0,1fr) auto; }
#workflowDialog .step-kind { margin: 0; }
#workflowDialog .step-remove { grid-column: -2 / -1; grid-row: 1; min-width: 36px; min-height: 36px; }
#workflowDialog .step-delay-controls {
  display: grid;
  grid-template-columns: 100px minmax(0,160px);
  gap: 10px;
  align-items: center;
  min-width: 0;
}
#workflowDialog .step-delay-controls input,
#workflowDialog .step-delay-controls select { width: 100%; min-width: 0; min-height: 44px; margin: 0; }
#workflowDialog [data-step-template] { grid-column: 1 / -1; min-width: 0; margin: 0; }
#workflowDialog .step-documents { display: grid; grid-column: 1 / -1; gap: 12px; min-width: 0; }
#workflowDialog .step-document {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px 16px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
}
#workflowDialog .step-document:has([data-step-doc]:checked) { border-color: #8fb86a; background: #f2f8ec; }
#workflowDialog .step-document .step-doc {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  white-space: normal;
  line-height: 1.5;
}
#workflowDialog .step-doc-name { min-width: 0; overflow-wrap: anywhere; }
#workflowDialog .step-document-actions { display: flex; align-items: center; gap: 8px; justify-self: end; }
#workflowDialog .step-document-actions .quiet { margin: 0; padding: 7px 8px; white-space: nowrap; }
#workflowDialog .step-doc-replace { font-size: 12px; font-weight: 650; color: var(--muted); cursor: pointer; }
#workflowDialog .step-document-note { grid-column: 1 / -1; margin: 0; font-size: 13px; line-height: 1.45; }
#workflowDialog .actions { margin-top: 16px; gap: 12px; }
@media(max-width:620px) {
  #workflowDialog { padding: 16px; }
  #workflowDialog .step-row--wait,
  #workflowDialog .step-row--email { grid-template-columns: minmax(0,1fr) auto; padding: 16px; gap: 12px; }
  #workflowDialog .step-delay-controls { grid-column: 1 / -1; grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); }
  #workflowDialog .step-document { grid-template-columns: minmax(0,1fr); padding: 12px; gap: 8px; }
  #workflowDialog .step-document-actions { justify-self: start; }
}

.step-template--vide{border-color:#c9780a;color:#c9780a}
