/* 자동 정리(Autopilot) — LLM 세션 화면의 정리 결과 카드 */

.ap-card {
  max-width: 900px;
  width: 100%;
  box-sizing: border-box;
  background: var(--bg-elev);
  border: 1px solid color-mix(in srgb, var(--purple) 34%, var(--line));
  border-left: 3px solid var(--purple);
  border-radius: var(--radius-sm);
  padding: 10px 14px;
  font-size: 12.5px;
  line-height: 1.55;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ap-card svg { width: 14px; height: 14px; flex: none; color: var(--purple); }
.ap-card b { font-size: 12px; font-weight: 650; color: var(--purple); letter-spacing: -.1px; }

/* 헤드 (아이콘 · 라벨 · 요약 · 되돌리기) */
.ap-card > .ap-head,
.ap-card.pending,
.ap-card.err { display: flex; flex-direction: row; align-items: center; gap: 8px; flex-wrap: wrap; }
.ap-sum { flex: 1 1 200px; min-width: 0; color: var(--text); overflow-wrap: anywhere; }
.ap-head .btn { flex: none; }

.ap-counts { color: var(--text-2); font-size: 11.5px; }
.ap-counts b { color: var(--text); font-size: 11.5px; }

/* 작업 목록 */
.ap-lists { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 2px; }
.ap-group { min-width: 200px; flex: 1 1 240px; }
.ap-gt { display: block; font-size: 10.5px; font-weight: 650; color: var(--text-3); text-transform: none; margin-bottom: 3px; }
.ap-group ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.ap-group li {
  display: flex; align-items: baseline; gap: 7px;
  padding: 3px 6px; border-radius: var(--radius-xs);
  cursor: pointer; color: var(--text-2); overflow-wrap: anywhere;
}
.ap-group li:hover { background: var(--bg-hover); color: var(--text); }
.ap-group li.gone { cursor: default; color: var(--text-4); text-decoration: line-through; }
.ap-group li.gone:hover { background: none; }
.ap-group li em { font-style: normal; font-size: 10.5px; color: var(--text-4); }
.ap-dot { width: 6px; height: 6px; border-radius: 50%; flex: none; background: var(--text-4); transform: translateY(-1px); }
.ap-dot.closed, .ap-dot.done { background: var(--green); }
.ap-dot.todo { background: var(--blue); }

/* 되돌린 상태 */
.ap-card.undone { opacity: .62; border-left-color: var(--text-4); border-color: var(--line); }
.ap-card.undone b, .ap-card.undone svg { color: var(--text-3); }
.ap-card.undone .ap-group li { cursor: default; text-decoration: line-through; }
.ap-undone-tag { font-size: 10.5px; font-weight: 600; padding: 2px 8px; border-radius: 999px; background: var(--bg-active); color: var(--text-3); flex: none; }

/* 진행 중 · 실패 */
.ap-card.pending { border-style: dashed; background: color-mix(in srgb, var(--purple) 5%, var(--bg-elev)); }
.ap-card.pending .ap-sum { color: var(--text-2); }
.ap-card.err { border-color: color-mix(in srgb, var(--red) 34%, var(--line)); border-left-color: var(--red); background: var(--red-tint); }
.ap-card.err b, .ap-card.err svg { color: var(--red); }
.ap-card.err .ap-sum { color: var(--red); }

@media (max-width: 720px) {
  .ap-card { padding: 9px 11px; font-size: 12px; }
  .ap-head .ap-sum { flex-basis: 100%; }
  .ap-lists { gap: 8px; }
  .ap-group { flex-basis: 100%; }
}
