/* Card nhiệm vụ video cho ExercisePanel, có link Web LMS khi sẵn token. */
function AgentTaskCard({ task, url, copied, onCopy }) {
  const links = task && task.links ? task.links(url) : {};
  return <div style={{ background: "#0d1f33", color: "#fff", borderRadius: 12, padding: "16px", marginBottom: 10 }}>
    {task && <div style={{ background: "rgba(201,154,78,.14)", border: "1px solid rgba(201,154,78,.55)", borderRadius: 10, padding: 12, marginBottom: 12 }}>
      <div style={{ color: "#C99A4E", fontWeight: 800, fontSize: 14 }}>{task.title}</div>
      <div style={{ color: "#e2e8f0", fontSize: 13.5, lineHeight: 1.55 }}>{task.desc}</div>
      {links.journal && <div style={{ display: "flex", gap: 8, flexWrap: "wrap", marginTop: 10 }}>
        <a className="btn btn-outline" style={{ color: "#fff", borderColor: "rgba(255,255,255,.45)" }} href={links.journal} target="_blank" rel="noopener">Xem nhật ký</a>
        {links.sample && <a className="btn btn-outline" style={{ color: "#fff", borderColor: "rgba(255,255,255,.45)" }} href={links.sample} target="_blank" rel="noopener">Tải video mẫu</a>}
      </div>}
    </div>}
    <div style={{ fontSize: 15, marginBottom: 6, fontWeight: 700 }}>Cách làm chỉ 2 bước:</div>
    <div style={{ fontSize: 14, color: "#cbd5e1", marginBottom: 12, lineHeight: 1.7 }}><b style={{ color: "#fff" }}>① Bấm nút dưới</b> để copy link bài học → <b style={{ color: "#fff" }}>② Mở Antigravity, bấm vào ô chat dưới cùng, nhấn <span style={{ background: "#000", padding: "1px 6px", borderRadius: 4 }}>Ctrl+V</span> (Mac: <span style={{ background: "#000", padding: "1px 6px", borderRadius: 4 }}>Cmd+V</span>) rồi Enter</b>. Agent tự dắt bạn làm, xong <b style={{ color: "#C99A4E" }}>tự nộp</b> — bạn không phải gõ gì.</div>
    <button className="btn btn-accent" style={{ width: "100%", fontSize: 16, padding: "13px" }} onClick={onCopy}>{copied ? "✓ Đã copy! Giờ mở Antigravity dán vào (Ctrl/Cmd+V)" : "📋 " + (task ? task.label : "Copy link bài học")}</button>
  </div>;
}

Object.assign(window, { AgentTaskCard });
