/* V68.UI8B — approved laboratory workspace redesign */
.drt-ui8b-lab {
  --lab-ink: #10243e;
  --lab-muted: #6f8299;
  --lab-border: #dbe7f2;
  --lab-soft: #f6f9fc;
  --lab-blue: #2f80ed;
  --lab-green: #1ca66a;
  display: grid;
  gap: 14px;
}

.drt-ui8b-lab-commandbar,
.drt-ui8b-lab-alertbar,
.drt-ui8b-lab-filters,
.drt-ui8b-lab-workspace {
  border: 1px solid var(--lab-border);
  border-radius: 18px;
  background: #fff;
}

.drt-ui8b-lab-commandbar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
}

.drt-ui8b-lab-commandbar__copy span,
.drt-ui8b-pane-head span,
.drt-ui8b-section-label span {
  color: #168a78;
  font-size: .72rem;
  font-weight: 800;
}
.drt-ui8b-lab-commandbar__copy h2 { margin: 3px 0 2px; color: var(--lab-ink); font-size: 1.28rem; font-weight: 950; }
.drt-ui8b-lab-commandbar__copy p { margin: 0; color: var(--lab-muted); font-size: .76rem; }
.drt-ui8b-lab-search { display: grid; grid-template-columns: 150px minmax(220px, 1fr) auto; gap: 8px; min-width: min(570px, 60vw); }

.drt-ui8b-lab-tabs {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding: 4px;
  border-bottom: 1px solid var(--lab-border);
}
.drt-ui8b-lab-tabs a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: max-content;
  padding: 10px 13px;
  border-radius: 11px 11px 3px 3px;
  color: #58708c;
  text-decoration: none;
  font-size: .76rem;
  font-weight: 800;
  border-bottom: 2px solid transparent;
}
.drt-ui8b-lab-tabs a b { min-width: 22px; padding: 2px 7px; border-radius: 999px; background: #eff4f9; text-align: center; font-size: .68rem; }
.drt-ui8b-lab-tabs a.is-active { color: #126ee5; background: #f3f8ff; border-bottom-color: #2f80ed; }

.drt-ui8b-lab-alertbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 16px;
  border-color: #f1d7d7;
  background: #fffafa;
}
.drt-ui8b-lab-alertbar div { display: flex; flex-direction: column; gap: 2px; }
.drt-ui8b-lab-alertbar strong { color: #9a2933; font-size: .8rem; }
.drt-ui8b-lab-alertbar span { color: #8a6670; font-size: .68rem; }

.drt-ui8b-lab-filters { overflow: hidden; }
.drt-ui8b-lab-filters > summary { display: flex; align-items: center; gap: 7px; padding: 11px 15px; color: #536a83; cursor: pointer; font-size: .76rem; font-weight: 800; }
.drt-ui8b-lab-filters__body { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 10px; padding: 0 15px 15px; }

.drt-ui8b-lab-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(360px, .92fr);
  direction: ltr;
  min-height: 620px;
  overflow: hidden;
}
.drt-ui8b-lab-list-pane { min-width: 0; padding: 16px; background: #fbfdff; border-inline-end: 1px solid var(--lab-border); direction: rtl; }
.drt-ui8b-pane-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.drt-ui8b-pane-head h3 { margin: 2px 0 0; color: var(--lab-ink); font-size: .95rem; font-weight: 950; }
.drt-ui8b-pane-head > strong { display: grid; place-items: center; min-width: 34px; height: 34px; border-radius: 12px; background: #eaf7f5; color: #147a6c; }
.drt-ui8b-lab-case-list { display: grid; gap: 10px; }

.drt-ui8-lab-queue .drt-arch-case.drt-ui8a-lab-case.drt-ui8b-lab-case {
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 1px solid #dce6f0;
  border-inline-start: 4px solid #93a7bc;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(37, 70, 105, .055);
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.drt-ui8b-lab-case:hover { transform: translateY(-1px); box-shadow: 0 11px 28px rgba(37, 70, 105, .085); }
.drt-ui8b-lab-case.is-info { border-inline-start-color: #4d97ec; }
.drt-ui8b-lab-case.is-warning { border-inline-start-color: #e3a431; background: #fffdf8; }
.drt-ui8b-lab-case.is-danger { border-inline-start-color: #e0525c; background: #fffafa; }
.drt-ui8b-lab-case.is-success { border-inline-start-color: #27a86f; background: #fbfffd; }
.drt-ui8b-lab-case.is-selected { border-color: #5a9ff0; box-shadow: 0 0 0 2px rgba(47,128,237,.12), 0 12px 30px rgba(37,70,105,.09); }

.drt-ui8b-lab-case__main {
  display: grid;
  grid-template-columns: minmax(210px, 1.45fr) minmax(145px, .8fr) minmax(130px, .75fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px 15px 11px;
  color: inherit;
  text-decoration: none;
}
.drt-ui8b-lab-case__identity { display: flex; align-items: center; gap: 10px; min-width: 0; }
.drt-ui8b-lab-case__identity > div:last-child { display: grid; min-width: 0; }
.drt-ui8b-record-ref { color: #2c7dbf; font-size: .65rem; font-weight: 850; }
.drt-ui8b-lab-case__identity strong { overflow: hidden; color: var(--lab-ink); font-size: .85rem; font-weight: 950; text-overflow: ellipsis; white-space: nowrap; }
.drt-ui8b-lab-case__identity small { overflow: hidden; color: var(--lab-muted); font-size: .67rem; text-overflow: ellipsis; white-space: nowrap; }
.drt-ui8b-lab-case__stage,
.drt-ui8b-lab-case__due { display: grid; gap: 3px; padding-inline-start: 13px; border-inline-start: 1px solid #edf1f5; }
.drt-ui8b-lab-case__stage span,
.drt-ui8b-lab-case__due span { color: #8a9aab; font-size: .61rem; font-weight: 750; }
.drt-ui8b-lab-case__stage strong,
.drt-ui8b-lab-case__due strong { color: #263d57; font-size: .73rem; font-weight: 900; }
.drt-ui8b-lab-case__due small { color: #7c8ea1; font-size: .61rem; }
.drt-ui8b-lab-case__due small.is-danger { color: #c63c48; font-weight: 850; }
.drt-ui8b-mini-progress { height: 4px; overflow: hidden; margin-top: 3px; border-radius: 999px; background: #eaf0f5; }
.drt-ui8b-mini-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#41b983,#2f80ed); }
.drt-ui8b-lab-case__status { justify-self: end; }

.drt-ui8b-lab-case__actions {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  padding: 9px 14px;
  border-top: 1px solid #edf2f6;
  background: #f8fbfd;
}
.drt-ui8b-lab-case__actions .btn { min-height: 34px; }
.drt-ui8b-legacy-details { display: none; }

.drt-ui8b-lab-detail { display: flex; flex-direction: column; min-width: 0; background: #fff; direction: rtl; }
.drt-ui8b-lab-detail__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 18px 18px 14px; border-bottom: 1px solid var(--lab-border); }
.drt-ui8b-lab-detail__patient { display: flex; align-items: center; gap: 11px; min-width: 0; }
.drt-ui8b-lab-detail__patient > div { display: grid; min-width: 0; }
.drt-ui8b-lab-detail__patient span { color: #2f80ed; font-size: .66rem; font-weight: 850; }
.drt-ui8b-lab-detail__patient h3 { margin: 1px 0; color: var(--lab-ink); font-size: 1rem; font-weight: 950; }
.drt-ui8b-lab-detail__patient small { color: var(--lab-muted); font-size: .65rem; }

.drt-ui8b-lab-detail__progress,
.drt-ui8b-lab-detail__facts,
.drt-ui8b-lab-detail__note,
.drt-ui8b-lab-detail__activity,
.drt-ui8b-lab-detail__manage { margin: 14px 16px 0; }
.drt-ui8b-section-label { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.drt-ui8b-section-label strong { color: #243d57; font-size: .78rem; font-weight: 950; }

.drt-ui8b-lab-progress { position: relative; padding: 3px 2px 0; }
.drt-ui8b-lab-progress__track { position: absolute; inset-inline: 8%; top: 17px; height: 4px; overflow: hidden; border-radius: 99px; background: #dfe7ef; }
.drt-ui8b-lab-progress__track i { display: block; width: var(--drt-lab-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#2f80ed 0%,#2fac8a 58%,#1aa56a 100%); transition: width .2s ease; }
.drt-ui8b-lab-progress__steps { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); margin: 0; padding: 0; list-style: none; }
.drt-ui8b-lab-progress__steps li { display: grid; justify-items: center; gap: 6px; color: #8798aa; text-align: center; }
.drt-ui8b-lab-progress__node { display: grid; place-items: center; width: 30px; height: 30px; border: 3px solid #eef3f7; border-radius: 50%; background: #cbd6e1; color: #fff; font-size: .67rem; font-weight: 950; z-index: 1; }
.drt-ui8b-lab-progress__label { max-width: 82px; font-size: .61rem; font-weight: 800; line-height: 1.35; }
.drt-ui8b-lab-progress__steps li.is-complete { color: #17865d; }
.drt-ui8b-lab-progress__steps li.is-complete .drt-ui8b-lab-progress__node { border-color: #daf4e7; background: #1aa56a; }
.drt-ui8b-lab-progress__steps li.is-current { color: #116fd6; }
.drt-ui8b-lab-progress__steps li.is-current .drt-ui8b-lab-progress__node { border-color: #d8ebff; background: #2f80ed; box-shadow: 0 0 0 4px rgba(47,128,237,.13); }

.drt-ui8b-lab-detail__facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.drt-ui8b-lab-detail__facts > div { display: grid; gap: 3px; min-height: 67px; padding: 11px 12px; border: 1px solid #e5edf5; border-radius: 12px; background: #fafcfe; }
.drt-ui8b-lab-detail__facts span { color: #8797a8; font-size: .62rem; font-weight: 750; }
.drt-ui8b-lab-detail__facts strong { color: #223a55; font-size: .75rem; font-weight: 900; }
.drt-ui8b-lab-detail__note { padding: 12px 13px; border: 1px solid #e3edf5; border-radius: 12px; background: #f8fbfe; }
.drt-ui8b-lab-detail__note p { margin: 0; color: #546b82; font-size: .7rem; line-height: 1.8; }

.drt-ui8b-lab-timeline { display: grid; gap: 0; }
.drt-ui8b-lab-timeline > div { position: relative; display: grid; grid-template-columns: 12px 1fr auto; gap: 7px; padding: 8px 0; border-bottom: 1px solid #eef2f6; }
.drt-ui8b-lab-timeline i { width: 8px; height: 8px; margin-top: 5px; border-radius: 50%; background: #1ca66a; box-shadow: 0 0 0 3px #e5f7ef; }
.drt-ui8b-lab-timeline strong { color: #2a4058; font-size: .7rem; }
.drt-ui8b-lab-timeline span { color: #7e8fa1; font-size: .6rem; }
.drt-ui8b-lab-timeline small { grid-column: 2 / -1; color: #8999a8; font-size: .59rem; }

.drt-ui8b-lab-detail__manage { border: 1px solid #e2eaf2; border-radius: 12px; overflow: hidden; }
.drt-ui8b-lab-detail__manage summary { padding: 10px 12px; cursor: pointer; color: #516b85; font-size: .7rem; font-weight: 850; }
.drt-ui8b-lab-manage-grid { display: grid; gap: 10px; padding: 0 12px 12px; }
.drt-ui8b-lab-manage-grid form { display: grid; gap: 7px; }
.drt-ui8b-lab-detail__actions { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8px; margin-top: auto; padding: 15px 16px 17px; border-top: 1px solid var(--lab-border); background: #fbfdff; }
.drt-ui8b-lab-detail--empty { display: grid; place-items: center; min-height: 400px; }

@media (max-width: 1180px) {
  .drt-ui8b-lab-workspace { grid-template-columns: minmax(0,1.2fr) minmax(330px,.9fr); }
  .drt-ui8b-lab-case__main { grid-template-columns: minmax(180px,1.2fr) minmax(125px,.7fr) auto; }
  .drt-ui8b-lab-case__due { display: none; }
}
@media (max-width: 900px) {
  .drt-ui8b-lab-commandbar { align-items: stretch; flex-direction: column; }
  .drt-ui8b-lab-search { min-width: 0; width: 100%; grid-template-columns: 1fr 1.4fr auto; }
  .drt-ui8b-lab-workspace { grid-template-columns: 1fr; }
  .drt-ui8b-lab-list-pane { border-inline-end: 0; border-bottom: 1px solid var(--lab-border); }
  .drt-ui8b-lab-detail { min-height: 560px; }
}
@media (max-width: 760px) {
  .drt-ui8b-lab-commandbar,
  .drt-ui8b-lab-list-pane { padding: 12px; }
  .drt-ui8b-lab-search { grid-template-columns: 1fr; }
  .drt-ui8b-lab-filters__body { grid-template-columns: 1fr; }
  .drt-ui8b-lab-case__main { grid-template-columns: 1fr auto; gap: 10px; }
  .drt-ui8b-lab-case__stage { grid-column: 1 / -1; border-inline-start: 0; padding-inline-start: 0; }
  .drt-ui8b-lab-case__actions { justify-content: stretch; }
  .drt-ui8b-lab-case__actions .btn { flex: 1; }
  .drt-ui8b-lab-detail__facts { grid-template-columns: 1fr 1fr; }
  .drt-ui8b-lab-progress__label { font-size: .54rem; }
}
