.eventus-search { margin: 1rem 0 2rem; }
.eventus-search .wp-block-group__inner-container { display:flex; gap:.75rem; align-items:center; flex-wrap:nowrap; }
.eventus-search .wp-block-search__input { flex:1 1 auto; min-width:260px; padding:.3rem .75rem; border:1px solid var(--wp--preset--color--contrast-3, #cfcfcf); border-radius:4px; }

/* Color variables to avoid duplicated literals for button styles */
:root{
  --ba-btn-bg: #00709B;
  --ba-btn-border: #00709B;
  --ba-btn-color: #fff;
  --ba-btn-current-bg: #00709B;
  --ba-btn-current-border: #00709B;
  --ba-btn-disabled-bg: #f0f0f0;
  --ba-btn-disabled-border: #d0d0d0;
  --ba-btn-disabled-color: #9a9a9a;
}

.eventus-search .button { flex:0 0 auto; display:inline-flex; align-items:center; gap:.5rem; line-height:1; padding:.6rem 1rem; border-radius:4px; }

/* Shared button appearance: centralized to avoid duplicated color/border literals */
.eventus-search .button,
.ba-resultados--datatables .dataTables_wrapper .dt-buttons .dt-button,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button,
.ba-resultados--datatables table.dataTable td.dt-actions .button {
  background:var(--ba-btn-bg);
  border:1px solid var(--ba-btn-border);
  color:var(--ba-btn-color);
  transition:background-color .15s ease, border-color .15s ease, color .15s ease;
}
.eventus-search .button:hover, 
.eventus-search .button:focus, 
.eventus-search .button:active { background:var(--ba-btn-bg); border-color:var(--ba-btn-border); color:var(--ba-btn-color); }
.eventus-search .button:focus { box-shadow:0 0 0 2px rgba(30,162,228,.25); }

/* En pantallas peque�as, permitir salto de l�nea */
@media (max-width: 480px) {
  .eventus-search .wp-block-group__inner-container { flex-wrap:wrap; }
}

/* Spinner en bot�n */
.button.is-busy { opacity:.9; }
.ba-spinner {
  width:16px; height:16px;
  display:inline-block; vertical-align:middle;
  border:2px solid currentColor; border-right-color: transparent; border-radius:50%;
  animation: ba-spin .8s linear infinite;
  flex-shrink:0;
}
@keyframes ba-spin { to { transform: rotate(360deg); } }

.ba-resultados ul { margin:.5rem 0 0 1rem; list-style:disc; }
.ba-result .ba-detail-list {
  margin: .5rem 0 0 1.2rem;
  padding-left: 0;
  list-style: disc;
}
.ba-result .ba-detail-item {
  margin-bottom: 1rem;
}
.ba-result .ba-detail-name {
  display: block;
  font-size: 1.05rem;
}
.ba-result .ba-detail-meta {
  margin: .35rem 0;
  font-size: .9rem;
  color: #555;
  display: grid;
  gap: .35rem;
  padding-left: 0;
  list-style: none;
}
.ba-result .ba-detail-meta-item {
  display: inline-flex;
  gap: .35rem;
  align-items: center;
  padding: .35rem .5rem;
  background: #f5f5f5;
  border-radius: 4px;
  border: 1px solid rgba(0,0,0,.06);
}
.ba-result .ba-detail-meta-item strong {
  font-weight: 600;
}
.ba-result .ba-detail-meta-item span {
  display: inline-block;
}
.ba-result .ba-detail-description {
  margin: .35rem 0 0;
  font-size: .95rem;
  line-height: 1.45;
  color: #444;
}
.ba-result .ba-barcode-list .ba-barcode-canvas {
  margin: .5rem 0;
  min-height: 64px;
}
.ba-result .ba-barcode-list svg {
  width: 100%;
  max-width: 320px;
  height: auto;
}
.ba-result .ba-barcode-value {
  display: block;
  margin-top: .25rem;
  font-size: .85rem;
  letter-spacing: .08em;
  color: #333;
}

/* Acorde�n de resultados */
.ba-accordion {
  width:100%;
  border:1px solid #ccd0d4;
  border-radius:8px;
  background:#fff;
}
.ba-accordion + .ba-accordion { margin-top:.5rem; }
.ba-accordion summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  padding:.75rem 1rem;
  margin:0;
  background:#f6f7f7;
  font-weight:600;
  border-radius:8px;
  cursor:pointer;
  list-style:none;
}
.ba-accordion summary::-webkit-details-marker { display:none; }
.ba-accordion summary::after {
  content:'?';
  opacity:.7;
  transition:transform .2s ease;
}
.ba-accordion[open] summary {
  background:#eef0f3;
  border-bottom:1px solid #e2e4e7;
  border-bottom-left-radius:0;
  border-bottom-right-radius:0;
}
.ba-accordion[open] summary::after { transform:rotate(90deg); }
.ba-accordion > div { padding:1rem; }

/* DataTables layout */
.ba-resultados--datatables { margin-top:1.5rem; }
.ba-resultados--datatables .ba-results-notice .notice { margin:0 0 .75rem; }

.ba-resultados--datatables table.dataTable { width:100% !important; table-layout:fixed; }
.ba-resultados--datatables table.dataTable thead th {
  position:relative;
  padding-right:2.6rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button {
  border-radius:4px;
  padding:.35rem .75rem;
  margin:0 .125rem;
}

.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background:var(--ba-btn-current-bg);
  border-color:var(--ba-btn-current-border);
  color:var(--ba-btn-color) !important;
  font-weight:600;
  cursor:default;
}
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.current:focus,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.current:active {
  background:var(--ba-btn-current-bg);
  border-color:var(--ba-btn-current-border);
  color:var(--ba-btn-color) !important;
}
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:focus,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
  background:var(--ba-btn-disabled-bg);
  border-color:var(--ba-btn-disabled-border);
  color:var(--ba-btn-disabled-color) !important;
}

/* Ensure pagination numbers (and their inner anchors) use the same toolbar text color by default.
   Keep disabled and current states untouched (they are handled above). */
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button a {
  color: var(--ba-btn-color) !important;
}

/* Keep pagination buttons visually consistent on hover/focus/active */
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button:hover,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button:focus,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button:active,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button:hover a,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button:focus a,
.ba-resultados--datatables .dataTables_wrapper .dataTables_paginate .paginate_button:active a {
  background: var(--ba-btn-bg);
  border-color: var(--ba-btn-border);
  color: var(--ba-btn-color) !important;
}


.ba-resultados--datatables .dataTables_wrapper .dt-buttons .dt-button {
  border-radius:4px;
  padding:.35rem .75rem;
}

.ba-resultados--datatables .dataTables_wrapper .dt-buttons .dt-button:disabled,
.ba-resultados--datatables .dataTables_wrapper .dt-buttons .dt-button.disabled,
.ba-resultados--datatables .dataTables_wrapper .dt-buttons .dt-button:disabled:hover {
  background:var(--ba-btn-disabled-bg);
  border-color:var(--ba-btn-disabled-border);
  color:var(--ba-btn-disabled-color) !important;
}

.ba-resultados--datatables .dataTables_wrapper .dataTables_length { margin-bottom:.75rem; }
.ba-resultados--datatables .dataTables_wrapper .dataTables_length label {
  display:flex;
  align-items:center;
  gap:.5rem;
  white-space:nowrap;
}
.ba-resultados--datatables .dataTables_wrapper .dataTables_length select {
  min-width:90px;
}
@media (max-width: 600px) {
  .ba-resultados--datatables .dataTables_wrapper .dataTables_length label {
    flex-wrap:wrap;
  }
}

.ba-resultados--datatables .dataTables_wrapper .dataTables_info { margin-top:.5rem; }

.ba-resultados--datatables table.dataTable thead tr.ba-filters-row th {
  padding: 0.35rem 0.5rem;
}
.ba-resultados--datatables table.dataTable thead tr.ba-filters-row input.ba-col-filter {
  width: 100%;
  box-sizing: border-box;
  padding: 0.3rem 0.4rem;
  border: 1px solid #ccd0d4;
  border-radius: 4px;
  font-size: 0.85rem;
}

.ba-nomenclature-desc {
  margin-top: 0.35rem;
  font-size: 0.9em;
  color: #3c434a;
}

.ba-dt-details tbody tr {
  background-color: #fff;
}

.ba-dt-details tbody tr > th{
  text-align: left;
}

/* ==========================
   Tablas de dispositivos BA
   ========================== */

/* Ajustes b�sicos */
.ba-devices-table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
}

.ba-devices-table th,
.ba-devices-table td {
  border-left: none !important;
  border-right: none !important;
}

/* Bot�n de control de detalles */
.ba-devices-table td.dt-control {
  cursor: pointer;
  width: 32px;
  text-align: center;
}

/* Fila de detalles */
.ba-device-details td {
  padding: 1rem;
  background-color: #fafafa;
  border-top: 1px solid #ccd0d4;
}

/* Resaltar fila expandida */
.ba-device-row.is-expanded {
  background-color: #f9f9f9;
}
.ba-resultados--datatables table.dataTable th.dt-actions,
.ba-resultados--datatables table.dataTable td.dt-actions {
  text-align: center;
}
.ba-resultados--datatables table.dataTable td.dt-actions .button {
  width: 36px;
  height: 36px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.ba-resultados--datatables table.dataTable td.dt-actions .button .ba-btn-icon {
  color: #fff; /* ensure icon is visible */
}


.eventus-search .button.is-busy,
.eventus-search .button.is-busy:disabled {
  background:var(--ba-btn-bg);
  border-color:var(--ba-btn-border);
  color:var(--ba-btn-color);
  opacity:1;
  /* Do not change the cursor; blocking is handled via overlays/pointer-events */
}
.eventus-search .button.is-busy .ba-spinner {
  margin-left:0;
}

/* === Buscador API overrides === */

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  clip-path: inset(50%);
  white-space: nowrap;
}

.eventus-search .evt-toolbox {
  display: inline-flex;
  gap: 4px;
}

.eventus-search .evt-toolbox .button {
  border-radius: 0;
  width: 35px;
  height: 35px;
  padding: 0;
  justify-content: center;
  gap: 0;
}

.eventus-search .evt-toolbox .button:first-child { border-radius: 4px 0 0 4px; }
.eventus-search .evt-toolbox .button:last-child { border-radius: 0 4px 4px 0; }

.eventus-search .evt-toolbox .button .ba-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  font-size: 17px;
  line-height: 1;
}

.ba-resultados--datatables .ba-table-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.ba-resultados--datatables .ba-table-controls .dt-buttons {
  display: inline-flex;
  gap: 0.5rem;
}

.ba-resultados--datatables .ba-table-controls .dataTables_length {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.ba-resultados--datatables .dt-buttons .ba-export-excel {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #217346;
  border-color: #1b5e3c;
  color: var(--ba-btn-color) !important;
  padding: 0.35rem 0.6rem;
}

.ba-resultados--datatables .dt-buttons .ba-export-excel .fa-file-excel {
  font-size: 18px;
  color: #fff;
}

.ba-resultados--datatables .dt-buttons .ba-export-excel:hover,
.ba-resultados--datatables .dt-buttons .ba-export-excel:focus,
.ba-resultados--datatables .dt-buttons .ba-export-excel:active {
  background: #1e6a3f;
  border-color: #185835;
  color: #fff !important;
}

.ba-resultados--datatables .dt-buttons .ba-export-excel.disabled,
.ba-resultados--datatables .dt-buttons .ba-export-excel:disabled {
  background: #9fb9ab;
  border-color: #7d9b8d;
  color: rgba(255, 255, 255, 0.8) !important;
  cursor: default;
  pointer-events: none;
}

.ba-resultados--datatables .dt-buttons .ba-export-excel.disabled .fa-file-excel,
.ba-resultados--datatables .dt-buttons .ba-export-excel:disabled .fa-file-excel {
  color: rgba(255, 255, 255, 0.8);
}
