

#cb-lista, #cb-stocznia { container-type: inline-size; }


body.hud4 #cpanel.dok-prawo > .cp-grid { display: flex; flex-direction: column; max-width: none; gap: 12px; }
body.hud4 #cpanel.dok-prawo > .cp-grid > .cp-core { order: 1; }
body.hud4 #cpanel.dok-prawo > .cp-grid > .cp-rail-r { order: 2; position: static; }
body.hud4 #cpanel.dok-prawo > .cp-grid > .cp-rail-l { order: 3; position: static; }


.cb-yard { margin: 0 0 10px; }
.cb-kpis { grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); margin-bottom: 8px; }
.cb-prog { margin: -2px 0 8px; }
.cb-moc { margin: 0 0 10px; padding: 8px 10px; border: 1px dashed var(--pv-line); border-radius: 6px; }


.cb-kolejka .eko-h { justify-content: flex-start; }
.cb-q {
  display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; gap: 2px 10px; padding: 5px 8px; margin: 0 0 5px; border-radius: 4px;
  border: 1px solid var(--pv-line); border-left-width: 3px; background: var(--pv-color-rail-tintA045);
}
.cb-q > .b-glyph { margin-right: 0; }
.cb-q.ok { border-left-color: var(--ok); }
.cb-q.wait { border-left-color: var(--txt-dim); }
.cb-q.bad { border-left-color: var(--danger); }
.cb-q-txt { min-width: 0; display: flex; flex-direction: column; gap: 1px; font-size: var(--cs-2); }
.cb-q-l1 { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.cb-q-l1 > b { font-size: var(--cs-3); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cb-q-eta { color: var(--txt); font-variant-numeric: tabular-nums; white-space: nowrap; font-size: var(--cs-2); }
.cb-q-l2 { display: flex; align-items: center; gap: 8px; color: var(--txt-dim); }
.cb-q-l2 .eko-bar { flex: 1 1 90px; margin: 0; }
.cb-q-st { flex: 0 1 auto; min-width: 0; }
.cb-q.bad .cb-q-st { color: var(--danger); }
.cb-q-brak { font-size: var(--cs-1); color: var(--danger); }
.cb-q-akcje { display: flex; flex-wrap: wrap; gap: 4px; justify-content: flex-end; }
.cb-mv { min-width: 26px; padding: 3px 5px; }


.cb-filtry { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 2px 0 10px; font-size: var(--cs-2); }
.cb-chip {
  font: inherit; font-size: var(--cs-2); cursor: pointer; padding: 4px 10px; border-radius: 12px;
  color: var(--txt-dim); background: transparent; border: 1px solid var(--pv-line);
}
.cb-chip i { font-style: normal; font-variant-numeric: tabular-nums; opacity: .75; margin-left: 3px; }
.cb-chip:hover { color: var(--txt); border-color: var(--accent); }
.cb-chip.on { color: var(--txt); background: var(--pv-color-rail-tintA14); border-color: var(--accent); }
.cb-chip:focus-visible, .cb-nazwa:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }
.cb-chip.nied.krytyczny { border-color: var(--danger); }
.cb-chip.nied.ostrzezenie { border-color: var(--pv-color-signal-warn); }
.cb-sel { display: inline-flex; align-items: center; gap: 6px; color: var(--txt-dim); }
.cb-sel select { font: inherit; font-size: var(--cs-2); color: var(--txt); background: var(--pv-color-rail-tintA07); border: 1px solid var(--pv-line); border-radius: 6px; padding: 3px 6px; }
.cb-rozw { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.cb-rozw > em { font-style: normal; color: var(--txt-dim); }
.cb-pusto { padding: 14px 4px; }


.cb-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; }
.cb-row > .b-glyph { flex: 0 0 auto; margin-right: 0; cursor: pointer; }
.cb-info { flex: 1 1 170px; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.cb-nazwa {
  font: inherit; font-size: var(--cs-3); font-weight: 700; text-align: left; cursor: pointer; padding: 0; border: 0; background: transparent;
  color: var(--txt); display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 4px; letter-spacing: .04em;
}
.cb-nazwa:hover { color: var(--accent); }
.cb-chev { margin-left: auto; color: var(--txt-dim); font-weight: 400; }
.cb-lim { font-style: normal; font-family: ui-monospace, 'Cascadia Mono', Consolas, monospace; font-size: var(--cs-1); padding: 1px 5px; border: 1px solid var(--pv-line); border-radius: 2px; color: var(--txt-dim); }
.cb-lim.pelny { color: var(--danger); border-color: var(--danger); }
.cb-fakty { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 6px; }
.cb-fakt {
  font-style: normal; font-size: var(--cs-1); color: var(--txt-dim); padding: 1px 7px; border: 1px solid var(--pv-line); border-radius: 8px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.3;
}
.cb-eff, .cb-cost, .cb-time { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; font-size: var(--cs-2); flex: 1 1 110px; min-width: 0; }
.cb-eff b { font-variant-numeric: tabular-nums; font-weight: 600; display: inline-flex; align-items: center; gap: 3px; white-space: nowrap; }
.cb-eff b.pos { color: var(--ok); }
.cb-eff b.neg { color: var(--danger); }
.cb-eff b.nom { opacity: .7; }
.cb-eff > .cb-fakt { flex: 1 1 100%; }
.cb-fakt.cb-opis { font-style: italic; }
.cb-c { display: inline-flex; align-items: center; gap: 2px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cb-c.neg { color: var(--danger); font-weight: 600; }
.cb-time { color: var(--txt-dim); flex-direction: column; align-items: flex-start; gap: 0; }
.cb-eta { color: var(--txt); font-variant-numeric: tabular-nums; }
.cb-btns { flex: 0 0 auto; }
.cb-row.brak .cb-cost { color: var(--txt); }
.cb-blok, .cb-prev { flex: 1 1 100%; }


.cb-blok { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 5px 8px; border-radius: 4px; border: 1px solid var(--pv-line); border-left-width: 3px; font-size: var(--cs-2); background: var(--pv-color-rail-tintA045); }
.cb-blok.bad { border-left-color: var(--danger); }
.cb-blok.warn { border-left-color: var(--pv-color-signal-warn); }
.cb-blok-t { flex: 1 1 200px; color: var(--txt-dim); line-height: 1.4; }
.cb-blok-a { display: flex; flex-wrap: wrap; gap: 6px; }


.cb-prev { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 8px 12px; align-items: start; padding-top: 4px; }
.cb-prev .eko-sec { margin: 0; }
.cb-prev .eko-btn { margin-top: 6px; }
.cb-cov .eko-bar { margin: 2px 0 4px; }
.cb-koszt { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-top: 4px; }
.cb-row.sel { outline: 2px solid var(--accent); outline-offset: -2px; }

@container (min-width: 560px) {
  .cb-row {
    display: grid; column-gap: 12px; row-gap: 4px;
    grid-template-columns: 34px minmax(110px, 1fr) minmax(150px, 1.4fr) minmax(80px, .75fr) minmax(70px, .65fr) auto;
  }
  .cb-row > .cb-info, .cb-row > .cb-eff, .cb-row > .cb-cost, .cb-row > .cb-time { flex: initial; }
  .cb-blok, .cb-prev { grid-column: 1 / -1; }
}
@container (max-width: 520px) {
  .cb-kpis { grid-template-columns: repeat(2, 1fr); }
  .cb-q { grid-template-columns: 30px minmax(0, 1fr); }
  .cb-q-akcje { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (pointer: coarse) {
  .cb-chip { min-height: 34px; }
  .cb-mv { min-height: 34px; min-width: 34px; }
}

.cb-orb { margin-left: 6px; font-style: normal; color: var(--accent); font-variant-numeric: tabular-nums; }
