.edcv-grid { display:grid; grid-template-columns: 1fr 1fr; gap:24px; }
.edcv-card { background:#fff; border:1px solid #e5e7eb; border-radius:10px; padding:16px; }
.edcv-card h2 { margin:0 0 12px; }
.edcv-actions-row { margin-top:10px; display:flex; gap:8px; align-items:center; }
.edcv-help { margin-top:16px; }

.edcv-actions-th { width:110px; }
.edcv-actions { text-align:right; }

.edcv-btn-danger { background:#fef2f2; border-color:#ef4444; color:#b91c1c; }
.edcv-btn-danger:hover { background:#fee2e2; border-color:#dc2626; color:#991b1b; }

.edcv-loader-overlay { position:absolute; inset:0; background:rgba(255,255,255,.6); display:none; align-items:center; justify-content:center; }
.edcv-loader { width:28px; height:28px; border:3px solid #e5e7eb; border-top-color:#111827; border-radius:50%; animation:edcvspin .8s linear infinite; }
@keyframes edcvspin { to { transform:rotate(360deg);} }

/* Pagination Styles */
.edcv-pagination-wrapper {
  margin-top: 20px;
  padding: 15px 0;
  border-top: 1px solid #e5e7eb;
}

.edcv-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}

.edcv-page-numbers {
  display: flex;
  align-items: center;
  gap: 4px;
}

.edcv-page-btn,
.edcv-page-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  padding: 0 12px;
  border: 1px solid #d1d5db;
  background: #fff;
  color: #374151;
  font-size: 13px;
  font-weight: 500;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
  text-decoration: none;
  white-space: nowrap;
}

.edcv-page-num {
  min-width: 32px;
  padding: 0 8px;
}

.edcv-page-btn:hover:not(.disabled),
.edcv-page-num:hover:not(.edcv-page-current) {
  background: #f9fafb;
  border-color: #9ca3af;
  color: #111827;
}

.edcv-page-btn:active:not(.disabled),
.edcv-page-num:active:not(.edcv-page-current) {
  background: #f3f4f6;
  transform: translateY(1px);
}

.edcv-page-current {
  background: #2271b1;
  border-color: #2271b1;
  color: #fff;
  cursor: default;
}

.edcv-page-btn.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: #f9fafb;
  color: #9ca3af;
}

.edcv-page-ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 32px;
  color: #9ca3af;
  user-select: none;
}

.edcv-page-prev {
  margin-right: 8px;
}

.edcv-page-next {
  margin-left: 8px;
}

/* Sort control and info alignment */
.edcv-list-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 12px 0;
  padding: 10px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
}

.edcv-list-controls label {
  font-weight: 600;
  color: #374151;
  margin-right: 8px;
}

.edcv-list-controls select {
  min-width: 140px;
  padding: 4px 8px;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  background: #fff;
  color: #374151;
  font-size: 13px;
}

.edcv-pagination-info {
  font-size: 13px;
  color: #6b7280;
  font-weight: 500;
}

/* Table adjustments for empty state */
.edcv-table tbody tr td[colspan] {
  text-align: center;
  padding: 40px 20px;
  color: #6b7280;
  font-style: italic;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
  .edcv-grid { grid-template-columns: 1fr; }
  
  .edcv-list-controls {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  
  .edcv-pagination-info {
    align-self: flex-start;
  }
}

@media (max-width: 600px) {
  .edcv-pagination {
    justify-content: flex-start;
  }
  
  .edcv-page-btn,
  .edcv-page-num {
    min-width: 28px;
    height: 28px;
    font-size: 12px;
    padding: 0 8px;
  }
  
  .edcv-page-num {
    padding: 0 6px;
  }
  
  .edcv-page-prev,
  .edcv-page-next {
    margin: 0 4px;
  }
}
/* Records info (replaces old storage status banner) */
.edcv-records-info {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  padding: 10px 12px;
  border-radius: 6px;
  margin-bottom: 16px;
}
.edcv-records-info p { margin: 0; color: #374151; }
