/*
 * Tabulator table styles for bulk element editing
 * 
 * Import Tabulator base styles and add custom overrides
 */

/* Import Tabulator CSS from CDN */
@import url('https://unpkg.com/tabulator-tables@5.5.0/dist/css/tabulator.min.css');

/* Custom styles for Tabulator in Limberjack */
.tabulator-container {
  padding: 20px;
}

/* Match Limberjack's existing table styling */
.tabulator {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  background-color: #fff;
  border: 1px solid #ddd;
}

.tabulator .tabulator-header {
  background-color: #f8f9fa;
  border-bottom: 2px solid #dee2e6;
}

.tabulator .tabulator-header .tabulator-col {
  background-color: #f8f9fa;
  border-right: 1px solid #dee2e6;
}

.tabulator .tabulator-header .tabulator-col.tabulator-sortable:hover {
  background-color: #e9ecef;
}

.tabulator .tabulator-row {
  border-bottom: 1px solid #dee2e6;
}

.tabulator .tabulator-row:hover {
  background-color: #f8f9fa;
}

.tabulator .tabulator-row.tabulator-row-even {
  background-color: #fff;
}

.tabulator .tabulator-row .tabulator-cell {
  border-right: 1px solid #dee2e6;
  padding: 8px 12px;
}

/* Editing styles */
.tabulator .tabulator-row .tabulator-cell.tabulator-editing {
  background-color: #fff3cd;
  border: 2px solid #ffc107;
}

/* Unsaved changes indicator */
.tabulator .tabulator-row.row-modified {
  background-color: #fff3cd;
}

.tabulator .tabulator-row.row-modified:hover {
  background-color: #ffeaa7;
}

/* Save status indicators */
.tabulator .tabulator-row.row-saving {
  opacity: 0.6;
  pointer-events: none;
}

.tabulator .tabulator-row.row-error {
  background-color: #f8d7da;
}

/* Bulk edit controls */
.bulk-edit-controls {
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.bulk-edit-controls .save-button {
  padding: 10px 20px;
  font-size: 16px;
}

.bulk-edit-controls .status-message {
  padding: 10px;
  border-radius: 4px;
  margin-left: 20px;
}

.bulk-edit-controls .status-message.success {
  background-color: #d4edda;
  color: #155724;
  border: 1px solid #c3e6cb;
}

.bulk-edit-controls .status-message.error {
  background-color: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
}

/* Recovery group selector dropdown */
.recovery-group-selector {
  min-width: 200px;
}

.recovery-group-item {
  display: flex;
  justify-content: space-between;
  padding: 4px 8px;
}

.recovery-group-item .connection-type {
  font-size: 0.85em;
  color: #666;
  margin-left: 10px;
}