/* EditablePanel Styles */
.editable-panel {
  position: relative;
  transition: all 0.3s ease;
}

.editable-panel.editing {
  box-shadow: 0 0 0 2px var(--primary-color);
}

/* Header */
.editable-panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid var(--border-color);
  background: var(--panel-header-bg, #f8f9fa);
}

.editable-panel-title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
}

.editable-panel-icon {
  display: flex;
  align-items: center;
  font-size: 20px;
  color: var(--primary-color);
}

/* Actions */
.editable-panel-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.editable-panel-controls {
  display: flex;
  align-items: center;
  gap: 4px;
}

/* Buttons */
.editable-panel-edit,
.editable-panel-save,
.editable-panel-cancel {
  transition: all 0.2s ease;
}

.editable-panel-edit {
  color: var(--text-secondary);
}

.editable-panel-edit:hover {
  color: var(--primary-color);
  background: rgba(var(--primary-rgb), 0.1);
}

.editable-panel-save {
  color: var(--success-color, #28a745);
}

.editable-panel-save:hover {
  background: rgba(40, 167, 69, 0.1);
}

.editable-panel-cancel {
  color: var(--danger-color, #dc3545);
}

.editable-panel-cancel:hover {
  background: rgba(220, 53, 69, 0.1);
}

/* Loading state */
.editable-panel-saving {
  color: var(--primary-color);
}

/* Content */
.editable-panel-content {
  padding: 20px;
  transition: opacity 0.3s ease;
}

.editable-panel.editing .editable-panel-content {
  background: rgba(var(--primary-rgb), 0.02);
}

/* Mobile responsive */
@media (max-width: 768px) {
  .editable-panel-header {
    padding: 12px 16px;
  }
  
  .editable-panel-title {
    font-size: 16px;
  }
  
  .editable-panel-content {
    padding: 16px;
  }
  
  .editable-panel-actions {
    gap: 4px;
  }
}

/* Animation for mode switch */
.editable-panel-enter {
  opacity: 0;
  transform: translateY(-10px);
}

.editable-panel-enter-active {
  opacity: 1;
  transform: translateY(0);
  transition: all 0.3s ease;
}

.editable-panel-exit {
  opacity: 1;
  transform: translateY(0);
}

.editable-panel-exit-active {
  opacity: 0;
  transform: translateY(-10px);
  transition: all 0.3s ease;
}