/* ===== CAPTION - GROUP HEADER ===== */
.views-element-container table caption {
  caption-side: top;
  padding-bottom: 4px;
}

.views-element-container table caption .d-flex {
  margin-bottom: 0 !important;
  background-color: #dee2e6 !important;
  border-left-color: #FF8C00 !important;  /* #0d6efd */
  border-left-width: 4px !important;
  padding: 8px 12px !important;
  border-radius: 0 4px 4px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.views-element-container table caption .d-flex > div {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Všetky span - rovnaká výška, rovnaký font */
.views-element-container table caption .d-flex > div > span {
  font-size: 0.82rem !important; /* <-- VELKOST PISMA VSETKYCH */
  line-height: 1 !important;
  font-family: inherit !important;
  padding: 0 !important;
  margin: 0 !important;
  white-space: nowrap;
  display: inline-block !important;
  vertical-align: middle !important;
  position: relative;
  top: 0px; /* <-- POSUV VSETKYCH SPAN nahor(-)/nadol(+) */
}

/* Fault ID a Keypad - monospace font */
.views-element-container table caption .d-flex > div > span.font-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
  font-size: 0.85rem !important; /* <-- VELKOST PISMA FAULT ID A KEYPAD */
  line-height: 1 !important;
  display: inline-block !important;
  vertical-align: middle !important;
  position: relative;
  top: 1px; /* <-- POSUV FAULT ID A KEYPAD nahor(-)/nadol(+) */
}

/* Label span (Fault ID:, Hex:, Description:, Keypad:) */
.views-element-container table caption .d-flex > div > span:first-child {
  font-size: 0.82rem !important; /* <-- VELKOST PISMA LABELOV */
  position: relative;
  top: 0px; /* <-- POSUV LABELOV nahor(-)/nadol(+) */
}

/* Hex hodnota */
.views-element-container table caption .text-muted {
  color: #0d6efd  !important;
  font-size: 0.82rem !important; /* <-- VELKOST PISMA HEX */
  position: relative;
  top: 0px; /* <-- POSUV HEX nahor(-)/nadol(+) */
}

/* Description span */
.views-element-container table caption .text-dark {
  color: #333 !important;
  font-size: 0.82rem !important; /* <-- VELKOST PISMA DESCRIPTION */
  position: relative;
  top: 0px; /* <-- POSUV DESCRIPTION nahor(-)/nadol(+) */
}

.views-element-container table caption .flex-grow-1 {
  flex-grow: 1 !important;
  min-width: 0;
}

.views-element-container table caption .text-primary {
  color: #FF8C00 !important;
  font-weight: 600 !important;
  font-size: 0.82rem !important; /* <-- VELKOST PISMA FAULT ID HODNOTY */
  position: relative;
  top: 0px; /* <-- POSUV FAULT ID HODNOTY nahor(-)/nadol(+) */
}

.views-element-container table caption .vr {
  display: inline-block !important;
  width: 1px !important;
  height: 1rem !important; /* <-- VYSKA ODDELOVACA */
  background-color: #aaa !important;
  opacity: 0.5 !important;
  flex-shrink: 0 !important;
  align-self: center !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ===== TABULKA HLAVICKA ===== */
.view-error-codes .table thead tr th {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
  color: #444 !important;
  background-color: #e9ecef !important;
  border: none !important;
  border-bottom: 2px solid #adb5bd !important;
  padding: 7px 12px;
}

/* ===== PEVNE SIRKY STLPCOV ===== */
.view-error-codes .table {
  table-layout: fixed;
  width: 100%;
}

.view-error-codes .table thead th:nth-child(1) {
  width: 30%;
}

.view-error-codes .table thead th:nth-child(2) {
  width: 40%;
}

.view-error-codes .table thead th:nth-child(3) {
  width: 30%;
}

/* ===== TABULKA BODY ===== */
.views-element-container .table {
  font-size: 0.82rem;
  border-color: #dee2e6;
  margin-bottom: 2rem;
}

.views-element-container .table tbody tr {
  vertical-align: top;
}

.views-element-container .table tbody td {
  padding: 10px 12px;
  border-color: #e9ecef;
  color: #333;
  line-height: 1.5;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.views-element-container .table tbody td p {
  margin: 0 0 4px 0;
}

.views-element-container .table tbody td p:last-child {
  margin-bottom: 0;
}

.views-element-container .table-striped tbody tr:nth-of-type(odd) {
  background-color: #f8f9fa;
}

.views-element-container .table-hover tbody tr:hover {
  background-color: #f1f3f5;
  transition: background-color 0.15s ease;
}

/* ===== MEDZERA MEDZI SKUPINAMI ===== */
.views-element-container .view-content table {
  margin-bottom: 2rem;
}