/* ── Worklist cards ── */

/* Card top row: booking attribute + date/time */
.card-top-row {
  align-items: flex-start;
}

.card-machine-info,
.card-bottom-row {
  margin-top: 0.75rem;
}

.card-machine-info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

/* Booking attribute */
.booking-attr {
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
  border: 0.0625rem dashed #9a860f;
  border-radius: 0.25rem;
  padding: 0.125rem 0.25rem;
  font-weight: 400;
  line-height: 1.5;
  color: #060f10;
  background: #fffbe7;
  position: relative;
  height: 1.25rem;
}

.booking-attr--progress {
  background: #eef0ff;
  border-color: #3452b4;
}

.booking-attr--success {
  background: #f0f7e9;
  border-color: #4a7c2a;
}

.booking-attr--standby {
  background: #f0f2f3;
  border-color: #6b8085;
  border-style: solid;
}

.booking-attr-badge {
  position: absolute;
  top: -0.25rem;
  right: -0.25rem;
  width: 0.5rem;
  height: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 0.375rem;
  --zn-icon-size: 0.375rem;
}

.booking-attr-badge--success {
  background: #4a7c2a;
  border-radius: 0.1875rem;
}

.booking-attr-badge--progress {
  background: #3452b4;
  border-radius: 50%;
}


/* Date/time column */
.card-datetime {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0;
}

.card-date-range {
  line-height: 1.5;
  white-space: nowrap;
}

.card-time {
  line-height: 1.5;
  white-space: nowrap;
}

/* Company section */
.card-company-name {
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
}

/* Divider */
.card-divider {
  border: none;
  border-top: 0.0625rem solid #cbd2d3;
  margin: 0;
}

/* Machine row */
.machine-img {
  width: 2.6875rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.machine-serial {
  line-height: 1.5;
  min-width: 0;
}

.machine-serial strong {
  font-weight: 700;
}

.machine-location {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  line-height: 1.5;
}

/* Card bottom row */
.card-bottom-badges {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

/* Action button group */
.action-group {
  display: inline-flex;
  gap: 0;
  flex-shrink: 0;
  background: rgb(107.5, 120.7, 121.7);
  border-radius: 0.25rem;
  overflow: hidden;
}

.action-group-sep {
  width: 1px;
  background: white;
  align-self: stretch;
  flex-shrink: 0;
}

/* ── Card hide animation ── */
@keyframes cardHide {
  from { opacity: 1; transform: translateY(0);     }
  to   { opacity: 0; transform: translateY(-0.5rem); }
}

.card-hiding {
  animation: cardHide 0.3s ease forwards;
  pointer-events: none;
}

/* ── Shift-gated elements ── */
.shift-tile {
  display: none;
}
.shift-tile.visible {
  display: block;
}

/* ── Worklist layout spacing ── */
.worklist-filter-row,
#worklist-cards,
#no-results {
  margin-top: 0.75rem;
}

#worklist-cards {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

/* ── Empty state ── */
.no-results-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 2rem 0;
  text-align: center;
}

.no-results-heading {
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.25;
  color: #060f10;
  margin: 0;
}

.no-results-subtext {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}
