/* Trang Vấn đề theo khung mới (public/issues-v2.js, ảnh GD-4 duyệt 11/10/2026). Chỉ viết màu sáng: giao diện tối là bộ lọc đảo màu cả trang. */
html.iv2 #cde .iv-content{padding:18px 24px;display:flex;flex-direction:column;gap:12px}
.i2-head{display:flex;align-items:center;gap:10px;min-width:0}.i2-title{flex:none}.i2-title small{display:block;color:#667085;font-size:12.5px;line-height:1.2}.i2-title h1{margin:1px 0 0;font-size:22px;font-weight:700;letter-spacing:-.3px;line-height:1.2;white-space:nowrap}
.i2-sp{flex:1}.i2-find{display:flex;min-width:0}html.iv2 #cde .i2-find .cde-search{width:240px;max-width:26vw;margin:0}
.i2-sel{height:38px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;color:#18222f;font:500 13.5px inherit;font-family:inherit;padding:0 10px;max-width:170px}
.i2-more{height:38px;min-width:40px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;color:#18222f;font-weight:700;letter-spacing:1px;cursor:pointer}.i2-more[aria-expanded=true]{background:#eaf2ff;border-color:#cfe0fb;color:#0b63e5}
html.iv2 #cde .i2-acts-slot .cde-heading-actions{display:flex;align-items:center;gap:8px;margin:0;padding:0;position:static}
html.iv2:not(.iv2-tools) #cde .i2-acts-slot .iv-refresh,html.iv2:not(.iv2-tools) #cde .i2-acts-slot .iv-report{display:none}
.i2-bar{display:flex;align-items:stretch;background:#fff;border:1px solid #e4e7ec;border-radius:12px;overflow:hidden}
.i2-step{flex:1;display:flex;align-items:center;gap:11px;padding:10px 16px;border:0;border-right:1px solid #e4e7ec;border-radius:0;background:#fff;color:#475467;text-align:left;font:inherit;cursor:pointer;position:relative;min-width:0}
.i2-step:last-child{border-right:0}.i2-step.i2-done{flex:.8;background:#fafbfc}.i2-step:hover{background:#f6f8fb}
.i2-n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:13px;background:#eef0f3;color:#475467;flex:none}
.i2-t{min-width:0;display:block}.i2-t b{display:block;font-size:14px;color:#18222f;font-weight:600;white-space:nowrap}.i2-t small{display:block;font-size:12px;color:#667085;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.i2-c{margin-left:auto;font-weight:600;font-size:15px;color:#18222f;font-variant-numeric:tabular-nums}
.i2-step.on{background:#eaf2ff}.i2-step.on .i2-n{background:#0b63e5;color:#fff}.i2-step.on .i2-t b,.i2-step.on .i2-c{color:#0b63e5}.i2-step.on::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#0b63e5}
.i2-step:focus-visible{outline:2px solid #0b63e5;outline-offset:-2px}
.i2-arr{position:absolute;right:-9px;top:50%;width:16px;height:16px;margin-top:-8px;background:#fff;border:1px solid #e4e7ec;border-radius:50%;z-index:2;display:grid;place-items:center;color:#98a2b3;font-size:11px;line-height:1}
.i2-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.i2-chips small{color:#667085;font-size:12.5px}
.i2-chip{height:34px;padding:0 12px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;color:#18222f;font:500 13.5px inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.i2-chip.late{color:#c0362c}.i2-chip.on{background:#eaf2ff;border-color:#cfe0fb;color:#0b63e5}
/* hàng công cụ cũ + cột lọc trái: cất sau «⋯» */
html.iv2 #cde .iv-tabs{display:none}
html.iv2:not(.iv2-tools) #cde .iv-views,html.iv2:not(.iv2-tools) #cde .iv-bar,html.iv2:not(.iv2-tools) #cde .iv-side-wrap{display:none}
html.iv2.iv2-tools #cde .iv-tabs{display:flex;padding:0}html.iv2.iv2-tools #cde .iv-tabs>button:not(.iv-trash),html.iv2.iv2-tools #cde .iv-tabs>.iv-stats{display:none}
html.iv2:not(.iv2-tools) #cde .iv-body{grid-template-columns:minmax(0,1fr)}
html.iv2 #cde .iv-views,html.iv2 #cde .iv-bar{padding-left:0;padding-right:0}
html.iv2 #cde .iv-top-phases{display:none!important} /* hàng nút giai đoạn cũ trên thanh đầu: không còn hiện — giai đoạn là thẻ trên thanh đầu của khung mới, hoặc thẻ trong trang ở «Mọi vấn đề» */
/* bảng gọn */
html.iv2 #cde .iv-main{background:#fff;border:1px solid #e4e7ec;border-radius:12px;overflow:hidden}
html.iv2:not(.iv2-tools) #cde .issue-table .i2-off{display:none}
html.iv2 #cde .issue-table thead th{text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:600;color:#667085;background:#fff}
html.iv2 #cde .issue-table tr[data-issue]{cursor:pointer}html.iv2 #cde .issue-table tr.i2-sel>td{background:#eaf2ff}
html.iv2 #cde .issue-table .cde-title-link{font-weight:600;font-size:14px}
/* khung chi tiết */
html.iv2-detail #cde .iv-main{margin-right:348px}
.i2-detail{position:fixed;right:24px;top:var(--i2-top,250px);width:332px;max-height:calc(100vh - var(--i2-top,250px) - 24px);overflow:auto;z-index:5;background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:16px;display:grid;gap:12px;align-content:start;font-size:13px;color:#18222f}
.i2-detail header{display:flex;gap:8px;align-items:flex-start}.i2-detail header>div{flex:1;min-width:0}.i2-detail header small{color:#667085;font-size:12px}.i2-detail h2{font-size:16px;margin:2px 0 0;line-height:1.3;letter-spacing:-.1px}
.i2-x{border:0;background:none;color:#667085;font-size:15px;padding:2px 6px;cursor:pointer}
.i2-doc{margin:0;background:#f5f6f8;border-radius:8px;padding:8px 10px;color:#475467;font-size:12.5px}
.i2-lbl{font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:#667085;margin-bottom:10px}
.i2-st{display:grid;grid-template-columns:24px 1fr;gap:0 10px;padding-bottom:12px;position:relative}.i2-st:last-child{padding-bottom:0}
.i2-st i{align-self:start;width:20px;height:20px;border-radius:50%;border:2px solid #cdd3dc;background:#fff;display:grid;place-items:center;font:700 11px inherit;font-style:normal;color:#fff;z-index:1;margin-top:1px}
.i2-st.done i{background:#12805c;border-color:#12805c}.i2-st.cur i{border-color:#0b63e5;box-shadow:0 0 0 4px #eaf2ff}.i2-st.cur i::after{content:"";width:8px;height:8px;border-radius:50%;background:#0b63e5}
.i2-st:not(:last-child)::before{content:"";position:absolute;left:9px;top:20px;bottom:0;width:2px;background:#e4e7ec}.i2-st.done::before{background:#12805c}
.i2-st b{font-size:13.5px;font-weight:600}.i2-st small{display:block;color:#667085;font-size:12px;line-height:1.4}.i2-st.next b{color:#98a2b3}.i2-st em{font-style:normal;font-weight:600;color:#c0362c}
.i2-acts{display:flex;gap:8px}.i2-acts button{height:34px;padding:0 13px;border-radius:8px;border:1px solid #d5dbe3;background:#fff;color:#18222f;font:500 13px inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.i2-acts .i2-pri{flex:1;background:#0b63e5;border-color:#0b63e5;color:#fff;font-weight:600}.i2-acts .i2-pri:hover{background:#0753bc}
.i2-dl{display:grid;grid-template-columns:104px 1fr;gap:7px 8px;margin:0}.i2-dl dt{color:#667085}.i2-dl dd{margin:0;min-width:0;word-break:break-word}
@media(max-width:1100px){html.iv2-detail #cde .iv-main{margin-right:0}.i2-detail{left:12px;right:12px;width:auto;top:auto;bottom:12px;max-height:60vh;box-shadow:0 -10px 40px #0b234033}}
@media(max-width:900px){html.iv2 #cde .iv-content{padding:12px}.i2-head{flex-wrap:wrap}.i2-find{flex:1 1 100%;order:5}html.iv2 #cde .i2-find .cde-search{width:100%;max-width:none}.i2-sel{flex:1;max-width:none}.i2-bar{flex-wrap:wrap}.i2-step{flex:1 1 45%;border-bottom:1px solid #e4e7ec}.i2-t small,.i2-arr{display:none}}
/* Điện thoại: tiêu đề một hàng riêng, rồi ô tìm, rồi hai ô lọc + ⋯ + Tạo vấn đề; tên bước không đè lên con số. */
.i2-t{flex:1 1 auto;overflow:hidden}.i2-t b{overflow:hidden;text-overflow:ellipsis}.i2-c{flex:none;padding-left:6px}
@media(max-width:900px){.i2-title{flex:1 1 100%}.i2-head .i2-sp{display:none}.i2-sel{flex:1 1 30%;min-width:0}.i2-title h1{font-size:19px}.i2-step{padding:9px 10px;gap:8px;flex:1 1 50%!important}.i2-t b{font-size:13px}}
/* Số vấn đề gộp vào trước tiêu đề (ảnh GD-4); cột ID riêng chỉ hiện lại khi mở «⋯». */
html.iv2:not(.iv2-tools) #cde .issue-table .cde-id-col,html.iv2:not(.iv2-tools) #cde .issue-table td.cde-number{display:none}
html.iv2:not(.iv2-tools) #cde .issue-table .cde-title-link[data-n]::before{content:attr(data-n) " ";color:#667085;font-weight:500}
html.iv2:not(.iv2-tools) #cde .issue-table td.c-title{padding-left:16px}
/* GD-7: «Đường đi của vấn đề» ở đầu ngăn mở một vấn đề */
.cde-detail-info>.i2-journey{background:#f8f9fb;border:1px solid #e4e7ec;border-radius:10px;padding:12px 14px;margin-bottom:14px}
.i2-chip.i2-ph{display:inline-flex;align-items:center;gap:7px}.i2-chip.i2-ph i{width:8px;height:8px;border-radius:50%;background:#98a2b3;flex:none}.i2-chip.i2-ph i[data-ph="design"]{background:#7aa7ff}.i2-chip.i2-ph i[data-ph="construction"]{background:#f5b454}.i2-chip.i2-ph i[data-ph="asbuilt"]{background:#5fcf9a}
.i2-chip-sep{width:1px;height:20px;background:#e4e7ec;margin:0 4px}
