/* DỰ ÁN — TỔNG QUAN: Đội (nhóm theo trạng thái, mỗi dự án một dòng) · Trên máy (repo). Rộng ⇒ hai cột. */
.tong-quan-da { display: grid; gap: 4px 22px; align-items: start; }
@media (min-width: 1000px) { .tong-quan-da { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); } }
.khu-da { min-width: 0; container-type: inline-size; }
.nut-cai-dat { margin-left: 6px; min-height: 36px; padding: 6px 12px; font-size: 13px; font-weight: 600; }
.nut-cai-dat .bieu-tuong { width: 16px; height: 16px; color: var(--mist-300); }
.ranh { margin: 0 0 6px; }
.cot-gui { display: flex; flex-direction: column; gap: 8px; align-self: flex-end; flex: 0 1 180px; min-width: 0; }
.cot-gui select, .cot-gui input {
  min-height: 40px; max-width: 100%; padding: 6px 10px; border-radius: 12px; border: 1px solid var(--vien);
  background: var(--ink-850); color: var(--mist-100); font: inherit; font-size: 14px;
}
.cot-gui input[hidden] { display: none; }
.cot-gui .nut { width: 100%; }
@media (max-width: 600px) { .cot-gui { flex-basis: 100%; } }

.nhom-da { margin-bottom: 10px; }
.dau-nhom { display: flex; align-items: center; gap: 8px; min-height: 32px; min-width: 0; }
.dau-nhom h3 { font-size: 13px; font-weight: 700; color: var(--mist-100); }
.dau-nhom .dem { font-size: 12px; color: var(--mist-500); font-variant-numeric: tabular-nums; }
details.nhom-da > summary { cursor: pointer; list-style: none; }
details.nhom-da > summary::-webkit-details-marker, .dong-da > summary::-webkit-details-marker { display: none; }
details.nhom-da > summary:hover { filter: brightness(1.2); }
details.nhom-da > summary h3 { color: var(--mist-300); }
.tt-nhom { display: inline-grid; place-items: center; width: 22px; height: 22px; flex: none; color: var(--mist-500); }
.tt-nhom .bieu-tuong { width: 16px; height: 16px; }
.tt-nhom.cho { color: var(--warn); } .tt-nhom.dang { color: var(--signal-strong); } .tt-nhom.song { color: var(--ok); }

.ds-da, .ds-repo { list-style: none; margin: 0; padding: 0; display: grid; }
.dong-da > summary {
  display: grid; align-items: center; gap: 4px 12px; min-height: 44px; padding: 6px 4px; border-top: 1px solid var(--vien);
  cursor: pointer; list-style: none;
  grid-template-columns: minmax(0, 1fr) minmax(56px, 96px); grid-template-areas: "ten pt" "buoc thanh";
}
@container (min-width: 560px) {
  .dong-da > summary { grid-template-columns: minmax(0, 1fr) minmax(0, 190px) 110px 40px; grid-template-areas: "ten buoc thanh pt"; }
}
.dong-da > summary:hover { filter: brightness(1.2); }
.dong-da[open] > summary .ten-da b { color: var(--signal-strong); }
.ten-da { grid-area: ten; display: flex; align-items: center; gap: 7px; min-width: 0; }
.chip-moi {
  flex: none; padding: 1px 7px; border-radius: 999px; font-size: 11px; font-weight: 700; line-height: 1.5;
  color: var(--signal-strong); background: rgba(124, 196, 214, .12); border: 1px solid rgba(124, 196, 214, .35);
}
.pt-da { grid-area: pt; text-align: right; font-size: 12.5px; color: var(--mist-100); }
.buoc-da { grid-area: buoc; font-size: 12.5px; }
.dong-da .tien-do-thanh { grid-area: thanh; }
.chi-tiet-da { display: grid; gap: 10px; padding: 4px 4px 14px; }
.chi-tiet-da p { margin: 0; font-size: 13.5px; line-height: 1.5; white-space: pre-line; overflow-wrap: anywhere; }
.ds-buoc-ke-hoach { margin: 0; padding-left: 20px; color: var(--mist-300); font-size: 13px; display: grid; gap: 3px; overflow-wrap: anywhere; }

.tien-do-thanh { height: 6px; border-radius: 6px; background: var(--ink-700); overflow: hidden; min-width: 0; }
.tien-do-thanh i { display: block; height: 100%; border-radius: 6px; background: linear-gradient(90deg, var(--signal), var(--ok)); transition: width .6s cubic-bezier(.2, .8, .2, 1); }
.chuoi-buoc { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 3px; align-items: center; }
.chuoi-buoc i { height: 6px; border-radius: 4px; background: var(--ink-600); }
.chuoi-buoc i.xong { background: var(--ok); opacity: .75; }
.chuoi-buoc i.nay { background: var(--signal); box-shadow: 0 0 0 3px rgba(124, 196, 214, .22); }

.dong-repo {
  display: grid; grid-template-columns: 9px minmax(0, max-content) minmax(0, 1fr); gap: 10px; align-items: center;
  min-height: 38px; padding: 4px; border-top: 1px solid var(--vien);
}
.dong-repo .mo { font-size: 12.5px; text-align: right; }

/* CÀI ĐẶT DỰ ÁN: thư mục agent được làm · tạo dự án mới · lệnh gần đây */
.cai-dat { display: grid; gap: 14px; max-width: 720px; margin: 0 auto; }
.cai-dat .the .muc { margin-top: 2px; }
.cai-dat .bao-loi:empty { display: none; }
.ds-thu-muc { list-style: none; margin: 0 0 6px; padding: 0; display: grid; }
.dong-thu-muc { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 10px; align-items: center; min-height: 46px; padding: 4px 0; border-top: 1px solid var(--vien); }
.dong-thu-muc > .bieu-tuong { width: 18px; height: 18px; color: var(--ok); }
.dong-thu-muc .nut { min-height: 38px; padding: 6px 12px; font-size: 13px; }
.duong-tm { font-family: ui-monospace, Consolas, monospace; font-size: 13px; }
.hai-o { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); }
.hai-o > div { display: grid; gap: 10px; align-content: start; min-width: 0; }
.hai-o-dong { display: grid; gap: 8px; margin-top: 8px; }
.mo-form { justify-self: start; }
.mo-form .bieu-tuong { width: 16px; height: 16px; }
