.ai-preparation {
  margin: 1.5rem 0;
  padding: 1.25rem 0;
  border-top: 1px solid #c8d9d2;
  border-bottom: 1px solid #c8d9d2;
}
.ai-preparation-head { display:flex; justify-content:space-between; gap:2rem; align-items:flex-start; }
.ai-preparation-head p { margin:0 0 .3rem; color:#27705b; font-size:.78rem; font-weight:800; letter-spacing:.11em; }
.ai-preparation-head h3 { margin:0 0 .35rem; }
.ai-preparation-head span { color:#60736c; }
.ai-preparation-progress { min-width:5.5rem; text-align:right; color:#155743; }
.ai-preparation-progress strong { display:block; font-size:1.8rem; line-height:1; }
.ai-preparation-progress span { font-size:.8rem; }
.ai-progress-track { height:.5rem; margin:1rem 0; overflow:hidden; border-radius:999px; background:#e2ebe7; }
.ai-progress-track span { display:block; height:100%; background:#27705b; transition:width .2s ease; }
.ai-preparation-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; }
.ai-preparation-actions .inline-action-status { color:#35594e; }
.ai-preparation-actions .inline-action-status.error { color:#a22d35; }
.ai-preparation details { margin-top:1rem; }
.ai-preparation-list { list-style:none; margin:.75rem 0 0; padding:0; display:grid; gap:.4rem; }
.ai-preparation-row { display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:.65rem 0; border-bottom:1px solid #e4ebe8; }
.ai-preparation-row span { display:grid; }
.ai-preparation-row small { color:#60736c; }
.ai-preparation-row.ready strong { color:#27705b; }
.ai-preparation-row.failed small { color:#a22d35; }
@media (max-width:700px) { .ai-preparation-head { gap:1rem; } }
