/* ============================================
   NELYSIO IA — Analyse journal + Radar d'alertes
   Aligné design system editorial / joy hues.
   ============================================ */

/* ---- Bouton "Analyser" dans une entrée de journal ---- */
.jx-tool.ai-analyze { color: var(--joy-plum-ink, #7A5C8E); }
.jx-tool.ai-analyze:hover { background: var(--joy-plum-tint, #F1EAF6); }

/* ---- Panneau d'analyse (dans la modale) ---- */
.ai-panel-head h2 { display: flex; align-items: center; gap: 8px; }
.ai-panel-body { padding: var(--space-4, 18px); max-height: 72vh; overflow-y: auto; }

.ai-panel-loading, .ai-empty {
  display: flex; flex-direction: column; align-items: center; gap: 12px;
  padding: 40px 16px; text-align: center; color: var(--color-text-muted, #7A6E63);
}
.ai-panel-loading { flex-direction: row; justify-content: center; }
.ai-empty-title { font-weight: 600; color: var(--color-text, #2C2420); margin: 0; }
.ai-empty-hint { font-size: 13px; margin: 0; max-width: 380px; }

.ai-spinner {
  width: 18px; height: 18px; border-radius: 50%;
  border: 2px solid var(--joy-plum-tint, #E9DEF2);
  border-top-color: var(--joy-plum-ink, #7A5C8E);
  animation: ai-spin .7s linear infinite;
}
@keyframes ai-spin { to { transform: rotate(360deg); } }

.ai-summary {
  background: var(--joy-plum-tint, #F4EEFA); border-radius: 10px;
  padding: 14px 16px; margin-bottom: 18px;
}
.ai-summary p { margin: 0 0 8px; color: var(--color-text, #2C2420); line-height: 1.55; }

.ai-sec { margin-bottom: 16px; }
.ai-sec-title {
  font-size: 12px; text-transform: uppercase; letter-spacing: .06em;
  color: var(--color-text-muted, #7A6E63); margin: 0 0 8px; font-weight: 700;
}
.ai-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.ai-list li { line-height: 1.5; color: var(--color-text, #2C2420); font-size: 14px; }
.ai-muted { color: var(--color-text-muted, #9A8F84); font-size: 13px; margin: 0; }
.ai-role { font-size: 11px; color: var(--color-text-muted, #9A8F84); font-style: italic; margin-left: 4px; }

.ai-confirm-badge {
  display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; padding: 1px 6px; border-radius: 999px;
  background: var(--joy-gold-tint, #FBF0D8); color: var(--joy-gold-ink, #9A7B34);
}

/* Suggestions de tâches */
.ai-tasks li.ai-task {
  display: flex; justify-content: space-between; align-items: center; gap: 10px;
  padding: 8px 10px; border: 1px solid var(--color-border, #E8E0D6); border-radius: 8px;
  flex-wrap: wrap;
}
.ai-task-main { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.ai-task-title { font-weight: 600; }
.ai-task-meta { font-size: 12px; color: var(--color-text-muted, #9A8F84); }
.ai-task-btns { display: flex; gap: 6px; }
.ai-dismissed { opacity: .5; }

/* Mini-boutons */
.ai-mini {
  border: 1px solid var(--color-border, #DDD3C7); background: var(--color-surface, #fff);
  color: var(--color-text, #2C2420); font-size: 12px; padding: 3px 9px; border-radius: 6px;
  cursor: pointer; transition: background .15s, border-color .15s;
}
.ai-mini:hover { background: var(--color-bg, #F6F1EA); }
.ai-mini-primary { background: var(--joy-sage-ink, #5E7A5C); color: #fff; border-color: transparent; }
.ai-mini-primary:hover { filter: brightness(1.06); }

/* Gravités (pastilles) */
.ai-sev { display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; padding: 1px 7px; border-radius: 999px; }
.ai-sev-critical { background: var(--joy-rose-tint, #FBE3E0); color: var(--joy-rose-ink, #B4665C); }
.ai-sev-high     { background: var(--joy-apricot-tint, #FCE9D8); color: var(--joy-apricot-ink, #B67A46); }
.ai-sev-medium   { background: var(--joy-gold-tint, #FBF0D8); color: var(--joy-gold-ink, #9A7B34); }
.ai-sev-low      { background: var(--joy-sage-tint, #E7EFE4); color: var(--joy-sage-ink, #5E7A5C); }

.ai-disclaimer { font-size: 12px; color: var(--color-text-muted, #9A8F84); margin: 18px 0 10px; }
.ai-model { opacity: .7; font-style: italic; }
.ai-panel-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 8px; }

/* ============================================
   RADAR — bloc du cockpit Rétroplanning
   ============================================ */
.radar { margin: 4px 0 18px; }
.radar-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; flex-wrap: wrap; }
.radar-title { display: flex; align-items: center; gap: 8px; font-size: 15px; margin: 0; color: var(--color-text, #2C2420); }
.radar-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.radar-chip { font-size: 11px; font-weight: 700; padding: 2px 9px; border-radius: 999px; }
.radar-chip-critical { background: var(--joy-rose-tint, #FBE3E0); color: var(--joy-rose-ink, #B4665C); }
.radar-chip-high     { background: var(--joy-apricot-tint, #FCE9D8); color: var(--joy-apricot-ink, #B67A46); }
.radar-chip-medium   { background: var(--joy-gold-tint, #FBF0D8); color: var(--joy-gold-ink, #9A7B34); }
.radar-chip-low      { background: var(--joy-sage-tint, #E7EFE4); color: var(--joy-sage-ink, #5E7A5C); }

.radar-list { display: flex; flex-direction: column; gap: 8px; }
.radar-card {
  display: flex; gap: 0; background: var(--color-surface, #fff);
  border: 1px solid var(--color-border, #EAE2D8); border-radius: 10px; overflow: hidden;
}
.radar-card-bar { width: 4px; flex-shrink: 0; background: var(--joy-gold-ink, #9A7B34); }
.radar-sev-critical .radar-card-bar { background: var(--joy-rose-ink, #B4665C); }
.radar-sev-high .radar-card-bar { background: var(--joy-apricot-ink, #B67A46); }
.radar-sev-medium .radar-card-bar { background: var(--joy-gold-ink, #9A7B34); }
.radar-sev-low .radar-card-bar { background: var(--joy-sage-ink, #5E7A5C); }
.radar-card.is-done { opacity: .55; }

.radar-card-body { padding: 10px 14px; flex: 1; }
.radar-card-top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.radar-card-title { font-weight: 600; color: var(--color-text, #2C2420); }
.radar-status { font-size: 11px; color: var(--color-text-muted, #9A8F84); font-style: italic; }
.radar-card-exp { margin: 5px 0 2px; font-size: 13px; line-height: 1.5; color: var(--color-text, #453C34); }
.radar-card-action { margin: 2px 0 6px; font-size: 13px; color: var(--color-text-muted, #7A6E63); }
.radar-card-btns { display: flex; gap: 6px; flex-wrap: wrap; }

.radar-empty {
  display: flex; align-items: center; gap: 10px; padding: 14px 16px;
  background: var(--joy-sage-tint, #EDF2EA); border-radius: 10px;
  color: var(--joy-sage-ink, #5E7A5C); font-size: 14px;
}
.radar-archive { margin-top: 10px; }
.radar-archive summary { cursor: pointer; font-size: 13px; color: var(--color-text-muted, #7A6E63); padding: 4px 0; }
